diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index c23b1a3..1b8ca8e 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -13,12 +13,11 @@ RUN apt-get update && \ # Install bridged provider prerequisites # See README.md -# Install go -ARG GO_VERSION=1.18.3 +# Install go +ARG GO_VERSION=1.22.2 RUN rm -rf /usr/local/go && \ - wget -O ${GO_VERSION}.tar.gz https://golang.org/dl/go${GO_VERSION}.linux-amd64.tar.gz && \ - tar -C /usr/local -xzf ${GO_VERSION}.tar.gz && \ - rm ${GO_VERSION}.tar.gz + wget -O- https://golang.org/dl/go${GO_VERSION}.linux-amd64.tar.gz | \ + tar -C /usr/local -xzf - ENV GOPATH=/root/go ENV PATH=$PATH:/usr/local/go/bin @@ -30,10 +29,10 @@ RUN mkdir -p $GOPATH/bin && \ ENV PATH=$PATH:$GOPATH/bin # Install pulumictl -ARG PULUMICTL_VERSION=v0.0.32 +ARG PULUMICTL_VERSION=v0.0.46 RUN rm -rf /usr/local/bin/pulumictl && \ - wget -O pulumictl.${PULUMICTL_VERSION}.tar.gz https://github.com/pulumi/pulumictl/releases/download/${PULUMICTL_VERSION}/pulumictl-${PULUMICTL_VERSION}-linux-amd64.tar.gz && \ - tar -C /usr/local/bin -xzf pulumictl.${PULUMICTL_VERSION}.tar.gz + wget -O- https://github.com/pulumi/pulumictl/releases/download/${PULUMICTL_VERSION}/pulumictl-${PULUMICTL_VERSION}-linux-amd64.tar.gz | \ + tar -C /usr/local/bin -xzf - # Install nodejs ARG NODEJS_VERSION=v16.16.0 diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml new file mode 100644 index 0000000..b59ed16 --- /dev/null +++ b/.github/workflows/pull-request.yml @@ -0,0 +1,92 @@ + +name: build + +on: + pull_request: + paths-ignore: + - docs + - .devcontainer + - examples + +jobs: + build_sdk: + name: build_sdk + runs-on: ubuntu-latest + strategy: + fail-fast: true + matrix: + dotnetversion: + - 6.0.x + goversion: + - 1.22.x + nodeversion: + - 18.x + pythonversion: + - "3.9" + javaversion: + - "11" + language: + - nodejs + - python + - dotnet + - go + # - java + + steps: + - name: Checkout Repo + uses: actions/checkout@v2 + + - name: Unshallow clone for tags + run: git fetch --prune --unshallow --tags + - name: Install Go + uses: actions/setup-go@v3 + with: + go-version: ${{matrix.goversion}} + + - name: Install pulumictl + uses: jaxxstorm/action-install-gh-release@v1.10.0 + with: + repo: pulumi/pulumictl + + - name: Install pulumi + uses: pulumi/actions@v4 + + - if: ${{ matrix.language == 'nodejs'}} + name: Setup Node + uses: actions/setup-node@v2 + with: + node-version: ${{matrix.nodeversion}} + registry-url: https://registry.npmjs.org + + - if: ${{ matrix.language == 'dotnet'}} + name: Setup DotNet + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{matrix.dotnetversion}} + + - if: ${{ matrix.language == 'python'}} + name: Setup Python + uses: actions/setup-python@v2 + with: + python-version: ${{matrix.pythonversion}} + + - if: ${{ matrix.language == 'java'}} + name: Setup Java + uses: actions/setup-java@v3 + with: + cache: gradle + distribution: temurin + java-version: ${{matrix.javaversion}} + + - name: Build SDK + run: make build_${{ matrix.language }} + + - name: Check worktree clean + run: | + git update-index -q --refresh + if ! git diff-files --quiet; then + >&2 echo "error: working tree is not clean, aborting!" + git status + git diff + exit 1 + fi diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..2fff3ab --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,178 @@ + +name: release + +on: + push: + tags: + - v*.*.* + paths-ignore: + - docs + - .devcontainer + - examples + +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # IF YOU NEED TO PUBLISH A NPM PACKAGE THEN ENSURE A NPM_TOKEN SECRET IS SET + # AND PUBLISH_NPM: TRUE. IF YOU WANT TO PUBLISH TO A PRIVATE NPM REGISTRY + # THEN ENSURE THE NPM_REGISTRY_URL IS CHANGED + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + PUBLISH_NPM: true + NPM_REGISTRY_URL: https://registry.npmjs.org + # IF YOU NEED TO PUBLISH A NUGET PACKAGE THEN ENSURE AN NUGET_PUBLISH_KEY + # SECRET IS SET AND PUBLISH_NUGET: TRUE. IF YOU WANT TO PUBLISH TO AN ALTERNATIVE + # NPM REGISTRY THEN ENSURE THE NPM_REGISTRY_URL IS CHANGED + NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }} + NUGET_FEED_URL: https://api.nuget.org/v3/index.json + PUBLISH_NUGET: false + # IF YOU NEED TO PUBLISH A PYPI PACKAGE THEN ENSURE AN PYPI_PASSWORD + # SECRET IS SET AND PUBLISH_PYPI: TRUE. IF YOU WANT TO PUBLISH TO AN ALTERNATIVE + # PYPI REGISTRY THEN ENSURE THE PYPI_REPOSITORY_URL IS SET. IF YOU ARE USING AN API_TOKEN THEN + # YOU DO NOT NEED TO CHANGE THE PYPI_USERNAME (__token__) , IF YOU ARE USING PASSWORD AUTHENTICATION THEN YOU WILL + # NEED TO CHANGE TO USE THE CORRECT PASSWORD + PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }} + PYPI_USERNAME: "__token__" + PYPI_REPOSITORY_URL: "" + PUBLISH_PYPI: false + +jobs: + publish_binary: + name: publish + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Checkout Repo + uses: actions/checkout@v3 + + - name: Unshallow clone for tags + run: git fetch --prune --unshallow --tags + + - name: Install Go + uses: actions/setup-go@v3 + with: + go-version: ${{matrix.goversion}} + + - name: Install pulumictl + uses: jaxxstorm/action-install-gh-release@v1.10.0 + with: + repo: pulumi/pulumictl + + - name: Set PreRelease Version + run: echo "GORELEASER_CURRENT_TAG=v$(pulumictl get version --language generic)" >> $GITHUB_ENV + - name: Run GoReleaser + uses: goreleaser/goreleaser-action@v2 + with: + args: -p 3 release --rm-dist + version: latest + + strategy: + fail-fast: true + matrix: + goversion: + - 1.22.x + + publish_sdk: + name: Publish SDKs + runs-on: ubuntu-latest + needs: publish_binary + steps: + - name: Checkout Repo + uses: actions/checkout@v2 + + - name: Unshallow clone for tags + run: git fetch --prune --unshallow --tags + + - name: Install Go + uses: actions/setup-go@v3 + with: + go-version: ${{ matrix.goversion }} + + - name: Install pulumictl + uses: jaxxstorm/action-install-gh-release@v1.10.0 + with: + repo: pulumi/pulumictl + + - name: Install pulumi + uses: pulumi/actions@v4 + + - if: ${{ matrix.language == 'nodejs'}} + name: Setup Node + uses: actions/setup-node@v1 + with: + node-version: ${{matrix.nodeversion}} + registry-url: ${{env.NPM_REGISTRY_URL}} + + - if: ${{ matrix.language == 'dotnet'}} + name: Setup DotNet + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{matrix.dotnetversion}} + + - if: ${{ matrix.language == 'java'}} + name: Setup Java + uses: actions/setup-java@v3 + with: + cache: gradle + distribution: temurin + java-version: ${{matrix.javaversion}} + + - if: ${{ matrix.language == 'python'}} + name: Setup Python + uses: actions/setup-python@v1 + with: + python-version: ${{matrix.pythonversion}} + + - name: Build SDK + run: make build_${{ matrix.language }} + + - name: Check worktree clean + run: | + git update-index -q --refresh + if ! git diff-files --quiet; then + >&2 echo "error: working tree is not clean, aborting!" + git status + git diff + exit 1 + fi + + - if: ${{ matrix.language == 'python' && env.PUBLISH_PYPI == 'true' }} + name: Publish package to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + user: ${{ env.PYPI_USERNAME }} + password: ${{ env.PYPI_PASSWORD }} + packages_dir: ${{github.workspace}}/sdk/python/bin/dist + + - if: ${{ matrix.language == 'nodejs' && env.PUBLISH_NPM == 'true' }} + uses: JS-DevTools/npm-publish@v1 + with: + access: "public" + token: ${{ env.NPM_TOKEN }} + package: ${{github.workspace}}/sdk/nodejs/bin/package.json + + - if: ${{ matrix.language == 'dotnet' && env.PUBLISH_NUGET == 'true' }} + name: publish nuget package + run: | + dotnet nuget push ${{github.workspace}}/sdk/dotnet/bin/Debug/*.nupkg -s ${{ env.NUGET_FEED_URL }} -k ${{ env.NUGET_PUBLISH_KEY }} + echo "done publishing packages" + + strategy: + fail-fast: true + matrix: + dotnetversion: + - 6.0.x + goversion: + - 1.22.x + nodeversion: + - 18.x + pythonversion: + - "3.9" + javaversion: + - "11" + language: + - nodejs + - python + - dotnet + - go + # - java diff --git a/.gitignore b/.gitignore index 5ad2e40..9efdaff 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,13 @@ .idea .code +.vscode **/vendor/ .pulumi **/bin/ **/obj/ Pulumi.*.yaml **/node_modules/ -.DS_Store +*.DS_Store **/command-output/ @@ -17,7 +18,14 @@ yarn.lock **/pulumiManifest.go ci-scripts +provider/**/schema.go provider/**/schema-embed.json **/version.txt **/nuget **/dist + +sdk/java/build +sdk/java/.gradle +sdk/java/gradle +sdk/java/gradlew +sdk/java/gradlew.bat diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 0000000..6f87bdf --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,29 @@ +archives: + - id: archive + name_template: '{{ .Binary }}-{{ .Tag }}-{{ .Os }}-{{ .Arch }}' +before: + hooks: + - make tfgen +builds: + - binary: pulumi-resource-nobl9 + dir: provider + env: + - CGO_ENABLED=0 + goarch: + - amd64 + - arm64 + goos: + - darwin + - windows + - linux + ldflags: + # The line below MUST align with the module in current provider/go.mod + - -X github.com/piclemx/pulumi-nobl9/provider/pkg/version.Version={{.Tag }} + main: ./cmd/pulumi-resource-nobl9/ +changelog: + skip: true +release: + disable: false + prerelease: auto +snapshot: + name_template: '{{ .Tag }}-SNAPSHOT' \ No newline at end of file diff --git a/.tool-versions b/.tool-versions index 6859777..1cd2a4e 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1,5 +1,5 @@ -golang 1.18 +golang 1.22 nodejs 14.21.3 pulumi 3.51.1 python 3.11.2 -dotnet 7.0.302 +dotnet latest diff --git a/CHANGELOG.md b/CHANGELOG.md index 672dc6f..c99e7fd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,4 @@ CHANGELOG ## HEAD (Unreleased) -* fix dotnetversion typo in release template #94 - --- diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index eea090e..2b18635 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -5,7 +5,8 @@ We have a few tips and housekeeping items to help you get up and running. ## Code of Conduct -Please make sure to read and observe our [Code of Conduct](./CODE-OF-CONDUCT.md) +Please make sure to read and observe our [Code of Conduct](./CODE-OF-CONDUCT.md +) ## Community Expectations @@ -33,4 +34,3 @@ cloud resources while running. Before running these tests, make sure that you ha configured access to your cloud provider with Pulumi. _TODO: Add any steps you need to take to run integration tests here_ - diff --git a/Makefile b/Makefile index 8bccd6a..80fc75d 100644 --- a/Makefile +++ b/Makefile @@ -1,46 +1,44 @@ -PROJECT_NAME := nobl9 Package - +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) SHELL := /bin/bash -PACK := nobl9 -ORG := piclemx -PROJECT := github.com/${ORG}/pulumi-${PACK} -NODE_MODULE_NAME := @pulumi/${PACK} -TF_NAME := ${PACK} +PROJECT := github.com/piclemx/pulumi-nobl9 +NODE_MODULE_NAME := @piclemx/pulumi-nobl9 +TF_NAME := nobl9 PROVIDER_PATH := provider +PROVIDER_VERSION := 0.24.5 VERSION_PATH := ${PROVIDER_PATH}/pkg/version.Version -TFGEN := pulumi-tfgen-${PACK} -PROVIDER := pulumi-resource-${PACK} -VERSION := $(shell pulumictl get version) - -TESTPARALLELISM := 4 +JAVA_GEN := pulumi-java-gen +JAVA_GEN_VERSION := v0.10.0 +TFGEN := pulumi-tfgen-nobl9 +PROVIDER := pulumi-resource-nobl9 +VERSION := $(shell pulumictl get version) -WORKING_DIR := $(shell pwd) +TESTPARALLELISM := 4 -OS := $(shell uname) -EMPTY_TO_AVOID_SED := "" +WORKING_DIR := $(shell pwd) -prepare:: - @if test -z "${NAME}"; then echo "NAME not set"; exit 1; fi - @if test -z "${REPOSITORY}"; then echo "REPOSITORY not set"; exit 1; fi - @if test ! -d "provider/cmd/pulumi-tfgen-x${EMPTY_TO_AVOID_SED}yz"; then "Project already prepared"; exit 1; fi +GO_MAJOR_VERSION := $(shell go version | cut -c 14- | cut -d' ' -f1 | cut -d'.' -f1) +GO_MINOR_VERSION := $(shell go version | cut -c 14- | cut -d' ' -f1 | cut -d'.' -f2) +#### +# Defines the required Go version. This is a safeguard, because +# the (local) version must match the version specified in .github/workflows/release.yml +# otherwise publkishing the Go SDK of the provider will fail +REQUIRED_GO_MAJOR_VERSION := 1 +REQUIRED_GO_MINOR_VERSION := 22 +GO_VERSION_VALIDATION_ERR_MSG := Golang version $(REQUIRED_GO_MAJOR_VERSION).$(REQUIRED_GO_MINOR_VERSION) is required - mv "provider/cmd/pulumi-tfgen-x${EMPTY_TO_AVOID_SED}yz" provider/cmd/pulumi-tfgen-${NAME} - mv "provider/cmd/pulumi-resource-x${EMPTY_TO_AVOID_SED}yz" provider/cmd/pulumi-resource-${NAME} +.PHONY: development provider build_sdks build_nodejs build_dotnet build_go build_python cleanup validate_go_version - if [[ "${OS}" != "Darwin" ]]; then \ - sed -i 's,github.com/piclemx/pulumi-nobl9,${REPOSITORY},g' provider/go.mod; \ - find ./ ! -path './.git/*' -type f -exec sed -i 's/[x]yz/${NAME}/g' {} \; &> /dev/null; \ +validate_go_version: ## Validates the installed version of go + @if [ $(GO_MAJOR_VERSION) -ne $(REQUIRED_GO_MAJOR_VERSION) ]; then \ + echo '$(GO_VERSION_VALIDATION_ERR_MSG)';\ + exit 1 ;\ fi - - # In MacOS the -i parameter needs an empty string to execute in place. - if [[ "${OS}" == "Darwin" ]]; then \ - sed -i '' 's,github.com/piclemx/pulumi-nobl9,${REPOSITORY},g' provider/go.mod; \ - find ./ ! -path './.git/*' -type f -exec sed -i '' 's/[x]yz/${NAME}/g' {} \; &> /dev/null; \ + @if [ $(GO_MINOR_VERSION) -ne $(REQUIRED_GO_MINOR_VERSION) ]; then \ + echo '$(GO_VERSION_VALIDATION_ERR_MSG)';\ + exit 1 ;\ fi -.PHONY: development provider build_sdks build_nodejs build_dotnet build_go build_python cleanup - development:: install_plugins provider lint_provider build_sdks install_sdks cleanup # Build the provider & SDKs for a development environment # Required for the codegen action that runs in pulumi/pulumi and pulumi/pulumi-terraform-bridge @@ -63,7 +61,6 @@ build_nodejs:: install_plugins tfgen # build the node sdk cd sdk/nodejs/ && \ yarn install && \ yarn run tsc && \ - cp -R scripts/ bin && \ cp ../../README.md ../../LICENSE package.json yarn.lock ./bin/ && \ sed -i.bak -e "s/\$${VERSION}/$(VERSION)/g" ./bin/package.json @@ -88,10 +85,25 @@ build_dotnet:: install_plugins tfgen # build the dotnet sdk build_go:: install_plugins tfgen # build the go sdk $(WORKING_DIR)/bin/$(TFGEN) go --overlays provider/overlays/go --out sdk/go/ + cd sdk/go/ && \ + go mod tidy + +build_java:: PACKAGE_VERSION := $(shell pulumictl get version --language generic) +build_java:: $(WORKING_DIR)/bin/$(JAVA_GEN) + $(WORKING_DIR)/bin/$(JAVA_GEN) generate --schema provider/cmd/$(PROVIDER)/schema.json --out sdk/java --build gradle-nexus + cd sdk/java/ && \ + echo "module fake_java_module // Exclude this directory from Go tools\n\ngo 1.17" > go.mod && \ + gradle --console=plain build + +$(WORKING_DIR)/bin/$(JAVA_GEN):: + $(shell pulumictl download-binary -n pulumi-language-java -v $(JAVA_GEN_VERSION) -r pulumi/pulumi-java) lint_provider:: provider # lint the provider code cd provider && golangci-lint run -c ../.golangci.yml +tidy:: # call go mod tidy in relevant directories + find ./provider -name go.mod -execdir go mod tidy \; + cleanup:: # cleans up the temporary directory rm -r $(WORKING_DIR)/bin rm -f provider/cmd/${PROVIDER}/schema.go @@ -102,9 +114,14 @@ help:: expand -t20 clean:: - rm -rf sdk/{dotnet,nodejs,go,python} + rm -rf sdk/{dotnet,nodejs,go,python} sdk/go.sum -install_plugins:: +.PHONY: fmt +fmt:: + @echo "Fixing source code with gofmt..." + find . -name '*.go' | grep -v vendor | xargs gofmt -s -w + +install_plugins:: validate_go_version [ -x $(shell which pulumi) ] || curl -fsSL https://get.pulumi.com | sh pulumi plugin install resource random 4.3.1 @@ -123,4 +140,3 @@ install_sdks:: install_dotnet_sdk install_python_sdk install_nodejs_sdk test:: cd examples && go test -v -tags=all -parallel ${TESTPARALLELISM} -timeout 2h - diff --git a/README-DEVELOPMENT.md b/README-DEVELOPMENT.md new file mode 100644 index 0000000..fda5f1b --- /dev/null +++ b/README-DEVELOPMENT.md @@ -0,0 +1,382 @@ +# Developing with a Terraform Bridge Provider + +This document describes the procedures for developing and maintaining a Pulumi +provider based on the Pulumi Terraform Bridge. + +- [Developing with a Terraform Bridge Provider](#developing-with-a-terraform-bridge-provider) + - [Creating a Pulumi Terraform Bridge Provider](#creating-a-pulumi-terraform-bridge-provider) + - [Prerequisites](#prerequisites) + - [Publishing checklist](#publishing-checklist) + - [Composing the Provider Code - Prerequisites](#composing-the-provider-code---prerequisites) + - [Adding Mappings, Building the Provider and SDKs](#adding-mappings-building-the-provider-and-sdks) + - [Autogeneration of mappings](#autogeneration-of-mappings) + - [Manually add mappings](#manually-add-mappings) + - [Building the provider and SDKs](#building-the-provider-and-sdks) + - [Sample Program](#sample-program) + - [Add End-to-end Testing](#add-end-to-end-testing) + - [CI/CD with GitHub Actions](#cicd-with-github-actions) + +## Creating a Pulumi Terraform Bridge Provider + +The following instructions cover: + +- providers maintained by Pulumi (denoted with a "Pulumi Official" checkmark on the Pulumi registry) +- providers published and maintained by the Pulumi community, referred to as "third-party" providers + +We showcase a Pulumi-owned provider based on an upstream provider named +`terraform-provider-nobl9`. Substitute +appropriate values below for your use case. + +> Note: If the name of the desired Pulumi provider differs from the name of the +> Terraform provider, you will need to carefully distinguish between the +> references - see for an example. + +### Prerequisites + +Ensure the following tools are installed and present in your `$PATH`: + +* [`pulumictl`](https://github.com/pulumi/pulumictl#installation) +* [Go 1.17](https://golang.org/dl/) or 1.latest +* [NodeJS](https://nodejs.org/en/) 16.x. We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage NodeJS installations. +* [Yarn](https://yarnpkg.com/) +* [TypeScript](https://www.typescriptlang.org/) +* [Python](https://www.python.org/downloads/) (called as `python3`). For recent + versions of MacOS, the system-installed version is fine. +* [.NET](https://dotnet.microsoft.com/download) + +### Publishing checklist + +When publishing a new release, the following points should be observed to ensure +that the publishing process is successful: + + +- [ ] Before creating a new realease, build the SDKs locally `make build_sdks` + using the `main`branch of the repository and check with `git status` for + changes of workspace. If any changes are created, create a pull qreuest to + sync the SDK changes to the `main` branch. +- [ ] Ensure that the local GO version used to compile the provider match the + version used in the GitHub Release Workflow `release.yaml` +- [ ] Check for messages of `tfgen` containing `no-resource plugin` and add + missing Pulumi resource plugins to the `install_plugins` target in `Makefile` +- [ ] Ensure that the `dotnet` version required by the `*.csproj`-file in + in the `` element is configured in the `release.yaml` file +- [ ] Ensure you registered the provider in the + `community-packages/package-list.json` in the [Pulumi Registry](https://github.com/pulumi/registry) repo + +### Composing the Provider Code - Prerequisites + +Pulumi provider repositories have the following general structure: + +* `examples/` contains sample code which may optionally be included as + integration tests to be run as part of a CI/CD pipeline. +* `provider/` contains the Go code used to create the provider as well as + generate the SDKs in the various languages that Pulumi supports. + * `provider/cmd/pulumi-tfgen-nobl9` + generates the Pulumi resource schema (`schema.json`), based on the Terraform + provider's resources. + * `provider/cmd/pulumi-resource-nobl9` + generates the SDKs in all supported languages from the schema, placing them + in the `sdk/` folder. + * `provider/pkg/resources.go` is the location where we will define the + Terraform-to-Pulumi mappings for resources. +* `sdk/` contains the generated SDK code for each of the language platforms that + Pulumi supports, with each supported platform in a separate subfolder. + +1. In `provider/go.mod`, add a reference to the upstream Terraform provider in the `require` section, e.g. + + ```go + github.com/foo/terraform-provider-nobl9 v0.4.0 + ``` + +1. In `provider/resources.go`, ensure the reference in the `import` section uses the correct Go module path, e.g.: + + ```go + github.com/foo/terraform-provider-nobl9/nobl9 + ``` + +1. Download the dependencies: + + ```bash + cd provider && go mod tidy && cd - + ``` + +1. Create the schema by running the following command: + + ```bash + make tfgen + ``` + + Note warnings about unmapped resources and data sources in the command's output. We map these in the next section, e.g.: + + ```text + warning: resource nobl9_something not found in provider map; skipping + warning: resource nobl9_something_else not found in provider map; skipping + warning: data source nobl9_something not found in provider map; skipping + warning: data source nobl9_something_else not found in provider map; skipping + ``` + +## Adding Mappings, Building the Provider and SDKs + +In this section we will add the mappings that allow the interoperation between +the Pulumi provider and the Terraform provider. Terraform resources map to an +identically named concept in Pulumi. Terraform data sources map to plain old +functions in your supported programming language of choice. Pulumi also allows +provider functions and resources to be grouped into _namespaces_ to improve the +cohesion of a provider's code, thereby making it easier for developers to use. +If your provider has a large number of resources, consider using namespaces to +improve usability. + +### Autogeneration of mappings + +The repository utilizes the autodiscovery mechanism of Pulumi Terraform Bridge +which automatically maps resources and data sources from the upstream Terraform +provider to Pulumi resources and functions. + +However, it is still possible to configure resources and data sources manually +via the `Resources` and `DataSources` properties of the struct +`tfbridge.ProviderInfo`. These manual configurations have a higher precedence than +the configurations of the autodiscovery mechanism. + +### Manually add mappings +The following instructions all pertain to `provider/resources.go`, in the +section of the code where we construct a `tfbridge.ProviderInfo` object: + +1. **Add resource mappings:** For each resource in the provider, add an entry in + the `Resources` property of the `tfbridge.ProviderInfo`, e.g.: + + + ```go + // Most providers will have all resources (and data sources) in the main module. + // Note the mapping from snake_case HCL naming conventions to UpperCamelCase Pulumi SDK naming conventions. + // The name of the provider is omitted from the mapped name due to the presence of namespaces in all supported Pulumi languages. + "nobl9_something": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "Something")}, + "nobl9_something_else": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "SomethingElse")}, + ``` + +1. **Add CSharpName (if necessary):** Dotnet does not allow for fields named the + same as the enclosing type, which sometimes results in errors during the + dotnet SDK build. If you see something like + ```text + error CS0542: 'ApiKey': member names cannot be the same as their enclosing type [/Users/guin/go/src/github.com/pulumi/pulumi-artifactory/sdk/dotnet/Pulumi.Artifactory.csproj] + ``` + you'll want to give your Resource a CSharpName, which can have any value that makes sense: + + ```go + "nobl9_something_dotnet": { + Tok: tfbridge.MakeResource(mainPkg, mainMod, "SomethingDotnet"), + Fields: map[string]*tfbridge.SchemaInfo{ + "something_dotnet": { + CSharpName: "SpecialName", + }, + }, + }, + ``` + + [See the underlying terraform-bridge code here.](https://github.com/pulumi/pulumi-terraform-bridge/blob/master/pkg/tfbridge/info.go#L168) + +1. **Add data source mappings:** For each data source in the provider, add an entry in the `DataSources` property of the `tfbridge.ProviderInfo`, e.g.: + + ```go + // Note the 'get' prefix for data sources + "nobl9_something": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getSomething")}, + "nobl9_something_else": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getSomethingElse")}, + ``` + +1. **Add documentation mapping (sometimes needed):** If the upstream provider's + repo is not a part of the `terraform-providers` GitHub organization, specify + the `GitHubOrg` property of `tfbridge.ProviderInfo` to ensure that + documentation is picked up by the codegen process, and that attribution for + the upstream provider is correct, e.g.: + + + ```go + GitHubOrg: "piclemx", + ``` + +1. **Add provider configuration overrides (not typically needed):** Pulumi's + Terraform bridge automatically detects configuration options for the upstream + provider. However, in rare cases these settings may need to be overridden, + e.g. if we want to change an environment variable default from `API_KEY` to + `nobl9_API_KEY`. Examples of common + uses cases: + + + ```go + "additional_required_parameter": {}, + "additional_optional_string_parameter": { + Default: &tfbridge.DefaultInfo{ + Value: "default_value", + }, + "additional_optional_boolean_parameter": { + Default: &tfbridge.DefaultInfo{ + Value: true, + }, + // Renamed environment variables can be accounted for like so: + "apikey": { + Default: &tfbridge.DefaultInfo{ + EnvVars: []string{"nobl9_API_KEY"}, + }, + ``` + +### Building the provider and SDKs + +1. Build the provider binary and ensure there are no warnings about unmapped + resources and no warnings about unmapped data sources: + + ```bash + make provider + ``` + + You may see warnings about documentation and examples, including "unexpected + code snippets". These can be safely ignored for now. Pulumi will add + additional documentation on mapping docs in a future revision of this guide. + +1. Build the SDKs in the various languages Pulumi supports: + + ```bash + make build_sdks + ``` + +1. Ensure the Golang SDK is a proper go module: + + ```bash + cd sdk && go mod tidy && cd - + ``` + + This will pull in the correct dependencies in `sdk/go.mod` as well as setting the dependency tree in `sdk/go.sum`. + +1. Finally, ensure the provider code conforms to Go standards: + + ```bash + make lint_provider + ``` + + Fix any issues found by the linter. + +**Note:** If you make revisions to code in `resources.go`, you must re-run the `make tfgen` target to regenerate the schema. +The `make tfgen` target will take the file `schema.json` and serialize it to a byte array so that it can be included in the build output. +(This is a holdover from Go 1.16, which does not have the ability to directly embed text files. We are working on removing the need for this step.) + +## Sample Program + +In this section, we will create a Pulumi program in TypeScript that utilizes the +provider we created to ensure everything is working properly. + +1. Create an account with the provider's service and generate any necessary credentials, e.g. API keys. + + * Email: bot@pulumi.com + * Password: (Create a random password in 1Password with the maximum length and complexity allowed by the provider.) + * Ensure all secrets (passwords, generated API keys) are stored in Pulumi's 1Password vault. + +1. Copy the `pulumi-resource-nobl9` binary + generated by `make provider` and place it in your `$PATH` (`$GOPATH/bin` is a + convenient choice), e.g.: + + ```bash + cp bin/pulumi-resource-nobl9 $GOPATH/bin + ``` + +1. Tell Yarn to use your local copy of the SDK: + + ```bash + make install_nodejs_sdk + ``` + +1. Create a new Pulumi program in the `examples/` directory, e.g.: + + ```bash + mkdir examples/my-example/ts # Change "my-example" to something more meaningful. + cd examples/my-example/ts + pulumi new typescript + # (Go through the prompts with the default values) + npm install + yarn link @piclemx/pulumi-nobl9 + ``` + +1. Create a minimal program for the provider, i.e. one that creates the + smallest-footprint resource. Place this code in `index.ts`. + +1. Configure any necessary environment variables for authentication, e.g + `$FOO_USERNAME`, `$FOO_TOKEN`, in your local environment. + +1. Ensure the program runs successfully via `pulumi up`. + +1. Once the program completes successfully, verify the resource was created in + the provider's UI. + +1. Destroy any resources created by the program via `pulumi destroy`. + +Optionally, you may create additional examples for SDKs in other languages +supported by Pulumi: + +1. Python: + + ```bash + mkdir examples/my-example/py + cd examples/my-example/py + pulumi new python + # (Go through the prompts with the default values) + source venv/bin/activate # use the virtual Python env that Pulumi sets up for you + pip install pulumi_nobl9 + ``` + +1. Follow the steps above to verify the program runs successfully. + +## Add End-to-end Testing + +We can run integration tests on our examples using the `*_test.go` files in the +`examples/` folder. + +1. Add code to `examples_nodejs_test.go` to call the example you created, e.g.: + + ```go + // Swap out MyExample and "my-example" below with the name of your integration test. + func TestAccMyExampleTs(t *testing.T) { + test := getJSBaseOptions(t). + With(integration.ProgramTestOptions{ + Dir: filepath.Join(getCwd(t), "my-example", "ts"), + }) + integration.ProgramTest(t, &test) + } + ``` + +1. Add a similar function for each example that you want to run in an + integration test. For examples written in other languages, create similar + files for `examples_${LANGUAGE}_test.go`. + +1. You can run these tests locally via Make: + + ```bash + make test + ``` + + You can also run each test file separately via test tags: + + ```bash + cd examples && go test -v -tags=nodejs + ``` + +## CI/CD with GitHub Actions + +The repository contains two GitHub workflows for publishing new releases and +performing build validation for pull requests: + +- Release workflow: `.github/workflows/release.yml` +- Pull Request validation: `.github/workflows/pull-request.yml` + +The GitHub release workflow requires the following GitHub secrets (variables) to +be configured in the workflow envinronment. Refer to the [GitHub documentation](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions) +how to configure secrets and variables for workflows for any details. + +- `GITHUB_TOKEN`: The GitHhub is required to push a new release of the provider + to GitHub. Thus the GitHub token must include the permission `contents: + write` +- `NPM_TOKEN`: The token is used to authenticate towards NPMJS.com to push the NodeJS SDK +- `NUGET_PUBLISH_KEY`: The token is required to publish the dotnet SDK to nuget.org +- `PYPI_PASSWORD`: The token is used to publish the Python SDK on PyPi.org + +> **Note:** +> The release workflow will be triggred when a new version tag (format: `v*`) is +> pushed to the repository. + +Now you are ready to use the provider, cut releases, and have some well-deserved :ice_cream:! diff --git a/README.md b/README.md index 0dc21b1..8e12cf1 100644 --- a/README.md +++ b/README.md @@ -1,458 +1,49 @@ -# Terraform Bridge Provider Boilerplate +# Nobl9 Resource Provider -This repository contains boilerplate code for building a new Pulumi provider which wraps an existing Terraform provider. +The Nobl9 Resource Provider lets you manage [nobl9](https://www.pulumi.com/registry/packages/nobl9/) resources. -## Background +## Installing -This repository is part of the [guide for authoring and publishing a Pulumi Package](https://www.pulumi.com/docs/guides/pulumi-packages/how-to-author). +This package is available for several languages/platforms: -Learn about the concepts behind [Pulumi Packages](https://www.pulumi.com/docs/guides/pulumi-packages/#pulumi-packages). +### Node.js (JavaScript/TypeScript) -## Creating a Pulumi Terraform Bridge Provider - -The following instructions cover: - -- providers maintained by Pulumi (denoted with a "Pulumi Official" checkmark on the Pulumi registry) -- providers published and maintained by the Pulumi community, referred to as "third-party" providers - -We showcase a Pulumi-owned provider based on an upstream provider named `terraform-provider-foo`. Substitute appropriate values below for your use case. - -> Note: If the name of the desired Pulumi provider differs from the name of the Terraform provider, you will need to carefully distinguish between the references - see for an example. - -### Prerequisites - -Ensure the following tools are installed and present in your `$PATH`: - -- [`pulumictl`](https://github.com/pulumi/pulumictl#installation) -- [Go 1.17](https://golang.org/dl/) or 1.latest -- [NodeJS](https://nodejs.org/en/) 14.x. We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage NodeJS installations. -- [Yarn](https://yarnpkg.com/) -- [TypeScript](https://www.typescriptlang.org/) -- [Python](https://www.python.org/downloads/) (called as `python3`). For recent versions of MacOS, the system-installed version is fine. -- [.NET](https://dotnet.microsoft.com/download) - -### Creating and Initializing the Repository - -Pulumi offers this repository as a [GitHub template repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) for convenience. From this repository: - -1. Click "Use this template". -1. Set the following options: - - Owner: pulumi (third-party: your GitHub organization/username) - - Repository name: pulumi-foo (third-party: preface your repo name with "pulumi" as standard practice) - - Description: Pulumi provider for Foo - - Repository type: Public -1. Clone the generated repository. - -From the templated repository: - -1. Run the following command to update files to use the name of your provider (third-party: use your GitHub organization/username): - - ```bash - make prepare NAME=foo REPOSITORY=github.com/pulumi/pulumi-foo - ``` - - This will do the following: - - rename folders in `provider/cmd` to `pulumi-resource-foo` and `pulumi-tfgen-foo` - - replace dependencies in `provider/go.mod` to reflect your repository name - - find and replace all instances of the boilerplate `nobl9` with the `NAME` of your provider. - - Note for third-party providers: - - Make sure to set the correct GitHub organization/username in all files referencing your provider as a dependency: - - `examples/go.mod` - - `provider/resources.go` - - `sdk/go.mod` - - `provider/cmd/pulumi-resource-foo/main.go` - - `provider/cmd/pulumi-tfgen-foo/main.go` - -2. Modify `README-PROVIDER.md` to include the following (we'll rename it to `README.md` toward the end of this guide): - - Any desired build status badges. - - An introductory paragraph describing the type of resources the provider manages, e.g. "The Foo provider for Pulumi manages resources for [Foo](http://example.com/). - - In the "Installing" section, correct package names for the various SDK libraries in the languages Pulumi supports. - - In the "Configuration" section, any configurable options for the provider. These may include, but are not limited to, environment variables or options that can be set via [`pulumi config set`](https://www.pulumi.com/docs/reference/cli/pulumi_config_set/). - - In the "Reference" section, provide a link to the to-be-published documentation. - - Feel free to refer to [the Pulumi AWS provider README](https://github.com/pulumi/pulumi-aws) as an example. - -### Composing the Provider Code - Prerequisites - -Pulumi provider repositories have the following general structure: - -- `examples/` contains sample code which may optionally be included as integration tests to be run as part of a CI/CD pipeline. -- `provider/` contains the Go code used to create the provider as well as generate the SDKs in the various languages that Pulumi supports. - - `provider/cmd/pulumi-tfgen-foo` generates the Pulumi resource schema (`schema.json`), based on the Terraform provider's resources. - - `provider/cmd/pulumi-resource-foo` generates the SDKs in all supported languages from the schema, placing them in the `sdk/` folder. - - `provider/pkg/resources.go` is the location where we will define the Terraform-to-Pulumi mappings for resources. -- `sdk/` contains the generated SDK code for each of the language platforms that Pulumi supports, with each supported platform in a separate subfolder. - -1. In `provider/go.mod`, add a reference to the upstream Terraform provider in the `require` section, e.g. - - ```go - github.com/foo/terraform-provider-foo v0.4.0 - ``` - -1. In `provider/resources.go`, ensure the reference in the `import` section uses the correct Go module path, e.g.: - - ```go - github.com/foo/terraform-provider-foo/foo - ``` - -1. Download the dependencies: - - ```bash - cd provider && go mod tidy && cd - - ``` - -1. Create the schema by running the following command: - - ```bash - make tfgen - ``` - - Note warnings about unmapped resources and data sources in the command's output. We map these in the next section, e.g.: - - ```text - warning: resource foo_something not found in provider map; skipping - warning: resource foo_something_else not found in provider map; skipping - warning: data source foo_something not found in provider map; skipping - warning: data source foo_something_else not found in provider map; skipping - ``` - -## Adding Mappings, Building the Provider and SDKs - -In this section we will add the mappings that allow the interoperation between the Pulumi provider and the Terraform provider. Terraform resources map to an identically named concept in Pulumi. Terraform data sources map to plain old functions in your supported programming language of choice. Pulumi also allows provider functions and resources to be grouped into _namespaces_ to improve the cohesion of a provider's code, thereby making it easier for developers to use. If your provider has a large number of resources, consider using namespaces to improve usability. - -The following instructions all pertain to `provider/resources.go`, in the section of the code where we construct a `tfbridge.ProviderInfo` object: - -1. **Add resource mappings:** For each resource in the provider, add an entry in the `Resources` property of the `tfbridge.ProviderInfo`, e.g.: - - ```go - // Most providers will have all resources (and data sources) in the main module. - // Note the mapping from snake_case HCL naming conventions to UpperCamelCase Pulumi SDK naming conventions. - // The name of the provider is omitted from the mapped name due to the presence of namespaces in all supported Pulumi languages. - "foo_something": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "Something")}, - "foo_something_else": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "SomethingElse")}, - ``` - -1. **Add CSharpName (if necessary):** Dotnet does not allow for fields named the same as the enclosing type, which sometimes results in errors during the dotnet SDK build. - If you see something like - - ```text - error CS0542: 'ApiKey': member names cannot be the same as their enclosing type [/Users/guin/go/src/github.com/pulumi/pulumi-artifactory/sdk/dotnet/Pulumi.Artifactory.csproj] - ``` - - you'll want to give your Resource a CSharpName, which can have any value that makes sense: - - ```go - "foo_something_dotnet": { - Tok: tfbridge.MakeResource(mainPkg, mainMod, "SomethingDotnet"), - Fields: map[string]*tfbridge.SchemaInfo{ - "something_dotnet": { - CSharpName: "SpecialName", - }, - }, - }, - ``` - - [See the underlying terraform-bridge code here.](https://github.com/pulumi/pulumi-terraform-bridge/blob/master/pkg/tfbridge/info.go#L168) -1. **Add data source mappings:** For each data source in the provider, add an entry in the `DataSources` property of the `tfbridge.ProviderInfo`, e.g.: - - ```go - // Note the 'get' prefix for data sources - "foo_something": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getSomething")}, - "foo_something_else": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getSomethingElse")}, - ``` - -1. **Add documentation mapping (sometimes needed):** If the upstream provider's repo is not a part of the `terraform-providers` GitHub organization, specify the `GitHubOrg` property of `tfbridge.ProviderInfo` to ensure that documentation is picked up by the codegen process, and that attribution for the upstream provider is correct, e.g.: - - ```go - GitHubOrg: "foo", - ``` - -1. **Add provider configuration overrides (not typically needed):** Pulumi's Terraform bridge automatically detects configuration options for the upstream provider. However, in rare cases these settings may need to be overridden, e.g. if we want to change an environment variable default from `API_KEY` to `FOO_API_KEY`. Examples of common uses cases: - - ```go - "additional_required_parameter": {}, - "additional_optional_string_parameter": { - Default: &tfbridge.DefaultInfo{ - Value: "default_value", - }, - "additional_optional_boolean_parameter": { - Default: &tfbridge.DefaultInfo{ - Value: true, - }, - // Renamed environment variables can be accounted for like so: - "apikey": { - Default: &tfbridge.DefaultInfo{ - EnvVars: []string{"FOO_API_KEY"}, - }, - ``` - -1. Build the provider binary and ensure there are no warnings about unmapped resources and no warnings about unmapped data sources: - - ```bash - make provider - ``` - - You may see warnings about documentation and examples, including "unexpected code snippets". These can be safely ignored for now. Pulumi will add additional documentation on mapping docs in a future revision of this guide. - -1. Build the SDKs in the various languages Pulumi supports: - - ```bash - make build_sdks - ``` - -1. Ensure the Golang SDK is a proper go module: - - ```bash - cd sdk && go mod tidy && cd - - ``` - - This will pull in the correct dependencies in `sdk/go.mod` as well as setting the dependency tree in `sdk/go.sum`. - -1. Finally, ensure the provider code conforms to Go standards: - - ```bash - make lint_provider - ``` - - Fix any issues found by the linter. - -**Note:** If you make revisions to code in `resources.go`, you must re-run the `make tfgen` target to regenerate the schema. -The `make tfgen` target will take the file `schema.json` and serialize it to a byte array so that it can be included in the build output. -(This is a holdover from Go 1.16, which does not have the ability to directly embed text files. We are working on removing the need for this step.) - -## Sample Program - -In this section, we will create a Pulumi program in TypeScript that utilizes the provider we created to ensure everything is working properly. - -1. Create an account with the provider's service and generate any necessary credentials, e.g. API keys. - - Email: - - Password: (Create a random password in 1Password with the maximum length and complexity allowed by the provider.) - - Ensure all secrets (passwords, generated API keys) are stored in Pulumi's 1Password vault. - -1. Copy the `pulumi-resource-foo` binary generated by `make provider` and place it in your `$PATH` (`$GOPATH/bin` is a convenient choice), e.g.: - - ```bash - cp bin/pulumi-resource-foo $GOPATH/bin - ``` - -1. Tell Yarn to use your local copy of the SDK: - - ```bash - make install_nodejs_sdk - ``` - -1. Create a new Pulumi program in the `examples/` directory, e.g.: - - ```bash - mkdir examples/my-example/ts # Change "my-example" to something more meaningful. - cd examples/my-example/ts - pulumi new typescript - # (Go through the prompts with the default values) - npm install - yarn link @pulumi/foo - ``` - -1. Create a minimal program for the provider, i.e. one that creates the smallest-footprint resource. Place this code in `index.ts`. -1. Configure any necessary environment variables for authentication, e.g `$FOO_USERNAME`, `$FOO_TOKEN`, in your local environment. -1. Ensure the program runs successfully via `pulumi up`. -1. Once the program completes successfully, verify the resource was created in the provider's UI. -1. Destroy any resources created by the program via `pulumi destroy`. - -Optionally, you may create additional examples for SDKs in other languages supported by Pulumi: - -1. Python: - - ```bash - mkdir examples/my-example/py - cd examples/my-example/py - pulumi new python - # (Go through the prompts with the default values) - source venv/bin/activate # use the virtual Python env that Pulumi sets up for you - pip install pulumi_foo - ``` - -1. Follow the steps above to verify the program runs successfully. - -## Add End-to-end Testing - -We can run integration tests on our examples using the `*_test.go` files in the `examples/` folder. - -1. Add code to `examples_nodejs_test.go` to call the example you created, e.g.: - - ```go - // Swap out MyExample and "my-example" below with the name of your integration test. - func TestAccMyExampleTs(t *testing.T) { - test := getJSBaseOptions(t). - With(integration.ProgramTestOptions{ - Dir: filepath.Join(getCwd(t), "my-example", "ts"), - }) - integration.ProgramTest(t, &test) - } - ``` - -1. Add a similar function for each example that you want to run in an integration test. For examples written in other languages, create similar files for `examples_${LANGUAGE}_test.go`. - -1. You can run these tests locally via Make: - - ```bash - make test - ``` - - You can also run each test file separately via test tags: - - ```bash - cd examples && go test -v -tags=nodejs - ``` - -## Configuring CI with GitHub Actions - -### Third-party providers - -1. Follow the instructions laid out in the [deployment templates](./deployment-templates/README-DEPLOYMENT.md). - -### Pulumi Internal - -In this section, we'll add the necessary configuration to work with GitHub Actions for Pulumi's standard CI/CD workflows for providers. - -1. Generate GitHub workflows per [the instructions in the ci-mgmt repository](https://github.com/pulumi/ci-mgmt/) and copy to `.github/` in this repository. - -1. Ensure that any required secrets are present as repository-level [secrets](https://docs.github.com/en/actions/security-guides/encrypted-secrets) in GitHub. These will be used by the integration tests during the CI/CD process. - -1. Repository settings: Toggle `Allow auto-merge` on in your provider repo to automate GitHub Actions workflow updates. - -## Final Steps - -1. Ensure all required configurations (API keys, etc.) are documented in README-PROVIDER.md. - -1. Replace this file with the README for the provider and push your changes: - - ```bash - mv README-PROVIDER.md README.md - ``` - -1. If publishing the npm package fails during the "Publish SDKs" Action, perform the following steps: - 1. Go to [NPM Packages](https://www.npmjs.com/) and sign in as pulumi-bot. - 1. Click on the bot's profile pic and navigate to "Packages". - 1. On the left, under "Organizations, click on the Pulumi organization. - 1. On the last page of the listed packages, you should see the new package. - 1. Under "Settings", set the Package Status to "public". - -Now you are ready to use the provider, cut releases, and have some well-deserved :ice_cream:! - -## Building the Provider Locally - -There are 2 ways the provider can be built locally: - -`make provider` will use the current operating system and architecture to create a binary that can be used on your PATH. - -To build the provider for another set of operating systems / architectures, the project uses [goreleaser](https://goreleaser.com/). -Goreleaser, a CLI tool, that allows a user to build a matrix of binaries. - -Create a `.goreleaser.yml` file in the root of your project: - -```yaml - -archives: -- id: archive - name_template: "{{ .Binary }}-{{ .Tag }}-{{ .Os }}-{{ .Arch }}" -before: - hooks: - - make tfgen -builds: -- binary: pulumi-resource-nobl9 - dir: provider - goarch: - - amd64 - - arm64 - goos: - - darwin - - windows - - linux - ignore: [] - ldflags: - - -X github.com/piclemx/pulumi-nobl9/provider/pkg/version.Version={{.Tag}} - main: ./cmd/pulumi-resource-nobl9/ - sort: asc - use: git -release: - disable: false -snapshot: - name_template: "{{ .Tag }}-SNAPSHOT" -``` - -To build the provider for the combination of architectures and operating systems, you can run the following CLI command: +To use from JavaScript or TypeScript in Node.js, install using either `npm`: ```bash -goreleaser build --rm-dist --skip-validate +npm install @piclemx/pulumi-nobl9 ``` -That will ensure that a list of binaries are available to use: +or `yarn`: ```bash - -▶ tree dist -dist -├── CHANGELOG.md -├── artifacts.json -├── config.yaml -├── metadata.json -├── pulumi-nobl9_darwin_amd64_v1 -│ └── pulumi-resource-nobl9 -├── pulumi-nobl9_darwin_arm64 -│ └── pulumi-resource-nobl9 -├── pulumi-nobl9_linux_amd64_v1 -│ └── pulumi-resource-nobl9 -├── pulumi-nobl9_linux_arm64 -│ └── pulumi-resource-nobl9 -├── pulumi-nobl9_windows_amd64_v1 -│ └── pulumi-resource-nobl9.exe -└── pulumi-nobl9_windows_arm64 - └── pulumi-resource-nobl9.exe +yarn add @piclemx/pulumi-nobl9 ``` -Any of the provider binaries can be used to target the correct machine architecture +### Python -## The Shim Pattern +To use from Python, install using `pip`: -If you receive the following error: `use of internal package github.com/example/terraform-provider-example/internal/provider not allowed`, you need to use -the shim model below, and replace the example item: - ```bash +pip install piclemx_pulumi_nobl9 +``` -mkdir -p provider/shim -cat <<-EOF> provider/shim/go.mod -module github.com/example/terraform-provider-example/shim - -go 1.18 - -require github.com/hashicorp/terraform-plugin-sdk/v2 v2.22.0 -require github.com/example/terraform-provider-example v1.0.0 - -EOF - -cat <<-EOF> provider/shim/shim.go -package shim +### Go -import ( - "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" - "github.com/example/terraform-provider-example/internal/provider" -) +To use from Go, use `go get` to grab the latest version of the library: -// fix provider.Provider here to match whats in internal/provider -func Provider() *schema.Provider { - return provider.Provider() -} +```bash +go get github.com/piclemx/pulumi-nobl9/sdk/go/... +``` -EOF +### .NET -cd provider/shim/ && go mod tidy && cd ../../ +To use from .NET, install using `dotnet add package`: -cat <> provider/go.mod -replace github.com/example/terraform-provider-example/shim => ./shim -require github.com/example/terraform-provider-example/shim v0.0.0 -EOF +```bash +dotnet add package Piclemx.Nobl9 +``` -cd provider && go mod tidy +## Reference -``` - +For detailed reference documentation, please visit [the Pulumi registry](https://www.pulumi.com/registry/packages/nobl9/api-docs/). diff --git a/docs/_index.md b/docs/_index.md new file mode 100644 index 0000000..ee777a9 --- /dev/null +++ b/docs/_index.md @@ -0,0 +1,9 @@ +--- +title: Nobl9 +meta_desc: Provides an overview of the Nobl9 Provider for Pulumi. +layout: overview +--- + +The Nobl9 provider for Pulumi can be used to provision any of the cloud resources available in Nobl9. + +The Nobl9 provider must be configured with credentials to deploy and update resources in Nobl9. diff --git a/docs/installation-configuration.md b/docs/installation-configuration.md new file mode 100644 index 0000000..2ea52ef --- /dev/null +++ b/docs/installation-configuration.md @@ -0,0 +1,36 @@ +--- +title: Nobl9 Installation & Configuration +meta_desc: Information on how to install the Nobl9 provider. +layout: installation +--- + +## Installation + +The Pulumi Nobl9 provider is available as a package in all Pulumi languages: + +* JavaScript/TypeScript: [`@piclemx/pulumi-nobl9`](https://www.npmjs.com/package/@piclemx/pulumi-nobl9) +* Python: [`piclemx_pulumi_nobl9`](https://pypi.org/project/piclemx_pulumi_nobl9/) +* Go: [`github.com/piclemx/pulumi-nobl9/sdk/go/nobl9`](https://pkg.go.dev/github.com/piclemx/pulumi-nobl9/sdk/go/nobl9) +* .NET: [`Piclemx.Nobl9`](https://www.nuget.org/packages/Piclemx.Nobl9) + + +## Configuration + +> Note: +> Replace the following **sample content**, with the configuration options +> of the wrapped Terraform provider and remove this note. + +The following configuration points are available for the `nobl9` provider: + +- `nobl9:apiKey` (environment: `nobl9_API_KEY`) - the API key for `nobl9` +- `nobl9:region` (environment: `nobl9_REGION`) - the region in which to deploy resources + +### Provider Binary + +The Nobl9 provider binary is a third party binary. It can be installed using the `pulumi plugin` command. + +```bash +pulumi plugin install resource nobl9 +``` + +Replace the version string `` with your desired version. diff --git a/sdk/python/pulumi_nobl9/py.typed b/examples/.gitkeep similarity index 100% rename from sdk/python/pulumi_nobl9/py.typed rename to examples/.gitkeep diff --git a/go.work b/go.work new file mode 100644 index 0000000..cd96ff3 --- /dev/null +++ b/go.work @@ -0,0 +1,8 @@ +go 1.22 + +use ( + ./provider + // ****** + // Add ./sdk folder when SDK has been published the first time + // ./sdk +) diff --git a/go.work.sum b/go.work.sum new file mode 100644 index 0000000..6f40265 --- /dev/null +++ b/go.work.sum @@ -0,0 +1,5 @@ +github.com/Azure/azure-sdk-for-go v66.0.0+incompatible h1:bmmC38SlE8/E81nNADlgmVGurPWMHDX2YNXVQMrBpEE= +github.com/apparentlymart/go-textseg v1.0.0 h1:rRmlIsPEEhUTIKQb7T++Nz/A5Q6C9IuX2wFoYVvnCs0= +github.com/cenkalti/backoff v2.2.1+incompatible h1:tNowT99t7UNflLxfYYSlKYsBpXdEet03Pg2g16Swow4= +github.com/golang-jwt/jwt v3.2.1+incompatible h1:73Z+4BJcrTC+KczS6WvTPvRGOp1WmfEP4Q1lOd9Z/+c= +github.com/russross/blackfriday v1.6.0 h1:KqfZb0pUVN2lYqZUYRddxF4OR8ZMURnJIG5Y3VRLtww= diff --git a/provider/cmd/pulumi-resource-nobl9/bridge-metadata.json b/provider/cmd/pulumi-resource-nobl9/bridge-metadata.json new file mode 100644 index 0000000..f34bd2a --- /dev/null +++ b/provider/cmd/pulumi-resource-nobl9/bridge-metadata.json @@ -0,0 +1,784 @@ +{ + "renames": { + "resources": { + "nobl9:index/agent:Agent": "nobl9_agent", + "nobl9:index/alertMethodDiscord:AlertMethodDiscord": "nobl9_alert_method_discord", + "nobl9:index/alertMethodEmail:AlertMethodEmail": "nobl9_alert_method_email", + "nobl9:index/alertMethodJira:AlertMethodJira": "nobl9_alert_method_jira", + "nobl9:index/alertMethodMsteams:AlertMethodMsteams": "nobl9_alert_method_msteams", + "nobl9:index/alertMethodOpsgenie:AlertMethodOpsgenie": "nobl9_alert_method_opsgenie", + "nobl9:index/alertMethodPagerduty:AlertMethodPagerduty": "nobl9_alert_method_pagerduty", + "nobl9:index/alertMethodServicenow:AlertMethodServicenow": "nobl9_alert_method_servicenow", + "nobl9:index/alertMethodSlack:AlertMethodSlack": "nobl9_alert_method_slack", + "nobl9:index/alertMethodWebhook:AlertMethodWebhook": "nobl9_alert_method_webhook", + "nobl9:index/alertPolicy:AlertPolicy": "nobl9_alert_policy", + "nobl9:index/directAppdynamics:DirectAppdynamics": "nobl9_direct_appdynamics", + "nobl9:index/directAzureMonitor:DirectAzureMonitor": "nobl9_direct_azure_monitor", + "nobl9:index/directBigquery:DirectBigquery": "nobl9_direct_bigquery", + "nobl9:index/directCloudwatch:DirectCloudwatch": "nobl9_direct_cloudwatch", + "nobl9:index/directDatadog:DirectDatadog": "nobl9_direct_datadog", + "nobl9:index/directDynatrace:DirectDynatrace": "nobl9_direct_dynatrace", + "nobl9:index/directGcm:DirectGcm": "nobl9_direct_gcm", + "nobl9:index/directHoneycomb:DirectHoneycomb": "nobl9_direct_honeycomb", + "nobl9:index/directInfluxdb:DirectInfluxdb": "nobl9_direct_influxdb", + "nobl9:index/directInstana:DirectInstana": "nobl9_direct_instana", + "nobl9:index/directLightstep:DirectLightstep": "nobl9_direct_lightstep", + "nobl9:index/directNewrelic:DirectNewrelic": "nobl9_direct_newrelic", + "nobl9:index/directPingdom:DirectPingdom": "nobl9_direct_pingdom", + "nobl9:index/directRedshift:DirectRedshift": "nobl9_direct_redshift", + "nobl9:index/directSplunk:DirectSplunk": "nobl9_direct_splunk", + "nobl9:index/directSplunkObservability:DirectSplunkObservability": "nobl9_direct_splunk_observability", + "nobl9:index/directSumologic:DirectSumologic": "nobl9_direct_sumologic", + "nobl9:index/directThousandeyes:DirectThousandeyes": "nobl9_direct_thousandeyes", + "nobl9:index/project:Project": "nobl9_project", + "nobl9:index/roleBinding:RoleBinding": "nobl9_role_binding", + "nobl9:index/service:Service": "nobl9_service", + "nobl9:index/slo:Slo": "nobl9_slo" + }, + "functions": { + "nobl9:index/getAwsIamRoleExternalId:getAwsIamRoleExternalId": "nobl9_aws_iam_role_external_id" + }, + "renamedProperties": { + "nobl9:index/AgentAzureMonitorConfig:AgentAzureMonitorConfig": { + "tenantId": "tenant_id" + }, + "nobl9:index/AgentHistoricalDataRetrieval:AgentHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/AgentNewrelicConfig:AgentNewrelicConfig": { + "accountId": "account_id" + }, + "nobl9:index/AlertPolicyCondition:AlertPolicyCondition": { + "alertingWindow": "alerting_window", + "lastsFor": "lasts_for", + "valueString": "value_string" + }, + "nobl9:index/DirectAppdynamicsHistoricalDataRetrieval:DirectAppdynamicsHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/DirectAzureMonitorHistoricalDataRetrieval:DirectAzureMonitorHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/DirectCloudwatchHistoricalDataRetrieval:DirectCloudwatchHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/DirectDatadogHistoricalDataRetrieval:DirectDatadogHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/DirectDynatraceHistoricalDataRetrieval:DirectDynatraceHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/DirectHoneycombHistoricalDataRetrieval:DirectHoneycombHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/DirectLightstepHistoricalDataRetrieval:DirectLightstepHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/DirectNewrelicHistoricalDataRetrieval:DirectNewrelicHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/DirectSplunkHistoricalDataRetrieval:DirectSplunkHistoricalDataRetrieval": { + "defaultDurations": "default_duration", + "maxDurations": "max_duration" + }, + "nobl9:index/SloAnomalyConfig:SloAnomalyConfig": { + "noData": "no_data" + }, + "nobl9:index/SloAnomalyConfigNoData:SloAnomalyConfigNoData": { + "alertMethods": "alert_method" + }, + "nobl9:index/SloAttachment:SloAttachment": { + "displayName": "display_name" + }, + "nobl9:index/SloComposite:SloComposite": { + "burnRateConditions": "burn_rate_condition" + }, + "nobl9:index/SloObjective:SloObjective": { + "countMetrics": "count_metrics", + "displayName": "display_name", + "rawMetrics": "raw_metric", + "timeSliceTarget": "time_slice_target" + }, + "nobl9:index/SloObjectiveCountMetric:SloObjectiveCountMetric": { + "bads": "bad", + "goods": "good", + "totals": "total" + }, + "nobl9:index/SloObjectiveCountMetricBad:SloObjectiveCountMetricBad": { + "amazonPrometheuses": "amazon_prometheus", + "azureMonitors": "azure_monitor", + "bigqueries": "bigquery", + "cloudwatches": "cloudwatch", + "datadogs": "datadog", + "dynatraces": "dynatrace", + "elasticsearches": "elasticsearch", + "gcms": "gcm", + "grafanaLokis": "grafana_loki", + "graphites": "graphite", + "honeycombs": "honeycomb", + "influxdbs": "influxdb", + "instanas": "instana", + "lightsteps": "lightstep", + "newrelics": "newrelic", + "opentsdbs": "opentsdb", + "pingdoms": "pingdom", + "prometheuses": "prometheus", + "redshifts": "redshift", + "splunkObservabilities": "splunk_observability", + "splunks": "splunk", + "sumologics": "sumologic" + }, + "nobl9:index/SloObjectiveCountMetricBadAppdynamic:SloObjectiveCountMetricBadAppdynamic": { + "applicationName": "application_name", + "metricPath": "metric_path" + }, + "nobl9:index/SloObjectiveCountMetricBadAzureMonitor:SloObjectiveCountMetricBadAzureMonitor": { + "dataType": "data_type", + "kqlQuery": "kql_query", + "metricName": "metric_name", + "metricNamespace": "metric_namespace", + "resourceId": "resource_id", + "workspaces": "workspace" + }, + "nobl9:index/SloObjectiveCountMetricBadAzureMonitorWorkspace:SloObjectiveCountMetricBadAzureMonitorWorkspace": { + "resourceGroup": "resource_group", + "subscriptionId": "subscription_id", + "workspaceId": "workspace_id" + }, + "nobl9:index/SloObjectiveCountMetricBadBigquery:SloObjectiveCountMetricBadBigquery": { + "projectId": "project_id" + }, + "nobl9:index/SloObjectiveCountMetricBadCloudwatch:SloObjectiveCountMetricBadCloudwatch": { + "accountId": "account_id", + "metricName": "metric_name" + }, + "nobl9:index/SloObjectiveCountMetricBadDynatrace:SloObjectiveCountMetricBadDynatrace": { + "metricSelector": "metric_selector" + }, + "nobl9:index/SloObjectiveCountMetricBadGcm:SloObjectiveCountMetricBadGcm": { + "projectId": "project_id" + }, + "nobl9:index/SloObjectiveCountMetricBadGraphite:SloObjectiveCountMetricBadGraphite": { + "metricPath": "metric_path" + }, + "nobl9:index/SloObjectiveCountMetricBadInstana:SloObjectiveCountMetricBadInstana": { + "applications": "application", + "infrastructures": "infrastructure", + "metricType": "metric_type" + }, + "nobl9:index/SloObjectiveCountMetricBadInstanaApplication:SloObjectiveCountMetricBadInstanaApplication": { + "apiQuery": "api_query", + "groupBies": "group_by", + "includeInternal": "include_internal", + "includeSynthetic": "include_synthetic", + "metricId": "metric_id" + }, + "nobl9:index/SloObjectiveCountMetricBadInstanaApplicationGroupBy:SloObjectiveCountMetricBadInstanaApplicationGroupBy": { + "tagEntity": "tag_entity", + "tagSecondLevelKey": "tag_second_level_key" + }, + "nobl9:index/SloObjectiveCountMetricBadInstanaInfrastructure:SloObjectiveCountMetricBadInstanaInfrastructure": { + "metricId": "metric_id", + "metricRetrievalMethod": "metric_retrieval_method", + "pluginId": "plugin_id", + "snapshotId": "snapshot_id" + }, + "nobl9:index/SloObjectiveCountMetricBadLightstep:SloObjectiveCountMetricBadLightstep": { + "streamId": "stream_id", + "typeOfData": "type_of_data" + }, + "nobl9:index/SloObjectiveCountMetricBadPingdom:SloObjectiveCountMetricBadPingdom": { + "checkId": "check_id", + "checkType": "check_type" + }, + "nobl9:index/SloObjectiveCountMetricBadRedshift:SloObjectiveCountMetricBadRedshift": { + "clusterId": "cluster_id", + "databaseName": "database_name" + }, + "nobl9:index/SloObjectiveCountMetricBadThousandeye:SloObjectiveCountMetricBadThousandeye": { + "testId": "test_id" + }, + "nobl9:index/SloObjectiveCountMetricGood:SloObjectiveCountMetricGood": { + "amazonPrometheuses": "amazon_prometheus", + "azureMonitors": "azure_monitor", + "bigqueries": "bigquery", + "cloudwatches": "cloudwatch", + "datadogs": "datadog", + "dynatraces": "dynatrace", + "elasticsearches": "elasticsearch", + "gcms": "gcm", + "grafanaLokis": "grafana_loki", + "graphites": "graphite", + "honeycombs": "honeycomb", + "influxdbs": "influxdb", + "instanas": "instana", + "lightsteps": "lightstep", + "newrelics": "newrelic", + "opentsdbs": "opentsdb", + "pingdoms": "pingdom", + "prometheuses": "prometheus", + "redshifts": "redshift", + "splunkObservabilities": "splunk_observability", + "splunks": "splunk", + "sumologics": "sumologic" + }, + "nobl9:index/SloObjectiveCountMetricGoodAppdynamic:SloObjectiveCountMetricGoodAppdynamic": { + "applicationName": "application_name", + "metricPath": "metric_path" + }, + "nobl9:index/SloObjectiveCountMetricGoodAzureMonitor:SloObjectiveCountMetricGoodAzureMonitor": { + "dataType": "data_type", + "kqlQuery": "kql_query", + "metricName": "metric_name", + "metricNamespace": "metric_namespace", + "resourceId": "resource_id", + "workspaces": "workspace" + }, + "nobl9:index/SloObjectiveCountMetricGoodAzureMonitorWorkspace:SloObjectiveCountMetricGoodAzureMonitorWorkspace": { + "resourceGroup": "resource_group", + "subscriptionId": "subscription_id", + "workspaceId": "workspace_id" + }, + "nobl9:index/SloObjectiveCountMetricGoodBigquery:SloObjectiveCountMetricGoodBigquery": { + "projectId": "project_id" + }, + "nobl9:index/SloObjectiveCountMetricGoodCloudwatch:SloObjectiveCountMetricGoodCloudwatch": { + "accountId": "account_id", + "metricName": "metric_name" + }, + "nobl9:index/SloObjectiveCountMetricGoodDynatrace:SloObjectiveCountMetricGoodDynatrace": { + "metricSelector": "metric_selector" + }, + "nobl9:index/SloObjectiveCountMetricGoodGcm:SloObjectiveCountMetricGoodGcm": { + "projectId": "project_id" + }, + "nobl9:index/SloObjectiveCountMetricGoodGraphite:SloObjectiveCountMetricGoodGraphite": { + "metricPath": "metric_path" + }, + "nobl9:index/SloObjectiveCountMetricGoodInstana:SloObjectiveCountMetricGoodInstana": { + "applications": "application", + "infrastructures": "infrastructure", + "metricType": "metric_type" + }, + "nobl9:index/SloObjectiveCountMetricGoodInstanaApplication:SloObjectiveCountMetricGoodInstanaApplication": { + "apiQuery": "api_query", + "groupBies": "group_by", + "includeInternal": "include_internal", + "includeSynthetic": "include_synthetic", + "metricId": "metric_id" + }, + "nobl9:index/SloObjectiveCountMetricGoodInstanaApplicationGroupBy:SloObjectiveCountMetricGoodInstanaApplicationGroupBy": { + "tagEntity": "tag_entity", + "tagSecondLevelKey": "tag_second_level_key" + }, + "nobl9:index/SloObjectiveCountMetricGoodInstanaInfrastructure:SloObjectiveCountMetricGoodInstanaInfrastructure": { + "metricId": "metric_id", + "metricRetrievalMethod": "metric_retrieval_method", + "pluginId": "plugin_id", + "snapshotId": "snapshot_id" + }, + "nobl9:index/SloObjectiveCountMetricGoodLightstep:SloObjectiveCountMetricGoodLightstep": { + "streamId": "stream_id", + "typeOfData": "type_of_data" + }, + "nobl9:index/SloObjectiveCountMetricGoodPingdom:SloObjectiveCountMetricGoodPingdom": { + "checkId": "check_id", + "checkType": "check_type" + }, + "nobl9:index/SloObjectiveCountMetricGoodRedshift:SloObjectiveCountMetricGoodRedshift": { + "clusterId": "cluster_id", + "databaseName": "database_name" + }, + "nobl9:index/SloObjectiveCountMetricGoodThousandeye:SloObjectiveCountMetricGoodThousandeye": { + "testId": "test_id" + }, + "nobl9:index/SloObjectiveCountMetricTotal:SloObjectiveCountMetricTotal": { + "amazonPrometheuses": "amazon_prometheus", + "azureMonitors": "azure_monitor", + "bigqueries": "bigquery", + "cloudwatches": "cloudwatch", + "datadogs": "datadog", + "dynatraces": "dynatrace", + "elasticsearches": "elasticsearch", + "gcms": "gcm", + "grafanaLokis": "grafana_loki", + "graphites": "graphite", + "honeycombs": "honeycomb", + "influxdbs": "influxdb", + "instanas": "instana", + "lightsteps": "lightstep", + "newrelics": "newrelic", + "opentsdbs": "opentsdb", + "pingdoms": "pingdom", + "prometheuses": "prometheus", + "redshifts": "redshift", + "splunkObservabilities": "splunk_observability", + "splunks": "splunk", + "sumologics": "sumologic" + }, + "nobl9:index/SloObjectiveCountMetricTotalAppdynamic:SloObjectiveCountMetricTotalAppdynamic": { + "applicationName": "application_name", + "metricPath": "metric_path" + }, + "nobl9:index/SloObjectiveCountMetricTotalAzureMonitor:SloObjectiveCountMetricTotalAzureMonitor": { + "dataType": "data_type", + "kqlQuery": "kql_query", + "metricName": "metric_name", + "metricNamespace": "metric_namespace", + "resourceId": "resource_id", + "workspaces": "workspace" + }, + "nobl9:index/SloObjectiveCountMetricTotalAzureMonitorWorkspace:SloObjectiveCountMetricTotalAzureMonitorWorkspace": { + "resourceGroup": "resource_group", + "subscriptionId": "subscription_id", + "workspaceId": "workspace_id" + }, + "nobl9:index/SloObjectiveCountMetricTotalBigquery:SloObjectiveCountMetricTotalBigquery": { + "projectId": "project_id" + }, + "nobl9:index/SloObjectiveCountMetricTotalCloudwatch:SloObjectiveCountMetricTotalCloudwatch": { + "accountId": "account_id", + "metricName": "metric_name" + }, + "nobl9:index/SloObjectiveCountMetricTotalDynatrace:SloObjectiveCountMetricTotalDynatrace": { + "metricSelector": "metric_selector" + }, + "nobl9:index/SloObjectiveCountMetricTotalGcm:SloObjectiveCountMetricTotalGcm": { + "projectId": "project_id" + }, + "nobl9:index/SloObjectiveCountMetricTotalGraphite:SloObjectiveCountMetricTotalGraphite": { + "metricPath": "metric_path" + }, + "nobl9:index/SloObjectiveCountMetricTotalInstana:SloObjectiveCountMetricTotalInstana": { + "applications": "application", + "infrastructures": "infrastructure", + "metricType": "metric_type" + }, + "nobl9:index/SloObjectiveCountMetricTotalInstanaApplication:SloObjectiveCountMetricTotalInstanaApplication": { + "apiQuery": "api_query", + "groupBies": "group_by", + "includeInternal": "include_internal", + "includeSynthetic": "include_synthetic", + "metricId": "metric_id" + }, + "nobl9:index/SloObjectiveCountMetricTotalInstanaApplicationGroupBy:SloObjectiveCountMetricTotalInstanaApplicationGroupBy": { + "tagEntity": "tag_entity", + "tagSecondLevelKey": "tag_second_level_key" + }, + "nobl9:index/SloObjectiveCountMetricTotalInstanaInfrastructure:SloObjectiveCountMetricTotalInstanaInfrastructure": { + "metricId": "metric_id", + "metricRetrievalMethod": "metric_retrieval_method", + "pluginId": "plugin_id", + "snapshotId": "snapshot_id" + }, + "nobl9:index/SloObjectiveCountMetricTotalLightstep:SloObjectiveCountMetricTotalLightstep": { + "streamId": "stream_id", + "typeOfData": "type_of_data" + }, + "nobl9:index/SloObjectiveCountMetricTotalPingdom:SloObjectiveCountMetricTotalPingdom": { + "checkId": "check_id", + "checkType": "check_type" + }, + "nobl9:index/SloObjectiveCountMetricTotalRedshift:SloObjectiveCountMetricTotalRedshift": { + "clusterId": "cluster_id", + "databaseName": "database_name" + }, + "nobl9:index/SloObjectiveCountMetricTotalThousandeye:SloObjectiveCountMetricTotalThousandeye": { + "testId": "test_id" + }, + "nobl9:index/SloObjectiveRawMetric:SloObjectiveRawMetric": { + "queries": "query" + }, + "nobl9:index/SloObjectiveRawMetricQuery:SloObjectiveRawMetricQuery": { + "amazonPrometheuses": "amazon_prometheus", + "azureMonitors": "azure_monitor", + "bigqueries": "bigquery", + "cloudwatches": "cloudwatch", + "datadogs": "datadog", + "dynatraces": "dynatrace", + "elasticsearches": "elasticsearch", + "gcms": "gcm", + "grafanaLokis": "grafana_loki", + "graphites": "graphite", + "honeycombs": "honeycomb", + "influxdbs": "influxdb", + "instanas": "instana", + "lightsteps": "lightstep", + "newrelics": "newrelic", + "opentsdbs": "opentsdb", + "pingdoms": "pingdom", + "prometheuses": "prometheus", + "redshifts": "redshift", + "splunkObservabilities": "splunk_observability", + "splunks": "splunk", + "sumologics": "sumologic" + }, + "nobl9:index/SloObjectiveRawMetricQueryAppdynamic:SloObjectiveRawMetricQueryAppdynamic": { + "applicationName": "application_name", + "metricPath": "metric_path" + }, + "nobl9:index/SloObjectiveRawMetricQueryAzureMonitor:SloObjectiveRawMetricQueryAzureMonitor": { + "dataType": "data_type", + "kqlQuery": "kql_query", + "metricName": "metric_name", + "metricNamespace": "metric_namespace", + "resourceId": "resource_id", + "workspaces": "workspace" + }, + "nobl9:index/SloObjectiveRawMetricQueryAzureMonitorWorkspace:SloObjectiveRawMetricQueryAzureMonitorWorkspace": { + "resourceGroup": "resource_group", + "subscriptionId": "subscription_id", + "workspaceId": "workspace_id" + }, + "nobl9:index/SloObjectiveRawMetricQueryBigquery:SloObjectiveRawMetricQueryBigquery": { + "projectId": "project_id" + }, + "nobl9:index/SloObjectiveRawMetricQueryCloudwatch:SloObjectiveRawMetricQueryCloudwatch": { + "accountId": "account_id", + "metricName": "metric_name" + }, + "nobl9:index/SloObjectiveRawMetricQueryDynatrace:SloObjectiveRawMetricQueryDynatrace": { + "metricSelector": "metric_selector" + }, + "nobl9:index/SloObjectiveRawMetricQueryGcm:SloObjectiveRawMetricQueryGcm": { + "projectId": "project_id" + }, + "nobl9:index/SloObjectiveRawMetricQueryGraphite:SloObjectiveRawMetricQueryGraphite": { + "metricPath": "metric_path" + }, + "nobl9:index/SloObjectiveRawMetricQueryInstana:SloObjectiveRawMetricQueryInstana": { + "applications": "application", + "infrastructures": "infrastructure", + "metricType": "metric_type" + }, + "nobl9:index/SloObjectiveRawMetricQueryInstanaApplication:SloObjectiveRawMetricQueryInstanaApplication": { + "apiQuery": "api_query", + "groupBies": "group_by", + "includeInternal": "include_internal", + "includeSynthetic": "include_synthetic", + "metricId": "metric_id" + }, + "nobl9:index/SloObjectiveRawMetricQueryInstanaApplicationGroupBy:SloObjectiveRawMetricQueryInstanaApplicationGroupBy": { + "tagEntity": "tag_entity", + "tagSecondLevelKey": "tag_second_level_key" + }, + "nobl9:index/SloObjectiveRawMetricQueryInstanaInfrastructure:SloObjectiveRawMetricQueryInstanaInfrastructure": { + "metricId": "metric_id", + "metricRetrievalMethod": "metric_retrieval_method", + "pluginId": "plugin_id", + "snapshotId": "snapshot_id" + }, + "nobl9:index/SloObjectiveRawMetricQueryLightstep:SloObjectiveRawMetricQueryLightstep": { + "streamId": "stream_id", + "typeOfData": "type_of_data" + }, + "nobl9:index/SloObjectiveRawMetricQueryPingdom:SloObjectiveRawMetricQueryPingdom": { + "checkId": "check_id", + "checkType": "check_type" + }, + "nobl9:index/SloObjectiveRawMetricQueryRedshift:SloObjectiveRawMetricQueryRedshift": { + "clusterId": "cluster_id", + "databaseName": "database_name" + }, + "nobl9:index/SloObjectiveRawMetricQueryThousandeye:SloObjectiveRawMetricQueryThousandeye": { + "testId": "test_id" + }, + "nobl9:index/SloTimeWindow:SloTimeWindow": { + "calendars": "calendar", + "isRolling": "is_rolling" + }, + "nobl9:index/SloTimeWindowCalendar:SloTimeWindowCalendar": { + "startTime": "start_time", + "timeZone": "time_zone" + }, + "nobl9:index/agent:Agent": { + "agentType": "agent_type", + "amazonPrometheusConfig": "amazon_prometheus_config", + "appdynamicsConfig": "appdynamics_config", + "azureMonitorConfig": "azure_monitor_config", + "bigqueryConfig": "bigquery_config", + "clientId": "client_id", + "clientSecret": "client_secret", + "cloudwatchConfig": "cloudwatch_config", + "datadogConfig": "datadog_config", + "displayName": "display_name", + "dynatraceConfig": "dynatrace_config", + "elasticsearchConfig": "elasticsearch_config", + "gcmConfig": "gcm_config", + "grafanaLokiConfig": "grafana_loki_config", + "graphiteConfig": "graphite_config", + "historicalDataRetrieval": "historical_data_retrieval", + "honeycombConfig": "honeycomb_config", + "influxdbConfig": "influxdb_config", + "instanaConfig": "instana_config", + "lightstepConfig": "lightstep_config", + "newrelicConfig": "newrelic_config", + "opentsdbConfig": "opentsdb_config", + "pingdomConfig": "pingdom_config", + "prometheusConfig": "prometheus_config", + "queryDelay": "query_delay", + "redshiftConfig": "redshift_config", + "releaseChannel": "release_channel", + "sourceOfs": "source_of", + "splunkConfig": "splunk_config", + "splunkObservabilityConfig": "splunk_observability_config", + "sumologicConfig": "sumologic_config", + "thousandeyesConfig": "thousandeyes_config" + }, + "nobl9:index/alertMethodDiscord:AlertMethodDiscord": { + "displayName": "display_name" + }, + "nobl9:index/alertMethodEmail:AlertMethodEmail": { + "bccs": "bcc", + "ccs": "cc", + "displayName": "display_name", + "tos": "to" + }, + "nobl9:index/alertMethodJira:AlertMethodJira": { + "displayName": "display_name", + "projectKey": "project_key" + }, + "nobl9:index/alertMethodMsteams:AlertMethodMsteams": { + "displayName": "display_name" + }, + "nobl9:index/alertMethodOpsgenie:AlertMethodOpsgenie": { + "displayName": "display_name" + }, + "nobl9:index/alertMethodPagerduty:AlertMethodPagerduty": { + "displayName": "display_name", + "integrationKey": "integration_key", + "sendResolution": "send_resolution" + }, + "nobl9:index/alertMethodServicenow:AlertMethodServicenow": { + "displayName": "display_name", + "instanceName": "instance_name" + }, + "nobl9:index/alertMethodSlack:AlertMethodSlack": { + "displayName": "display_name" + }, + "nobl9:index/alertMethodWebhook:AlertMethodWebhook": { + "displayName": "display_name", + "templateFields": "template_fields" + }, + "nobl9:index/alertPolicy:AlertPolicy": { + "alertMethods": "alert_method", + "conditions": "condition", + "displayName": "display_name" + }, + "nobl9:index/directAppdynamics:DirectAppdynamics": { + "accountName": "account_name", + "clientId": "client_id", + "clientName": "client_name", + "clientSecret": "client_secret", + "displayName": "display_name", + "historicalDataRetrieval": "historical_data_retrieval", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directAzureMonitor:DirectAzureMonitor": { + "clientId": "client_id", + "clientSecret": "client_secret", + "displayName": "display_name", + "historicalDataRetrieval": "historical_data_retrieval", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of", + "tenantId": "tenant_id" + }, + "nobl9:index/directBigquery:DirectBigquery": { + "displayName": "display_name", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "serviceAccountKey": "service_account_key", + "sourceOfs": "source_of" + }, + "nobl9:index/directCloudwatch:DirectCloudwatch": { + "displayName": "display_name", + "historicalDataRetrieval": "historical_data_retrieval", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "roleArn": "role_arn", + "sourceOfs": "source_of" + }, + "nobl9:index/directDatadog:DirectDatadog": { + "apiKey": "api_key", + "applicationKey": "application_key", + "displayName": "display_name", + "historicalDataRetrieval": "historical_data_retrieval", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directDynatrace:DirectDynatrace": { + "displayName": "display_name", + "dynatraceToken": "dynatrace_token", + "historicalDataRetrieval": "historical_data_retrieval", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directGcm:DirectGcm": { + "displayName": "display_name", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "serviceAccountKey": "service_account_key", + "sourceOfs": "source_of" + }, + "nobl9:index/directHoneycomb:DirectHoneycomb": { + "apiKey": "api_key", + "displayName": "display_name", + "historicalDataRetrieval": "historical_data_retrieval", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directInfluxdb:DirectInfluxdb": { + "apiToken": "api_token", + "displayName": "display_name", + "logCollectionEnabled": "log_collection_enabled", + "organizationId": "organization_id", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directInstana:DirectInstana": { + "apiToken": "api_token", + "displayName": "display_name", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directLightstep:DirectLightstep": { + "appToken": "app_token", + "displayName": "display_name", + "historicalDataRetrieval": "historical_data_retrieval", + "lightstepOrganization": "lightstep_organization", + "lightstepProject": "lightstep_project", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directNewrelic:DirectNewrelic": { + "accountId": "account_id", + "displayName": "display_name", + "historicalDataRetrieval": "historical_data_retrieval", + "insightsQueryKey": "insights_query_key", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directPingdom:DirectPingdom": { + "apiToken": "api_token", + "displayName": "display_name", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directRedshift:DirectRedshift": { + "displayName": "display_name", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "roleArn": "role_arn", + "secretArn": "secret_arn", + "sourceOfs": "source_of" + }, + "nobl9:index/directSplunk:DirectSplunk": { + "accessToken": "access_token", + "displayName": "display_name", + "historicalDataRetrieval": "historical_data_retrieval", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directSplunkObservability:DirectSplunkObservability": { + "accessToken": "access_token", + "displayName": "display_name", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directSumologic:DirectSumologic": { + "accessId": "access_id", + "accessKey": "access_key", + "displayName": "display_name", + "logCollectionEnabled": "log_collection_enabled", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/directThousandeyes:DirectThousandeyes": { + "displayName": "display_name", + "logCollectionEnabled": "log_collection_enabled", + "oauthBearerToken": "oauth_bearer_token", + "queryDelay": "query_delay", + "releaseChannel": "release_channel", + "sourceOfs": "source_of" + }, + "nobl9:index/getAwsIamRoleExternalId:getAwsIamRoleExternalId": { + "accountId": "account_id", + "externalId": "external_id" + }, + "nobl9:index/project:Project": { + "displayName": "display_name", + "labels": "label" + }, + "nobl9:index/roleBinding:RoleBinding": { + "displayName": "display_name", + "groupRef": "group_ref", + "projectRef": "project_ref", + "roleRef": "role_ref" + }, + "nobl9:index/service:Service": { + "displayName": "display_name", + "labels": "label" + }, + "nobl9:index/slo:Slo": { + "alertPolicies": "alert_policies", + "anomalyConfig": "anomaly_config", + "budgetingMethod": "budgeting_method", + "displayName": "display_name", + "labels": "label", + "objectives": "objective", + "timeWindow": "time_window" + }, + "nobl9:index:Provider": { + "clientId": "client_id", + "clientSecret": "client_secret", + "ingestUrl": "ingest_url", + "oktaAuthServer": "okta_auth_server", + "oktaOrgUrl": "okta_org_url" + } + }, + "renamedConfigProperties": { + "clientId": "client_id", + "clientSecret": "client_secret", + "ingestUrl": "ingest_url", + "oktaAuthServer": "okta_auth_server", + "oktaOrgUrl": "okta_org_url" + } + } +} \ No newline at end of file diff --git a/provider/cmd/pulumi-resource-nobl9/main.go b/provider/cmd/pulumi-resource-nobl9/main.go index 36e98f9..b03f8bb 100644 --- a/provider/cmd/pulumi-resource-nobl9/main.go +++ b/provider/cmd/pulumi-resource-nobl9/main.go @@ -19,15 +19,14 @@ package main import ( _ "embed" - nobl9 "github.com/piclemx/pulumi-nobl9/provider" - "github.com/piclemx/pulumi-nobl9/provider/pkg/version" "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge" + "github.com/piclemx/pulumi-nobl9/provider/pkg/version" + nobl9 "github.com/piclemx/pulumi-nobl9/provider" ) //go:embed schema-embed.json var pulumiSchema []byte func main() { - // Modify the path to point to the new provider tfbridge.Main("nobl9", version.Version, nobl9.Provider(), pulumiSchema) } diff --git a/provider/cmd/pulumi-resource-nobl9/schema.json b/provider/cmd/pulumi-resource-nobl9/schema.json index 5750940..f003cb0 100644 --- a/provider/cmd/pulumi-resource-nobl9/schema.json +++ b/provider/cmd/pulumi-resource-nobl9/schema.json @@ -1,36 +1,45 @@ { "name": "nobl9", - "description": "A Pulumi package for creating and managing Nobl9 cloud resources.", + "displayName": "Nobl9", + "description": "A Pulumi package for creating and managing Nobl9 resources", "keywords": [ "pulumi", "nobl9", - "n9", - "category/cloud" + "category/monitoring" ], - "homepage": "https://www.pulumi.com", + "homepage": "https://github.com/piclemx/pulumi-nobl9", "license": "Apache-2.0", "attribution": "This Pulumi package is based on the [`nobl9` Terraform Provider](https://github.com/nobl9/terraform-provider-nobl9).", "repository": "https://github.com/piclemx/pulumi-nobl9", - "pluginDownloadURL": "https://github.com/piclemx/pulumi-nobl9/releases/", + "logoUrl": "https://raw.githubusercontent.com/piclemx/pulumi-nobl9/main/docs/nobl9.png", + "pluginDownloadURL": "github://api.github.com/piclemx/pulumi-nobl9", "publisher": "piclemx", "meta": { "moduleFormat": "(.*)(?:/[^/]*)" }, "language": { "csharp": { - "compatibility": "tfbridge20", - "namespaces": null, "packageReferences": { "Pulumi": "3.*" - } + }, + "compatibility": "tfbridge20", + "rootNamespace": "Piclemx" }, "go": { - "generateExtraInputTypes": true, + "importBasePath": "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9", "generateResourceContainerTypes": true, - "importBasePath": "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" + "generateExtraInputTypes": true + }, + "java": { + "basePackage": "com.piclemx", + "buildFiles": "", + "gradleNexusPublishPluginVersion": "", + "gradleTest": "" }, "nodejs": { - "compatibility": "tfbridge20", + "packageName": "@piclemx/pulumi-nobl9", + "packageDescription": "A Pulumi package for creating and managing Nobl9 resources. Based on terraform-provider-nobl9: version v0.24.5", + "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/nobl9/terraform-provider-nobl9)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-nobl9` repo](https://github.com/piclemx/pulumi-nobl9/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-nobl9` repo](https://github.com/nobl9/terraform-provider-nobl9/issues).", "dependencies": { "@pulumi/pulumi": "^3.0.0" }, @@ -38,18 +47,17 @@ "@types/mime": "^2.0.0", "@types/node": "^10.0.0" }, - "disableUnionOutputTypes": true, - "packageDescription": "A Pulumi package for creating and managing Nobl9 cloud resources.", - "packageName": "", - "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/nobl9/terraform-provider-nobl9)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-nobl9` repo](https://github.com/piclemx/pulumi-nobl9/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-nobl9` repo](https://github.com/nobl9/terraform-provider-nobl9/issues).", - "typescriptVersion": "" + "compatibility": "tfbridge20", + "disableUnionOutputTypes": true }, "python": { - "compatibility": "tfbridge20", - "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/nobl9/terraform-provider-nobl9)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-nobl9` repo](https://github.com/piclemx/pulumi-nobl9/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-nobl9` repo](https://github.com/nobl9/terraform-provider-nobl9/issues).", + "packageName": "piclemx_pulumi_nobl9", "requires": { "pulumi": "\u003e=3.0.0,\u003c4.0.0" - } + }, + "readme": "\u003e This provider is a derived work of the [Terraform Provider](https://github.com/nobl9/terraform-provider-nobl9)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e first check the [`pulumi-nobl9` repo](https://github.com/piclemx/pulumi-nobl9/issues); however, if that doesn't turn up anything,\n\u003e please consult the source [`terraform-provider-nobl9` repo](https://github.com/nobl9/terraform-provider-nobl9/issues).", + "compatibility": "tfbridge20", + "pyproject": {} } }, "config": { @@ -60,7 +68,8 @@ }, "clientSecret": { "type": "string", - "description": "the [Client Secret](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect\nto Nobl9.\n" + "description": "the [Client Secret](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect\nto Nobl9.\n", + "secret": true }, "ingestUrl": { "type": "string", @@ -75,8 +84,7 @@ "description": "Authorization service URL.\n" }, "organization": { - "type": "string", - "description": "Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that\ncontains resources managed by the Nobl9 Terraform provider.\n" + "type": "string" }, "project": { "type": "string", @@ -85,9 +93,7 @@ }, "defaults": [ "clientId", - "clientSecret", - "organization", - "project" + "clientSecret" ] }, "types": { @@ -95,21 +101,11 @@ "properties": { "region": { "type": "string", - "description": "AWS region e.g., eu-central-1\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "AWS region e.g., eu-central-1\n" }, "url": { "type": "string", - "description": "Base URL to Amazon Prometheus server.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Base URL to Amazon Prometheus server.\n" } }, "type": "object", @@ -122,12 +118,7 @@ "properties": { "url": { "type": "string", - "description": "Base URL to the AppDynamics Controller.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Base URL to the AppDynamics Controller.\n" } }, "type": "object", @@ -135,6 +126,18 @@ "url" ] }, + "nobl9:index/AgentAzureMonitorConfig:AgentAzureMonitorConfig": { + "properties": { + "tenantId": { + "type": "string", + "description": "Azure Tenant Id.\n" + } + }, + "type": "object", + "required": [ + "tenantId" + ] + }, "nobl9:index/AgentBigqueryConfig:AgentBigqueryConfig": { "type": "object" }, @@ -145,12 +148,7 @@ "properties": { "site": { "type": "string", - "description": "`com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union)\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "`com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union)\n" } }, "type": "object", @@ -162,12 +160,7 @@ "properties": { "url": { "type": "string", - "description": "Dynatrace API URL.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Dynatrace API URL.\n" } }, "type": "object", @@ -179,12 +172,7 @@ "properties": { "url": { "type": "string", - "description": "API URL endpoint to the Elasticsearch's instance.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "API URL endpoint to the Elasticsearch's instance.\n" } }, "type": "object", @@ -199,12 +187,7 @@ "properties": { "url": { "type": "string", - "description": "API URL endpoint to the Grafana Loki instance.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "API URL endpoint to the Grafana Loki instance.\n" } }, "type": "object", @@ -216,12 +199,7 @@ "properties": { "url": { "type": "string", - "description": "API URL endpoint to the Graphite's instance.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "API URL endpoint to the Graphite's instance.\n" } }, "type": "object", @@ -229,16 +207,71 @@ "url" ] }, + "nobl9:index/AgentHistoricalDataRetrieval:AgentHistoricalDataRetrieval": { + "properties": { + "defaultDurations": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/AgentHistoricalDataRetrievalDefaultDuration:AgentHistoricalDataRetrievalDefaultDuration" + }, + "description": "Used by default for any SLOs connected to this data source.\n" + }, + "maxDurations": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/AgentHistoricalDataRetrievalMaxDuration:AgentHistoricalDataRetrievalMaxDuration" + }, + "description": "Defines the maximum period for which data can be retrieved.\n" + } + }, + "type": "object", + "required": [ + "defaultDurations", + "maxDurations" + ] + }, + "nobl9:index/AgentHistoricalDataRetrievalDefaultDuration:AgentHistoricalDataRetrievalDefaultDuration": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute, Hour, or Day.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/AgentHistoricalDataRetrievalMaxDuration:AgentHistoricalDataRetrievalMaxDuration": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute, Hour, or Day.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/AgentHoneycombConfig:AgentHoneycombConfig": { + "type": "object" + }, "nobl9:index/AgentInfluxdbConfig:AgentInfluxdbConfig": { "properties": { "url": { "type": "string", - "description": "API URL endpoint to the InfluxDB's instance.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "API URL endpoint to the InfluxDB's instance.\n" } }, "type": "object", @@ -250,12 +283,7 @@ "properties": { "url": { "type": "string", - "description": "API URL endpoint to the InfluxDB's instance.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "API URL endpoint to the InfluxDB's instance.\n" } }, "type": "object", @@ -267,21 +295,15 @@ "properties": { "organization": { "type": "string", - "description": "Organization name registered in Lightstep.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Organization name registered in Lightstep.\n" }, "project": { "type": "string", - "description": "Name of the Lightstep project.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the Lightstep project.\n" + }, + "url": { + "type": "string", + "description": "Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty.\n" } }, "type": "object", @@ -294,12 +316,7 @@ "properties": { "accountId": { "type": "string", - "description": "ID number assigned to the New Relic user account.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "ID number assigned to the New Relic user account.\n" } }, "type": "object", @@ -311,12 +328,7 @@ "properties": { "url": { "type": "string", - "description": "OpenTSDB cluster URL.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "OpenTSDB cluster URL.\n" } }, "type": "object", @@ -331,12 +343,7 @@ "properties": { "url": { "type": "string", - "description": "Base URL to Prometheus server.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Base URL to Prometheus server.\n" } }, "type": "object", @@ -348,21 +355,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -378,12 +375,7 @@ "properties": { "url": { "type": "string", - "description": "Base API URL to the Splunk Search app.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Base API URL to the Splunk Search app.\n" } }, "type": "object", @@ -395,12 +387,7 @@ "properties": { "realm": { "type": "string", - "description": "SplunkObservability Realm.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "SplunkObservability Realm.\n" } }, "type": "object", @@ -412,12 +399,7 @@ "properties": { "url": { "type": "string", - "description": "Sumo Logic API URL.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Sumo Logic API URL.\n" } }, "type": "object", @@ -428,25 +410,24 @@ "nobl9:index/AgentThousandeyesConfig:AgentThousandeyesConfig": { "type": "object" }, + "nobl9:index/AlertMethodPagerdutySendResolution:AlertMethodPagerdutySendResolution": { + "properties": { + "message": { + "type": "string", + "description": "A message that will be attached to your 'all clear' notification.\n" + } + }, + "type": "object" + }, "nobl9:index/AlertPolicyAlertMethod:AlertPolicyAlertMethod": { "properties": { "name": { "type": "string", - "description": "The name of the previously defined alert method.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "The name of the previously defined alert method.\n" }, "project": { "type": "string", - "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n" } }, "type": "object", @@ -456,41 +437,25 @@ }, "nobl9:index/AlertPolicyCondition:AlertPolicyCondition": { "properties": { + "alertingWindow": { + "type": "string", + "description": "Duration over which the burn rate is evaluated.\n" + }, "lastsFor": { "type": "string", - "description": "Indicates how long a given condition needs to be valid to mark the condition as true.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Indicates how long a given condition needs to be valid to mark the condition as true.\n" }, "measurement": { "type": "string", - "description": "One of `timeToBurnBudget` | `burnRate` | `burnedBudget`.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`.\n" }, "value": { "type": "number", - "description": "For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned.\n" }, "valueString": { "type": "string", - "description": "Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format.\n" } }, "type": "object", @@ -498,25 +463,38 @@ "measurement" ] }, - "nobl9:index/DirectAppdynamicsQueryDelay:DirectAppdynamicsQueryDelay": { + "nobl9:index/DirectAppdynamicsHistoricalDataRetrieval:DirectAppdynamicsHistoricalDataRetrieval": { + "properties": { + "defaultDurations": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/DirectAppdynamicsHistoricalDataRetrievalDefaultDuration:DirectAppdynamicsHistoricalDataRetrievalDefaultDuration" + }, + "description": "Used by default for any SLOs connected to this data source.\n" + }, + "maxDurations": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/DirectAppdynamicsHistoricalDataRetrievalMaxDuration:DirectAppdynamicsHistoricalDataRetrievalMaxDuration" + }, + "description": "Defines the maximum period for which data can be retrieved.\n" + } + }, + "type": "object", + "required": [ + "defaultDurations", + "maxDurations" + ] + }, + "nobl9:index/DirectAppdynamicsHistoricalDataRetrievalDefaultDuration:DirectAppdynamicsHistoricalDataRetrievalDefaultDuration": { "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -525,25 +503,15 @@ "value" ] }, - "nobl9:index/DirectBigqueryQueryDelay:DirectBigqueryQueryDelay": { + "nobl9:index/DirectAppdynamicsHistoricalDataRetrievalMaxDuration:DirectAppdynamicsHistoricalDataRetrievalMaxDuration": { "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -552,31 +520,38 @@ "value" ] }, - "nobl9:index/DirectCloudwatchHistoricalDataRetrieval:DirectCloudwatchHistoricalDataRetrieval": { + "nobl9:index/DirectAppdynamicsQueryDelay:DirectAppdynamicsQueryDelay": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute or Second.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/DirectAzureMonitorHistoricalDataRetrieval:DirectAzureMonitorHistoricalDataRetrieval": { "properties": { "defaultDurations": { "type": "array", "items": { - "$ref": "#/types/nobl9:index/DirectCloudwatchHistoricalDataRetrievalDefaultDuration:DirectCloudwatchHistoricalDataRetrievalDefaultDuration" + "$ref": "#/types/nobl9:index/DirectAzureMonitorHistoricalDataRetrievalDefaultDuration:DirectAzureMonitorHistoricalDataRetrievalDefaultDuration" }, - "description": "Used by default for any SLOs connected to this data source.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Used by default for any SLOs connected to this data source.\n" }, "maxDurations": { "type": "array", "items": { - "$ref": "#/types/nobl9:index/DirectCloudwatchHistoricalDataRetrievalMaxDuration:DirectCloudwatchHistoricalDataRetrievalMaxDuration" + "$ref": "#/types/nobl9:index/DirectAzureMonitorHistoricalDataRetrievalMaxDuration:DirectAzureMonitorHistoricalDataRetrievalMaxDuration" }, - "description": "Defines the maximum period for which data can be retrieved.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Defines the maximum period for which data can be retrieved.\n" } }, "type": "object", @@ -585,23 +560,15 @@ "maxDurations" ] }, - "nobl9:index/DirectCloudwatchHistoricalDataRetrievalDefaultDuration:DirectCloudwatchHistoricalDataRetrievalDefaultDuration": { + "nobl9:index/DirectAzureMonitorHistoricalDataRetrievalDefaultDuration:DirectAzureMonitorHistoricalDataRetrievalDefaultDuration": { "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -610,23 +577,15 @@ "value" ] }, - "nobl9:index/DirectCloudwatchHistoricalDataRetrievalMaxDuration:DirectCloudwatchHistoricalDataRetrievalMaxDuration": { + "nobl9:index/DirectAzureMonitorHistoricalDataRetrievalMaxDuration:DirectAzureMonitorHistoricalDataRetrievalMaxDuration": { "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -635,25 +594,15 @@ "value" ] }, - "nobl9:index/DirectCloudwatchQueryDelay:DirectCloudwatchQueryDelay": { + "nobl9:index/DirectAzureMonitorQueryDelay:DirectAzureMonitorQueryDelay": { "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -662,31 +611,38 @@ "value" ] }, - "nobl9:index/DirectDatadogHistoricalDataRetrieval:DirectDatadogHistoricalDataRetrieval": { + "nobl9:index/DirectBigqueryQueryDelay:DirectBigqueryQueryDelay": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute or Second.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/DirectCloudwatchHistoricalDataRetrieval:DirectCloudwatchHistoricalDataRetrieval": { "properties": { "defaultDurations": { "type": "array", "items": { - "$ref": "#/types/nobl9:index/DirectDatadogHistoricalDataRetrievalDefaultDuration:DirectDatadogHistoricalDataRetrievalDefaultDuration" + "$ref": "#/types/nobl9:index/DirectCloudwatchHistoricalDataRetrievalDefaultDuration:DirectCloudwatchHistoricalDataRetrievalDefaultDuration" }, - "description": "Used by default for any SLOs connected to this data source.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Used by default for any SLOs connected to this data source.\n" }, "maxDurations": { "type": "array", "items": { - "$ref": "#/types/nobl9:index/DirectDatadogHistoricalDataRetrievalMaxDuration:DirectDatadogHistoricalDataRetrievalMaxDuration" + "$ref": "#/types/nobl9:index/DirectCloudwatchHistoricalDataRetrievalMaxDuration:DirectCloudwatchHistoricalDataRetrievalMaxDuration" }, - "description": "Defines the maximum period for which data can be retrieved.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Defines the maximum period for which data can be retrieved.\n" } }, "type": "object", @@ -695,23 +651,15 @@ "maxDurations" ] }, - "nobl9:index/DirectDatadogHistoricalDataRetrievalDefaultDuration:DirectDatadogHistoricalDataRetrievalDefaultDuration": { + "nobl9:index/DirectCloudwatchHistoricalDataRetrievalDefaultDuration:DirectCloudwatchHistoricalDataRetrievalDefaultDuration": { "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -720,23 +668,15 @@ "value" ] }, - "nobl9:index/DirectDatadogHistoricalDataRetrievalMaxDuration:DirectDatadogHistoricalDataRetrievalMaxDuration": { + "nobl9:index/DirectCloudwatchHistoricalDataRetrievalMaxDuration:DirectCloudwatchHistoricalDataRetrievalMaxDuration": { "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -745,25 +685,89 @@ "value" ] }, - "nobl9:index/DirectDatadogQueryDelay:DirectDatadogQueryDelay": { + "nobl9:index/DirectCloudwatchQueryDelay:DirectCloudwatchQueryDelay": { "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/DirectDatadogHistoricalDataRetrieval:DirectDatadogHistoricalDataRetrieval": { + "properties": { + "defaultDurations": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/DirectDatadogHistoricalDataRetrievalDefaultDuration:DirectDatadogHistoricalDataRetrievalDefaultDuration" + }, + "description": "Used by default for any SLOs connected to this data source.\n" + }, + "maxDurations": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/DirectDatadogHistoricalDataRetrievalMaxDuration:DirectDatadogHistoricalDataRetrievalMaxDuration" + }, + "description": "Defines the maximum period for which data can be retrieved.\n" + } + }, + "type": "object", + "required": [ + "defaultDurations", + "maxDurations" + ] + }, + "nobl9:index/DirectDatadogHistoricalDataRetrievalDefaultDuration:DirectDatadogHistoricalDataRetrievalDefaultDuration": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute, Hour, or Day.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/DirectDatadogHistoricalDataRetrievalMaxDuration:DirectDatadogHistoricalDataRetrievalMaxDuration": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute, Hour, or Day.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/DirectDatadogQueryDelay:DirectDatadogQueryDelay": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute or Second.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -779,24 +783,14 @@ "items": { "$ref": "#/types/nobl9:index/DirectDynatraceHistoricalDataRetrievalDefaultDuration:DirectDynatraceHistoricalDataRetrievalDefaultDuration" }, - "description": "Used by default for any SLOs connected to this data source.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Used by default for any SLOs connected to this data source.\n" }, "maxDurations": { "type": "array", "items": { "$ref": "#/types/nobl9:index/DirectDynatraceHistoricalDataRetrievalMaxDuration:DirectDynatraceHistoricalDataRetrievalMaxDuration" }, - "description": "Defines the maximum period for which data can be retrieved.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Defines the maximum period for which data can be retrieved.\n" } }, "type": "object", @@ -809,19 +803,11 @@ "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -834,19 +820,11 @@ "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -859,21 +837,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -886,21 +854,85 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/DirectHoneycombHistoricalDataRetrieval:DirectHoneycombHistoricalDataRetrieval": { + "properties": { + "defaultDurations": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/DirectHoneycombHistoricalDataRetrievalDefaultDuration:DirectHoneycombHistoricalDataRetrievalDefaultDuration" + }, + "description": "Used by default for any SLOs connected to this data source.\n" + }, + "maxDurations": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/DirectHoneycombHistoricalDataRetrievalMaxDuration:DirectHoneycombHistoricalDataRetrievalMaxDuration" + }, + "description": "Defines the maximum period for which data can be retrieved.\n" + } + }, + "type": "object", + "required": [ + "defaultDurations", + "maxDurations" + ] + }, + "nobl9:index/DirectHoneycombHistoricalDataRetrievalDefaultDuration:DirectHoneycombHistoricalDataRetrievalDefaultDuration": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute, Hour, or Day.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/DirectHoneycombHistoricalDataRetrievalMaxDuration:DirectHoneycombHistoricalDataRetrievalMaxDuration": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute, Hour, or Day.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" + } + }, + "type": "object", + "required": [ + "unit", + "value" + ] + }, + "nobl9:index/DirectHoneycombQueryDelay:DirectHoneycombQueryDelay": { + "properties": { + "unit": { + "type": "string", + "description": "Must be one of Minute or Second.\n" + }, + "value": { + "type": "integer", + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -913,21 +945,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -940,21 +962,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -970,24 +982,14 @@ "items": { "$ref": "#/types/nobl9:index/DirectLightstepHistoricalDataRetrievalDefaultDuration:DirectLightstepHistoricalDataRetrievalDefaultDuration" }, - "description": "Used by default for any SLOs connected to this data source.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Used by default for any SLOs connected to this data source.\n" }, "maxDurations": { "type": "array", "items": { "$ref": "#/types/nobl9:index/DirectLightstepHistoricalDataRetrievalMaxDuration:DirectLightstepHistoricalDataRetrievalMaxDuration" }, - "description": "Defines the maximum period for which data can be retrieved.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Defines the maximum period for which data can be retrieved.\n" } }, "type": "object", @@ -1000,19 +1002,11 @@ "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1025,19 +1019,11 @@ "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1050,21 +1036,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1080,24 +1056,14 @@ "items": { "$ref": "#/types/nobl9:index/DirectNewrelicHistoricalDataRetrievalDefaultDuration:DirectNewrelicHistoricalDataRetrievalDefaultDuration" }, - "description": "Used by default for any SLOs connected to this data source.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Used by default for any SLOs connected to this data source.\n" }, "maxDurations": { "type": "array", "items": { "$ref": "#/types/nobl9:index/DirectNewrelicHistoricalDataRetrievalMaxDuration:DirectNewrelicHistoricalDataRetrievalMaxDuration" }, - "description": "Defines the maximum period for which data can be retrieved.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Defines the maximum period for which data can be retrieved.\n" } }, "type": "object", @@ -1110,19 +1076,11 @@ "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1135,19 +1093,11 @@ "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1160,21 +1110,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1187,21 +1127,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1214,21 +1144,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1244,24 +1164,14 @@ "items": { "$ref": "#/types/nobl9:index/DirectSplunkHistoricalDataRetrievalDefaultDuration:DirectSplunkHistoricalDataRetrievalDefaultDuration" }, - "description": "Used by default for any SLOs connected to this data source.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Used by default for any SLOs connected to this data source.\n" }, "maxDurations": { "type": "array", "items": { "$ref": "#/types/nobl9:index/DirectSplunkHistoricalDataRetrievalMaxDuration:DirectSplunkHistoricalDataRetrievalMaxDuration" }, - "description": "Defines the maximum period for which data can be retrieved.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Defines the maximum period for which data can be retrieved.\n" } }, "type": "object", @@ -1274,19 +1184,11 @@ "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1299,19 +1201,11 @@ "properties": { "unit": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute, Hour, or Day.\n" }, "value": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1324,21 +1218,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1351,21 +1235,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1378,21 +1252,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1405,21 +1269,11 @@ "properties": { "unit": { "type": "string", - "description": "Must be one of Minute or Second.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be one of Minute or Second.\n" }, "value": { "type": "integer", - "description": "Must be an integer greater than or equal to 0.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Must be an integer greater than or equal to 0.\n" } }, "type": "object", @@ -1432,24 +1286,14 @@ "properties": { "key": { "type": "string", - "description": "A key for the label, unique within the associated resource.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "A key for the label, unique within the associated resource.\n" }, "values": { "type": "array", "items": { "type": "string" }, - "description": "A list of unique values for a single key.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "A list of unique values for a single key.\n" } }, "type": "object", @@ -1462,24 +1306,14 @@ "properties": { "key": { "type": "string", - "description": "A key for the label, unique within the associated resource.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "A key for the label, unique within the associated resource.\n" }, "values": { "type": "array", "items": { "type": "string" }, - "description": "A list of unique values for a single key.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "A list of unique values for a single key.\n" } }, "type": "object", @@ -1488,78 +1322,94 @@ "values" ] }, - "nobl9:index/SloAttachment:SloAttachment": { + "nobl9:index/SloAnomalyConfig:SloAnomalyConfig": { "properties": { - "displayName": { - "type": "string", - "description": "Name displayed for the attachment. Max. length: 63 characters.\n", - "language": { - "python": { - "mapCase": false - } - } - }, - "url": { - "type": "string", - "description": "URL to the attachment\n", - "language": { - "python": { - "mapCase": false - } - } + "noData": { + "$ref": "#/types/nobl9:index/SloAnomalyConfigNoData:SloAnomalyConfigNoData", + "description": "Alert Policies attached to SLO\n" } }, "type": "object", "required": [ - "url" + "noData" ] }, - "nobl9:index/SloComposite:SloComposite": { + "nobl9:index/SloAnomalyConfigNoData:SloAnomalyConfigNoData": { "properties": { - "burnRateConditions": { + "alertMethods": { "type": "array", "items": { - "$ref": "#/types/nobl9:index/SloCompositeBurnRateCondition:SloCompositeBurnRateCondition" + "$ref": "#/types/nobl9:index/SloAnomalyConfigNoDataAlertMethod:SloAnomalyConfigNoDataAlertMethod" }, - "description": "Condition when the Composite SLO’s error budget is burning.\n", - "language": { - "python": { - "mapCase": false - } - } - }, - "target": { - "type": "number", - "description": "Designated value\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Alert methods attached to Anomaly Config\n" } }, "type": "object", "required": [ - "target" + "alertMethods" ] }, - "nobl9:index/SloCompositeBurnRateCondition:SloCompositeBurnRateCondition": { + "nobl9:index/SloAnomalyConfigNoDataAlertMethod:SloAnomalyConfigNoDataAlertMethod": { + "properties": { + "name": { + "type": "string", + "description": "The name of the previously defined alert method.\n" + }, + "project": { + "type": "string", + "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n" + } + }, + "type": "object", + "required": [ + "name", + "project" + ] + }, + "nobl9:index/SloAttachment:SloAttachment": { + "properties": { + "displayName": { + "type": "string", + "description": "Name displayed for the attachment. Max. length: 63 characters.\n" + }, + "url": { + "type": "string", + "description": "URL to the attachment\n" + } + }, + "type": "object", + "required": [ + "url" + ] + }, + "nobl9:index/SloComposite:SloComposite": { + "properties": { + "burnRateConditions": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloCompositeBurnRateCondition:SloCompositeBurnRateCondition" + }, + "description": "Condition when the Composite SLO’s error budget is burning.\n" + }, + "target": { + "type": "number", + "description": "Designated value\n" + } + }, + "type": "object", + "required": [ + "target" + ] + }, + "nobl9:index/SloCompositeBurnRateCondition:SloCompositeBurnRateCondition": { "properties": { "op": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Type of logical operation\n" }, "value": { "type": "number", - "language": { - "python": { - "mapCase": false - } - } + "description": "Burn rate value.\n" } }, "type": "object", @@ -1572,30 +1422,15 @@ "properties": { "kind": { "type": "string", - "description": "Kind of the metric source. One of {Agent, Direct}.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Kind of the metric source. One of {Agent, Direct}.\n" }, "name": { "type": "string", - "description": "Name of the metric source (agent).\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the metric source (agent).\n" }, "project": { "type": "string", - "description": "Name of the metric source project.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the metric source project.\n" } }, "type": "object", @@ -1607,24 +1442,14 @@ "properties": { "key": { "type": "string", - "description": "A key for the label, unique within the associated resource.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "A key for the label, unique within the associated resource.\n" }, "values": { "type": "array", "items": { "type": "string" }, - "description": "A list of unique values for a single key.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "A list of unique values for a single key.\n" } }, "type": "object", @@ -1640,78 +1465,38 @@ "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetric:SloObjectiveCountMetric" }, - "description": "Compares two time series, indicating the ratio of the count of good values to total values.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both.\n" }, "displayName": { "type": "string", - "description": "Name to be displayed\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name to be displayed\n" }, "name": { "type": "string", - "description": "Objective's name. This field is computed if not provided.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Objective's name. This field is computed if not provided.\n" }, "op": { "type": "string", - "description": "Type of logical operation\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Type of logical operation\n" }, "rawMetrics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetric:SloObjectiveRawMetric" }, - "description": "Raw data is used to compare objective values.\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Raw data is used to compare objective values.\n" }, "target": { "type": "number", - "description": "Designated value\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Designated value\n" }, "timeSliceTarget": { "type": "number", - "description": "Designated value for slice\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Designated value for slice\n" }, "value": { "type": "number", - "description": "Value\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Value\n" } }, "type": "object", @@ -1729,44 +1514,801 @@ "value" ] } - } + } + }, + "nobl9:index/SloObjectiveCountMetric:SloObjectiveCountMetric": { + "properties": { + "bads": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBad:SloObjectiveCountMetricBad" + }, + "description": "Configuration for bad time series metrics.\n" + }, + "goods": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGood:SloObjectiveCountMetricGood" + }, + "description": "Configuration for good time series metrics.\n" + }, + "incremental": { + "type": "boolean", + "description": "Should the metrics be incrementing or not\n" + }, + "totals": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotal:SloObjectiveCountMetricTotal" + }, + "description": "Configuration for metric source\n" + } + }, + "type": "object", + "required": [ + "incremental", + "totals" + ] + }, + "nobl9:index/SloObjectiveCountMetricBad:SloObjectiveCountMetricBad": { + "properties": { + "amazonPrometheuses": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadAmazonPrometheus:SloObjectiveCountMetricBadAmazonPrometheus" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus)\n" + }, + "appdynamics": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadAppdynamic:SloObjectiveCountMetricBadAppdynamic" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics)\n" + }, + "azureMonitors": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadAzureMonitor:SloObjectiveCountMetricBadAzureMonitor" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor)\n" + }, + "bigqueries": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadBigquery:SloObjectiveCountMetricBadBigquery" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery)\n" + }, + "cloudwatches": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadCloudwatch:SloObjectiveCountMetricBadCloudwatch" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch)\n" + }, + "datadogs": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadDatadog:SloObjectiveCountMetricBadDatadog" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog)\n" + }, + "dynatraces": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadDynatrace:SloObjectiveCountMetricBadDynatrace" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace)\n" + }, + "elasticsearches": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadElasticsearch:SloObjectiveCountMetricBadElasticsearch" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch)\n" + }, + "gcms": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadGcm:SloObjectiveCountMetricBadGcm" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring)\n" + }, + "grafanaLokis": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadGrafanaLoki:SloObjectiveCountMetricBadGrafanaLoki" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki)\n" + }, + "graphites": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadGraphite:SloObjectiveCountMetricBadGraphite" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite)\n" + }, + "honeycombs": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadHoneycomb:SloObjectiveCountMetricBadHoneycomb" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb)\n" + }, + "influxdbs": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadInfluxdb:SloObjectiveCountMetricBadInfluxdb" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb)\n" + }, + "instanas": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadInstana:SloObjectiveCountMetricBadInstana" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana)\n" + }, + "lightsteps": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadLightstep:SloObjectiveCountMetricBadLightstep" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep)\n" + }, + "newrelics": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadNewrelic:SloObjectiveCountMetricBadNewrelic" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic)\n" + }, + "opentsdbs": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadOpentsdb:SloObjectiveCountMetricBadOpentsdb" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb)\n" + }, + "pingdoms": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadPingdom:SloObjectiveCountMetricBadPingdom" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom)\n" + }, + "prometheuses": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadPrometheus:SloObjectiveCountMetricBadPrometheus" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus)\n" + }, + "redshifts": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadRedshift:SloObjectiveCountMetricBadRedshift" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift)\n" + }, + "splunkObservabilities": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadSplunkObservability:SloObjectiveCountMetricBadSplunkObservability" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability)\n" + }, + "splunks": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadSplunk:SloObjectiveCountMetricBadSplunk" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk)\n" + }, + "sumologics": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadSumologic:SloObjectiveCountMetricBadSumologic" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic)\n" + }, + "thousandeyes": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadThousandeye:SloObjectiveCountMetricBadThousandeye" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes)\n" + } + }, + "type": "object" + }, + "nobl9:index/SloObjectiveCountMetricBadAmazonPrometheus:SloObjectiveCountMetricBadAmazonPrometheus": { + "properties": { + "promql": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "promql" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadAppdynamic:SloObjectiveCountMetricBadAppdynamic": { + "properties": { + "applicationName": { + "type": "string", + "description": "Name of the added application\n" + }, + "metricPath": { + "type": "string", + "description": "Path to the metrics\n" + } + }, + "type": "object", + "required": [ + "applicationName", + "metricPath" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadAzureMonitor:SloObjectiveCountMetricBadAzureMonitor": { + "properties": { + "aggregation": { + "type": "string", + "description": "Aggregation type [Required for metrics]\n" + }, + "dataType": { + "type": "string", + "description": "Specifies source: 'metrics' or 'logs'\n" + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadAzureMonitorDimension:SloObjectiveCountMetricBadAzureMonitorDimension" + }, + "description": "Dimensions of the metric [Optional for metrics]\n" + }, + "kqlQuery": { + "type": "string", + "description": "Logs query in Kusto Query Language [Required for logs]\n" + }, + "metricName": { + "type": "string", + "description": "Name of the metric [Required for metrics]\n" + }, + "metricNamespace": { + "type": "string", + "description": "Namespace of the metric [Optional for metrics]\n" + }, + "resourceId": { + "type": "string", + "description": "Identifier of the Azure Cloud resource [Required for metrics]\n" + }, + "workspaces": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadAzureMonitorWorkspace:SloObjectiveCountMetricBadAzureMonitorWorkspace" + }, + "description": "Log analytics workspace [Required for logs]\n" + } + }, + "type": "object", + "required": [ + "dataType" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadAzureMonitorDimension:SloObjectiveCountMetricBadAzureMonitorDimension": { + "properties": { + "name": { + "type": "string", + "description": "The name of the previously defined alert method.\n" + }, + "value": { + "type": "string", + "description": "Burn rate value.\n" + } + }, + "type": "object", + "required": [ + "name", + "value" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadAzureMonitorWorkspace:SloObjectiveCountMetricBadAzureMonitorWorkspace": { + "properties": { + "resourceGroup": { + "type": "string", + "description": "Resource group of the workspace\n" + }, + "subscriptionId": { + "type": "string", + "description": "Subscription ID of the workspace\n" + }, + "workspaceId": { + "type": "string", + "description": "ID of the workspace\n" + } + }, + "type": "object", + "required": [ + "resourceGroup", + "subscriptionId", + "workspaceId" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadBigquery:SloObjectiveCountMetricBadBigquery": { + "properties": { + "location": { + "type": "string", + "description": "Location of you BigQuery\n" + }, + "projectId": { + "type": "string", + "description": "Project ID\n" + }, + "query": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "location", + "projectId", + "query" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadCloudwatch:SloObjectiveCountMetricBadCloudwatch": { + "properties": { + "accountId": { + "type": "string", + "description": "AccountID used with cross-account observability feature\n" + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadCloudwatchDimension:SloObjectiveCountMetricBadCloudwatchDimension" + }, + "description": "Dimensions of the metric [Optional for metrics]\n" + }, + "json": { + "type": "string", + "description": "JSON query\n" + }, + "metricName": { + "type": "string", + "description": "Name of the metric [Required for metrics]\n" + }, + "namespace": { + "type": "string", + "description": "Namespace of the metric\n" + }, + "region": { + "type": "string", + "description": "Region of the CloudWatch instance\n" + }, + "sql": { + "type": "string", + "description": "SQL query\n" + }, + "stat": { + "type": "string", + "description": "Metric data aggregations\n" + } + }, + "type": "object", + "required": [ + "region" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadCloudwatchDimension:SloObjectiveCountMetricBadCloudwatchDimension": { + "properties": { + "name": { + "type": "string", + "description": "The name of the previously defined alert method.\n" + }, + "value": { + "type": "string", + "description": "Burn rate value.\n" + } + }, + "type": "object", + "required": [ + "name", + "value" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadDatadog:SloObjectiveCountMetricBadDatadog": { + "properties": { + "query": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "query" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadDynatrace:SloObjectiveCountMetricBadDynatrace": { + "properties": { + "metricSelector": { + "type": "string", + "description": "Selector for the metrics\n" + } + }, + "type": "object", + "required": [ + "metricSelector" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadElasticsearch:SloObjectiveCountMetricBadElasticsearch": { + "properties": { + "index": { + "type": "string", + "description": "Index of metrics we want to query\n" + }, + "query": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "index", + "query" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadGcm:SloObjectiveCountMetricBadGcm": { + "properties": { + "projectId": { + "type": "string", + "description": "Project ID\n" + }, + "query": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "projectId", + "query" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadGrafanaLoki:SloObjectiveCountMetricBadGrafanaLoki": { + "properties": { + "logql": { + "type": "string", + "description": "Query for the logs\n" + } + }, + "type": "object", + "required": [ + "logql" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadGraphite:SloObjectiveCountMetricBadGraphite": { + "properties": { + "metricPath": { + "type": "string", + "description": "Path to the metrics\n" + } + }, + "type": "object", + "required": [ + "metricPath" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadHoneycomb:SloObjectiveCountMetricBadHoneycomb": { + "properties": { + "attribute": { + "type": "string", + "description": "Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT'\n" + }, + "calculation": { + "type": "string", + "description": "Calculation type\n" + } + }, + "type": "object", + "required": [ + "calculation" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadInfluxdb:SloObjectiveCountMetricBadInfluxdb": { + "properties": { + "query": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "query" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadInstana:SloObjectiveCountMetricBadInstana": { + "properties": { + "applications": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadInstanaApplication:SloObjectiveCountMetricBadInstanaApplication" + }, + "description": "Infrastructure metric type\n" + }, + "infrastructures": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadInstanaInfrastructure:SloObjectiveCountMetricBadInstanaInfrastructure" + }, + "description": "Infrastructure metric type\n" + }, + "metricType": { + "type": "string", + "description": "Instana metric type 'application' or 'infrastructure'\n" + } + }, + "type": "object", + "required": [ + "metricType" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadInstanaApplication:SloObjectiveCountMetricBadInstanaApplication": { + "properties": { + "aggregation": { + "type": "string", + "description": "Aggregation type [Required for metrics]\n" + }, + "apiQuery": { + "type": "string", + "description": "API query user passes in a JSON format\n" + }, + "groupBies": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricBadInstanaApplicationGroupBy:SloObjectiveCountMetricBadInstanaApplicationGroupBy" + }, + "description": "Group by method\n" + }, + "includeInternal": { + "type": "boolean", + "description": "Include internal\n" + }, + "includeSynthetic": { + "type": "boolean", + "description": "Include synthetic\n" + }, + "metricId": { + "type": "string", + "description": "Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency'\n" + } + }, + "type": "object", + "required": [ + "aggregation", + "apiQuery", + "groupBies", + "metricId" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadInstanaApplicationGroupBy:SloObjectiveCountMetricBadInstanaApplicationGroupBy": { + "properties": { + "tag": { + "type": "string", + "description": "Group by tag\n" + }, + "tagEntity": { + "type": "string", + "description": "Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE'\n" + }, + "tagSecondLevelKey": { + "type": "string" + } + }, + "type": "object", + "required": [ + "tag", + "tagEntity" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadInstanaInfrastructure:SloObjectiveCountMetricBadInstanaInfrastructure": { + "properties": { + "metricId": { + "type": "string", + "description": "Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency'\n" + }, + "metricRetrievalMethod": { + "type": "string", + "description": "Metric retrieval method 'query' or 'snapshot'\n" + }, + "pluginId": { + "type": "string", + "description": "Plugin ID\n" + }, + "query": { + "type": "string", + "description": "Query for the metrics\n" + }, + "snapshotId": { + "type": "string", + "description": "Snapshot ID\n" + } + }, + "type": "object", + "required": [ + "metricId", + "metricRetrievalMethod", + "pluginId" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadLightstep:SloObjectiveCountMetricBadLightstep": { + "properties": { + "percentile": { + "type": "number", + "description": "Optional value to filter by percentiles\n" + }, + "streamId": { + "type": "string", + "description": "ID of the metrics stream\n" + }, + "typeOfData": { + "type": "string", + "description": "Type of data to filter by\n" + }, + "uql": { + "type": "string", + "description": "UQL query\n" + } + }, + "type": "object", + "required": [ + "typeOfData" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadNewrelic:SloObjectiveCountMetricBadNewrelic": { + "properties": { + "nrql": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "nrql" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadOpentsdb:SloObjectiveCountMetricBadOpentsdb": { + "properties": { + "query": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "query" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadPingdom:SloObjectiveCountMetricBadPingdom": { + "properties": { + "checkId": { + "type": "string", + "description": "Pingdom uptime or transaction check's ID\n" + }, + "checkType": { + "type": "string", + "description": "Pingdom check type - uptime or transaction\n" + }, + "status": { + "type": "string", + "description": "Optional for the Uptime checks. Use it to filter the Pingdom check results by status\n" + } + }, + "type": "object", + "required": [ + "checkId" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadPrometheus:SloObjectiveCountMetricBadPrometheus": { + "properties": { + "promql": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "promql" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadRedshift:SloObjectiveCountMetricBadRedshift": { + "properties": { + "clusterId": { + "type": "string", + "description": "Redshift custer ID\n" + }, + "databaseName": { + "type": "string", + "description": "Database name\n" + }, + "query": { + "type": "string", + "description": "Query for the metrics\n" + }, + "region": { + "type": "string", + "description": "Region of the CloudWatch instance\n" + } + }, + "type": "object", + "required": [ + "clusterId", + "databaseName", + "query", + "region" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadSplunk:SloObjectiveCountMetricBadSplunk": { + "properties": { + "query": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "query" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadSplunkObservability:SloObjectiveCountMetricBadSplunkObservability": { + "properties": { + "program": { + "type": "string", + "description": "Query for the metrics\n" + } + }, + "type": "object", + "required": [ + "program" + ] + }, + "nobl9:index/SloObjectiveCountMetricBadSumologic:SloObjectiveCountMetricBadSumologic": { + "properties": { + "quantization": { + "type": "string", + "description": "Period of data aggregation\n" + }, + "query": { + "type": "string", + "description": "Query for the metrics\n" + }, + "rollup": { + "type": "string", + "description": "Aggregation function - avg, sum, min, max, count, none\n" + }, + "type": { + "type": "string", + "description": "Sumologic source - metrics or logs\n" + } + }, + "type": "object", + "required": [ + "query", + "type" + ] }, - "nobl9:index/SloObjectiveCountMetric:SloObjectiveCountMetric": { + "nobl9:index/SloObjectiveCountMetricBadThousandeye:SloObjectiveCountMetricBadThousandeye": { "properties": { - "goods": { - "type": "array", - "items": { - "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGood:SloObjectiveCountMetricGood" - }, - "language": { - "python": { - "mapCase": false - } - } - }, - "incremental": { - "type": "boolean", - "language": { - "python": { - "mapCase": false - } - } - }, - "totals": { - "type": "array", - "items": { - "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotal:SloObjectiveCountMetricTotal" - }, - "language": { - "python": { - "mapCase": false - } - } + "testId": { + "type": "integer", + "description": "ID of the test\n" } }, "type": "object", "required": [ - "incremental" + "testId" ] }, "nobl9:index/SloObjectiveCountMetricGood:SloObjectiveCountMetricGood": { @@ -1776,242 +2318,168 @@ "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodAmazonPrometheus:SloObjectiveCountMetricGoodAmazonPrometheus" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus)\n" }, "appdynamics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodAppdynamic:SloObjectiveCountMetricGoodAppdynamic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics)\n" + }, + "azureMonitors": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodAzureMonitor:SloObjectiveCountMetricGoodAzureMonitor" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor)\n" }, "bigqueries": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodBigquery:SloObjectiveCountMetricGoodBigquery" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery)\n" }, "cloudwatches": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodCloudwatch:SloObjectiveCountMetricGoodCloudwatch" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch)\n" }, "datadogs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodDatadog:SloObjectiveCountMetricGoodDatadog" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog)\n" }, "dynatraces": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodDynatrace:SloObjectiveCountMetricGoodDynatrace" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace)\n" }, "elasticsearches": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodElasticsearch:SloObjectiveCountMetricGoodElasticsearch" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch)\n" }, "gcms": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodGcm:SloObjectiveCountMetricGoodGcm" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring)\n" }, "grafanaLokis": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodGrafanaLoki:SloObjectiveCountMetricGoodGrafanaLoki" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki)\n" }, "graphites": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodGraphite:SloObjectiveCountMetricGoodGraphite" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite)\n" + }, + "honeycombs": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodHoneycomb:SloObjectiveCountMetricGoodHoneycomb" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb)\n" }, "influxdbs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodInfluxdb:SloObjectiveCountMetricGoodInfluxdb" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb)\n" }, "instanas": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodInstana:SloObjectiveCountMetricGoodInstana" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana)\n" }, "lightsteps": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodLightstep:SloObjectiveCountMetricGoodLightstep" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep)\n" }, "newrelics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodNewrelic:SloObjectiveCountMetricGoodNewrelic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic)\n" }, "opentsdbs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodOpentsdb:SloObjectiveCountMetricGoodOpentsdb" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb)\n" }, "pingdoms": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodPingdom:SloObjectiveCountMetricGoodPingdom" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom)\n" }, "prometheuses": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodPrometheus:SloObjectiveCountMetricGoodPrometheus" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus)\n" }, "redshifts": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodRedshift:SloObjectiveCountMetricGoodRedshift" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift)\n" }, "splunkObservabilities": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodSplunkObservability:SloObjectiveCountMetricGoodSplunkObservability" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability)\n" }, "splunks": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodSplunk:SloObjectiveCountMetricGoodSplunk" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk)\n" }, "sumologics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodSumologic:SloObjectiveCountMetricGoodSumologic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic)\n" }, "thousandeyes": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodThousandeye:SloObjectiveCountMetricGoodThousandeye" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes)\n" } }, "type": "object" @@ -2020,11 +2488,7 @@ "properties": { "promql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2036,19 +2500,11 @@ "properties": { "applicationName": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the added application\n" }, "metricPath": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Path to the metrics\n" } }, "type": "object", @@ -2057,31 +2513,104 @@ "metricPath" ] }, + "nobl9:index/SloObjectiveCountMetricGoodAzureMonitor:SloObjectiveCountMetricGoodAzureMonitor": { + "properties": { + "aggregation": { + "type": "string", + "description": "Aggregation type [Required for metrics]\n" + }, + "dataType": { + "type": "string", + "description": "Specifies source: 'metrics' or 'logs'\n" + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodAzureMonitorDimension:SloObjectiveCountMetricGoodAzureMonitorDimension" + }, + "description": "Dimensions of the metric [Optional for metrics]\n" + }, + "kqlQuery": { + "type": "string", + "description": "Logs query in Kusto Query Language [Required for logs]\n" + }, + "metricName": { + "type": "string", + "description": "Name of the metric [Required for metrics]\n" + }, + "metricNamespace": { + "type": "string", + "description": "Namespace of the metric [Optional for metrics]\n" + }, + "resourceId": { + "type": "string", + "description": "Identifier of the Azure Cloud resource [Required for metrics]\n" + }, + "workspaces": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodAzureMonitorWorkspace:SloObjectiveCountMetricGoodAzureMonitorWorkspace" + }, + "description": "Log analytics workspace [Required for logs]\n" + } + }, + "type": "object", + "required": [ + "dataType" + ] + }, + "nobl9:index/SloObjectiveCountMetricGoodAzureMonitorDimension:SloObjectiveCountMetricGoodAzureMonitorDimension": { + "properties": { + "name": { + "type": "string", + "description": "The name of the previously defined alert method.\n" + }, + "value": { + "type": "string", + "description": "Burn rate value.\n" + } + }, + "type": "object", + "required": [ + "name", + "value" + ] + }, + "nobl9:index/SloObjectiveCountMetricGoodAzureMonitorWorkspace:SloObjectiveCountMetricGoodAzureMonitorWorkspace": { + "properties": { + "resourceGroup": { + "type": "string", + "description": "Resource group of the workspace\n" + }, + "subscriptionId": { + "type": "string", + "description": "Subscription ID of the workspace\n" + }, + "workspaceId": { + "type": "string", + "description": "ID of the workspace\n" + } + }, + "type": "object", + "required": [ + "resourceGroup", + "subscriptionId", + "workspaceId" + ] + }, "nobl9:index/SloObjectiveCountMetricGoodBigquery:SloObjectiveCountMetricGoodBigquery": { "properties": { "location": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Location of you BigQuery\n" }, "projectId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Project ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2093,64 +2622,40 @@ }, "nobl9:index/SloObjectiveCountMetricGoodCloudwatch:SloObjectiveCountMetricGoodCloudwatch": { "properties": { + "accountId": { + "type": "string", + "description": "AccountID used with cross-account observability feature\n" + }, "dimensions": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodCloudwatchDimension:SloObjectiveCountMetricGoodCloudwatchDimension" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Dimensions of the metric [Optional for metrics]\n" }, "json": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "JSON query\n" }, "metricName": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the metric [Required for metrics]\n" }, "namespace": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Namespace of the metric\n" }, "region": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Region of the CloudWatch instance\n" }, "sql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "SQL query\n" }, "stat": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric data aggregations\n" } }, "type": "object", @@ -2162,20 +2667,11 @@ "properties": { "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "The name of the previously defined alert method.\n" }, "value": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Burn rate value.\n" } }, "type": "object", @@ -2188,11 +2684,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2204,11 +2696,7 @@ "properties": { "metricSelector": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Selector for the metrics\n" } }, "type": "object", @@ -2220,19 +2708,11 @@ "properties": { "index": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Index of metrics we want to query\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2245,19 +2725,11 @@ "properties": { "projectId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Project ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2270,11 +2742,7 @@ "properties": { "logql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the logs\n" } }, "type": "object", @@ -2286,11 +2754,7 @@ "properties": { "metricPath": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Path to the metrics\n" } }, "type": "object", @@ -2298,15 +2762,27 @@ "metricPath" ] }, + "nobl9:index/SloObjectiveCountMetricGoodHoneycomb:SloObjectiveCountMetricGoodHoneycomb": { + "properties": { + "attribute": { + "type": "string", + "description": "Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT'\n" + }, + "calculation": { + "type": "string", + "description": "Calculation type\n" + } + }, + "type": "object", + "required": [ + "calculation" + ] + }, "nobl9:index/SloObjectiveCountMetricGoodInfluxdb:SloObjectiveCountMetricGoodInfluxdb": { "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2321,30 +2797,18 @@ "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodInstanaApplication:SloObjectiveCountMetricGoodInstanaApplication" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Infrastructure metric type\n" }, "infrastructures": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodInstanaInfrastructure:SloObjectiveCountMetricGoodInstanaInfrastructure" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Infrastructure metric type\n" }, "metricType": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Instana metric type 'application' or 'infrastructure'\n" } }, "type": "object", @@ -2356,54 +2820,30 @@ "properties": { "aggregation": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Aggregation type [Required for metrics]\n" }, "apiQuery": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "API query user passes in a JSON format\n" }, "groupBies": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricGoodInstanaApplicationGroupBy:SloObjectiveCountMetricGoodInstanaApplicationGroupBy" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Group by method\n" }, "includeInternal": { "type": "boolean", - "language": { - "python": { - "mapCase": false - } - } + "description": "Include internal\n" }, "includeSynthetic": { "type": "boolean", - "language": { - "python": { - "mapCase": false - } - } + "description": "Include synthetic\n" }, "metricId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency'\n" } }, "type": "object", @@ -2418,27 +2858,14 @@ "properties": { "tag": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Group by tag\n" }, "tagEntity": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE'\n" }, "tagSecondLevelKey": { - "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "type": "string" } }, "type": "object", @@ -2451,43 +2878,23 @@ "properties": { "metricId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency'\n" }, "metricRetrievalMethod": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric retrieval method 'query' or 'snapshot'\n" }, "pluginId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Plugin ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" }, "snapshotId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Snapshot ID\n" } }, "type": "object", @@ -2501,35 +2908,19 @@ "properties": { "percentile": { "type": "number", - "language": { - "python": { - "mapCase": false - } - } + "description": "Optional value to filter by percentiles\n" }, "streamId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "ID of the metrics stream\n" }, "typeOfData": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Type of data to filter by\n" }, "uql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "UQL query\n" } }, "type": "object", @@ -2541,11 +2932,7 @@ "properties": { "nrql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2557,11 +2944,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2573,27 +2956,15 @@ "properties": { "checkId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Pingdom uptime or transaction check's ID\n" }, "checkType": { - "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "type": "string", + "description": "Pingdom check type - uptime or transaction\n" }, "status": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Optional for the Uptime checks. Use it to filter the Pingdom check results by status\n" } }, "type": "object", @@ -2605,11 +2976,7 @@ "properties": { "promql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2621,35 +2988,19 @@ "properties": { "clusterId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Redshift custer ID\n" }, "databaseName": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Database name\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" }, "region": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Region of the CloudWatch instance\n" } }, "type": "object", @@ -2664,11 +3015,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2680,11 +3027,7 @@ "properties": { "program": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -2696,35 +3039,19 @@ "properties": { "quantization": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Period of data aggregation\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" }, "rollup": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Aggregation function - avg, sum, min, max, count, none\n" }, "type": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Sumologic source - metrics or logs\n" } }, "type": "object", @@ -2737,11 +3064,7 @@ "properties": { "testId": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "ID of the test\n" } }, "type": "object", @@ -2756,242 +3079,168 @@ "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalAmazonPrometheus:SloObjectiveCountMetricTotalAmazonPrometheus" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus)\n" }, "appdynamics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalAppdynamic:SloObjectiveCountMetricTotalAppdynamic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics)\n" + }, + "azureMonitors": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalAzureMonitor:SloObjectiveCountMetricTotalAzureMonitor" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor)\n" }, "bigqueries": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalBigquery:SloObjectiveCountMetricTotalBigquery" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery)\n" }, "cloudwatches": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalCloudwatch:SloObjectiveCountMetricTotalCloudwatch" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch)\n" }, "datadogs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalDatadog:SloObjectiveCountMetricTotalDatadog" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog)\n" }, "dynatraces": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalDynatrace:SloObjectiveCountMetricTotalDynatrace" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace)\n" }, "elasticsearches": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalElasticsearch:SloObjectiveCountMetricTotalElasticsearch" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch)\n" }, "gcms": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalGcm:SloObjectiveCountMetricTotalGcm" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring)\n" }, "grafanaLokis": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalGrafanaLoki:SloObjectiveCountMetricTotalGrafanaLoki" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki)\n" }, "graphites": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalGraphite:SloObjectiveCountMetricTotalGraphite" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite)\n" + }, + "honeycombs": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalHoneycomb:SloObjectiveCountMetricTotalHoneycomb" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb)\n" }, "influxdbs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalInfluxdb:SloObjectiveCountMetricTotalInfluxdb" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb)\n" }, "instanas": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalInstana:SloObjectiveCountMetricTotalInstana" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana)\n" }, "lightsteps": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalLightstep:SloObjectiveCountMetricTotalLightstep" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep)\n" }, "newrelics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalNewrelic:SloObjectiveCountMetricTotalNewrelic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic)\n" }, "opentsdbs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalOpentsdb:SloObjectiveCountMetricTotalOpentsdb" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb)\n" }, "pingdoms": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalPingdom:SloObjectiveCountMetricTotalPingdom" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom)\n" }, "prometheuses": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalPrometheus:SloObjectiveCountMetricTotalPrometheus" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus)\n" }, "redshifts": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalRedshift:SloObjectiveCountMetricTotalRedshift" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift)\n" }, "splunkObservabilities": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalSplunkObservability:SloObjectiveCountMetricTotalSplunkObservability" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability)\n" }, "splunks": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalSplunk:SloObjectiveCountMetricTotalSplunk" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk)\n" }, "sumologics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalSumologic:SloObjectiveCountMetricTotalSumologic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic)\n" }, "thousandeyes": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalThousandeye:SloObjectiveCountMetricTotalThousandeye" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes)\n" } }, "type": "object" @@ -3000,11 +3249,7 @@ "properties": { "promql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3016,19 +3261,11 @@ "properties": { "applicationName": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the added application\n" }, "metricPath": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Path to the metrics\n" } }, "type": "object", @@ -3037,31 +3274,104 @@ "metricPath" ] }, + "nobl9:index/SloObjectiveCountMetricTotalAzureMonitor:SloObjectiveCountMetricTotalAzureMonitor": { + "properties": { + "aggregation": { + "type": "string", + "description": "Aggregation type [Required for metrics]\n" + }, + "dataType": { + "type": "string", + "description": "Specifies source: 'metrics' or 'logs'\n" + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalAzureMonitorDimension:SloObjectiveCountMetricTotalAzureMonitorDimension" + }, + "description": "Dimensions of the metric [Optional for metrics]\n" + }, + "kqlQuery": { + "type": "string", + "description": "Logs query in Kusto Query Language [Required for logs]\n" + }, + "metricName": { + "type": "string", + "description": "Name of the metric [Required for metrics]\n" + }, + "metricNamespace": { + "type": "string", + "description": "Namespace of the metric [Optional for metrics]\n" + }, + "resourceId": { + "type": "string", + "description": "Identifier of the Azure Cloud resource [Required for metrics]\n" + }, + "workspaces": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalAzureMonitorWorkspace:SloObjectiveCountMetricTotalAzureMonitorWorkspace" + }, + "description": "Log analytics workspace [Required for logs]\n" + } + }, + "type": "object", + "required": [ + "dataType" + ] + }, + "nobl9:index/SloObjectiveCountMetricTotalAzureMonitorDimension:SloObjectiveCountMetricTotalAzureMonitorDimension": { + "properties": { + "name": { + "type": "string", + "description": "The name of the previously defined alert method.\n" + }, + "value": { + "type": "string", + "description": "Burn rate value.\n" + } + }, + "type": "object", + "required": [ + "name", + "value" + ] + }, + "nobl9:index/SloObjectiveCountMetricTotalAzureMonitorWorkspace:SloObjectiveCountMetricTotalAzureMonitorWorkspace": { + "properties": { + "resourceGroup": { + "type": "string", + "description": "Resource group of the workspace\n" + }, + "subscriptionId": { + "type": "string", + "description": "Subscription ID of the workspace\n" + }, + "workspaceId": { + "type": "string", + "description": "ID of the workspace\n" + } + }, + "type": "object", + "required": [ + "resourceGroup", + "subscriptionId", + "workspaceId" + ] + }, "nobl9:index/SloObjectiveCountMetricTotalBigquery:SloObjectiveCountMetricTotalBigquery": { "properties": { "location": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Location of you BigQuery\n" }, "projectId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Project ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3073,64 +3383,40 @@ }, "nobl9:index/SloObjectiveCountMetricTotalCloudwatch:SloObjectiveCountMetricTotalCloudwatch": { "properties": { + "accountId": { + "type": "string", + "description": "AccountID used with cross-account observability feature\n" + }, "dimensions": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalCloudwatchDimension:SloObjectiveCountMetricTotalCloudwatchDimension" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Dimensions of the metric [Optional for metrics]\n" }, "json": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "JSON query\n" }, "metricName": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the metric [Required for metrics]\n" }, "namespace": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Namespace of the metric\n" }, "region": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Region of the CloudWatch instance\n" }, "sql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "SQL query\n" }, "stat": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric data aggregations\n" } }, "type": "object", @@ -3142,20 +3428,11 @@ "properties": { "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "The name of the previously defined alert method.\n" }, "value": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Burn rate value.\n" } }, "type": "object", @@ -3168,11 +3445,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3184,11 +3457,7 @@ "properties": { "metricSelector": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Selector for the metrics\n" } }, "type": "object", @@ -3200,19 +3469,11 @@ "properties": { "index": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Index of metrics we want to query\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3225,19 +3486,11 @@ "properties": { "projectId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Project ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3250,11 +3503,7 @@ "properties": { "logql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the logs\n" } }, "type": "object", @@ -3266,11 +3515,7 @@ "properties": { "metricPath": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Path to the metrics\n" } }, "type": "object", @@ -3278,15 +3523,27 @@ "metricPath" ] }, + "nobl9:index/SloObjectiveCountMetricTotalHoneycomb:SloObjectiveCountMetricTotalHoneycomb": { + "properties": { + "attribute": { + "type": "string", + "description": "Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT'\n" + }, + "calculation": { + "type": "string", + "description": "Calculation type\n" + } + }, + "type": "object", + "required": [ + "calculation" + ] + }, "nobl9:index/SloObjectiveCountMetricTotalInfluxdb:SloObjectiveCountMetricTotalInfluxdb": { "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3301,30 +3558,18 @@ "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalInstanaApplication:SloObjectiveCountMetricTotalInstanaApplication" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Infrastructure metric type\n" }, "infrastructures": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalInstanaInfrastructure:SloObjectiveCountMetricTotalInstanaInfrastructure" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Infrastructure metric type\n" }, "metricType": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Instana metric type 'application' or 'infrastructure'\n" } }, "type": "object", @@ -3336,54 +3581,30 @@ "properties": { "aggregation": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Aggregation type [Required for metrics]\n" }, "apiQuery": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "API query user passes in a JSON format\n" }, "groupBies": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveCountMetricTotalInstanaApplicationGroupBy:SloObjectiveCountMetricTotalInstanaApplicationGroupBy" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Group by method\n" }, "includeInternal": { "type": "boolean", - "language": { - "python": { - "mapCase": false - } - } + "description": "Include internal\n" }, "includeSynthetic": { "type": "boolean", - "language": { - "python": { - "mapCase": false - } - } + "description": "Include synthetic\n" }, "metricId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency'\n" } }, "type": "object", @@ -3398,27 +3619,14 @@ "properties": { "tag": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Group by tag\n" }, "tagEntity": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE'\n" }, "tagSecondLevelKey": { - "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "type": "string" } }, "type": "object", @@ -3431,43 +3639,23 @@ "properties": { "metricId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency'\n" }, "metricRetrievalMethod": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric retrieval method 'query' or 'snapshot'\n" }, "pluginId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Plugin ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" }, "snapshotId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Snapshot ID\n" } }, "type": "object", @@ -3481,35 +3669,19 @@ "properties": { "percentile": { "type": "number", - "language": { - "python": { - "mapCase": false - } - } + "description": "Optional value to filter by percentiles\n" }, "streamId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "ID of the metrics stream\n" }, "typeOfData": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Type of data to filter by\n" }, "uql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "UQL query\n" } }, "type": "object", @@ -3521,11 +3693,7 @@ "properties": { "nrql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3537,11 +3705,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3553,27 +3717,15 @@ "properties": { "checkId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Pingdom uptime or transaction check's ID\n" }, "checkType": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Pingdom check type - uptime or transaction\n" }, "status": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Optional for the Uptime checks. Use it to filter the Pingdom check results by status\n" } }, "type": "object", @@ -3585,11 +3737,7 @@ "properties": { "promql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3601,35 +3749,19 @@ "properties": { "clusterId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Redshift custer ID\n" }, "databaseName": { - "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "type": "string", + "description": "Database name\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" }, "region": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Region of the CloudWatch instance\n" } }, "type": "object", @@ -3644,11 +3776,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3660,11 +3788,7 @@ "properties": { "program": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -3676,35 +3800,19 @@ "properties": { "quantization": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Period of data aggregation\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" }, "rollup": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Aggregation function - avg, sum, min, max, count, none\n" }, "type": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Sumologic source - metrics or logs\n" } }, "type": "object", @@ -3717,11 +3825,7 @@ "properties": { "testId": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "ID of the test\n" } }, "type": "object", @@ -3736,14 +3840,13 @@ "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQuery:SloObjectiveRawMetricQuery" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, - "type": "object" + "type": "object", + "required": [ + "queries" + ] }, "nobl9:index/SloObjectiveRawMetricQuery:SloObjectiveRawMetricQuery": { "properties": { @@ -3752,242 +3855,168 @@ "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryAmazonPrometheus:SloObjectiveRawMetricQueryAmazonPrometheus" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus)\n" }, "appdynamics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryAppdynamic:SloObjectiveRawMetricQueryAppdynamic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics)\n" + }, + "azureMonitors": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryAzureMonitor:SloObjectiveRawMetricQueryAzureMonitor" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor)\n" }, "bigqueries": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryBigquery:SloObjectiveRawMetricQueryBigquery" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery)\n" }, "cloudwatches": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryCloudwatch:SloObjectiveRawMetricQueryCloudwatch" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch)\n" }, "datadogs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryDatadog:SloObjectiveRawMetricQueryDatadog" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog)\n" }, "dynatraces": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryDynatrace:SloObjectiveRawMetricQueryDynatrace" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace)\n" }, "elasticsearches": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryElasticsearch:SloObjectiveRawMetricQueryElasticsearch" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch)\n" }, "gcms": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryGcm:SloObjectiveRawMetricQueryGcm" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring)\n" }, "grafanaLokis": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryGrafanaLoki:SloObjectiveRawMetricQueryGrafanaLoki" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki)\n" }, "graphites": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryGraphite:SloObjectiveRawMetricQueryGraphite" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite)\n" + }, + "honeycombs": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryHoneycomb:SloObjectiveRawMetricQueryHoneycomb" + }, + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb)\n" }, "influxdbs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryInfluxdb:SloObjectiveRawMetricQueryInfluxdb" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb)\n" }, "instanas": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryInstana:SloObjectiveRawMetricQueryInstana" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana)\n" }, "lightsteps": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryLightstep:SloObjectiveRawMetricQueryLightstep" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep)\n" }, "newrelics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryNewrelic:SloObjectiveRawMetricQueryNewrelic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic)\n" }, "opentsdbs": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryOpentsdb:SloObjectiveRawMetricQueryOpentsdb" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb)\n" }, "pingdoms": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryPingdom:SloObjectiveRawMetricQueryPingdom" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom)\n" }, "prometheuses": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryPrometheus:SloObjectiveRawMetricQueryPrometheus" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus)\n" }, "redshifts": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryRedshift:SloObjectiveRawMetricQueryRedshift" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift)\n" }, "splunkObservabilities": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQuerySplunkObservability:SloObjectiveRawMetricQuerySplunkObservability" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability)\n" }, "splunks": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQuerySplunk:SloObjectiveRawMetricQuerySplunk" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk)\n" }, "sumologics": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQuerySumologic:SloObjectiveRawMetricQuerySumologic" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic)\n" }, "thousandeyes": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryThousandeye:SloObjectiveRawMetricQueryThousandeye" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes)\n" } }, "type": "object" @@ -3996,11 +4025,7 @@ "properties": { "promql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4012,19 +4037,11 @@ "properties": { "applicationName": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the added application\n" }, "metricPath": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Path to the metrics\n" } }, "type": "object", @@ -4033,31 +4050,104 @@ "metricPath" ] }, + "nobl9:index/SloObjectiveRawMetricQueryAzureMonitor:SloObjectiveRawMetricQueryAzureMonitor": { + "properties": { + "aggregation": { + "type": "string", + "description": "Aggregation type [Required for metrics]\n" + }, + "dataType": { + "type": "string", + "description": "Specifies source: 'metrics' or 'logs'\n" + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryAzureMonitorDimension:SloObjectiveRawMetricQueryAzureMonitorDimension" + }, + "description": "Dimensions of the metric [Optional for metrics]\n" + }, + "kqlQuery": { + "type": "string", + "description": "Logs query in Kusto Query Language [Required for logs]\n" + }, + "metricName": { + "type": "string", + "description": "Name of the metric [Required for metrics]\n" + }, + "metricNamespace": { + "type": "string", + "description": "Namespace of the metric [Optional for metrics]\n" + }, + "resourceId": { + "type": "string", + "description": "Identifier of the Azure Cloud resource [Required for metrics]\n" + }, + "workspaces": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryAzureMonitorWorkspace:SloObjectiveRawMetricQueryAzureMonitorWorkspace" + }, + "description": "Log analytics workspace [Required for logs]\n" + } + }, + "type": "object", + "required": [ + "dataType" + ] + }, + "nobl9:index/SloObjectiveRawMetricQueryAzureMonitorDimension:SloObjectiveRawMetricQueryAzureMonitorDimension": { + "properties": { + "name": { + "type": "string", + "description": "The name of the previously defined alert method.\n" + }, + "value": { + "type": "string", + "description": "Burn rate value.\n" + } + }, + "type": "object", + "required": [ + "name", + "value" + ] + }, + "nobl9:index/SloObjectiveRawMetricQueryAzureMonitorWorkspace:SloObjectiveRawMetricQueryAzureMonitorWorkspace": { + "properties": { + "resourceGroup": { + "type": "string", + "description": "Resource group of the workspace\n" + }, + "subscriptionId": { + "type": "string", + "description": "Subscription ID of the workspace\n" + }, + "workspaceId": { + "type": "string", + "description": "ID of the workspace\n" + } + }, + "type": "object", + "required": [ + "resourceGroup", + "subscriptionId", + "workspaceId" + ] + }, "nobl9:index/SloObjectiveRawMetricQueryBigquery:SloObjectiveRawMetricQueryBigquery": { "properties": { "location": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Location of you BigQuery\n" }, "projectId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Project ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4069,64 +4159,40 @@ }, "nobl9:index/SloObjectiveRawMetricQueryCloudwatch:SloObjectiveRawMetricQueryCloudwatch": { "properties": { + "accountId": { + "type": "string", + "description": "AccountID used with cross-account observability feature\n" + }, "dimensions": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryCloudwatchDimension:SloObjectiveRawMetricQueryCloudwatchDimension" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Dimensions of the metric [Optional for metrics]\n" }, "json": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "JSON query\n" }, "metricName": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Name of the metric [Required for metrics]\n" }, "namespace": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Namespace of the metric\n" }, "region": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Region of the CloudWatch instance\n" }, "sql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "SQL query\n" }, "stat": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric data aggregations\n" } }, "type": "object", @@ -4138,20 +4204,11 @@ "properties": { "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "The name of the previously defined alert method.\n" }, "value": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Burn rate value.\n" } }, "type": "object", @@ -4164,11 +4221,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4180,11 +4233,7 @@ "properties": { "metricSelector": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Selector for the metrics\n" } }, "type": "object", @@ -4196,19 +4245,11 @@ "properties": { "index": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Index of metrics we want to query\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4221,19 +4262,11 @@ "properties": { "projectId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Project ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4246,11 +4279,7 @@ "properties": { "logql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the logs\n" } }, "type": "object", @@ -4262,11 +4291,7 @@ "properties": { "metricPath": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Path to the metrics\n" } }, "type": "object", @@ -4274,15 +4299,27 @@ "metricPath" ] }, + "nobl9:index/SloObjectiveRawMetricQueryHoneycomb:SloObjectiveRawMetricQueryHoneycomb": { + "properties": { + "attribute": { + "type": "string", + "description": "Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT'\n" + }, + "calculation": { + "type": "string", + "description": "Calculation type\n" + } + }, + "type": "object", + "required": [ + "calculation" + ] + }, "nobl9:index/SloObjectiveRawMetricQueryInfluxdb:SloObjectiveRawMetricQueryInfluxdb": { "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4297,30 +4334,18 @@ "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryInstanaApplication:SloObjectiveRawMetricQueryInstanaApplication" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Infrastructure metric type\n" }, "infrastructures": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryInstanaInfrastructure:SloObjectiveRawMetricQueryInstanaInfrastructure" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Infrastructure metric type\n" }, "metricType": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Instana metric type 'application' or 'infrastructure'\n" } }, "type": "object", @@ -4332,54 +4357,30 @@ "properties": { "aggregation": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Aggregation type [Required for metrics]\n" }, "apiQuery": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "API query user passes in a JSON format\n" }, "groupBies": { "type": "array", "items": { "$ref": "#/types/nobl9:index/SloObjectiveRawMetricQueryInstanaApplicationGroupBy:SloObjectiveRawMetricQueryInstanaApplicationGroupBy" }, - "language": { - "python": { - "mapCase": false - } - } + "description": "Group by method\n" }, "includeInternal": { "type": "boolean", - "language": { - "python": { - "mapCase": false - } - } + "description": "Include internal\n" }, "includeSynthetic": { "type": "boolean", - "language": { - "python": { - "mapCase": false - } - } + "description": "Include synthetic\n" }, "metricId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency'\n" } }, "type": "object", @@ -4394,27 +4395,14 @@ "properties": { "tag": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Group by tag\n" }, "tagEntity": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE'\n" }, "tagSecondLevelKey": { - "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "type": "string" } }, "type": "object", @@ -4427,43 +4415,23 @@ "properties": { "metricId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency'\n" }, "metricRetrievalMethod": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Metric retrieval method 'query' or 'snapshot'\n" }, "pluginId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Plugin ID\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" }, "snapshotId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Snapshot ID\n" } }, "type": "object", @@ -4477,35 +4445,19 @@ "properties": { "percentile": { "type": "number", - "language": { - "python": { - "mapCase": false - } - } + "description": "Optional value to filter by percentiles\n" }, "streamId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "ID of the metrics stream\n" }, "typeOfData": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Type of data to filter by\n" }, "uql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "UQL query\n" } }, "type": "object", @@ -4517,11 +4469,7 @@ "properties": { "nrql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4533,11 +4481,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4549,27 +4493,15 @@ "properties": { "checkId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Pingdom uptime or transaction check's ID\n" }, "checkType": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Pingdom check type - uptime or transaction\n" }, "status": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Optional for the Uptime checks. Use it to filter the Pingdom check results by status\n" } }, "type": "object", @@ -4581,11 +4513,7 @@ "properties": { "promql": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4597,35 +4525,19 @@ "properties": { "clusterId": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Redshift custer ID\n" }, "databaseName": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Database name\n" }, "query": { - "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "type": "string", + "description": "Query for the metrics\n" }, "region": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Region of the CloudWatch instance\n" } }, "type": "object", @@ -4640,11 +4552,7 @@ "properties": { "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4656,11 +4564,7 @@ "properties": { "program": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" } }, "type": "object", @@ -4672,35 +4576,19 @@ "properties": { "quantization": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Period of data aggregation\n" }, "query": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Query for the metrics\n" }, "rollup": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Aggregation function - avg, sum, min, max, count, none\n" }, "type": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Sumologic source - metrics or logs\n" } }, "type": "object", @@ -4713,11 +4601,7 @@ "properties": { "testId": { "type": "integer", - "language": { - "python": { - "mapCase": false - } - } + "description": "ID of the test\n" } }, "type": "object", @@ -4732,51 +4616,26 @@ "items": { "$ref": "#/types/nobl9:index/SloTimeWindowCalendar:SloTimeWindowCalendar" }, - "description": "Alert Policies attached to SLO\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Alert Policies attached to SLO\n" }, "count": { "type": "integer", - "description": "Count of the time unit\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Count of the time unit\n" }, "isRolling": { "type": "boolean", - "description": "Is the window moving or not\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Is the window moving or not\n" }, "period": { "type": "object", "additionalProperties": { "type": "string" }, - "description": "Period between start time and added count\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Period between start time and added count\n" }, "unit": { "type": "string", - "description": "Unit of time\n", - "language": { - "python": { - "mapCase": false - } - } + "description": "Unit of time\n" } }, "type": "object", @@ -4798,19 +4657,11 @@ "properties": { "startTime": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Date of the start\n" }, "timeZone": { "type": "string", - "language": { - "python": { - "mapCase": false - } - } + "description": "Timezone name in IANA Time Zone Database\n" } }, "type": "object", @@ -4829,7 +4680,8 @@ }, "clientSecret": { "type": "string", - "description": "the [Client Secret](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect\nto Nobl9.\n" + "description": "the [Client Secret](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect\nto Nobl9.\n", + "secret": true }, "ingestUrl": { "type": "string", @@ -4854,9 +4706,7 @@ }, "required": [ "clientId", - "clientSecret", - "organization", - "project" + "clientSecret" ], "inputProperties": { "clientId": { @@ -4865,7 +4715,8 @@ }, "clientSecret": { "type": "string", - "description": "the [Client Secret](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect\nto Nobl9.\n" + "description": "the [Client Secret](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect\nto Nobl9.\n", + "secret": true }, "ingestUrl": { "type": "string", @@ -4890,14 +4741,12 @@ }, "requiredInputs": [ "clientId", - "clientSecret", - "organization", - "project" + "clientSecret" ] }, "resources": { "nobl9:index/agent:Agent": { - "description": "The Agent is a lightweight application that executes the queries defined for your Nobl9 SLOs. Queries are written in the language supported by the data source in question and executed via native APIs.\n\nThe Agent then sends your SLI metrics back to Nobl9 for processing and error budget calculation.\n\nFor more information, refer to [Agent configuration | Nobl9 Documentation](https://docs.nobl9.com/nobl9_agent)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst thisProject = new nobl9.Project(\"thisProject\", {\n displayName: \"Test N9 Terraform\",\n description: \"An example N9 Terraform project\",\n});\nconst thisAgent = new nobl9.Agent(\"thisAgent\", {\n project: thisProject.name,\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n agentType: \"prometheus\",\n prometheusConfig: {\n url: \"http://web.net\",\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\nthis_project = nobl9.Project(\"thisProject\",\n display_name=\"Test N9 Terraform\",\n description=\"An example N9 Terraform project\")\nthis_agent = nobl9.Agent(\"thisAgent\",\n project=this_project.name,\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ],\n agent_type=\"prometheus\",\n prometheus_config=nobl9.AgentPrometheusConfigArgs(\n url=\"http://web.net\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var thisProject = new Nobl9.Project(\"thisProject\", new()\n {\n DisplayName = \"Test N9 Terraform\",\n Description = \"An example N9 Terraform project\",\n });\n\n var thisAgent = new Nobl9.Agent(\"thisAgent\", new()\n {\n Project = thisProject.Name,\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n AgentType = \"prometheus\",\n PrometheusConfig = new Nobl9.Inputs.AgentPrometheusConfigArgs\n {\n Url = \"http://web.net\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthisProject, err := nobl9.NewProject(ctx, \"thisProject\", \u0026nobl9.ProjectArgs{\n\t\t\tDisplayName: pulumi.String(\"Test N9 Terraform\"),\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewAgent(ctx, \"thisAgent\", \u0026nobl9.AgentArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t\tAgentType: pulumi.String(\"prometheus\"),\n\t\t\tPrometheusConfig: \u0026AgentPrometheusConfigArgs{\n\t\t\t\tUrl: pulumi.String(\"http://web.net\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.Agent;\nimport com.pulumi.nobl9.AgentArgs;\nimport com.pulumi.nobl9.inputs.AgentPrometheusConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var thisProject = new Project(\"thisProject\", ProjectArgs.builder() \n .displayName(\"Test N9 Terraform\")\n .description(\"An example N9 Terraform project\")\n .build());\n\n var thisAgent = new Agent(\"thisAgent\", AgentArgs.builder() \n .project(thisProject.name())\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .agentType(\"prometheus\")\n .prometheusConfig(AgentPrometheusConfigArgs.builder()\n .url(\"http://web.net\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n thisProject:\n type: nobl9:Project\n properties:\n displayName: Test N9 Terraform\n description: An example N9 Terraform project\n thisAgent:\n type: nobl9:Agent\n properties:\n project: ${thisProject.name}\n sourceOfs:\n - Metrics\n - Services\n agentType: prometheus\n prometheusConfig:\n url: http://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "The Agent is a lightweight application that executes the queries defined for your Nobl9 SLOs. Queries are written in the language supported by the data source in question and executed via native APIs.\n\nThe Agent then sends your SLI metrics back to Nobl9 for processing and error budget calculation.\n\nFor more information, refer to [Agent configuration | Nobl9 Documentation](https://docs.nobl9.com/nobl9_agent)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst thisProject = new nobl9.Project(\"thisProject\", {\n displayName: \"Test N9 Terraform\",\n description: \"An example N9 Terraform project\",\n});\nconst thisAgent = new nobl9.Agent(\"thisAgent\", {\n project: thisProject.name,\n agentType: \"prometheus\",\n releaseChannel: \"stable\",\n prometheusConfig: {\n url: \"http://web.net\",\n },\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\nthis_project = nobl9.Project(\"thisProject\",\n display_name=\"Test N9 Terraform\",\n description=\"An example N9 Terraform project\")\nthis_agent = nobl9.Agent(\"thisAgent\",\n project=this_project.name,\n agent_type=\"prometheus\",\n release_channel=\"stable\",\n prometheus_config=nobl9.AgentPrometheusConfigArgs(\n url=\"http://web.net\",\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var thisProject = new Nobl9.Project(\"thisProject\", new()\n {\n DisplayName = \"Test N9 Terraform\",\n Description = \"An example N9 Terraform project\",\n });\n\n var thisAgent = new Nobl9.Agent(\"thisAgent\", new()\n {\n Project = thisProject.Name,\n AgentType = \"prometheus\",\n ReleaseChannel = \"stable\",\n PrometheusConfig = new Nobl9.Inputs.AgentPrometheusConfigArgs\n {\n Url = \"http://web.net\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthisProject, err := nobl9.NewProject(ctx, \"thisProject\", \u0026nobl9.ProjectArgs{\n\t\t\tDisplayName: pulumi.String(\"Test N9 Terraform\"),\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewAgent(ctx, \"thisAgent\", \u0026nobl9.AgentArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tAgentType: pulumi.String(\"prometheus\"),\n\t\t\tReleaseChannel: pulumi.String(\"stable\"),\n\t\t\tPrometheusConfig: \u0026nobl9.AgentPrometheusConfigArgs{\n\t\t\t\tUrl: pulumi.String(\"http://web.net\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.Agent;\nimport com.pulumi.nobl9.AgentArgs;\nimport com.pulumi.nobl9.inputs.AgentPrometheusConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var thisProject = new Project(\"thisProject\", ProjectArgs.builder() \n .displayName(\"Test N9 Terraform\")\n .description(\"An example N9 Terraform project\")\n .build());\n\n var thisAgent = new Agent(\"thisAgent\", AgentArgs.builder() \n .project(thisProject.name())\n .agentType(\"prometheus\")\n .releaseChannel(\"stable\")\n .prometheusConfig(AgentPrometheusConfigArgs.builder()\n .url(\"http://web.net\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n thisProject:\n type: nobl9:Project\n properties:\n displayName: Test N9 Terraform\n description: An example N9 Terraform project\n thisAgent:\n type: nobl9:Agent\n properties:\n project: ${thisProject.name}\n agentType: prometheus\n releaseChannel: stable\n prometheusConfig:\n url: http://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "agentType": { "type": "string", @@ -4911,6 +4760,10 @@ "$ref": "#/types/nobl9:index/AgentAppdynamicsConfig:AgentAppdynamicsConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent)\n" }, + "azureMonitorConfig": { + "$ref": "#/types/nobl9:index/AgentAzureMonitorConfig:AgentAzureMonitorConfig", + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent)\n" + }, "bigqueryConfig": { "$ref": "#/types/nobl9:index/AgentBigqueryConfig:AgentBigqueryConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent)\n" @@ -4959,6 +4812,14 @@ "$ref": "#/types/nobl9:index/AgentGraphiteConfig:AgentGraphiteConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent)\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/AgentHistoricalDataRetrieval:AgentHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "honeycombConfig": { + "$ref": "#/types/nobl9:index/AgentHoneycombConfig:AgentHoneycombConfig", + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent)\n" + }, "influxdbConfig": { "$ref": "#/types/nobl9:index/AgentInfluxdbConfig:AgentInfluxdbConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent)\n" @@ -4989,7 +4850,7 @@ }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + "description": "Name of the Lightstep project.\n" }, "prometheusConfig": { "$ref": "#/types/nobl9:index/AgentPrometheusConfig:AgentPrometheusConfig", @@ -5003,12 +4864,17 @@ "$ref": "#/types/nobl9:index/AgentRedshiftConfig:AgentRedshiftConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent)\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "splunkConfig": { "$ref": "#/types/nobl9:index/AgentSplunkConfig:AgentSplunkConfig", @@ -5038,9 +4904,11 @@ "agentType", "clientId", "clientSecret", + "historicalDataRetrieval", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status" ], "inputProperties": { @@ -5056,6 +4924,10 @@ "$ref": "#/types/nobl9:index/AgentAppdynamicsConfig:AgentAppdynamicsConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent)\n" }, + "azureMonitorConfig": { + "$ref": "#/types/nobl9:index/AgentAzureMonitorConfig:AgentAzureMonitorConfig", + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent)\n" + }, "bigqueryConfig": { "$ref": "#/types/nobl9:index/AgentBigqueryConfig:AgentBigqueryConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent)\n" @@ -5096,6 +4968,14 @@ "$ref": "#/types/nobl9:index/AgentGraphiteConfig:AgentGraphiteConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent)\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/AgentHistoricalDataRetrieval:AgentHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "honeycombConfig": { + "$ref": "#/types/nobl9:index/AgentHoneycombConfig:AgentHoneycombConfig", + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent)\n" + }, "influxdbConfig": { "$ref": "#/types/nobl9:index/AgentInfluxdbConfig:AgentInfluxdbConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent)\n" @@ -5127,7 +5007,7 @@ }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Name of the Lightstep project.\n", "willReplaceOnChanges": true }, "prometheusConfig": { @@ -5142,12 +5022,17 @@ "$ref": "#/types/nobl9:index/AgentRedshiftConfig:AgentRedshiftConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent)\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "splunkConfig": { "$ref": "#/types/nobl9:index/AgentSplunkConfig:AgentSplunkConfig", @@ -5168,8 +5053,7 @@ }, "requiredInputs": [ "agentType", - "project", - "sourceOfs" + "project" ], "stateInputs": { "description": "Input properties used for looking up and filtering Agent resources.\n", @@ -5186,6 +5070,10 @@ "$ref": "#/types/nobl9:index/AgentAppdynamicsConfig:AgentAppdynamicsConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent)\n" }, + "azureMonitorConfig": { + "$ref": "#/types/nobl9:index/AgentAzureMonitorConfig:AgentAzureMonitorConfig", + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent)\n" + }, "bigqueryConfig": { "$ref": "#/types/nobl9:index/AgentBigqueryConfig:AgentBigqueryConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent)\n" @@ -5234,6 +5122,14 @@ "$ref": "#/types/nobl9:index/AgentGraphiteConfig:AgentGraphiteConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent)\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/AgentHistoricalDataRetrieval:AgentHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "honeycombConfig": { + "$ref": "#/types/nobl9:index/AgentHoneycombConfig:AgentHoneycombConfig", + "description": "[Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent)\n" + }, "influxdbConfig": { "$ref": "#/types/nobl9:index/AgentInfluxdbConfig:AgentInfluxdbConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent)\n" @@ -5265,7 +5161,7 @@ }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Name of the Lightstep project.\n", "willReplaceOnChanges": true }, "prometheusConfig": { @@ -5280,12 +5176,17 @@ "$ref": "#/types/nobl9:index/AgentRedshiftConfig:AgentRedshiftConfig", "description": "[Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent)\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "splunkConfig": { "$ref": "#/types/nobl9:index/AgentSplunkConfig:AgentSplunkConfig", @@ -5334,7 +5235,8 @@ }, "url": { "type": "string", - "description": "Discord webhook endpoint URL. Refer to [Intro to webhooks | Discord documentation](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) for more details.\n" + "description": "Discord webhook endpoint URL. Refer to [Intro to webhooks | Discord documentation](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) for more details.\n", + "secret": true } }, "required": [ @@ -5363,7 +5265,8 @@ }, "url": { "type": "string", - "description": "Discord webhook endpoint URL. Refer to [Intro to webhooks | Discord documentation](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) for more details.\n" + "description": "Discord webhook endpoint URL. Refer to [Intro to webhooks | Discord documentation](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) for more details.\n", + "secret": true } }, "requiredInputs": [ @@ -5392,7 +5295,8 @@ }, "url": { "type": "string", - "description": "Discord webhook endpoint URL. Refer to [Intro to webhooks | Discord documentation](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) for more details.\n" + "description": "Discord webhook endpoint URL. Refer to [Intro to webhooks | Discord documentation](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) for more details.\n", + "secret": true } }, "type": "object" @@ -5409,7 +5313,8 @@ }, "body": { "type": "string", - "description": "The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration).\n" + "description": "This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility.\n", + "deprecationMessage": "'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file." }, "ccs": { "type": "array", @@ -5436,7 +5341,8 @@ }, "subject": { "type": "string", - "description": "The Subject of the email alert.\n" + "description": "This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility.\n", + "deprecationMessage": "'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file." }, "tos": { "type": "array", @@ -5447,10 +5353,8 @@ } }, "required": [ - "body", "name", "project", - "subject", "tos" ], "inputProperties": { @@ -5463,7 +5367,8 @@ }, "body": { "type": "string", - "description": "The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration).\n" + "description": "This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility.\n", + "deprecationMessage": "'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file." }, "ccs": { "type": "array", @@ -5492,7 +5397,8 @@ }, "subject": { "type": "string", - "description": "The Subject of the email alert.\n" + "description": "This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility.\n", + "deprecationMessage": "'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file." }, "tos": { "type": "array", @@ -5503,9 +5409,7 @@ } }, "requiredInputs": [ - "body", "project", - "subject", "tos" ], "stateInputs": { @@ -5520,7 +5424,8 @@ }, "body": { "type": "string", - "description": "The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration).\n" + "description": "This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility.\n", + "deprecationMessage": "'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file." }, "ccs": { "type": "array", @@ -5549,7 +5454,8 @@ }, "subject": { "type": "string", - "description": "The Subject of the email alert.\n" + "description": "This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility.\n", + "deprecationMessage": "'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file." }, "tos": { "type": "array", @@ -5566,7 +5472,8 @@ "properties": { "apitoken": { "type": "string", - "description": "[API Token](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/) with access rights to the project.\n" + "description": "[API Token](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/) with access rights to the project.\n", + "secret": true }, "description": { "type": "string", @@ -5608,7 +5515,8 @@ "inputProperties": { "apitoken": { "type": "string", - "description": "[API Token](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/) with access rights to the project.\n" + "description": "[API Token](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/) with access rights to the project.\n", + "secret": true }, "description": { "type": "string", @@ -5652,7 +5560,8 @@ "properties": { "apitoken": { "type": "string", - "description": "[API Token](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/) with access rights to the project.\n" + "description": "[API Token](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/) with access rights to the project.\n", + "secret": true }, "description": { "type": "string", @@ -5708,7 +5617,8 @@ }, "url": { "type": "string", - "description": "MS Teams [webhook endpoint URL](https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook).\n" + "description": "MS Teams [webhook endpoint URL](https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook).\n", + "secret": true } }, "required": [ @@ -5737,7 +5647,8 @@ }, "url": { "type": "string", - "description": "MS Teams [webhook endpoint URL](https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook).\n" + "description": "MS Teams [webhook endpoint URL](https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook).\n", + "secret": true } }, "requiredInputs": [ @@ -5766,7 +5677,8 @@ }, "url": { "type": "string", - "description": "MS Teams [webhook endpoint URL](https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook).\n" + "description": "MS Teams [webhook endpoint URL](https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook).\n", + "secret": true } }, "type": "object" @@ -5776,7 +5688,8 @@ "properties": { "auth": { "type": "string", - "description": "Opsgenie authentication credentials. See [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/opsgenie#authentication) for supported formats.\n" + "description": "Opsgenie authentication credentials. See [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/opsgenie#authentication) for supported formats.\n", + "secret": true }, "description": { "type": "string", @@ -5808,7 +5721,8 @@ "inputProperties": { "auth": { "type": "string", - "description": "Opsgenie authentication credentials. See [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/opsgenie#authentication) for supported formats.\n" + "description": "Opsgenie authentication credentials. See [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/opsgenie#authentication) for supported formats.\n", + "secret": true }, "description": { "type": "string", @@ -5842,7 +5756,8 @@ "properties": { "auth": { "type": "string", - "description": "Opsgenie authentication credentials. See [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/opsgenie#authentication) for supported formats.\n" + "description": "Opsgenie authentication credentials. See [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/opsgenie#authentication) for supported formats.\n", + "secret": true }, "description": { "type": "string", @@ -5882,7 +5797,8 @@ }, "integrationKey": { "type": "string", - "description": "PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations).\n" + "description": "PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations).\n", + "secret": true }, "name": { "type": "string", @@ -5891,6 +5807,10 @@ "project": { "type": "string", "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + }, + "sendResolution": { + "$ref": "#/types/nobl9:index/AlertMethodPagerdutySendResolution:AlertMethodPagerdutySendResolution", + "description": "Sends a notification after the cooldown period is over.\n" } }, "required": [ @@ -5909,7 +5829,8 @@ }, "integrationKey": { "type": "string", - "description": "PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations).\n" + "description": "PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations).\n", + "secret": true }, "name": { "type": "string", @@ -5920,6 +5841,10 @@ "type": "string", "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", "willReplaceOnChanges": true + }, + "sendResolution": { + "$ref": "#/types/nobl9:index/AlertMethodPagerdutySendResolution:AlertMethodPagerdutySendResolution", + "description": "Sends a notification after the cooldown period is over.\n" } }, "requiredInputs": [ @@ -5938,7 +5863,8 @@ }, "integrationKey": { "type": "string", - "description": "PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations).\n" + "description": "PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations).\n", + "secret": true }, "name": { "type": "string", @@ -5949,6 +5875,10 @@ "type": "string", "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", "willReplaceOnChanges": true + }, + "sendResolution": { + "$ref": "#/types/nobl9:index/AlertMethodPagerdutySendResolution:AlertMethodPagerdutySendResolution", + "description": "Sends a notification after the cooldown period is over.\n" } }, "type": "object" @@ -5974,7 +5904,8 @@ }, "password": { "type": "string", - "description": "ServiceNow password.\n" + "description": "ServiceNow password.\n", + "secret": true }, "project": { "type": "string", @@ -6012,7 +5943,8 @@ }, "password": { "type": "string", - "description": "ServiceNow password.\n" + "description": "ServiceNow password.\n", + "secret": true }, "project": { "type": "string", @@ -6051,7 +5983,8 @@ }, "password": { "type": "string", - "description": "ServiceNow password.\n" + "description": "ServiceNow password.\n", + "secret": true }, "project": { "type": "string", @@ -6086,7 +6019,8 @@ }, "url": { "type": "string", - "description": "Slack [webhook endpoint URL](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack%22).\n" + "description": "Slack [webhook endpoint URL](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack%22).\n", + "secret": true } }, "required": [ @@ -6115,7 +6049,8 @@ }, "url": { "type": "string", - "description": "Slack [webhook endpoint URL](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack%22).\n" + "description": "Slack [webhook endpoint URL](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack%22).\n", + "secret": true } }, "requiredInputs": [ @@ -6144,7 +6079,8 @@ }, "url": { "type": "string", - "description": "Slack [webhook endpoint URL](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack%22).\n" + "description": "Slack [webhook endpoint URL](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack%22).\n", + "secret": true } }, "type": "object" @@ -6181,7 +6117,8 @@ }, "url": { "type": "string", - "description": "URL of the webhook endpoint.\n" + "description": "URL of the webhook endpoint.\n", + "secret": true } }, "required": [ @@ -6221,7 +6158,8 @@ }, "url": { "type": "string", - "description": "URL of the webhook endpoint.\n" + "description": "URL of the webhook endpoint.\n", + "secret": true } }, "requiredInputs": [ @@ -6261,14 +6199,15 @@ }, "url": { "type": "string", - "description": "URL of the webhook endpoint.\n" + "description": "URL of the webhook endpoint.\n", + "secret": true } }, "type": "object" } }, "nobl9:index/alertPolicy:AlertPolicy": { - "description": "An **Alert Policy** expresses a set of conditions you want to track or monitor. The conditions for an Alert Policy define what is monitored and when to activate an alert: when the performance of your service is declining, Nobl9 will send a notification to a predefined channel.\n\nA Nobl9 AlertPolicy accepts up to 7 conditions. All the specified conditions must be satisfied to trigger an alert.\n\nFor more details, refer to the [Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nHere's an example of Alert Policy resource configuration:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst thisProject = new nobl9.Project(\"thisProject\", {\n displayName: \"My Project\",\n description: \"An example N9 Terraform project\",\n});\nconst thisService = new nobl9.Service(\"thisService\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Front Page`),\n description: \"Front page service\",\n});\nconst thisAlertPolicy = new nobl9.AlertPolicy(\"thisAlertPolicy\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Front Page Latency`),\n severity: \"High\",\n description: \"Alert when page latency is \u003e 2000 and error budget would be exhausted\",\n conditions: [{\n measurement: \"timeToBurnBudget\",\n valueString: \"72h\",\n lastsFor: \"30m\",\n }],\n alertMethods: [{\n name: \"my-alert-method\",\n }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\nthis_project = nobl9.Project(\"thisProject\",\n display_name=\"My Project\",\n description=\"An example N9 Terraform project\")\nthis_service = nobl9.Service(\"thisService\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Front Page\"),\n description=\"Front page service\")\nthis_alert_policy = nobl9.AlertPolicy(\"thisAlertPolicy\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Front Page Latency\"),\n severity=\"High\",\n description=\"Alert when page latency is \u003e 2000 and error budget would be exhausted\",\n conditions=[nobl9.AlertPolicyConditionArgs(\n measurement=\"timeToBurnBudget\",\n value_string=\"72h\",\n lasts_for=\"30m\",\n )],\n alert_methods=[nobl9.AlertPolicyAlertMethodArgs(\n name=\"my-alert-method\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var thisProject = new Nobl9.Project(\"thisProject\", new()\n {\n DisplayName = \"My Project\",\n Description = \"An example N9 Terraform project\",\n });\n\n var thisService = new Nobl9.Service(\"thisService\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Front Page\"),\n Description = \"Front page service\",\n });\n\n var thisAlertPolicy = new Nobl9.AlertPolicy(\"thisAlertPolicy\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Front Page Latency\"),\n Severity = \"High\",\n Description = \"Alert when page latency is \u003e 2000 and error budget would be exhausted\",\n Conditions = new[]\n {\n new Nobl9.Inputs.AlertPolicyConditionArgs\n {\n Measurement = \"timeToBurnBudget\",\n ValueString = \"72h\",\n LastsFor = \"30m\",\n },\n },\n AlertMethods = new[]\n {\n new Nobl9.Inputs.AlertPolicyAlertMethodArgs\n {\n Name = \"my-alert-method\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthisProject, err := nobl9.NewProject(ctx, \"thisProject\", \u0026nobl9.ProjectArgs{\n\t\t\tDisplayName: pulumi.String(\"My Project\"),\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewService(ctx, \"thisService\", \u0026nobl9.ServiceArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Front Page\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDescription: pulumi.String(\"Front page service\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewAlertPolicy(ctx, \"thisAlertPolicy\", \u0026nobl9.AlertPolicyArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Front Page Latency\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tSeverity: pulumi.String(\"High\"),\n\t\t\tDescription: pulumi.String(\"Alert when page latency is \u003e 2000 and error budget would be exhausted\"),\n\t\t\tConditions: AlertPolicyConditionArray{\n\t\t\t\t\u0026AlertPolicyConditionArgs{\n\t\t\t\t\tMeasurement: pulumi.String(\"timeToBurnBudget\"),\n\t\t\t\t\tValueString: pulumi.String(\"72h\"),\n\t\t\t\t\tLastsFor: pulumi.String(\"30m\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAlertMethods: AlertPolicyAlertMethodArray{\n\t\t\t\t\u0026AlertPolicyAlertMethodArgs{\n\t\t\t\t\tName: pulumi.String(\"my-alert-method\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.Service;\nimport com.pulumi.nobl9.ServiceArgs;\nimport com.pulumi.nobl9.AlertPolicy;\nimport com.pulumi.nobl9.AlertPolicyArgs;\nimport com.pulumi.nobl9.inputs.AlertPolicyConditionArgs;\nimport com.pulumi.nobl9.inputs.AlertPolicyAlertMethodArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var thisProject = new Project(\"thisProject\", ProjectArgs.builder() \n .displayName(\"My Project\")\n .description(\"An example N9 Terraform project\")\n .build());\n\n var thisService = new Service(\"thisService\", ServiceArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Front Page\", displayName)))\n .description(\"Front page service\")\n .build());\n\n var thisAlertPolicy = new AlertPolicy(\"thisAlertPolicy\", AlertPolicyArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Front Page Latency\", displayName)))\n .severity(\"High\")\n .description(\"Alert when page latency is \u003e 2000 and error budget would be exhausted\")\n .conditions(AlertPolicyConditionArgs.builder()\n .measurement(\"timeToBurnBudget\")\n .valueString(\"72h\")\n .lastsFor(\"30m\")\n .build())\n .alertMethods(AlertPolicyAlertMethodArgs.builder()\n .name(\"my-alert-method\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n thisProject:\n type: nobl9:Project\n properties:\n displayName: My Project\n description: An example N9 Terraform project\n thisService:\n type: nobl9:Service\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Front Page\n description: Front page service\n thisAlertPolicy:\n type: nobl9:AlertPolicy\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Front Page Latency\n severity: High\n description: Alert when page latency is \u003e 2000 and error budget would be exhausted\n conditions:\n - measurement: timeToBurnBudget\n valueString: 72h\n lastsFor: 30m\n alertMethods:\n - name: my-alert-method\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Useful Links\n\n[Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy)\n", + "description": "An **Alert Policy** expresses a set of conditions you want to track or monitor. The conditions for an Alert Policy define what is monitored and when to activate an alert: when the performance of your service is declining, Nobl9 will send a notification to a predefined channel.\n\nA Nobl9 AlertPolicy accepts up to 3 conditions. All the specified conditions must be satisfied to trigger an alert.\n\nFor more details, refer to the [Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nHere's an example of Alert Policy resource configuration:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst thisProject = new nobl9.Project(\"thisProject\", {\n displayName: \"My Project\",\n description: \"An example N9 Terraform project\",\n});\nconst thisService = new nobl9.Service(\"thisService\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Front Page`),\n description: \"Front page service\",\n});\nconst thisAlertPolicy = new nobl9.AlertPolicy(\"thisAlertPolicy\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Front Page Latency`),\n severity: \"High\",\n description: \"Alert when page latency is \u003e 2000 and error budget would be exhausted\",\n cooldown: \"5m\",\n conditions: [{\n measurement: \"timeToBurnBudget\",\n valueString: \"72h\",\n lastsFor: \"30m\",\n }],\n alertMethods: [{\n name: \"my-alert-method\",\n }],\n});\nconst thisIndex_alertPolicyAlertPolicy = new nobl9.AlertPolicy(\"thisIndex/alertPolicyAlertPolicy\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Slow Burn (1x12h and 2x15min)`),\n severity: \"Low\",\n description: \"The budget is slowly exhausting and not recovering.\",\n cooldown: \"5m\",\n conditions: [\n {\n measurement: \"averageBurnRate\",\n value: 1,\n alertingWindow: \"12h\",\n },\n {\n measurement: \"averageBurnRate\",\n value: 2,\n alertingWindow: \"15m\",\n },\n ],\n});\nconst thisNobl9Index_alertPolicyAlertPolicy = new nobl9.AlertPolicy(\"thisNobl9Index/alertPolicyAlertPolicy\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Fast Burn (20x5min)`),\n severity: \"High\",\n description: \"There’s been a significant spike in burn rate over a brief period.\",\n cooldown: \"5m\",\n conditions: [{\n measurement: \"averageBurnRate\",\n value: 20,\n alertingWindow: \"5m\",\n }],\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\nthis_project = nobl9.Project(\"thisProject\",\n display_name=\"My Project\",\n description=\"An example N9 Terraform project\")\nthis_service = nobl9.Service(\"thisService\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Front Page\"),\n description=\"Front page service\")\nthis_alert_policy = nobl9.AlertPolicy(\"thisAlertPolicy\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Front Page Latency\"),\n severity=\"High\",\n description=\"Alert when page latency is \u003e 2000 and error budget would be exhausted\",\n cooldown=\"5m\",\n conditions=[nobl9.AlertPolicyConditionArgs(\n measurement=\"timeToBurnBudget\",\n value_string=\"72h\",\n lasts_for=\"30m\",\n )],\n alert_methods=[nobl9.AlertPolicyAlertMethodArgs(\n name=\"my-alert-method\",\n )])\nthis_index_alert_policy_alert_policy = nobl9.AlertPolicy(\"thisIndex/alertPolicyAlertPolicy\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Slow Burn (1x12h and 2x15min)\"),\n severity=\"Low\",\n description=\"The budget is slowly exhausting and not recovering.\",\n cooldown=\"5m\",\n conditions=[\n nobl9.AlertPolicyConditionArgs(\n measurement=\"averageBurnRate\",\n value=1,\n alerting_window=\"12h\",\n ),\n nobl9.AlertPolicyConditionArgs(\n measurement=\"averageBurnRate\",\n value=2,\n alerting_window=\"15m\",\n ),\n ])\nthis_nobl9_index_alert_policy_alert_policy = nobl9.AlertPolicy(\"thisNobl9Index/alertPolicyAlertPolicy\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Fast Burn (20x5min)\"),\n severity=\"High\",\n description=\"There’s been a significant spike in burn rate over a brief period.\",\n cooldown=\"5m\",\n conditions=[nobl9.AlertPolicyConditionArgs(\n measurement=\"averageBurnRate\",\n value=20,\n alerting_window=\"5m\",\n )])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var thisProject = new Nobl9.Project(\"thisProject\", new()\n {\n DisplayName = \"My Project\",\n Description = \"An example N9 Terraform project\",\n });\n\n var thisService = new Nobl9.Service(\"thisService\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Front Page\"),\n Description = \"Front page service\",\n });\n\n var thisAlertPolicy = new Nobl9.AlertPolicy(\"thisAlertPolicy\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Front Page Latency\"),\n Severity = \"High\",\n Description = \"Alert when page latency is \u003e 2000 and error budget would be exhausted\",\n Cooldown = \"5m\",\n Conditions = new[]\n {\n new Nobl9.Inputs.AlertPolicyConditionArgs\n {\n Measurement = \"timeToBurnBudget\",\n ValueString = \"72h\",\n LastsFor = \"30m\",\n },\n },\n AlertMethods = new[]\n {\n new Nobl9.Inputs.AlertPolicyAlertMethodArgs\n {\n Name = \"my-alert-method\",\n },\n },\n });\n\n var thisIndex_alertPolicyAlertPolicy = new Nobl9.AlertPolicy(\"thisIndex/alertPolicyAlertPolicy\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Slow Burn (1x12h and 2x15min)\"),\n Severity = \"Low\",\n Description = \"The budget is slowly exhausting and not recovering.\",\n Cooldown = \"5m\",\n Conditions = new[]\n {\n new Nobl9.Inputs.AlertPolicyConditionArgs\n {\n Measurement = \"averageBurnRate\",\n Value = 1,\n AlertingWindow = \"12h\",\n },\n new Nobl9.Inputs.AlertPolicyConditionArgs\n {\n Measurement = \"averageBurnRate\",\n Value = 2,\n AlertingWindow = \"15m\",\n },\n },\n });\n\n var thisNobl9Index_alertPolicyAlertPolicy = new Nobl9.AlertPolicy(\"thisNobl9Index/alertPolicyAlertPolicy\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Fast Burn (20x5min)\"),\n Severity = \"High\",\n Description = \"There’s been a significant spike in burn rate over a brief period.\",\n Cooldown = \"5m\",\n Conditions = new[]\n {\n new Nobl9.Inputs.AlertPolicyConditionArgs\n {\n Measurement = \"averageBurnRate\",\n Value = 20,\n AlertingWindow = \"5m\",\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthisProject, err := nobl9.NewProject(ctx, \"thisProject\", \u0026nobl9.ProjectArgs{\n\t\t\tDisplayName: pulumi.String(\"My Project\"),\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewService(ctx, \"thisService\", \u0026nobl9.ServiceArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Front Page\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDescription: pulumi.String(\"Front page service\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewAlertPolicy(ctx, \"thisAlertPolicy\", \u0026nobl9.AlertPolicyArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Front Page Latency\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tSeverity: pulumi.String(\"High\"),\n\t\t\tDescription: pulumi.String(\"Alert when page latency is \u003e 2000 and error budget would be exhausted\"),\n\t\t\tCooldown: pulumi.String(\"5m\"),\n\t\t\tConditions: nobl9.AlertPolicyConditionArray{\n\t\t\t\t\u0026nobl9.AlertPolicyConditionArgs{\n\t\t\t\t\tMeasurement: pulumi.String(\"timeToBurnBudget\"),\n\t\t\t\t\tValueString: pulumi.String(\"72h\"),\n\t\t\t\t\tLastsFor: pulumi.String(\"30m\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAlertMethods: nobl9.AlertPolicyAlertMethodArray{\n\t\t\t\t\u0026nobl9.AlertPolicyAlertMethodArgs{\n\t\t\t\t\tName: pulumi.String(\"my-alert-method\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewAlertPolicy(ctx, \"thisIndex/alertPolicyAlertPolicy\", \u0026nobl9.AlertPolicyArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Slow Burn (1x12h and 2x15min)\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tSeverity: pulumi.String(\"Low\"),\n\t\t\tDescription: pulumi.String(\"The budget is slowly exhausting and not recovering.\"),\n\t\t\tCooldown: pulumi.String(\"5m\"),\n\t\t\tConditions: nobl9.AlertPolicyConditionArray{\n\t\t\t\t\u0026nobl9.AlertPolicyConditionArgs{\n\t\t\t\t\tMeasurement: pulumi.String(\"averageBurnRate\"),\n\t\t\t\t\tValue: pulumi.Float64(1),\n\t\t\t\t\tAlertingWindow: pulumi.String(\"12h\"),\n\t\t\t\t},\n\t\t\t\t\u0026nobl9.AlertPolicyConditionArgs{\n\t\t\t\t\tMeasurement: pulumi.String(\"averageBurnRate\"),\n\t\t\t\t\tValue: pulumi.Float64(2),\n\t\t\t\t\tAlertingWindow: pulumi.String(\"15m\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewAlertPolicy(ctx, \"thisNobl9Index/alertPolicyAlertPolicy\", \u0026nobl9.AlertPolicyArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Fast Burn (20x5min)\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tSeverity: pulumi.String(\"High\"),\n\t\t\tDescription: pulumi.String(\"There’s been a significant spike in burn rate over a brief period.\"),\n\t\t\tCooldown: pulumi.String(\"5m\"),\n\t\t\tConditions: nobl9.AlertPolicyConditionArray{\n\t\t\t\t\u0026nobl9.AlertPolicyConditionArgs{\n\t\t\t\t\tMeasurement: pulumi.String(\"averageBurnRate\"),\n\t\t\t\t\tValue: pulumi.Float64(20),\n\t\t\t\t\tAlertingWindow: pulumi.String(\"5m\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.Service;\nimport com.pulumi.nobl9.ServiceArgs;\nimport com.pulumi.nobl9.AlertPolicy;\nimport com.pulumi.nobl9.AlertPolicyArgs;\nimport com.pulumi.nobl9.inputs.AlertPolicyConditionArgs;\nimport com.pulumi.nobl9.inputs.AlertPolicyAlertMethodArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var thisProject = new Project(\"thisProject\", ProjectArgs.builder() \n .displayName(\"My Project\")\n .description(\"An example N9 Terraform project\")\n .build());\n\n var thisService = new Service(\"thisService\", ServiceArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Front Page\", displayName)))\n .description(\"Front page service\")\n .build());\n\n var thisAlertPolicy = new AlertPolicy(\"thisAlertPolicy\", AlertPolicyArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Front Page Latency\", displayName)))\n .severity(\"High\")\n .description(\"Alert when page latency is \u003e 2000 and error budget would be exhausted\")\n .cooldown(\"5m\")\n .conditions(AlertPolicyConditionArgs.builder()\n .measurement(\"timeToBurnBudget\")\n .valueString(\"72h\")\n .lastsFor(\"30m\")\n .build())\n .alertMethods(AlertPolicyAlertMethodArgs.builder()\n .name(\"my-alert-method\")\n .build())\n .build());\n\n var thisIndex_alertPolicyAlertPolicy = new AlertPolicy(\"thisIndex/alertPolicyAlertPolicy\", AlertPolicyArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Slow Burn (1x12h and 2x15min)\", displayName)))\n .severity(\"Low\")\n .description(\"The budget is slowly exhausting and not recovering.\")\n .cooldown(\"5m\")\n .conditions( \n AlertPolicyConditionArgs.builder()\n .measurement(\"averageBurnRate\")\n .value(\"1\")\n .alertingWindow(\"12h\")\n .build(),\n AlertPolicyConditionArgs.builder()\n .measurement(\"averageBurnRate\")\n .value(\"2\")\n .alertingWindow(\"15m\")\n .build())\n .build());\n\n var thisNobl9Index_alertPolicyAlertPolicy = new AlertPolicy(\"thisNobl9Index/alertPolicyAlertPolicy\", AlertPolicyArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Fast Burn (20x5min)\", displayName)))\n .severity(\"High\")\n .description(\"There’s been a significant spike in burn rate over a brief period.\")\n .cooldown(\"5m\")\n .conditions(AlertPolicyConditionArgs.builder()\n .measurement(\"averageBurnRate\")\n .value(\"20\")\n .alertingWindow(\"5m\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n thisProject:\n type: nobl9:Project\n properties:\n displayName: My Project\n description: An example N9 Terraform project\n thisService:\n type: nobl9:Service\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Front Page\n description: Front page service\n thisAlertPolicy:\n type: nobl9:AlertPolicy\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Front Page Latency\n severity: High\n description: Alert when page latency is \u003e 2000 and error budget would be exhausted\n cooldown: 5m\n conditions:\n - measurement: timeToBurnBudget\n valueString: 72h\n lastsFor: 30m\n alertMethods:\n - name: my-alert-method\n thisIndex/alertPolicyAlertPolicy:\n type: nobl9:AlertPolicy\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Slow Burn (1x12h and 2x15min)\n severity: Low\n description: The budget is slowly exhausting and not recovering.\n cooldown: 5m\n conditions:\n - measurement: averageBurnRate\n value: '1'\n alertingWindow: 12h\n - measurement: averageBurnRate\n value: '2'\n alertingWindow: 15m\n thisNobl9Index/alertPolicyAlertPolicy:\n type: nobl9:AlertPolicy\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Fast Burn (20x5min)\n severity: High\n description: There’s been a significant spike in burn rate over a brief period.\n cooldown: 5m\n conditions:\n - measurement: averageBurnRate\n value: '20'\n alertingWindow: 5m\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Useful Links\n\n[Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy)\n", "properties": { "alertMethods": { "type": "array", @@ -6283,6 +6222,10 @@ }, "description": "Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy).\n" }, + "cooldown": { + "type": "string", + "description": "An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved\n" + }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -6293,11 +6236,11 @@ }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + "description": "The name of the previously defined alert method.\n" }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n" }, "severity": { "type": "string", @@ -6324,6 +6267,10 @@ }, "description": "Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy).\n" }, + "cooldown": { + "type": "string", + "description": "An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved\n" + }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -6334,12 +6281,12 @@ }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "The name of the previously defined alert method.\n", "willReplaceOnChanges": true }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n", "willReplaceOnChanges": true }, "severity": { @@ -6368,6 +6315,10 @@ }, "description": "Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy).\n" }, + "cooldown": { + "type": "string", + "description": "An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved\n" + }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -6378,12 +6329,12 @@ }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "The name of the previously defined alert method.\n", "willReplaceOnChanges": true }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n", "willReplaceOnChanges": true }, "severity": { @@ -6395,7 +6346,7 @@ } }, "nobl9:index/directAppdynamics:DirectAppdynamics": { - "description": "AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects with AppDynamics to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [AppDynamics Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-direct)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_appdynamics = new nobl9.DirectAppdynamics(\"test-appdynamics\", {\n accountName: \"account name\",\n clientName: \"client name\",\n clientSecret: \"secret\",\n description: \"desc\",\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_appdynamics = nobl9.DirectAppdynamics(\"test-appdynamics\",\n account_name=\"account name\",\n client_name=\"client name\",\n client_secret=\"secret\",\n description=\"desc\",\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ],\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_appdynamics = new Nobl9.DirectAppdynamics(\"test-appdynamics\", new()\n {\n AccountName = \"account name\",\n ClientName = \"client name\",\n ClientSecret = \"secret\",\n Description = \"desc\",\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectAppdynamics(ctx, \"test-appdynamics\", \u0026nobl9.DirectAppdynamicsArgs{\n\t\t\tAccountName: pulumi.String(\"account name\"),\n\t\t\tClientName: pulumi.String(\"client name\"),\n\t\t\tClientSecret: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectAppdynamics;\nimport com.pulumi.nobl9.DirectAppdynamicsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_appdynamics = new DirectAppdynamics(\"test-appdynamics\", DirectAppdynamicsArgs.builder() \n .accountName(\"account name\")\n .clientName(\"client name\")\n .clientSecret(\"secret\")\n .description(\"desc\")\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-appdynamics:\n type: nobl9:DirectAppdynamics\n properties:\n accountName: account name\n clientName: client name\n clientSecret: secret\n description: desc\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects to AppDynamics for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [AppDynamics Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-direct)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_appdynamics = new nobl9.DirectAppdynamics(\"test-appdynamics\", {\n accountName: \"account name\",\n clientName: \"client name\",\n clientSecret: \"secret\",\n description: \"desc\",\n logCollectionEnabled: true,\n project: \"terraform\",\n releaseChannel: \"stable\",\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_appdynamics = nobl9.DirectAppdynamics(\"test-appdynamics\",\n account_name=\"account name\",\n client_name=\"client name\",\n client_secret=\"secret\",\n description=\"desc\",\n log_collection_enabled=True,\n project=\"terraform\",\n release_channel=\"stable\",\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_appdynamics = new Nobl9.DirectAppdynamics(\"test-appdynamics\", new()\n {\n AccountName = \"account name\",\n ClientName = \"client name\",\n ClientSecret = \"secret\",\n Description = \"desc\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n ReleaseChannel = \"stable\",\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectAppdynamics(ctx, \"test-appdynamics\", \u0026nobl9.DirectAppdynamicsArgs{\n\t\t\tAccountName: pulumi.String(\"account name\"),\n\t\t\tClientName: pulumi.String(\"client name\"),\n\t\t\tClientSecret: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tReleaseChannel: pulumi.String(\"stable\"),\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectAppdynamics;\nimport com.pulumi.nobl9.DirectAppdynamicsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_appdynamics = new DirectAppdynamics(\"test-appdynamics\", DirectAppdynamicsArgs.builder() \n .accountName(\"account name\")\n .clientName(\"client name\")\n .clientSecret(\"secret\")\n .description(\"desc\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .releaseChannel(\"stable\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-appdynamics:\n type: nobl9:DirectAppdynamics\n properties:\n accountName: account name\n clientName: client name\n clientSecret: secret\n description: desc\n logCollectionEnabled: true\n project: terraform\n releaseChannel: stable\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "accountName": { "type": "string", @@ -6407,175 +6358,419 @@ }, "clientName": { "type": "string", - "description": "AppDynamics Client Name.\n" + "description": "AppDynamics Client Name.\n" + }, + "clientSecret": { + "type": "string", + "description": "[required] | AppDynamics Client Secret.\n", + "secret": true + }, + "description": { + "type": "string", + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + }, + "displayName": { + "type": "string", + "description": "User-friendly display name of the resource.\n" + }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectAppdynamicsHistoricalDataRetrieval:DirectAppdynamicsHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, + "name": { + "type": "string", + "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + }, + "project": { + "type": "string", + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + }, + "queryDelay": { + "$ref": "#/types/nobl9:index/DirectAppdynamicsQueryDelay:DirectAppdynamicsQueryDelay", + "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" + }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "sourceOfs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." + }, + "status": { + "type": "string", + "description": "The status of the created direct.\n" + }, + "url": { + "type": "string", + "description": "Base URL to the AppDynamics Controller.\n" + } + }, + "required": [ + "accountName", + "clientId", + "clientName", + "clientSecret", + "historicalDataRetrieval", + "name", + "project", + "queryDelay", + "releaseChannel", + "status", + "url" + ], + "inputProperties": { + "accountName": { + "type": "string", + "description": "AppDynamics Account Name.\n" + }, + "clientName": { + "type": "string", + "description": "AppDynamics Client Name.\n" + }, + "clientSecret": { + "type": "string", + "description": "[required] | AppDynamics Client Secret.\n", + "secret": true + }, + "description": { + "type": "string", + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + }, + "displayName": { + "type": "string", + "description": "User-friendly display name of the resource.\n" + }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectAppdynamicsHistoricalDataRetrieval:DirectAppdynamicsHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, + "name": { + "type": "string", + "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "willReplaceOnChanges": true + }, + "project": { + "type": "string", + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "willReplaceOnChanges": true + }, + "queryDelay": { + "$ref": "#/types/nobl9:index/DirectAppdynamicsQueryDelay:DirectAppdynamicsQueryDelay", + "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" + }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "sourceOfs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." + }, + "url": { + "type": "string", + "description": "Base URL to the AppDynamics Controller.\n" + } + }, + "requiredInputs": [ + "accountName", + "clientName", + "project", + "url" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering DirectAppdynamics resources.\n", + "properties": { + "accountName": { + "type": "string", + "description": "AppDynamics Account Name.\n" + }, + "clientId": { + "type": "string", + "description": "AppDynamics Client ID.\n" + }, + "clientName": { + "type": "string", + "description": "AppDynamics Client Name.\n" + }, + "clientSecret": { + "type": "string", + "description": "[required] | AppDynamics Client Secret.\n", + "secret": true + }, + "description": { + "type": "string", + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + }, + "displayName": { + "type": "string", + "description": "User-friendly display name of the resource.\n" + }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectAppdynamicsHistoricalDataRetrieval:DirectAppdynamicsHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, + "name": { + "type": "string", + "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "willReplaceOnChanges": true + }, + "project": { + "type": "string", + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "willReplaceOnChanges": true + }, + "queryDelay": { + "$ref": "#/types/nobl9:index/DirectAppdynamicsQueryDelay:DirectAppdynamicsQueryDelay", + "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" + }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "sourceOfs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." + }, + "status": { + "type": "string", + "description": "The status of the created direct.\n" + }, + "url": { + "type": "string", + "description": "Base URL to the AppDynamics Controller.\n" + } + }, + "type": "object" + } + }, + "nobl9:index/directAzureMonitor:DirectAzureMonitor": { + "properties": { + "clientId": { + "type": "string", + "description": "[required] | Azure Application (client) ID.\n", + "secret": true }, "clientSecret": { "type": "string", - "description": "[required] | AppDynamics Client Secret.\n" + "description": "[required] | Azure Application (client) Secret.\n", + "secret": true }, "description": { "type": "string", - "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration\n(team/owner) or the purpose of creating it.\n" }, "displayName": { "type": "string", "description": "User-friendly display name of the resource.\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectAzureMonitorHistoricalDataRetrieval:DirectAzureMonitorHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + "description": "Unique name of the resource, must conform to the naming convention from [DNS\nRFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS\nRFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" }, "queryDelay": { - "$ref": "#/types/nobl9:index/DirectAppdynamicsQueryDelay:DirectAppdynamicsQueryDelay", + "$ref": "#/types/nobl9:index/DirectAzureMonitorQueryDelay:DirectAzureMonitorQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used\nanywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", "description": "The status of the created direct.\n" }, - "url": { + "tenantId": { "type": "string", - "description": "Base URL to the AppDynamics Controller.\n" + "description": "[required] | Azure Tenant ID.\n" } }, "required": [ - "accountName", "clientId", - "clientName", "clientSecret", + "historicalDataRetrieval", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status", - "url" + "tenantId" ], "inputProperties": { - "accountName": { - "type": "string", - "description": "AppDynamics Account Name.\n" - }, - "clientName": { + "clientId": { "type": "string", - "description": "AppDynamics Client Name.\n" + "description": "[required] | Azure Application (client) ID.\n", + "secret": true }, "clientSecret": { "type": "string", - "description": "[required] | AppDynamics Client Secret.\n" + "description": "[required] | Azure Application (client) Secret.\n", + "secret": true }, "description": { "type": "string", - "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration\n(team/owner) or the purpose of creating it.\n" }, "displayName": { "type": "string", "description": "User-friendly display name of the resource.\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectAzureMonitorHistoricalDataRetrieval:DirectAzureMonitorHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Unique name of the resource, must conform to the naming convention from [DNS\nRFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", "willReplaceOnChanges": true }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS\nRFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", "willReplaceOnChanges": true }, "queryDelay": { - "$ref": "#/types/nobl9:index/DirectAppdynamicsQueryDelay:DirectAppdynamicsQueryDelay", + "$ref": "#/types/nobl9:index/DirectAzureMonitorQueryDelay:DirectAzureMonitorQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used\nanywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, - "url": { + "tenantId": { "type": "string", - "description": "Base URL to the AppDynamics Controller.\n" + "description": "[required] | Azure Tenant ID.\n" } }, "requiredInputs": [ - "accountName", - "clientName", "project", - "sourceOfs", - "url" + "tenantId" ], "stateInputs": { - "description": "Input properties used for looking up and filtering DirectAppdynamics resources.\n", + "description": "Input properties used for looking up and filtering DirectAzureMonitor resources.\n", "properties": { - "accountName": { - "type": "string", - "description": "AppDynamics Account Name.\n" - }, "clientId": { "type": "string", - "description": "AppDynamics Client ID.\n" - }, - "clientName": { - "type": "string", - "description": "AppDynamics Client Name.\n" + "description": "[required] | Azure Application (client) ID.\n", + "secret": true }, "clientSecret": { "type": "string", - "description": "[required] | AppDynamics Client Secret.\n" + "description": "[required] | Azure Application (client) Secret.\n", + "secret": true }, "description": { "type": "string", - "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration\n(team/owner) or the purpose of creating it.\n" }, "displayName": { "type": "string", "description": "User-friendly display name of the resource.\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectAzureMonitorHistoricalDataRetrieval:DirectAzureMonitorHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Unique name of the resource, must conform to the naming convention from [DNS\nRFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", "willReplaceOnChanges": true }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS\nRFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", "willReplaceOnChanges": true }, "queryDelay": { - "$ref": "#/types/nobl9:index/DirectAppdynamicsQueryDelay:DirectAppdynamicsQueryDelay", + "$ref": "#/types/nobl9:index/DirectAzureMonitorQueryDelay:DirectAzureMonitorQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used\nanywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", "description": "The status of the created direct.\n" }, - "url": { + "tenantId": { "type": "string", - "description": "Base URL to the AppDynamics Controller.\n" + "description": "[required] | Azure Tenant ID.\n" } }, "type": "object" } }, "nobl9:index/directBigquery:DirectBigquery": { - "description": "Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects with BigQuery to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [BigQuery Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-direct)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_bigquery = new nobl9.DirectBigquery(\"test-bigquery\", {\n description: \"desc\",\n project: \"terraform\",\n serviceAccountKey: \"secret\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_bigquery = nobl9.DirectBigquery(\"test-bigquery\",\n description=\"desc\",\n project=\"terraform\",\n service_account_key=\"secret\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_bigquery = new Nobl9.DirectBigquery(\"test-bigquery\", new()\n {\n Description = \"desc\",\n Project = \"terraform\",\n ServiceAccountKey = \"secret\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectBigquery(ctx, \"test-bigquery\", \u0026nobl9.DirectBigqueryArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tServiceAccountKey: pulumi.String(\"secret\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectBigquery;\nimport com.pulumi.nobl9.DirectBigqueryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_bigquery = new DirectBigquery(\"test-bigquery\", DirectBigqueryArgs.builder() \n .description(\"desc\")\n .project(\"terraform\")\n .serviceAccountKey(\"secret\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-bigquery:\n type: nobl9:DirectBigquery\n properties:\n description: desc\n project: terraform\n serviceAccountKey: secret\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects to BigQuery for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [BigQuery Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-direct)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_bigquery = new nobl9.DirectBigquery(\"test-bigquery\", {\n description: \"desc\",\n logCollectionEnabled: true,\n project: \"terraform\",\n serviceAccountKey: \"secret\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_bigquery = nobl9.DirectBigquery(\"test-bigquery\",\n description=\"desc\",\n log_collection_enabled=True,\n project=\"terraform\",\n service_account_key=\"secret\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_bigquery = new Nobl9.DirectBigquery(\"test-bigquery\", new()\n {\n Description = \"desc\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n ServiceAccountKey = \"secret\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectBigquery(ctx, \"test-bigquery\", \u0026nobl9.DirectBigqueryArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tServiceAccountKey: pulumi.String(\"secret\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectBigquery;\nimport com.pulumi.nobl9.DirectBigqueryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_bigquery = new DirectBigquery(\"test-bigquery\", DirectBigqueryArgs.builder() \n .description(\"desc\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .serviceAccountKey(\"secret\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-bigquery:\n type: nobl9:DirectBigquery\n properties:\n description: desc\n logCollectionEnabled: true\n project: terraform\n serviceAccountKey: secret\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "description": { "type": "string", @@ -6585,6 +6780,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -6597,16 +6796,22 @@ "$ref": "#/types/nobl9:index/DirectBigqueryQueryDelay:DirectBigqueryQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "serviceAccountKey": { "type": "string", - "description": "[required] | Service Account Key.\n" + "description": "[required] | Service Account Key.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -6616,8 +6821,9 @@ "required": [ "name", "project", + "queryDelay", + "releaseChannel", "serviceAccountKey", - "sourceOfs", "status" ], "inputProperties": { @@ -6629,6 +6835,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -6643,21 +6853,26 @@ "$ref": "#/types/nobl9:index/DirectBigqueryQueryDelay:DirectBigqueryQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "serviceAccountKey": { "type": "string", - "description": "[required] | Service Account Key.\n" + "description": "[required] | Service Account Key.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ - "project", - "sourceOfs" + "project" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectBigquery resources.\n", @@ -6670,6 +6885,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -6684,16 +6903,22 @@ "$ref": "#/types/nobl9:index/DirectBigqueryQueryDelay:DirectBigqueryQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "serviceAccountKey": { "type": "string", - "description": "[required] | Service Account Key.\n" + "description": "[required] | Service Account Key.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -6704,12 +6929,8 @@ } }, "nobl9:index/directCloudwatch:DirectCloudwatch": { - "description": "Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects with Amazon CloudWatch to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Amazon CloudWatch Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-direct)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_cloudwatch = new nobl9.DirectCloudwatch(\"test-cloudwatch\", {\n accessKeyId: \"secret\",\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 15,\n }],\n },\n project: \"terraform\",\n secretAccessKey: \"secret\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_cloudwatch = nobl9.DirectCloudwatch(\"test-cloudwatch\",\n access_key_id=\"secret\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectCloudwatchHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=15,\n )],\n ),\n project=\"terraform\",\n secret_access_key=\"secret\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_cloudwatch = new Nobl9.DirectCloudwatch(\"test-cloudwatch\", new()\n {\n AccessKeyId = \"secret\",\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectCloudwatchHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 15,\n },\n },\n },\n Project = \"terraform\",\n SecretAccessKey = \"secret\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectCloudwatch(ctx, \"test-cloudwatch\", \u0026nobl9.DirectCloudwatchArgs{\n\t\t\tAccessKeyId: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026DirectCloudwatchHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: DirectCloudwatchHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(15),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSecretAccessKey: pulumi.String(\"secret\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectCloudwatch;\nimport com.pulumi.nobl9.DirectCloudwatchArgs;\nimport com.pulumi.nobl9.inputs.DirectCloudwatchHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_cloudwatch = new DirectCloudwatch(\"test-cloudwatch\", DirectCloudwatchArgs.builder() \n .accessKeyId(\"secret\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectCloudwatchHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(15)\n .build())\n .build())\n .project(\"terraform\")\n .secretAccessKey(\"secret\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-cloudwatch:\n type: nobl9:DirectCloudwatch\n properties:\n accessKeyId: secret\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 15\n project: terraform\n secretAccessKey: secret\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects to Amazon CloudWatch for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Amazon CloudWatch Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-direct)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_cloudwatch = new nobl9.DirectCloudwatch(\"test-cloudwatch\", {\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 15,\n }],\n },\n logCollectionEnabled: true,\n project: \"terraform\",\n roleArn: \"secret\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_cloudwatch = nobl9.DirectCloudwatch(\"test-cloudwatch\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectCloudwatchHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=15,\n )],\n ),\n log_collection_enabled=True,\n project=\"terraform\",\n role_arn=\"secret\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_cloudwatch = new Nobl9.DirectCloudwatch(\"test-cloudwatch\", new()\n {\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectCloudwatchHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 15,\n },\n },\n },\n LogCollectionEnabled = true,\n Project = \"terraform\",\n RoleArn = \"secret\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectCloudwatch(ctx, \"test-cloudwatch\", \u0026nobl9.DirectCloudwatchArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026nobl9.DirectCloudwatchHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: nobl9.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: nobl9.DirectCloudwatchHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(15),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tRoleArn: pulumi.String(\"secret\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectCloudwatch;\nimport com.pulumi.nobl9.DirectCloudwatchArgs;\nimport com.pulumi.nobl9.inputs.DirectCloudwatchHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_cloudwatch = new DirectCloudwatch(\"test-cloudwatch\", DirectCloudwatchArgs.builder() \n .description(\"desc\")\n .historicalDataRetrieval(DirectCloudwatchHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(15)\n .build())\n .build())\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .roleArn(\"secret\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-cloudwatch:\n type: nobl9:DirectCloudwatch\n properties:\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 15\n logCollectionEnabled: true\n project: terraform\n roleArn: secret\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { - "accessKeyId": { - "type": "string", - "description": "[required] | AWS Access Key ID.\n" - }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -6722,6 +6943,10 @@ "$ref": "#/types/nobl9:index/DirectCloudwatchHistoricalDataRetrieval:DirectCloudwatchHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -6734,16 +6959,22 @@ "$ref": "#/types/nobl9:index/DirectCloudwatchQueryDelay:DirectCloudwatchQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "secretAccessKey": { + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "roleArn": { "type": "string", - "description": "[required] | AWS Secret Access Key.\n" + "description": "[required] | ARN of the AWS IAM Role to assume.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -6751,18 +6982,15 @@ } }, "required": [ - "accessKeyId", + "historicalDataRetrieval", "name", "project", - "secretAccessKey", - "sourceOfs", + "queryDelay", + "releaseChannel", + "roleArn", "status" ], "inputProperties": { - "accessKeyId": { - "type": "string", - "description": "[required] | AWS Access Key ID.\n" - }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -6775,6 +7003,10 @@ "$ref": "#/types/nobl9:index/DirectCloudwatchHistoricalDataRetrieval:DirectCloudwatchHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -6789,29 +7021,30 @@ "$ref": "#/types/nobl9:index/DirectCloudwatchQueryDelay:DirectCloudwatchQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "secretAccessKey": { + "releaseChannel": { "type": "string", - "description": "[required] | AWS Secret Access Key.\n" + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "roleArn": { + "type": "string", + "description": "[required] | ARN of the AWS IAM Role to assume.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ - "project", - "sourceOfs" + "project" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectCloudwatch resources.\n", "properties": { - "accessKeyId": { - "type": "string", - "description": "[required] | AWS Access Key ID.\n" - }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -6824,6 +7057,10 @@ "$ref": "#/types/nobl9:index/DirectCloudwatchHistoricalDataRetrieval:DirectCloudwatchHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -6838,16 +7075,22 @@ "$ref": "#/types/nobl9:index/DirectCloudwatchQueryDelay:DirectCloudwatchQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "secretAccessKey": { + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "roleArn": { "type": "string", - "description": "[required] | AWS Secret Access Key.\n" + "description": "[required] | ARN of the AWS IAM Role to assume.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -6858,15 +7101,17 @@ } }, "nobl9:index/directDatadog:DirectDatadog": { - "description": "Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects with Datadog to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Datadog Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/datadog#datadog-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_datadog = new nobl9.DirectDatadog(\"test-datadog\", {\n apiKey: \"secret\",\n applicationKey: \"secret\",\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 30,\n }],\n },\n project: \"terraform\",\n site: \"eu\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_datadog = nobl9.DirectDatadog(\"test-datadog\",\n api_key=\"secret\",\n application_key=\"secret\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectDatadogHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectDatadogHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectDatadogHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=30,\n )],\n ),\n project=\"terraform\",\n site=\"eu\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_datadog = new Nobl9.DirectDatadog(\"test-datadog\", new()\n {\n ApiKey = \"secret\",\n ApplicationKey = \"secret\",\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectDatadogHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectDatadogHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectDatadogHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 30,\n },\n },\n },\n Project = \"terraform\",\n Site = \"eu\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectDatadog(ctx, \"test-datadog\", \u0026nobl9.DirectDatadogArgs{\n\t\t\tApiKey: pulumi.String(\"secret\"),\n\t\t\tApplicationKey: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026DirectDatadogHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: DirectDatadogHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026DirectDatadogHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: DirectDatadogHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026DirectDatadogHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(30),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSite: pulumi.String(\"eu\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectDatadog;\nimport com.pulumi.nobl9.DirectDatadogArgs;\nimport com.pulumi.nobl9.inputs.DirectDatadogHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_datadog = new DirectDatadog(\"test-datadog\", DirectDatadogArgs.builder() \n .apiKey(\"secret\")\n .applicationKey(\"secret\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectDatadogHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectDatadogHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectDatadogHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(30)\n .build())\n .build())\n .project(\"terraform\")\n .site(\"eu\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-datadog:\n type: nobl9:DirectDatadog\n properties:\n apiKey: secret\n applicationKey: secret\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 30\n project: terraform\n site: eu\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects to Datadog for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Datadog Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/datadog#datadog-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_datadog = new nobl9.DirectDatadog(\"test-datadog\", {\n apiKey: \"secret\",\n applicationKey: \"secret\",\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 30,\n }],\n },\n logCollectionEnabled: true,\n project: \"terraform\",\n site: \"eu\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_datadog = nobl9.DirectDatadog(\"test-datadog\",\n api_key=\"secret\",\n application_key=\"secret\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectDatadogHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectDatadogHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectDatadogHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=30,\n )],\n ),\n log_collection_enabled=True,\n project=\"terraform\",\n site=\"eu\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_datadog = new Nobl9.DirectDatadog(\"test-datadog\", new()\n {\n ApiKey = \"secret\",\n ApplicationKey = \"secret\",\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectDatadogHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectDatadogHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectDatadogHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 30,\n },\n },\n },\n LogCollectionEnabled = true,\n Project = \"terraform\",\n Site = \"eu\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectDatadog(ctx, \"test-datadog\", \u0026nobl9.DirectDatadogArgs{\n\t\t\tApiKey: pulumi.String(\"secret\"),\n\t\t\tApplicationKey: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026nobl9.DirectDatadogHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: nobl9.DirectDatadogHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectDatadogHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: nobl9.DirectDatadogHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectDatadogHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(30),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSite: pulumi.String(\"eu\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectDatadog;\nimport com.pulumi.nobl9.DirectDatadogArgs;\nimport com.pulumi.nobl9.inputs.DirectDatadogHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_datadog = new DirectDatadog(\"test-datadog\", DirectDatadogArgs.builder() \n .apiKey(\"secret\")\n .applicationKey(\"secret\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectDatadogHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectDatadogHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectDatadogHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(30)\n .build())\n .build())\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .site(\"eu\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-datadog:\n type: nobl9:DirectDatadog\n properties:\n apiKey: secret\n applicationKey: secret\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 30\n logCollectionEnabled: true\n project: terraform\n site: eu\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "apiKey": { "type": "string", - "description": "[required] | Datadog API Key.\n" + "description": "[required] | Datadog API Key.\n", + "secret": true }, "applicationKey": { "type": "string", - "description": "[required] | Datadog Application Key.\n" + "description": "[required] | Datadog Application Key.\n", + "secret": true }, "description": { "type": "string", @@ -6880,6 +7125,10 @@ "$ref": "#/types/nobl9:index/DirectDatadogHistoricalDataRetrieval:DirectDatadogHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -6892,6 +7141,10 @@ "$ref": "#/types/nobl9:index/DirectDatadogQueryDelay:DirectDatadogQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "site": { "type": "string", "description": "`com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union).\n" @@ -6901,7 +7154,8 @@ "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -6911,20 +7165,24 @@ "required": [ "apiKey", "applicationKey", + "historicalDataRetrieval", "name", "project", + "queryDelay", + "releaseChannel", "site", - "sourceOfs", "status" ], "inputProperties": { "apiKey": { "type": "string", - "description": "[required] | Datadog API Key.\n" + "description": "[required] | Datadog API Key.\n", + "secret": true }, "applicationKey": { "type": "string", - "description": "[required] | Datadog Application Key.\n" + "description": "[required] | Datadog Application Key.\n", + "secret": true }, "description": { "type": "string", @@ -6938,6 +7196,10 @@ "$ref": "#/types/nobl9:index/DirectDatadogHistoricalDataRetrieval:DirectDatadogHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -6952,6 +7214,10 @@ "$ref": "#/types/nobl9:index/DirectDatadogQueryDelay:DirectDatadogQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "site": { "type": "string", "description": "`com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union).\n" @@ -6961,24 +7227,26 @@ "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ "project", - "site", - "sourceOfs" + "site" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectDatadog resources.\n", "properties": { "apiKey": { "type": "string", - "description": "[required] | Datadog API Key.\n" + "description": "[required] | Datadog API Key.\n", + "secret": true }, "applicationKey": { "type": "string", - "description": "[required] | Datadog Application Key.\n" + "description": "[required] | Datadog Application Key.\n", + "secret": true }, "description": { "type": "string", @@ -6992,6 +7260,10 @@ "$ref": "#/types/nobl9:index/DirectDatadogHistoricalDataRetrieval:DirectDatadogHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7006,6 +7278,10 @@ "$ref": "#/types/nobl9:index/DirectDatadogQueryDelay:DirectDatadogQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "site": { "type": "string", "description": "`com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union).\n" @@ -7015,7 +7291,8 @@ "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7026,7 +7303,7 @@ } }, "nobl9:index/directDynatrace:DirectDynatrace": { - "description": "Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects with Dynatrace to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Dynatrace Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/dynatrace#dynatrace-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_dynatrace = new nobl9.DirectDynatrace(\"test-dynatrace\", {\n description: \"desc\",\n dynatraceToken: \"secret\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 1,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 10,\n }],\n },\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_dynatrace = nobl9.DirectDynatrace(\"test-dynatrace\",\n description=\"desc\",\n dynatrace_token=\"secret\",\n historical_data_retrieval=nobl9.DirectDynatraceHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=1,\n )],\n max_durations=[nobl9.DirectDynatraceHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=10,\n )],\n ),\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ],\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_dynatrace = new Nobl9.DirectDynatrace(\"test-dynatrace\", new()\n {\n Description = \"desc\",\n DynatraceToken = \"secret\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectDynatraceHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 1,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectDynatraceHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 10,\n },\n },\n },\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectDynatrace(ctx, \"test-dynatrace\", \u0026nobl9.DirectDynatraceArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tDynatraceToken: pulumi.String(\"secret\"),\n\t\t\tHistoricalDataRetrieval: \u0026DirectDynatraceHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: DirectDynatraceHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: DirectDynatraceHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026DirectDynatraceHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(10),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectDynatrace;\nimport com.pulumi.nobl9.DirectDynatraceArgs;\nimport com.pulumi.nobl9.inputs.DirectDynatraceHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_dynatrace = new DirectDynatrace(\"test-dynatrace\", DirectDynatraceArgs.builder() \n .description(\"desc\")\n .dynatraceToken(\"secret\")\n .historicalDataRetrieval(DirectDynatraceHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(1)\n .build())\n .maxDurations(DirectDynatraceHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(10)\n .build())\n .build())\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-dynatrace:\n type: nobl9:DirectDynatrace\n properties:\n description: desc\n dynatraceToken: secret\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 1\n maxDurations:\n - unit: Day\n value: 10\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects to Dynatrace for SLI measurement collection and comparison with SLO targets.\nFor more information, refer to [Dynatrace Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/dynatrace#dynatrace-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_dynatrace = new nobl9.DirectDynatrace(\"test-dynatrace\", {\n description: \"desc\",\n dynatraceToken: \"secret\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 1,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 10,\n }],\n },\n logCollectionEnabled: true,\n project: \"terraform\",\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_dynatrace = nobl9.DirectDynatrace(\"test-dynatrace\",\n description=\"desc\",\n dynatrace_token=\"secret\",\n historical_data_retrieval=nobl9.DirectDynatraceHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=1,\n )],\n max_durations=[nobl9.DirectDynatraceHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=10,\n )],\n ),\n log_collection_enabled=True,\n project=\"terraform\",\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_dynatrace = new Nobl9.DirectDynatrace(\"test-dynatrace\", new()\n {\n Description = \"desc\",\n DynatraceToken = \"secret\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectDynatraceHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 1,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectDynatraceHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 10,\n },\n },\n },\n LogCollectionEnabled = true,\n Project = \"terraform\",\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectDynatrace(ctx, \"test-dynatrace\", \u0026nobl9.DirectDynatraceArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tDynatraceToken: pulumi.String(\"secret\"),\n\t\t\tHistoricalDataRetrieval: \u0026nobl9.DirectDynatraceHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: nobl9.DirectDynatraceHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: nobl9.DirectDynatraceHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectDynatraceHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(10),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectDynatrace;\nimport com.pulumi.nobl9.DirectDynatraceArgs;\nimport com.pulumi.nobl9.inputs.DirectDynatraceHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_dynatrace = new DirectDynatrace(\"test-dynatrace\", DirectDynatraceArgs.builder() \n .description(\"desc\")\n .dynatraceToken(\"secret\")\n .historicalDataRetrieval(DirectDynatraceHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(1)\n .build())\n .maxDurations(DirectDynatraceHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(10)\n .build())\n .build())\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-dynatrace:\n type: nobl9:DirectDynatrace\n properties:\n description: desc\n dynatraceToken: secret\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 1\n maxDurations:\n - unit: Day\n value: 10\n logCollectionEnabled: true\n project: terraform\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "description": { "type": "string", @@ -7038,12 +7315,17 @@ }, "dynatraceToken": { "type": "string", - "description": "[required] | Dynatrace Token.\n" + "description": "[required] | Dynatrace Token.\n", + "secret": true }, "historicalDataRetrieval": { "$ref": "#/types/nobl9:index/DirectDynatraceHistoricalDataRetrieval:DirectDynatraceHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -7056,12 +7338,17 @@ "$ref": "#/types/nobl9:index/DirectDynatraceQueryDelay:DirectDynatraceQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7074,9 +7361,11 @@ }, "required": [ "dynatraceToken", + "historicalDataRetrieval", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status", "url" ], @@ -7091,12 +7380,184 @@ }, "dynatraceToken": { "type": "string", - "description": "[required] | Dynatrace Token.\n" + "description": "[required] | Dynatrace Token.\n", + "secret": true }, "historicalDataRetrieval": { "$ref": "#/types/nobl9:index/DirectDynatraceHistoricalDataRetrieval:DirectDynatraceHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, + "name": { + "type": "string", + "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "willReplaceOnChanges": true + }, + "project": { + "type": "string", + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "willReplaceOnChanges": true + }, + "queryDelay": { + "$ref": "#/types/nobl9:index/DirectDynatraceQueryDelay:DirectDynatraceQueryDelay", + "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" + }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "sourceOfs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." + }, + "url": { + "type": "string", + "description": "Dynatrace API URL.\n" + } + }, + "requiredInputs": [ + "project", + "url" + ], + "stateInputs": { + "description": "Input properties used for looking up and filtering DirectDynatrace resources.\n", + "properties": { + "description": { + "type": "string", + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + }, + "displayName": { + "type": "string", + "description": "User-friendly display name of the resource.\n" + }, + "dynatraceToken": { + "type": "string", + "description": "[required] | Dynatrace Token.\n", + "secret": true + }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectDynatraceHistoricalDataRetrieval:DirectDynatraceHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, + "name": { + "type": "string", + "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "willReplaceOnChanges": true + }, + "project": { + "type": "string", + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "willReplaceOnChanges": true + }, + "queryDelay": { + "$ref": "#/types/nobl9:index/DirectDynatraceQueryDelay:DirectDynatraceQueryDelay", + "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" + }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "sourceOfs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." + }, + "status": { + "type": "string", + "description": "The status of the created direct.\n" + }, + "url": { + "type": "string", + "description": "Dynatrace API URL.\n" + } + }, + "type": "object" + } + }, + "nobl9:index/directGcm:DirectGcm": { + "description": "Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects to GCM for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Google Cloud Monitoring Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_gcm = new nobl9.DirectGcm(\"test-gcm\", {\n description: \"desc\",\n logCollectionEnabled: true,\n project: \"terraform\",\n serviceAccountKey: \"secret\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_gcm = nobl9.DirectGcm(\"test-gcm\",\n description=\"desc\",\n log_collection_enabled=True,\n project=\"terraform\",\n service_account_key=\"secret\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_gcm = new Nobl9.DirectGcm(\"test-gcm\", new()\n {\n Description = \"desc\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n ServiceAccountKey = \"secret\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectGcm(ctx, \"test-gcm\", \u0026nobl9.DirectGcmArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tServiceAccountKey: pulumi.String(\"secret\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectGcm;\nimport com.pulumi.nobl9.DirectGcmArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_gcm = new DirectGcm(\"test-gcm\", DirectGcmArgs.builder() \n .description(\"desc\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .serviceAccountKey(\"secret\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-gcm:\n type: nobl9:DirectGcm\n properties:\n description: desc\n logCollectionEnabled: true\n project: terraform\n serviceAccountKey: secret\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "properties": { + "description": { + "type": "string", + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + }, + "displayName": { + "type": "string", + "description": "User-friendly display name of the resource.\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, + "name": { + "type": "string", + "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + }, + "project": { + "type": "string", + "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + }, + "queryDelay": { + "$ref": "#/types/nobl9:index/DirectGcmQueryDelay:DirectGcmQueryDelay", + "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" + }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "serviceAccountKey": { + "type": "string", + "description": "[required] | Service Account Key.\n", + "secret": true + }, + "sourceOfs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." + }, + "status": { + "type": "string", + "description": "The status of the created direct.\n" + } + }, + "required": [ + "name", + "project", + "queryDelay", + "releaseChannel", + "serviceAccountKey", + "status" + ], + "inputProperties": { + "description": { + "type": "string", + "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" + }, + "displayName": { + "type": "string", + "description": "User-friendly display name of the resource.\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7108,28 +7569,32 @@ "willReplaceOnChanges": true }, "queryDelay": { - "$ref": "#/types/nobl9:index/DirectDynatraceQueryDelay:DirectDynatraceQueryDelay", + "$ref": "#/types/nobl9:index/DirectGcmQueryDelay:DirectGcmQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "serviceAccountKey": { + "type": "string", + "description": "[required] | Service Account Key.\n", + "secret": true + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" - }, - "url": { - "type": "string", - "description": "Dynatrace API URL.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ - "project", - "sourceOfs", - "url" + "project" ], "stateInputs": { - "description": "Input properties used for looking up and filtering DirectDynatrace resources.\n", + "description": "Input properties used for looking up and filtering DirectGcm resources.\n", "properties": { "description": { "type": "string", @@ -7139,13 +7604,9 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, - "dynatraceToken": { - "type": "string", - "description": "[required] | Dynatrace Token.\n" - }, - "historicalDataRetrieval": { - "$ref": "#/types/nobl9:index/DirectDynatraceHistoricalDataRetrieval:DirectDynatraceHistoricalDataRetrieval", - "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" }, "name": { "type": "string", @@ -7158,31 +7619,42 @@ "willReplaceOnChanges": true }, "queryDelay": { - "$ref": "#/types/nobl9:index/DirectDynatraceQueryDelay:DirectDynatraceQueryDelay", + "$ref": "#/types/nobl9:index/DirectGcmQueryDelay:DirectGcmQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "serviceAccountKey": { + "type": "string", + "description": "[required] | Service Account Key.\n", + "secret": true + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", "description": "The status of the created direct.\n" - }, - "url": { - "type": "string", - "description": "Dynatrace API URL.\n" } }, "type": "object" } }, - "nobl9:index/directGcm:DirectGcm": { - "description": "Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects with GCM to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Google Cloud Monitoring Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_gcm = new nobl9.DirectGcm(\"test-gcm\", {\n description: \"desc\",\n project: \"terraform\",\n serviceAccountKey: \"secret\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_gcm = nobl9.DirectGcm(\"test-gcm\",\n description=\"desc\",\n project=\"terraform\",\n service_account_key=\"secret\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_gcm = new Nobl9.DirectGcm(\"test-gcm\", new()\n {\n Description = \"desc\",\n Project = \"terraform\",\n ServiceAccountKey = \"secret\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectGcm(ctx, \"test-gcm\", \u0026nobl9.DirectGcmArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tServiceAccountKey: pulumi.String(\"secret\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectGcm;\nimport com.pulumi.nobl9.DirectGcmArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_gcm = new DirectGcm(\"test-gcm\", DirectGcmArgs.builder() \n .description(\"desc\")\n .project(\"terraform\")\n .serviceAccountKey(\"secret\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-gcm:\n type: nobl9:DirectGcm\n properties:\n description: desc\n project: terraform\n serviceAccountKey: secret\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "nobl9:index/directHoneycomb:DirectHoneycomb": { + "description": "Honeycomb is an observability platform that integrates system metrics with high-cardinality application data for in-depth analysis and swift debugging of complex software systems. Nobl9 connects to Honeycomb for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Honeycomb Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/honeycomb#hc-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_honeycomb = new nobl9.DirectHoneycomb(\"test-honeycomb\", {\n apiKey: \"secret\",\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 7,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 7,\n }],\n },\n logCollectionEnabled: true,\n project: \"terraform\",\n queryDelay: {\n unit: \"Minute\",\n value: 6,\n },\n releaseChannel: \"beta\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_honeycomb = nobl9.DirectHoneycomb(\"test-honeycomb\",\n api_key=\"secret\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectHoneycombHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=7,\n )],\n max_durations=[nobl9.DirectHoneycombHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=7,\n )],\n ),\n log_collection_enabled=True,\n project=\"terraform\",\n query_delay=nobl9.DirectHoneycombQueryDelayArgs(\n unit=\"Minute\",\n value=6,\n ),\n release_channel=\"beta\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_honeycomb = new Nobl9.DirectHoneycomb(\"test-honeycomb\", new()\n {\n ApiKey = \"secret\",\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectHoneycombHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 7,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectHoneycombHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 7,\n },\n },\n },\n LogCollectionEnabled = true,\n Project = \"terraform\",\n QueryDelay = new Nobl9.Inputs.DirectHoneycombQueryDelayArgs\n {\n Unit = \"Minute\",\n Value = 6,\n },\n ReleaseChannel = \"beta\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectHoneycomb(ctx, \"test-honeycomb\", \u0026nobl9.DirectHoneycombArgs{\n\t\t\tApiKey: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026nobl9.DirectHoneycombHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: nobl9.DirectHoneycombHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: nobl9.DirectHoneycombHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectHoneycombHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(7),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tQueryDelay: \u0026nobl9.DirectHoneycombQueryDelayArgs{\n\t\t\t\tUnit: pulumi.String(\"Minute\"),\n\t\t\t\tValue: pulumi.Int(6),\n\t\t\t},\n\t\t\tReleaseChannel: pulumi.String(\"beta\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectHoneycomb;\nimport com.pulumi.nobl9.DirectHoneycombArgs;\nimport com.pulumi.nobl9.inputs.DirectHoneycombHistoricalDataRetrievalArgs;\nimport com.pulumi.nobl9.inputs.DirectHoneycombQueryDelayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_honeycomb = new DirectHoneycomb(\"test-honeycomb\", DirectHoneycombArgs.builder() \n .apiKey(\"secret\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectHoneycombHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(7)\n .build())\n .maxDurations(DirectHoneycombHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(7)\n .build())\n .build())\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .queryDelay(DirectHoneycombQueryDelayArgs.builder()\n .unit(\"Minute\")\n .value(6)\n .build())\n .releaseChannel(\"beta\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-honeycomb:\n type: nobl9:DirectHoneycomb\n properties:\n apiKey: secret\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 7\n maxDurations:\n - unit: Day\n value: 7\n logCollectionEnabled: true\n project: terraform\n queryDelay:\n unit: Minute\n value: 6\n releaseChannel: beta\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { + "apiKey": { + "type": "string", + "description": "[required] | Honeycomb API Key.\n", + "secret": true + }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -7191,6 +7663,14 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectHoneycombHistoricalDataRetrieval:DirectHoneycombHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -7200,19 +7680,20 @@ "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" }, "queryDelay": { - "$ref": "#/types/nobl9:index/DirectGcmQueryDelay:DirectGcmQueryDelay", + "$ref": "#/types/nobl9:index/DirectHoneycombQueryDelay:DirectHoneycombQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "serviceAccountKey": { + "releaseChannel": { "type": "string", - "description": "[required] | Service Account Key.\n" + "description": "Release channel of the created datasource [stable/beta]\n" }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7220,13 +7701,20 @@ } }, "required": [ + "apiKey", + "historicalDataRetrieval", "name", "project", - "serviceAccountKey", - "sourceOfs", + "queryDelay", + "releaseChannel", "status" ], "inputProperties": { + "apiKey": { + "type": "string", + "description": "[required] | Honeycomb API Key.\n", + "secret": true + }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -7235,6 +7723,14 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectHoneycombHistoricalDataRetrieval:DirectHoneycombHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7246,28 +7742,33 @@ "willReplaceOnChanges": true }, "queryDelay": { - "$ref": "#/types/nobl9:index/DirectGcmQueryDelay:DirectGcmQueryDelay", + "$ref": "#/types/nobl9:index/DirectHoneycombQueryDelay:DirectHoneycombQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "serviceAccountKey": { + "releaseChannel": { "type": "string", - "description": "[required] | Service Account Key.\n" + "description": "Release channel of the created datasource [stable/beta]\n" }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ - "project", - "sourceOfs" + "project" ], "stateInputs": { - "description": "Input properties used for looking up and filtering DirectGcm resources.\n", + "description": "Input properties used for looking up and filtering DirectHoneycomb resources.\n", "properties": { + "apiKey": { + "type": "string", + "description": "[required] | Honeycomb API Key.\n", + "secret": true + }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -7276,6 +7777,14 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "historicalDataRetrieval": { + "$ref": "#/types/nobl9:index/DirectHoneycombHistoricalDataRetrieval:DirectHoneycombHistoricalDataRetrieval", + "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7287,19 +7796,20 @@ "willReplaceOnChanges": true }, "queryDelay": { - "$ref": "#/types/nobl9:index/DirectGcmQueryDelay:DirectGcmQueryDelay", + "$ref": "#/types/nobl9:index/DirectHoneycombQueryDelay:DirectHoneycombQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "serviceAccountKey": { + "releaseChannel": { "type": "string", - "description": "[required] | Service Account Key.\n" + "description": "Release channel of the created datasource [stable/beta]\n" }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7310,11 +7820,12 @@ } }, "nobl9:index/directInfluxdb:DirectInfluxdb": { - "description": "InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects with InfluxDB to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [InfluxDB Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_influxdb = new nobl9.DirectInfluxdb(\"test-influxdb\", {\n apiToken: \"secret\",\n description: \"desc\",\n organizationId: \"secret\",\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_influxdb = nobl9.DirectInfluxdb(\"test-influxdb\",\n api_token=\"secret\",\n description=\"desc\",\n organization_id=\"secret\",\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ],\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_influxdb = new Nobl9.DirectInfluxdb(\"test-influxdb\", new()\n {\n ApiToken = \"secret\",\n Description = \"desc\",\n OrganizationId = \"secret\",\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectInfluxdb(ctx, \"test-influxdb\", \u0026nobl9.DirectInfluxdbArgs{\n\t\t\tApiToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tOrganizationId: pulumi.String(\"secret\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectInfluxdb;\nimport com.pulumi.nobl9.DirectInfluxdbArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_influxdb = new DirectInfluxdb(\"test-influxdb\", DirectInfluxdbArgs.builder() \n .apiToken(\"secret\")\n .description(\"desc\")\n .organizationId(\"secret\")\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-influxdb:\n type: nobl9:DirectInfluxdb\n properties:\n apiToken: secret\n description: desc\n organizationId: secret\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects to InfluxDB for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [InfluxDB Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_influxdb = new nobl9.DirectInfluxdb(\"test-influxdb\", {\n apiToken: \"secret\",\n description: \"desc\",\n logCollectionEnabled: true,\n organizationId: \"secret\",\n project: \"terraform\",\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_influxdb = nobl9.DirectInfluxdb(\"test-influxdb\",\n api_token=\"secret\",\n description=\"desc\",\n log_collection_enabled=True,\n organization_id=\"secret\",\n project=\"terraform\",\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_influxdb = new Nobl9.DirectInfluxdb(\"test-influxdb\", new()\n {\n ApiToken = \"secret\",\n Description = \"desc\",\n LogCollectionEnabled = true,\n OrganizationId = \"secret\",\n Project = \"terraform\",\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectInfluxdb(ctx, \"test-influxdb\", \u0026nobl9.DirectInfluxdbArgs{\n\t\t\tApiToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tOrganizationId: pulumi.String(\"secret\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectInfluxdb;\nimport com.pulumi.nobl9.DirectInfluxdbArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_influxdb = new DirectInfluxdb(\"test-influxdb\", DirectInfluxdbArgs.builder() \n .apiToken(\"secret\")\n .description(\"desc\")\n .logCollectionEnabled(true)\n .organizationId(\"secret\")\n .project(\"terraform\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-influxdb:\n type: nobl9:DirectInfluxdb\n properties:\n apiToken: secret\n description: desc\n logCollectionEnabled: true\n organizationId: secret\n project: terraform\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "apiToken": { "type": "string", - "description": "[required] | InfluxDB API Token.\n" + "description": "[required] | InfluxDB API Token.\n", + "secret": true }, "description": { "type": "string", @@ -7324,13 +7835,18 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" }, "organizationId": { "type": "string", - "description": "[required] | InfluxDB Organization ID.\n" + "description": "[required] | InfluxDB Organization ID.\n", + "secret": true }, "project": { "type": "string", @@ -7340,12 +7856,17 @@ "$ref": "#/types/nobl9:index/DirectInfluxdbQueryDelay:DirectInfluxdbQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7361,14 +7882,16 @@ "name", "organizationId", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status", "url" ], "inputProperties": { "apiToken": { "type": "string", - "description": "[required] | InfluxDB API Token.\n" + "description": "[required] | InfluxDB API Token.\n", + "secret": true }, "description": { "type": "string", @@ -7378,6 +7901,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7385,7 +7912,8 @@ }, "organizationId": { "type": "string", - "description": "[required] | InfluxDB Organization ID.\n" + "description": "[required] | InfluxDB Organization ID.\n", + "secret": true }, "project": { "type": "string", @@ -7396,12 +7924,17 @@ "$ref": "#/types/nobl9:index/DirectInfluxdbQueryDelay:DirectInfluxdbQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "url": { "type": "string", @@ -7410,7 +7943,6 @@ }, "requiredInputs": [ "project", - "sourceOfs", "url" ], "stateInputs": { @@ -7418,7 +7950,8 @@ "properties": { "apiToken": { "type": "string", - "description": "[required] | InfluxDB API Token.\n" + "description": "[required] | InfluxDB API Token.\n", + "secret": true }, "description": { "type": "string", @@ -7428,6 +7961,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7435,7 +7972,8 @@ }, "organizationId": { "type": "string", - "description": "[required] | InfluxDB Organization ID.\n" + "description": "[required] | InfluxDB Organization ID.\n", + "secret": true }, "project": { "type": "string", @@ -7446,12 +7984,17 @@ "$ref": "#/types/nobl9:index/DirectInfluxdbQueryDelay:DirectInfluxdbQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7466,11 +8009,12 @@ } }, "nobl9:index/directInstana:DirectInstana": { - "description": "Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects with Instana to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Instana Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/instana#instana-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_instana = new nobl9.DirectInstana(\"test-instana\", {\n apiToken: \"secret\",\n description: \"desc\",\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_instana = nobl9.DirectInstana(\"test-instana\",\n api_token=\"secret\",\n description=\"desc\",\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ],\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_instana = new Nobl9.DirectInstana(\"test-instana\", new()\n {\n ApiToken = \"secret\",\n Description = \"desc\",\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectInstana(ctx, \"test-instana\", \u0026nobl9.DirectInstanaArgs{\n\t\t\tApiToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectInstana;\nimport com.pulumi.nobl9.DirectInstanaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_instana = new DirectInstana(\"test-instana\", DirectInstanaArgs.builder() \n .apiToken(\"secret\")\n .description(\"desc\")\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-instana:\n type: nobl9:DirectInstana\n properties:\n apiToken: secret\n description: desc\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects to Instana for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Instana Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/instana#instana-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_instana = new nobl9.DirectInstana(\"test-instana\", {\n apiToken: \"secret\",\n description: \"desc\",\n logCollectionEnabled: true,\n project: \"terraform\",\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_instana = nobl9.DirectInstana(\"test-instana\",\n api_token=\"secret\",\n description=\"desc\",\n log_collection_enabled=True,\n project=\"terraform\",\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_instana = new Nobl9.DirectInstana(\"test-instana\", new()\n {\n ApiToken = \"secret\",\n Description = \"desc\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectInstana(ctx, \"test-instana\", \u0026nobl9.DirectInstanaArgs{\n\t\t\tApiToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectInstana;\nimport com.pulumi.nobl9.DirectInstanaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_instana = new DirectInstana(\"test-instana\", DirectInstanaArgs.builder() \n .apiToken(\"secret\")\n .description(\"desc\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-instana:\n type: nobl9:DirectInstana\n properties:\n apiToken: secret\n description: desc\n logCollectionEnabled: true\n project: terraform\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "apiToken": { "type": "string", - "description": "[required] | Instana API Token.\n" + "description": "[required] | Instana API Token.\n", + "secret": true }, "description": { "type": "string", @@ -7480,6 +8024,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -7492,12 +8040,17 @@ "$ref": "#/types/nobl9:index/DirectInstanaQueryDelay:DirectInstanaQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7512,14 +8065,16 @@ "apiToken", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status", "url" ], "inputProperties": { "apiToken": { "type": "string", - "description": "[required] | Instana API Token.\n" + "description": "[required] | Instana API Token.\n", + "secret": true }, "description": { "type": "string", @@ -7529,6 +8084,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7543,12 +8102,17 @@ "$ref": "#/types/nobl9:index/DirectInstanaQueryDelay:DirectInstanaQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "url": { "type": "string", @@ -7557,7 +8121,6 @@ }, "requiredInputs": [ "project", - "sourceOfs", "url" ], "stateInputs": { @@ -7565,7 +8128,8 @@ "properties": { "apiToken": { "type": "string", - "description": "[required] | Instana API Token.\n" + "description": "[required] | Instana API Token.\n", + "secret": true }, "description": { "type": "string", @@ -7575,6 +8139,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7589,12 +8157,17 @@ "$ref": "#/types/nobl9:index/DirectInstanaQueryDelay:DirectInstanaQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7609,11 +8182,12 @@ } }, "nobl9:index/directLightstep:DirectLightstep": { - "description": "Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects with Lightstep to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Lightstep Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_lightstep = new nobl9.DirectLightstep(\"test-lightstep\", {\n appToken: \"secret\",\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 30,\n }],\n },\n lightstepOrganization: \"acme\",\n lightstepProject: \"project1\",\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_lightstep = nobl9.DirectLightstep(\"test-lightstep\",\n app_token=\"secret\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectLightstepHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectLightstepHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectLightstepHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=30,\n )],\n ),\n lightstep_organization=\"acme\",\n lightstep_project=\"project1\",\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_lightstep = new Nobl9.DirectLightstep(\"test-lightstep\", new()\n {\n AppToken = \"secret\",\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectLightstepHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectLightstepHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectLightstepHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 30,\n },\n },\n },\n LightstepOrganization = \"acme\",\n LightstepProject = \"project1\",\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectLightstep(ctx, \"test-lightstep\", \u0026nobl9.DirectLightstepArgs{\n\t\t\tAppToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026DirectLightstepHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: DirectLightstepHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026DirectLightstepHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: DirectLightstepHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026DirectLightstepHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(30),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLightstepOrganization: pulumi.String(\"acme\"),\n\t\t\tLightstepProject: pulumi.String(\"project1\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectLightstep;\nimport com.pulumi.nobl9.DirectLightstepArgs;\nimport com.pulumi.nobl9.inputs.DirectLightstepHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_lightstep = new DirectLightstep(\"test-lightstep\", DirectLightstepArgs.builder() \n .appToken(\"secret\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectLightstepHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectLightstepHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectLightstepHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(30)\n .build())\n .build())\n .lightstepOrganization(\"acme\")\n .lightstepProject(\"project1\")\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-lightstep:\n type: nobl9:DirectLightstep\n properties:\n appToken: secret\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 30\n lightstepOrganization: acme\n lightstepProject: project1\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects to Lightstep for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Lightstep Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_lightstep = new nobl9.DirectLightstep(\"test-lightstep\", {\n appToken: \"secret\",\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 30,\n }],\n },\n lightstepOrganization: \"acme\",\n lightstepProject: \"project1\",\n logCollectionEnabled: true,\n project: \"terraform\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_lightstep = nobl9.DirectLightstep(\"test-lightstep\",\n app_token=\"secret\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectLightstepHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectLightstepHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectLightstepHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=30,\n )],\n ),\n lightstep_organization=\"acme\",\n lightstep_project=\"project1\",\n log_collection_enabled=True,\n project=\"terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_lightstep = new Nobl9.DirectLightstep(\"test-lightstep\", new()\n {\n AppToken = \"secret\",\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectLightstepHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectLightstepHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectLightstepHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 30,\n },\n },\n },\n LightstepOrganization = \"acme\",\n LightstepProject = \"project1\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectLightstep(ctx, \"test-lightstep\", \u0026nobl9.DirectLightstepArgs{\n\t\t\tAppToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026nobl9.DirectLightstepHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: nobl9.DirectLightstepHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectLightstepHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: nobl9.DirectLightstepHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectLightstepHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(30),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLightstepOrganization: pulumi.String(\"acme\"),\n\t\t\tLightstepProject: pulumi.String(\"project1\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectLightstep;\nimport com.pulumi.nobl9.DirectLightstepArgs;\nimport com.pulumi.nobl9.inputs.DirectLightstepHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_lightstep = new DirectLightstep(\"test-lightstep\", DirectLightstepArgs.builder() \n .appToken(\"secret\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectLightstepHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectLightstepHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectLightstepHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(30)\n .build())\n .build())\n .lightstepOrganization(\"acme\")\n .lightstepProject(\"project1\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-lightstep:\n type: nobl9:DirectLightstep\n properties:\n appToken: secret\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 30\n lightstepOrganization: acme\n lightstepProject: project1\n logCollectionEnabled: true\n project: terraform\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "appToken": { "type": "string", - "description": "[required] | Lightstep App Token.\n" + "description": "[required] | Lightstep App Token.\n", + "secret": true }, "description": { "type": "string", @@ -7635,6 +8209,10 @@ "type": "string", "description": "Name of the Lightstep project.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -7647,31 +8225,43 @@ "$ref": "#/types/nobl9:index/DirectLightstepQueryDelay:DirectLightstepQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", "description": "The status of the created direct.\n" + }, + "url": { + "type": "string", + "description": "Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty.\n" } }, "required": [ "appToken", + "historicalDataRetrieval", "lightstepOrganization", "lightstepProject", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status" ], "inputProperties": { "appToken": { "type": "string", - "description": "[required] | Lightstep App Token.\n" + "description": "[required] | Lightstep App Token.\n", + "secret": true }, "description": { "type": "string", @@ -7693,6 +8283,10 @@ "type": "string", "description": "Name of the Lightstep project.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7707,26 +8301,35 @@ "$ref": "#/types/nobl9:index/DirectLightstepQueryDelay:DirectLightstepQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." + }, + "url": { + "type": "string", + "description": "Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty.\n" } }, "requiredInputs": [ "lightstepOrganization", "lightstepProject", - "project", - "sourceOfs" + "project" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectLightstep resources.\n", "properties": { "appToken": { "type": "string", - "description": "[required] | Lightstep App Token.\n" + "description": "[required] | Lightstep App Token.\n", + "secret": true }, "description": { "type": "string", @@ -7748,6 +8351,10 @@ "type": "string", "description": "Name of the Lightstep project.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -7762,23 +8369,32 @@ "$ref": "#/types/nobl9:index/DirectLightstepQueryDelay:DirectLightstepQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", "description": "The status of the created direct.\n" + }, + "url": { + "type": "string", + "description": "Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty.\n" } }, "type": "object" } }, "nobl9:index/directNewrelic:DirectNewrelic": { - "description": "New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects with New Relic to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [New Relic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_newrelic = new nobl9.DirectNewrelic(\"test-newrelic\", {\n accountId: 1234,\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 30,\n }],\n },\n insightsQueryKey: \"secret\",\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_newrelic = nobl9.DirectNewrelic(\"test-newrelic\",\n account_id=1234,\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectNewrelicHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectNewrelicHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=30,\n )],\n ),\n insights_query_key=\"secret\",\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_newrelic = new Nobl9.DirectNewrelic(\"test-newrelic\", new()\n {\n AccountId = 1234,\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectNewrelicHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectNewrelicHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 30,\n },\n },\n },\n InsightsQueryKey = \"secret\",\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectNewrelic(ctx, \"test-newrelic\", \u0026nobl9.DirectNewrelicArgs{\n\t\t\tAccountId: pulumi.Int(1234),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026DirectNewrelicHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: DirectNewrelicHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: DirectNewrelicHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026DirectNewrelicHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(30),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tInsightsQueryKey: pulumi.String(\"secret\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectNewrelic;\nimport com.pulumi.nobl9.DirectNewrelicArgs;\nimport com.pulumi.nobl9.inputs.DirectNewrelicHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_newrelic = new DirectNewrelic(\"test-newrelic\", DirectNewrelicArgs.builder() \n .accountId(\"1234\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectNewrelicHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectNewrelicHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(30)\n .build())\n .build())\n .insightsQueryKey(\"secret\")\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-newrelic:\n type: nobl9:DirectNewrelic\n properties:\n accountId: 1234\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 30\n insightsQueryKey: secret\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects to New Relic for SLI measurement collection and comparison with SLO targets.\nFor more information, refer to [New Relic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_newrelic = new nobl9.DirectNewrelic(\"test-newrelic\", {\n accountId: 1234,\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 30,\n }],\n },\n insightsQueryKey: \"secret\",\n logCollectionEnabled: true,\n project: \"terraform\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_newrelic = nobl9.DirectNewrelic(\"test-newrelic\",\n account_id=1234,\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectNewrelicHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectNewrelicHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=30,\n )],\n ),\n insights_query_key=\"secret\",\n log_collection_enabled=True,\n project=\"terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_newrelic = new Nobl9.DirectNewrelic(\"test-newrelic\", new()\n {\n AccountId = 1234,\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectNewrelicHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectNewrelicHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 30,\n },\n },\n },\n InsightsQueryKey = \"secret\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectNewrelic(ctx, \"test-newrelic\", \u0026nobl9.DirectNewrelicArgs{\n\t\t\tAccountId: pulumi.Int(1234),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026nobl9.DirectNewrelicHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: nobl9.DirectNewrelicHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: nobl9.DirectNewrelicHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectNewrelicHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(30),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tInsightsQueryKey: pulumi.String(\"secret\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectNewrelic;\nimport com.pulumi.nobl9.DirectNewrelicArgs;\nimport com.pulumi.nobl9.inputs.DirectNewrelicHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_newrelic = new DirectNewrelic(\"test-newrelic\", DirectNewrelicArgs.builder() \n .accountId(\"1234\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectNewrelicHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectNewrelicHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(30)\n .build())\n .build())\n .insightsQueryKey(\"secret\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-newrelic:\n type: nobl9:DirectNewrelic\n properties:\n accountId: '1234'\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 30\n insightsQueryKey: secret\n logCollectionEnabled: true\n project: terraform\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "accountId": { "type": "integer", @@ -7798,7 +8414,12 @@ }, "insightsQueryKey": { "type": "string", - "description": "[required] | New Relic Insights Query Key.\n" + "description": "[required] | New Relic Insights Query Key.\n", + "secret": true + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" }, "name": { "type": "string", @@ -7812,12 +8433,17 @@ "$ref": "#/types/nobl9:index/DirectNewrelicQueryDelay:DirectNewrelicQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7826,10 +8452,12 @@ }, "required": [ "accountId", + "historicalDataRetrieval", "insightsQueryKey", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status" ], "inputProperties": { @@ -7851,7 +8479,12 @@ }, "insightsQueryKey": { "type": "string", - "description": "[required] | New Relic Insights Query Key.\n" + "description": "[required] | New Relic Insights Query Key.\n", + "secret": true + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" }, "name": { "type": "string", @@ -7867,18 +8500,22 @@ "$ref": "#/types/nobl9:index/DirectNewrelicQueryDelay:DirectNewrelicQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ "accountId", - "project", - "sourceOfs" + "project" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectNewrelic resources.\n", @@ -7901,7 +8538,12 @@ }, "insightsQueryKey": { "type": "string", - "description": "[required] | New Relic Insights Query Key.\n" + "description": "[required] | New Relic Insights Query Key.\n", + "secret": true + }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" }, "name": { "type": "string", @@ -7917,12 +8559,17 @@ "$ref": "#/types/nobl9:index/DirectNewrelicQueryDelay:DirectNewrelicQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7933,11 +8580,12 @@ } }, "nobl9:index/directPingdom:DirectPingdom": { - "description": "Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects with Pingdom to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Pingdom Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_pingdom = new nobl9.DirectPingdom(\"test-pingdom\", {\n apiToken: \"secret\",\n description: \"desc\",\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_pingdom = nobl9.DirectPingdom(\"test-pingdom\",\n api_token=\"secret\",\n description=\"desc\",\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_pingdom = new Nobl9.DirectPingdom(\"test-pingdom\", new()\n {\n ApiToken = \"secret\",\n Description = \"desc\",\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectPingdom(ctx, \"test-pingdom\", \u0026nobl9.DirectPingdomArgs{\n\t\t\tApiToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectPingdom;\nimport com.pulumi.nobl9.DirectPingdomArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_pingdom = new DirectPingdom(\"test-pingdom\", DirectPingdomArgs.builder() \n .apiToken(\"secret\")\n .description(\"desc\")\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-pingdom:\n type: nobl9:DirectPingdom\n properties:\n apiToken: secret\n description: desc\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects to Pingdom for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Pingdom Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_pingdom = new nobl9.DirectPingdom(\"test-pingdom\", {\n apiToken: \"secret\",\n description: \"desc\",\n logCollectionEnabled: true,\n project: \"terraform\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_pingdom = nobl9.DirectPingdom(\"test-pingdom\",\n api_token=\"secret\",\n description=\"desc\",\n log_collection_enabled=True,\n project=\"terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_pingdom = new Nobl9.DirectPingdom(\"test-pingdom\", new()\n {\n ApiToken = \"secret\",\n Description = \"desc\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectPingdom(ctx, \"test-pingdom\", \u0026nobl9.DirectPingdomArgs{\n\t\t\tApiToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectPingdom;\nimport com.pulumi.nobl9.DirectPingdomArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_pingdom = new DirectPingdom(\"test-pingdom\", DirectPingdomArgs.builder() \n .apiToken(\"secret\")\n .description(\"desc\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-pingdom:\n type: nobl9:DirectPingdom\n properties:\n apiToken: secret\n description: desc\n logCollectionEnabled: true\n project: terraform\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "apiToken": { "type": "string", - "description": "[required] | Pingdom API token.\n" + "description": "[required] | Pingdom API token.\n", + "secret": true }, "description": { "type": "string", @@ -7947,6 +8595,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -7959,12 +8611,17 @@ "$ref": "#/types/nobl9:index/DirectPingdomQueryDelay:DirectPingdomQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -7975,13 +8632,15 @@ "apiToken", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status" ], "inputProperties": { "apiToken": { "type": "string", - "description": "[required] | Pingdom API token.\n" + "description": "[required] | Pingdom API token.\n", + "secret": true }, "description": { "type": "string", @@ -7991,6 +8650,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8005,24 +8668,29 @@ "$ref": "#/types/nobl9:index/DirectPingdomQueryDelay:DirectPingdomQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ - "project", - "sourceOfs" + "project" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectPingdom resources.\n", "properties": { "apiToken": { "type": "string", - "description": "[required] | Pingdom API token.\n" + "description": "[required] | Pingdom API token.\n", + "secret": true }, "description": { "type": "string", @@ -8032,6 +8700,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8046,12 +8718,17 @@ "$ref": "#/types/nobl9:index/DirectPingdomQueryDelay:DirectPingdomQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8062,12 +8739,8 @@ } }, "nobl9:index/directRedshift:DirectRedshift": { - "description": "Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects with Amazon Redshift to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Amazon Redshift Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_redshift = new nobl9.DirectRedshift(\"test-redshift\", {\n accessKeyId: \"secret\",\n description: \"desc\",\n project: \"terraform\",\n secretAccessKey: \"secret\",\n secretArn: \"aws:arn\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_redshift = nobl9.DirectRedshift(\"test-redshift\",\n access_key_id=\"secret\",\n description=\"desc\",\n project=\"terraform\",\n secret_access_key=\"secret\",\n secret_arn=\"aws:arn\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_redshift = new Nobl9.DirectRedshift(\"test-redshift\", new()\n {\n AccessKeyId = \"secret\",\n Description = \"desc\",\n Project = \"terraform\",\n SecretAccessKey = \"secret\",\n SecretArn = \"aws:arn\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectRedshift(ctx, \"test-redshift\", \u0026nobl9.DirectRedshiftArgs{\n\t\t\tAccessKeyId: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSecretAccessKey: pulumi.String(\"secret\"),\n\t\t\tSecretArn: pulumi.String(\"aws:arn\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectRedshift;\nimport com.pulumi.nobl9.DirectRedshiftArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_redshift = new DirectRedshift(\"test-redshift\", DirectRedshiftArgs.builder() \n .accessKeyId(\"secret\")\n .description(\"desc\")\n .project(\"terraform\")\n .secretAccessKey(\"secret\")\n .secretArn(\"aws:arn\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-redshift:\n type: nobl9:DirectRedshift\n properties:\n accessKeyId: secret\n description: desc\n project: terraform\n secretAccessKey: secret\n secretArn: aws:arn\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects to Amazon Redshift for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Amazon Redshift Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_redshift = new nobl9.DirectRedshift(\"test-redshift\", {\n description: \"desc\",\n logCollectionEnabled: true,\n project: \"terraform\",\n roleArn: \"secret\",\n secretArn: \"aws:arn\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_redshift = nobl9.DirectRedshift(\"test-redshift\",\n description=\"desc\",\n log_collection_enabled=True,\n project=\"terraform\",\n role_arn=\"secret\",\n secret_arn=\"aws:arn\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_redshift = new Nobl9.DirectRedshift(\"test-redshift\", new()\n {\n Description = \"desc\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n RoleArn = \"secret\",\n SecretArn = \"aws:arn\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectRedshift(ctx, \"test-redshift\", \u0026nobl9.DirectRedshiftArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tRoleArn: pulumi.String(\"secret\"),\n\t\t\tSecretArn: pulumi.String(\"aws:arn\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectRedshift;\nimport com.pulumi.nobl9.DirectRedshiftArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_redshift = new DirectRedshift(\"test-redshift\", DirectRedshiftArgs.builder() \n .description(\"desc\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .roleArn(\"secret\")\n .secretArn(\"aws:arn\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-redshift:\n type: nobl9:DirectRedshift\n properties:\n description: desc\n logCollectionEnabled: true\n project: terraform\n roleArn: secret\n secretArn: aws:arn\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { - "accessKeyId": { - "type": "string", - "description": "[required] | AWS Access Key ID.\n" - }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -8076,6 +8749,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -8088,20 +8765,27 @@ "$ref": "#/types/nobl9:index/DirectRedshiftQueryDelay:DirectRedshiftQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "secretAccessKey": { + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "roleArn": { "type": "string", - "description": "[required] | AWS Secret Access Key.\n" + "description": "[required] | ARN of the AWS IAM Role to assume.\n", + "secret": true }, "secretArn": { "type": "string", - "description": "AWS Secret ARN.\n" + "description": "AWS Secret ARN.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8109,19 +8793,15 @@ } }, "required": [ - "accessKeyId", "name", "project", - "secretAccessKey", + "queryDelay", + "releaseChannel", + "roleArn", "secretArn", - "sourceOfs", "status" ], "inputProperties": { - "accessKeyId": { - "type": "string", - "description": "[required] | AWS Access Key ID.\n" - }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -8130,6 +8810,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8144,33 +8828,35 @@ "$ref": "#/types/nobl9:index/DirectRedshiftQueryDelay:DirectRedshiftQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "secretAccessKey": { + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "roleArn": { "type": "string", - "description": "[required] | AWS Secret Access Key.\n" + "description": "[required] | ARN of the AWS IAM Role to assume.\n", + "secret": true }, "secretArn": { "type": "string", - "description": "AWS Secret ARN.\n" + "description": "AWS Secret ARN.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ - "project", - "sourceOfs" + "project" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectRedshift resources.\n", "properties": { - "accessKeyId": { - "type": "string", - "description": "[required] | AWS Access Key ID.\n" - }, "description": { "type": "string", "description": "Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it.\n" @@ -8179,6 +8865,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8193,20 +8883,27 @@ "$ref": "#/types/nobl9:index/DirectRedshiftQueryDelay:DirectRedshiftQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, - "secretAccessKey": { + "releaseChannel": { "type": "string", - "description": "[required] | AWS Secret Access Key.\n" + "description": "Release channel of the created datasource [stable/beta]\n" + }, + "roleArn": { + "type": "string", + "description": "[required] | ARN of the AWS IAM Role to assume.\n", + "secret": true }, "secretArn": { "type": "string", - "description": "AWS Secret ARN.\n" + "description": "AWS Secret ARN.\n", + "secret": true }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8217,11 +8914,12 @@ } }, "nobl9:index/directSplunk:DirectSplunk": { - "description": "Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects with Splunk to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Splunk Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk#splunk-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_splunk = new nobl9.DirectSplunk(\"test-splunk\", {\n accessToken: \"secret\",\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 30,\n }],\n },\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_splunk = nobl9.DirectSplunk(\"test-splunk\",\n access_token=\"secret\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectSplunkHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectSplunkHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectSplunkHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=30,\n )],\n ),\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ],\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_splunk = new Nobl9.DirectSplunk(\"test-splunk\", new()\n {\n AccessToken = \"secret\",\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectSplunkHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectSplunkHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectSplunkHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 30,\n },\n },\n },\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectSplunk(ctx, \"test-splunk\", \u0026nobl9.DirectSplunkArgs{\n\t\t\tAccessToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026DirectSplunkHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: DirectSplunkHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026DirectSplunkHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: DirectSplunkHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026DirectSplunkHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(30),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectSplunk;\nimport com.pulumi.nobl9.DirectSplunkArgs;\nimport com.pulumi.nobl9.inputs.DirectSplunkHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_splunk = new DirectSplunk(\"test-splunk\", DirectSplunkArgs.builder() \n .accessToken(\"secret\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectSplunkHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectSplunkHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectSplunkHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(30)\n .build())\n .build())\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-splunk:\n type: nobl9:DirectSplunk\n properties:\n accessToken: secret\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 30\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects to Splunk for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Splunk Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk#splunk-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_splunk = new nobl9.DirectSplunk(\"test-splunk\", {\n accessToken: \"secret\",\n description: \"desc\",\n historicalDataRetrieval: {\n defaultDurations: [{\n unit: \"Day\",\n value: 0,\n }],\n maxDurations: [{\n unit: \"Day\",\n value: 30,\n }],\n },\n logCollectionEnabled: true,\n project: \"terraform\",\n url: \"https://web.net\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_splunk = nobl9.DirectSplunk(\"test-splunk\",\n access_token=\"secret\",\n description=\"desc\",\n historical_data_retrieval=nobl9.DirectSplunkHistoricalDataRetrievalArgs(\n default_durations=[nobl9.DirectSplunkHistoricalDataRetrievalDefaultDurationArgs(\n unit=\"Day\",\n value=0,\n )],\n max_durations=[nobl9.DirectSplunkHistoricalDataRetrievalMaxDurationArgs(\n unit=\"Day\",\n value=30,\n )],\n ),\n log_collection_enabled=True,\n project=\"terraform\",\n url=\"https://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_splunk = new Nobl9.DirectSplunk(\"test-splunk\", new()\n {\n AccessToken = \"secret\",\n Description = \"desc\",\n HistoricalDataRetrieval = new Nobl9.Inputs.DirectSplunkHistoricalDataRetrievalArgs\n {\n DefaultDurations = new[]\n {\n new Nobl9.Inputs.DirectSplunkHistoricalDataRetrievalDefaultDurationArgs\n {\n Unit = \"Day\",\n Value = 0,\n },\n },\n MaxDurations = new[]\n {\n new Nobl9.Inputs.DirectSplunkHistoricalDataRetrievalMaxDurationArgs\n {\n Unit = \"Day\",\n Value = 30,\n },\n },\n },\n LogCollectionEnabled = true,\n Project = \"terraform\",\n Url = \"https://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectSplunk(ctx, \"test-splunk\", \u0026nobl9.DirectSplunkArgs{\n\t\t\tAccessToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tHistoricalDataRetrieval: \u0026nobl9.DirectSplunkHistoricalDataRetrievalArgs{\n\t\t\t\tDefaultDurations: nobl9.DirectSplunkHistoricalDataRetrievalDefaultDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectSplunkHistoricalDataRetrievalDefaultDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxDurations: nobl9.DirectSplunkHistoricalDataRetrievalMaxDurationArray{\n\t\t\t\t\t\u0026nobl9.DirectSplunkHistoricalDataRetrievalMaxDurationArgs{\n\t\t\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\t\t\tValue: pulumi.Int(30),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tUrl: pulumi.String(\"https://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectSplunk;\nimport com.pulumi.nobl9.DirectSplunkArgs;\nimport com.pulumi.nobl9.inputs.DirectSplunkHistoricalDataRetrievalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_splunk = new DirectSplunk(\"test-splunk\", DirectSplunkArgs.builder() \n .accessToken(\"secret\")\n .description(\"desc\")\n .historicalDataRetrieval(DirectSplunkHistoricalDataRetrievalArgs.builder()\n .defaultDurations(DirectSplunkHistoricalDataRetrievalDefaultDurationArgs.builder()\n .unit(\"Day\")\n .value(0)\n .build())\n .maxDurations(DirectSplunkHistoricalDataRetrievalMaxDurationArgs.builder()\n .unit(\"Day\")\n .value(30)\n .build())\n .build())\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .url(\"https://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-splunk:\n type: nobl9:DirectSplunk\n properties:\n accessToken: secret\n description: desc\n historicalDataRetrieval:\n defaultDurations:\n - unit: Day\n value: 0\n maxDurations:\n - unit: Day\n value: 30\n logCollectionEnabled: true\n project: terraform\n url: https://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "accessToken": { "type": "string", - "description": "[required] | Splunk API Access Token.\n" + "description": "[required] | Splunk API Access Token.\n", + "secret": true }, "description": { "type": "string", @@ -8235,6 +8933,10 @@ "$ref": "#/types/nobl9:index/DirectSplunkHistoricalDataRetrieval:DirectSplunkHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -8247,12 +8949,17 @@ "$ref": "#/types/nobl9:index/DirectSplunkQueryDelay:DirectSplunkQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8265,16 +8972,19 @@ }, "required": [ "accessToken", + "historicalDataRetrieval", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status", "url" ], "inputProperties": { "accessToken": { "type": "string", - "description": "[required] | Splunk API Access Token.\n" + "description": "[required] | Splunk API Access Token.\n", + "secret": true }, "description": { "type": "string", @@ -8288,6 +8998,10 @@ "$ref": "#/types/nobl9:index/DirectSplunkHistoricalDataRetrieval:DirectSplunkHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8302,12 +9016,17 @@ "$ref": "#/types/nobl9:index/DirectSplunkQueryDelay:DirectSplunkQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "url": { "type": "string", @@ -8316,7 +9035,6 @@ }, "requiredInputs": [ "project", - "sourceOfs", "url" ], "stateInputs": { @@ -8324,7 +9042,8 @@ "properties": { "accessToken": { "type": "string", - "description": "[required] | Splunk API Access Token.\n" + "description": "[required] | Splunk API Access Token.\n", + "secret": true }, "description": { "type": "string", @@ -8338,6 +9057,10 @@ "$ref": "#/types/nobl9:index/DirectSplunkHistoricalDataRetrieval:DirectSplunkHistoricalDataRetrieval", "description": "[Replay configuration documentation](https://docs.nobl9.com/replay)\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8352,12 +9075,17 @@ "$ref": "#/types/nobl9:index/DirectSplunkQueryDelay:DirectSplunkQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8372,11 +9100,12 @@ } }, "nobl9:index/directSplunkObservability:DirectSplunkObservability": { - "description": "Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects with Splunk Observability to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Splunk Observability Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_splunkobservability = new nobl9.DirectSplunkObservability(\"test-splunkobservability\", {\n accessToken: \"secret\",\n description: \"desc\",\n project: \"terraform\",\n realm: \"eu\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_splunkobservability = nobl9.DirectSplunkObservability(\"test-splunkobservability\",\n access_token=\"secret\",\n description=\"desc\",\n project=\"terraform\",\n realm=\"eu\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_splunkobservability = new Nobl9.DirectSplunkObservability(\"test-splunkobservability\", new()\n {\n AccessToken = \"secret\",\n Description = \"desc\",\n Project = \"terraform\",\n Realm = \"eu\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectSplunkObservability(ctx, \"test-splunkobservability\", \u0026nobl9.DirectSplunkObservabilityArgs{\n\t\t\tAccessToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tRealm: pulumi.String(\"eu\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectSplunkObservability;\nimport com.pulumi.nobl9.DirectSplunkObservabilityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_splunkobservability = new DirectSplunkObservability(\"test-splunkobservability\", DirectSplunkObservabilityArgs.builder() \n .accessToken(\"secret\")\n .description(\"desc\")\n .project(\"terraform\")\n .realm(\"eu\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-splunkobservability:\n type: nobl9:DirectSplunkObservability\n properties:\n accessToken: secret\n description: desc\n project: terraform\n realm: eu\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects to Splunk Observability for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Splunk Observability Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_splunk_observability = new nobl9.DirectSplunkObservability(\"test-splunk-observability\", {\n accessToken: \"secret\",\n description: \"desc\",\n project: \"terraform\",\n realm: \"eu\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_splunk_observability = nobl9.DirectSplunkObservability(\"test-splunk-observability\",\n access_token=\"secret\",\n description=\"desc\",\n project=\"terraform\",\n realm=\"eu\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_splunk_observability = new Nobl9.DirectSplunkObservability(\"test-splunk-observability\", new()\n {\n AccessToken = \"secret\",\n Description = \"desc\",\n Project = \"terraform\",\n Realm = \"eu\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectSplunkObservability(ctx, \"test-splunk-observability\", \u0026nobl9.DirectSplunkObservabilityArgs{\n\t\t\tAccessToken: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tRealm: pulumi.String(\"eu\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectSplunkObservability;\nimport com.pulumi.nobl9.DirectSplunkObservabilityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_splunk_observability = new DirectSplunkObservability(\"test-splunk-observability\", DirectSplunkObservabilityArgs.builder() \n .accessToken(\"secret\")\n .description(\"desc\")\n .project(\"terraform\")\n .realm(\"eu\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-splunk-observability:\n type: nobl9:DirectSplunkObservability\n properties:\n accessToken: secret\n description: desc\n project: terraform\n realm: eu\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "accessToken": { "type": "string", - "description": "[required] | Splunk API Access Token.\n" + "description": "[required] | Splunk API Access Token.\n", + "secret": true }, "description": { "type": "string", @@ -8402,12 +9131,17 @@ "type": "string", "description": "SplunkObservability Realm.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8418,14 +9152,16 @@ "accessToken", "name", "project", + "queryDelay", "realm", - "sourceOfs", + "releaseChannel", "status" ], "inputProperties": { "accessToken": { "type": "string", - "description": "[required] | Splunk API Access Token.\n" + "description": "[required] | Splunk API Access Token.\n", + "secret": true }, "description": { "type": "string", @@ -8453,25 +9189,30 @@ "type": "string", "description": "SplunkObservability Realm.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ "project", - "realm", - "sourceOfs" + "realm" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectSplunkObservability resources.\n", "properties": { "accessToken": { "type": "string", - "description": "[required] | Splunk API Access Token.\n" + "description": "[required] | Splunk API Access Token.\n", + "secret": true }, "description": { "type": "string", @@ -8499,12 +9240,17 @@ "type": "string", "description": "SplunkObservability Realm.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8515,15 +9261,17 @@ } }, "nobl9:index/directSumologic:DirectSumologic": { - "description": "Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects with Sumo Logic to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [Sumo Logic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_sumologic = new nobl9.DirectSumologic(\"test-sumologic\", {\n accessId: \"secret\",\n accessKey: \"secret\",\n description: \"desc\",\n project: \"terraform\",\n sourceOfs: [\"Metrics\"],\n url: \"http://web.net\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_sumologic = nobl9.DirectSumologic(\"test-sumologic\",\n access_id=\"secret\",\n access_key=\"secret\",\n description=\"desc\",\n project=\"terraform\",\n source_ofs=[\"Metrics\"],\n url=\"http://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_sumologic = new Nobl9.DirectSumologic(\"test-sumologic\", new()\n {\n AccessId = \"secret\",\n AccessKey = \"secret\",\n Description = \"desc\",\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n },\n Url = \"http://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectSumologic(ctx, \"test-sumologic\", \u0026nobl9.DirectSumologicArgs{\n\t\t\tAccessId: pulumi.String(\"secret\"),\n\t\t\tAccessKey: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t},\n\t\t\tUrl: pulumi.String(\"http://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectSumologic;\nimport com.pulumi.nobl9.DirectSumologicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_sumologic = new DirectSumologic(\"test-sumologic\", DirectSumologicArgs.builder() \n .accessId(\"secret\")\n .accessKey(\"secret\")\n .description(\"desc\")\n .project(\"terraform\")\n .sourceOfs(\"Metrics\")\n .url(\"http://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-sumologic:\n type: nobl9:DirectSumologic\n properties:\n accessId: secret\n accessKey: secret\n description: desc\n project: terraform\n sourceOfs:\n - Metrics\n url: http://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects to Sumo Logic for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [Sumo Logic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_sumologic = new nobl9.DirectSumologic(\"test-sumologic\", {\n accessId: \"secret\",\n accessKey: \"secret\",\n description: \"desc\",\n logCollectionEnabled: true,\n project: \"terraform\",\n url: \"http://web.net\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_sumologic = nobl9.DirectSumologic(\"test-sumologic\",\n access_id=\"secret\",\n access_key=\"secret\",\n description=\"desc\",\n log_collection_enabled=True,\n project=\"terraform\",\n url=\"http://web.net\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_sumologic = new Nobl9.DirectSumologic(\"test-sumologic\", new()\n {\n AccessId = \"secret\",\n AccessKey = \"secret\",\n Description = \"desc\",\n LogCollectionEnabled = true,\n Project = \"terraform\",\n Url = \"http://web.net\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectSumologic(ctx, \"test-sumologic\", \u0026nobl9.DirectSumologicArgs{\n\t\t\tAccessId: pulumi.String(\"secret\"),\n\t\t\tAccessKey: pulumi.String(\"secret\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tUrl: pulumi.String(\"http://web.net\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectSumologic;\nimport com.pulumi.nobl9.DirectSumologicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_sumologic = new DirectSumologic(\"test-sumologic\", DirectSumologicArgs.builder() \n .accessId(\"secret\")\n .accessKey(\"secret\")\n .description(\"desc\")\n .logCollectionEnabled(true)\n .project(\"terraform\")\n .url(\"http://web.net\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-sumologic:\n type: nobl9:DirectSumologic\n properties:\n accessId: secret\n accessKey: secret\n description: desc\n logCollectionEnabled: true\n project: terraform\n url: http://web.net\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "accessId": { "type": "string", - "description": "[required] | Sumo Logic API Access ID.\n" + "description": "[required] | Sumo Logic API Access ID.\n", + "secret": true }, "accessKey": { "type": "string", - "description": "[required] | Sumo Logic API Access Key.\n" + "description": "[required] | Sumo Logic API Access Key.\n", + "secret": true }, "description": { "type": "string", @@ -8533,6 +9281,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" @@ -8545,12 +9297,17 @@ "$ref": "#/types/nobl9:index/DirectSumologicQueryDelay:DirectSumologicQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8566,18 +9323,21 @@ "accessKey", "name", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status", "url" ], "inputProperties": { "accessId": { "type": "string", - "description": "[required] | Sumo Logic API Access ID.\n" + "description": "[required] | Sumo Logic API Access ID.\n", + "secret": true }, "accessKey": { "type": "string", - "description": "[required] | Sumo Logic API Access Key.\n" + "description": "[required] | Sumo Logic API Access Key.\n", + "secret": true }, "description": { "type": "string", @@ -8587,6 +9347,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8601,12 +9365,17 @@ "$ref": "#/types/nobl9:index/DirectSumologicQueryDelay:DirectSumologicQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "url": { "type": "string", @@ -8615,7 +9384,6 @@ }, "requiredInputs": [ "project", - "sourceOfs", "url" ], "stateInputs": { @@ -8623,11 +9391,13 @@ "properties": { "accessId": { "type": "string", - "description": "[required] | Sumo Logic API Access ID.\n" + "description": "[required] | Sumo Logic API Access ID.\n", + "secret": true }, "accessKey": { "type": "string", - "description": "[required] | Sumo Logic API Access Key.\n" + "description": "[required] | Sumo Logic API Access Key.\n", + "secret": true }, "description": { "type": "string", @@ -8637,6 +9407,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8651,12 +9425,17 @@ "$ref": "#/types/nobl9:index/DirectSumologicQueryDelay:DirectSumologicQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8671,7 +9450,7 @@ } }, "nobl9:index/directThousandeyes:DirectThousandeyes": { - "description": "ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects with ThousandEyes to collect SLI measurements and compare them to SLO targets.\n\nFor more information, refer to [ThousandEyes Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/thousandeyes#thousandeyes-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst test_thousandeyes = new nobl9.DirectThousandeyes(\"test-thousandeyes\", {\n description: \"desc\",\n oauthBearerToken: \"secret\",\n project: \"terraform\",\n sourceOfs: [\n \"Metrics\",\n \"Services\",\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\ntest_thousandeyes = nobl9.DirectThousandeyes(\"test-thousandeyes\",\n description=\"desc\",\n oauth_bearer_token=\"secret\",\n project=\"terraform\",\n source_ofs=[\n \"Metrics\",\n \"Services\",\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_thousandeyes = new Nobl9.DirectThousandeyes(\"test-thousandeyes\", new()\n {\n Description = \"desc\",\n OauthBearerToken = \"secret\",\n Project = \"terraform\",\n SourceOfs = new[]\n {\n \"Metrics\",\n \"Services\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectThousandeyes(ctx, \"test-thousandeyes\", \u0026nobl9.DirectThousandeyesArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tOauthBearerToken: pulumi.String(\"secret\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t\tSourceOfs: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Metrics\"),\n\t\t\t\tpulumi.String(\"Services\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectThousandeyes;\nimport com.pulumi.nobl9.DirectThousandeyesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_thousandeyes = new DirectThousandeyes(\"test-thousandeyes\", DirectThousandeyesArgs.builder() \n .description(\"desc\")\n .oauthBearerToken(\"secret\")\n .project(\"terraform\")\n .sourceOfs( \n \"Metrics\",\n \"Services\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-thousandeyes:\n type: nobl9:DirectThousandeyes\n properties:\n description: desc\n oauthBearerToken: secret\n project: terraform\n sourceOfs:\n - Metrics\n - Services\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", + "description": "ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects to ThousandEyes for SLI measurement collection and comparison with SLO targets.\n\nFor more information, refer to [ThousandEyes Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/thousandeyes#thousandeyes-direct).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst test_thousandeyes = new nobl9.DirectThousandeyes(\"test-thousandeyes\", {\n description: \"desc\",\n logCollectionEnabled: true,\n oauthBearerToken: \"secret\",\n project: \"terraform\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\ntest_thousandeyes = nobl9.DirectThousandeyes(\"test-thousandeyes\",\n description=\"desc\",\n log_collection_enabled=True,\n oauth_bearer_token=\"secret\",\n project=\"terraform\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var test_thousandeyes = new Nobl9.DirectThousandeyes(\"test-thousandeyes\", new()\n {\n Description = \"desc\",\n LogCollectionEnabled = true,\n OauthBearerToken = \"secret\",\n Project = \"terraform\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewDirectThousandeyes(ctx, \"test-thousandeyes\", \u0026nobl9.DirectThousandeyesArgs{\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tLogCollectionEnabled: pulumi.Bool(true),\n\t\t\tOauthBearerToken: pulumi.String(\"secret\"),\n\t\t\tProject: pulumi.String(\"terraform\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.DirectThousandeyes;\nimport com.pulumi.nobl9.DirectThousandeyesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var test_thousandeyes = new DirectThousandeyes(\"test-thousandeyes\", DirectThousandeyesArgs.builder() \n .description(\"desc\")\n .logCollectionEnabled(true)\n .oauthBearerToken(\"secret\")\n .project(\"terraform\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n test-thousandeyes:\n type: nobl9:DirectThousandeyes\n properties:\n description: desc\n logCollectionEnabled: true\n oauthBearerToken: secret\n project: terraform\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/\n", "properties": { "description": { "type": "string", @@ -8681,13 +9460,18 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" }, "oauthBearerToken": { "type": "string", - "description": "[required] | ThousandEyes OAuth Bearer Token.\n" + "description": "[required] | ThousandEyes OAuth Bearer Token.\n", + "secret": true }, "project": { "type": "string", @@ -8697,12 +9481,17 @@ "$ref": "#/types/nobl9:index/DirectThousandeyesQueryDelay:DirectThousandeyesQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8713,7 +9502,8 @@ "name", "oauthBearerToken", "project", - "sourceOfs", + "queryDelay", + "releaseChannel", "status" ], "inputProperties": { @@ -8725,6 +9515,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8732,7 +9526,8 @@ }, "oauthBearerToken": { "type": "string", - "description": "[required] | ThousandEyes OAuth Bearer Token.\n" + "description": "[required] | ThousandEyes OAuth Bearer Token.\n", + "secret": true }, "project": { "type": "string", @@ -8743,17 +9538,21 @@ "$ref": "#/types/nobl9:index/DirectThousandeyesQueryDelay:DirectThousandeyesQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." } }, "requiredInputs": [ - "project", - "sourceOfs" + "project" ], "stateInputs": { "description": "Input properties used for looking up and filtering DirectThousandeyes resources.\n", @@ -8766,6 +9565,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "logCollectionEnabled": { + "type": "boolean", + "description": "[Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs)\n" + }, "name": { "type": "string", "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8773,7 +9576,8 @@ }, "oauthBearerToken": { "type": "string", - "description": "[required] | ThousandEyes OAuth Bearer Token.\n" + "description": "[required] | ThousandEyes OAuth Bearer Token.\n", + "secret": true }, "project": { "type": "string", @@ -8784,12 +9588,17 @@ "$ref": "#/types/nobl9:index/DirectThousandeyesQueryDelay:DirectThousandeyesQueryDelay", "description": "[Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided.\n" }, + "releaseChannel": { + "type": "string", + "description": "Release channel of the created datasource [stable/beta]\n" + }, "sourceOfs": { "type": "array", "items": { "type": "string" }, - "description": "Source of Metrics and/or Services.\n" + "description": "This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility.\n", + "deprecationMessage": "'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file." }, "status": { "type": "string", @@ -8800,7 +9609,7 @@ } }, "nobl9:index/project:Project": { - "description": "**Projects** are the primary logical grouping of resources in the Nobl9 platform. All Nobl9 resources, such as data sources, SLOs, and alerts, are created within a project.\n\nAccess controls at the project level enable users to control who can see and change these resources. For example, you can allow all of your users to view the SLOs in a given project, but only a few users to make changes.\n\nFor more details, refer to [Project configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#project).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nHere's an example of Project resource configuration:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst thisProject = new nobl9.Project(\"this\", {\n description: \"An example N9 Terraform project\",\n displayName: \"My Project\",\n labels: [\n {\n key: \"env\",\n values: [\n \"dev\",\n \"prod\",\n ],\n },\n {\n key: \"team\",\n values: [\"red\"],\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\nthis = nobl9.Project(\"this\",\n description=\"An example N9 Terraform project\",\n display_name=\"My Project\",\n labels=[\n nobl9.ProjectLabelArgs(\n key=\"env\",\n values=[\n \"dev\",\n \"prod\",\n ],\n ),\n nobl9.ProjectLabelArgs(\n key=\"team\",\n values=[\"red\"],\n ),\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new Nobl9.Project(\"this\", new()\n {\n Description = \"An example N9 Terraform project\",\n DisplayName = \"My Project\",\n Labels = new[]\n {\n new Nobl9.Inputs.ProjectLabelArgs\n {\n Key = \"env\",\n Values = new[]\n {\n \"dev\",\n \"prod\",\n },\n },\n new Nobl9.Inputs.ProjectLabelArgs\n {\n Key = \"team\",\n Values = new[]\n {\n \"red\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewProject(ctx, \"this\", \u0026nobl9.ProjectArgs{\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t\tDisplayName: pulumi.String(\"My Project\"),\n\t\t\tLabels: ProjectLabelArray{\n\t\t\t\t\u0026ProjectLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"env\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026ProjectLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"team\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"red\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.inputs.ProjectLabelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new Project(\"this\", ProjectArgs.builder() \n .description(\"An example N9 Terraform project\")\n .displayName(\"My Project\")\n .labels( \n ProjectLabelArgs.builder()\n .key(\"env\")\n .values( \n \"dev\",\n \"prod\")\n .build(),\n ProjectLabelArgs.builder()\n .key(\"team\")\n .values(\"red\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n this:\n type: nobl9:Project\n properties:\n description: An example N9 Terraform project\n displayName: My Project\n labels:\n - key: env\n values:\n - dev\n - prod\n - key: team\n values:\n - red\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Useful Links\n\n[Projects in Nobl9 | Nobl9 Documentation](https://docs.nobl9.com/#projects)\n\n[Projects YAML Configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#project)\n", + "description": "**Projects** are the primary logical grouping of resources in the Nobl9 platform. All Nobl9 resources, such as data sources, SLOs, and alerts, are created within a project.\n\nAccess controls at the project level enable users to control who can see and change these resources. For example, you can allow all of your users to view the SLOs in a given project, but only a few users to make changes.\n\nFor more details, refer to [Project configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#project).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nHere's an example of Project resource configuration:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst _this = new nobl9.Project(\"this\", {\n description: \"An example N9 Terraform project\",\n displayName: \"My Project\",\n labels: [\n {\n key: \"env\",\n values: [\n \"dev\",\n \"prod\",\n ],\n },\n {\n key: \"team\",\n values: [\"red\"],\n },\n ],\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\nthis = nobl9.Project(\"this\",\n description=\"An example N9 Terraform project\",\n display_name=\"My Project\",\n labels=[\n nobl9.ProjectLabelArgs(\n key=\"env\",\n values=[\n \"dev\",\n \"prod\",\n ],\n ),\n nobl9.ProjectLabelArgs(\n key=\"team\",\n values=[\"red\"],\n ),\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new Nobl9.Project(\"this\", new()\n {\n Description = \"An example N9 Terraform project\",\n DisplayName = \"My Project\",\n Labels = new[]\n {\n new Nobl9.Inputs.ProjectLabelArgs\n {\n Key = \"env\",\n Values = new[]\n {\n \"dev\",\n \"prod\",\n },\n },\n new Nobl9.Inputs.ProjectLabelArgs\n {\n Key = \"team\",\n Values = new[]\n {\n \"red\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewProject(ctx, \"this\", \u0026nobl9.ProjectArgs{\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t\tDisplayName: pulumi.String(\"My Project\"),\n\t\t\tLabels: nobl9.ProjectLabelArray{\n\t\t\t\t\u0026nobl9.ProjectLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"env\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026nobl9.ProjectLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"team\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"red\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.inputs.ProjectLabelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new Project(\"this\", ProjectArgs.builder() \n .description(\"An example N9 Terraform project\")\n .displayName(\"My Project\")\n .labels( \n ProjectLabelArgs.builder()\n .key(\"env\")\n .values( \n \"dev\",\n \"prod\")\n .build(),\n ProjectLabelArgs.builder()\n .key(\"team\")\n .values(\"red\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n this:\n type: nobl9:Project\n properties:\n description: An example N9 Terraform project\n displayName: My Project\n labels:\n - key: env\n values:\n - dev\n - prod\n - key: team\n values:\n - red\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Useful Links\n\n[Projects in Nobl9 | Nobl9 Documentation](https://docs.nobl9.com/#projects)\n\n[Projects YAML Configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#project)\n", "properties": { "description": { "type": "string", @@ -8875,39 +9684,46 @@ } }, "nobl9:index/roleBinding:RoleBinding": { - "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\nHere's an example of RBAC resource configuration:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst thisRoleBinding = new nobl9.RoleBinding(\"this\", {\n projectRef: \"1234567890asdfghjkl\",\n roleRef: \"project-owner\",\n user: \"1234567890asdfghjkl\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\nthis = nobl9.RoleBinding(\"this\",\n project_ref=\"1234567890asdfghjkl\",\n role_ref=\"project-owner\",\n user=\"1234567890asdfghjkl\")\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new Nobl9.RoleBinding(\"this\", new()\n {\n ProjectRef = \"1234567890asdfghjkl\",\n RoleRef = \"project-owner\",\n User = \"1234567890asdfghjkl\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewRoleBinding(ctx, \"this\", \u0026nobl9.RoleBindingArgs{\n\t\t\tProjectRef: pulumi.String(\"1234567890asdfghjkl\"),\n\t\t\tRoleRef: pulumi.String(\"project-owner\"),\n\t\t\tUser: pulumi.String(\"1234567890asdfghjkl\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.RoleBinding;\nimport com.pulumi.nobl9.RoleBindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new RoleBinding(\"this\", RoleBindingArgs.builder() \n .projectRef(\"1234567890asdfghjkl\")\n .roleRef(\"project-owner\")\n .user(\"1234567890asdfghjkl\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n this:\n type: nobl9:RoleBinding\n properties:\n projectRef: 1234567890asdfghjkl\n roleRef: project-owner\n user: 1234567890asdfghjkl\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Useful Links\n\n[Role Based Access Control in Nobl9 | Nobl9 Documentation](https://docs.nobl9.com/Getting_Started/RBAC/)\n\n[Role Binding YAML Configuration | Nobl9 Documentation](https://docs.nobl9.com/Getting_Started/RBAC/role-binding-yaml)\n", + "description": "{{% examples %}}\n## Example Usage\n{{% example %}}\n\nHere's an example of RBAC resource configuration:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst _this = new nobl9.RoleBinding(\"this\", {\n groupRef: \"test\",\n projectRef: \"default\",\n roleRef: \"project-owner\",\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\nthis = nobl9.RoleBinding(\"this\",\n group_ref=\"test\",\n project_ref=\"default\",\n role_ref=\"project-owner\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = new Nobl9.RoleBinding(\"this\", new()\n {\n GroupRef = \"test\",\n ProjectRef = \"default\",\n RoleRef = \"project-owner\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.NewRoleBinding(ctx, \"this\", \u0026nobl9.RoleBindingArgs{\n\t\t\tGroupRef: pulumi.String(\"test\"),\n\t\t\tProjectRef: pulumi.String(\"default\"),\n\t\t\tRoleRef: pulumi.String(\"project-owner\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.RoleBinding;\nimport com.pulumi.nobl9.RoleBindingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var this_ = new RoleBinding(\"this\", RoleBindingArgs.builder() \n .groupRef(\"test\")\n .projectRef(\"default\")\n .roleRef(\"project-owner\")\n .build());\n\n }\n}\n```\n```yaml\nresources:\n this:\n type: nobl9:RoleBinding\n properties:\n groupRef: test\n projectRef: default\n roleRef: project-owner\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Useful Links\n\n[Role Based Access Control in Nobl9 | Nobl9 Documentation](https://docs.nobl9.com/Getting_Started/RBAC/)\n\n[Role Binding YAML Configuration | Nobl9 Documentation](https://docs.nobl9.com/Getting_Started/RBAC/role-binding-yaml)\n", "properties": { "displayName": { "type": "string", "description": "User-friendly display name of the resource.\n" }, + "groupRef": { + "type": "string", + "description": "Group name that can be retrieved from the Nobl9 UI (**Settings** \u003e **Access Controls** \u003e **Groups**) or using sloctl `get usergroups` command.\n" + }, "name": { "type": "string", "description": "Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" }, "projectRef": { "type": "string", - "description": "Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role.\n" + "description": "Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role.\n" }, "roleRef": { "type": "string", - "description": "Role name; the role that you want the user to assume.\n" + "description": "Role name; the role that you want the user or group to assume.\n" }, "user": { "type": "string", - "description": "Okta User ID that can be retrieved from the Nobl9 UI (**Settings** \u003e **Users**).\n" + "description": "Okta User ID that can be retrieved from the Nobl9 UI (**Settings** \u003e **Access Controls** \u003e **Users**).\n" } }, "required": [ "name", - "roleRef", - "user" + "roleRef" ], "inputProperties": { "displayName": { "type": "string", "description": "User-friendly display name of the resource.\n" }, + "groupRef": { + "type": "string", + "description": "Group name that can be retrieved from the Nobl9 UI (**Settings** \u003e **Access Controls** \u003e **Groups**) or using sloctl `get usergroups` command.\n" + }, "name": { "type": "string", "description": "Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8915,20 +9731,19 @@ }, "projectRef": { "type": "string", - "description": "Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role.\n" + "description": "Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role.\n" }, "roleRef": { "type": "string", - "description": "Role name; the role that you want the user to assume.\n" + "description": "Role name; the role that you want the user or group to assume.\n" }, "user": { "type": "string", - "description": "Okta User ID that can be retrieved from the Nobl9 UI (**Settings** \u003e **Users**).\n" + "description": "Okta User ID that can be retrieved from the Nobl9 UI (**Settings** \u003e **Access Controls** \u003e **Users**).\n" } }, "requiredInputs": [ - "roleRef", - "user" + "roleRef" ], "stateInputs": { "description": "Input properties used for looking up and filtering RoleBinding resources.\n", @@ -8937,6 +9752,10 @@ "type": "string", "description": "User-friendly display name of the resource.\n" }, + "groupRef": { + "type": "string", + "description": "Group name that can be retrieved from the Nobl9 UI (**Settings** \u003e **Access Controls** \u003e **Groups**) or using sloctl `get usergroups` command.\n" + }, "name": { "type": "string", "description": "Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", @@ -8944,22 +9763,22 @@ }, "projectRef": { "type": "string", - "description": "Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role.\n" + "description": "Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role.\n" }, "roleRef": { "type": "string", - "description": "Role name; the role that you want the user to assume.\n" + "description": "Role name; the role that you want the user or group to assume.\n" }, "user": { "type": "string", - "description": "Okta User ID that can be retrieved from the Nobl9 UI (**Settings** \u003e **Users**).\n" + "description": "Okta User ID that can be retrieved from the Nobl9 UI (**Settings** \u003e **Access Controls** \u003e **Users**).\n" } }, "type": "object" } }, "nobl9:index/service:Service": { - "description": "A **service** in Nobl9 is a high-level grouping of Service Level Objectives (SLOs). A service can represent a logical service endpoint like an API, a database, an application, or anything else you care about setting an SLO for. Every SLO in Nobl9 is tied to a service, and the service can have one or more SLOs.\n\nFor more details, refer to the [Service configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#service).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nHere's an example of Service resource configuration:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst thisProject = new nobl9.Project(\"thisProject\", {\n displayName: \"My Project\",\n description: \"An example N9 Terraform project\",\n});\nconst thisService = new nobl9.Service(\"thisService\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Front Page`),\n description: \"Front page service\",\n labels: [\n {\n key: \"env\",\n values: [\n \"dev\",\n \"prod\",\n ],\n },\n {\n key: \"team\",\n values: [\"red\"],\n },\n ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\nthis_project = nobl9.Project(\"thisProject\",\n display_name=\"My Project\",\n description=\"An example N9 Terraform project\")\nthis_service = nobl9.Service(\"thisService\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Front Page\"),\n description=\"Front page service\",\n labels=[\n nobl9.ServiceLabelArgs(\n key=\"env\",\n values=[\n \"dev\",\n \"prod\",\n ],\n ),\n nobl9.ServiceLabelArgs(\n key=\"team\",\n values=[\"red\"],\n ),\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var thisProject = new Nobl9.Project(\"thisProject\", new()\n {\n DisplayName = \"My Project\",\n Description = \"An example N9 Terraform project\",\n });\n\n var thisService = new Nobl9.Service(\"thisService\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Front Page\"),\n Description = \"Front page service\",\n Labels = new[]\n {\n new Nobl9.Inputs.ServiceLabelArgs\n {\n Key = \"env\",\n Values = new[]\n {\n \"dev\",\n \"prod\",\n },\n },\n new Nobl9.Inputs.ServiceLabelArgs\n {\n Key = \"team\",\n Values = new[]\n {\n \"red\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthisProject, err := nobl9.NewProject(ctx, \"thisProject\", \u0026nobl9.ProjectArgs{\n\t\t\tDisplayName: pulumi.String(\"My Project\"),\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewService(ctx, \"thisService\", \u0026nobl9.ServiceArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Front Page\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDescription: pulumi.String(\"Front page service\"),\n\t\t\tLabels: ServiceLabelArray{\n\t\t\t\t\u0026ServiceLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"env\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026ServiceLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"team\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"red\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.Service;\nimport com.pulumi.nobl9.ServiceArgs;\nimport com.pulumi.nobl9.inputs.ServiceLabelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var thisProject = new Project(\"thisProject\", ProjectArgs.builder() \n .displayName(\"My Project\")\n .description(\"An example N9 Terraform project\")\n .build());\n\n var thisService = new Service(\"thisService\", ServiceArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Front Page\", displayName)))\n .description(\"Front page service\")\n .labels( \n ServiceLabelArgs.builder()\n .key(\"env\")\n .values( \n \"dev\",\n \"prod\")\n .build(),\n ServiceLabelArgs.builder()\n .key(\"team\")\n .values(\"red\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n thisProject:\n type: nobl9:Project\n properties:\n displayName: My Project\n description: An example N9 Terraform project\n thisService:\n type: nobl9:Service\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Front Page\n description: Front page service\n labels:\n - key: env\n values:\n - dev\n - prod\n - key: team\n values:\n - red\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Useful Links\n\n[Services in Nobl9 | Nobl9 Documentation](https://docs.nobl9.com/#services)\n\n[Service YAML Configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide/#service)\n", + "description": "A **service** in Nobl9 is a high-level grouping of Service Level Objectives (SLOs). A service can represent a logical service endpoint like an API, a database, an application, or anything else you care about setting an SLO for. Every SLO in Nobl9 is tied to a service, and the service can have one or more SLOs.\n\nFor more details, refer to the [Service configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#service).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nHere's an example of Service resource configuration:\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst thisProject = new nobl9.Project(\"thisProject\", {\n displayName: \"My Project\",\n description: \"An example N9 Terraform project\",\n});\nconst thisService = new nobl9.Service(\"thisService\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Front Page`),\n description: \"Front page service\",\n labels: [\n {\n key: \"env\",\n values: [\n \"dev\",\n \"prod\",\n ],\n },\n {\n key: \"team\",\n values: [\"red\"],\n },\n ],\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\nthis_project = nobl9.Project(\"thisProject\",\n display_name=\"My Project\",\n description=\"An example N9 Terraform project\")\nthis_service = nobl9.Service(\"thisService\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Front Page\"),\n description=\"Front page service\",\n labels=[\n nobl9.ServiceLabelArgs(\n key=\"env\",\n values=[\n \"dev\",\n \"prod\",\n ],\n ),\n nobl9.ServiceLabelArgs(\n key=\"team\",\n values=[\"red\"],\n ),\n ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var thisProject = new Nobl9.Project(\"thisProject\", new()\n {\n DisplayName = \"My Project\",\n Description = \"An example N9 Terraform project\",\n });\n\n var thisService = new Nobl9.Service(\"thisService\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Front Page\"),\n Description = \"Front page service\",\n Labels = new[]\n {\n new Nobl9.Inputs.ServiceLabelArgs\n {\n Key = \"env\",\n Values = new[]\n {\n \"dev\",\n \"prod\",\n },\n },\n new Nobl9.Inputs.ServiceLabelArgs\n {\n Key = \"team\",\n Values = new[]\n {\n \"red\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthisProject, err := nobl9.NewProject(ctx, \"thisProject\", \u0026nobl9.ProjectArgs{\n\t\t\tDisplayName: pulumi.String(\"My Project\"),\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewService(ctx, \"thisService\", \u0026nobl9.ServiceArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Front Page\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDescription: pulumi.String(\"Front page service\"),\n\t\t\tLabels: nobl9.ServiceLabelArray{\n\t\t\t\t\u0026nobl9.ServiceLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"env\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026nobl9.ServiceLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"team\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"red\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.Service;\nimport com.pulumi.nobl9.ServiceArgs;\nimport com.pulumi.nobl9.inputs.ServiceLabelArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var thisProject = new Project(\"thisProject\", ProjectArgs.builder() \n .displayName(\"My Project\")\n .description(\"An example N9 Terraform project\")\n .build());\n\n var thisService = new Service(\"thisService\", ServiceArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Front Page\", displayName)))\n .description(\"Front page service\")\n .labels( \n ServiceLabelArgs.builder()\n .key(\"env\")\n .values( \n \"dev\",\n \"prod\")\n .build(),\n ServiceLabelArgs.builder()\n .key(\"team\")\n .values(\"red\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n thisProject:\n type: nobl9:Project\n properties:\n displayName: My Project\n description: An example N9 Terraform project\n thisService:\n type: nobl9:Service\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Front Page\n description: Front page service\n labels:\n - key: env\n values:\n - dev\n - prod\n - key: team\n values:\n - red\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Useful Links\n\n[Services in Nobl9 | Nobl9 Documentation](https://docs.nobl9.com/#services)\n\n[Service YAML Configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide/#service)\n", "properties": { "description": { "type": "string", @@ -9067,7 +9886,7 @@ } }, "nobl9:index/slo:Slo": { - "description": "An SLO is a target value or range of values for a service that is measured by a service level indicator (SLI). SLOs allows you to define the reliability of your products and services in terms of customer expectations. You can create SLOs for user journeys, internal services, or even infrastructure.\n\nFor more information, refer to [SLO configuration documentation](https://docs.nobl9.com/yaml-guide#slo)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.Service;\nimport com.pulumi.nobl9.ServiceArgs;\nimport com.pulumi.nobl9.Slo;\nimport com.pulumi.nobl9.SloArgs;\nimport com.pulumi.nobl9.inputs.SloLabelArgs;\nimport com.pulumi.nobl9.inputs.SloAttachmentArgs;\nimport com.pulumi.nobl9.inputs.SloTimeWindowArgs;\nimport com.pulumi.nobl9.inputs.SloObjectiveArgs;\nimport com.pulumi.nobl9.inputs.SloIndicatorArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var thisProject = new Project(\"thisProject\", ProjectArgs.builder() \n .displayName(\"Test N9 Terraform\")\n .description(\"An example N9 Terraform project\")\n .build());\n\n var thisService = new Service(\"thisService\", ServiceArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Front Page\", displayName)))\n .description(\"Front page service\")\n .build());\n\n var thisSlo = new Slo(\"thisSlo\", SloArgs.builder() \n .service(thisService.name())\n .budgetingMethod(\"Occurrences\")\n .project(thisProject.name())\n .labels( \n SloLabelArgs.builder()\n .key(\"env\")\n .values( \n \"dev\",\n \"prod\")\n .build(),\n SloLabelArgs.builder()\n .key(\"team\")\n .values(\"red\")\n .build())\n .attachments( \n SloAttachmentArgs.builder()\n .utl(\"https://www.nobl9.com/\")\n .displayName(\"SLO provider\")\n .build(),\n SloAttachmentArgs.builder()\n .utl(\"https://duckduckgo.com/\")\n .displayName(\"Nice search engine\")\n .build())\n .alertPolicies(\"foo-front-page-latency\")\n .timeWindow(SloTimeWindowArgs.builder()\n .unit(\"Day\")\n .count(30)\n .isRolling(true)\n .build())\n .objectives(SloObjectiveArgs.builder()\n .name(\"tf-objective-1\")\n .target(0.99)\n .displayName(\"OK\")\n .value(2000)\n .op(\"gte\")\n .rawMetrics(SloObjectiveRawMetricArgs.builder()\n .queries(SloObjectiveRawMetricQueryArgs.builder()\n .prometheuses(SloObjectiveRawMetricQueryPrometheusArgs.builder()\n .promql(\"\"\"\n latency_west_c7{code=\"ALL\",instance=\"localhost:3000\",job=\"prometheus\",service=\"globacount\"}\n \"\"\")\n .build())\n .build())\n .build())\n .build())\n .indicator(SloIndicatorArgs.builder()\n .name(\"test-terraform-prom-agent\")\n .build())\n .build());\n\n var thisIndex_sloSlo = new Slo(\"thisIndex/sloSlo\", SloArgs.builder() \n .service(thisService.name())\n .budgetingMethod(\"Occurrences\")\n .project(thisProject.name())\n .timeWindow(SloTimeWindowArgs.builder()\n .unit(\"Day\")\n .count(30)\n .isRolling(true)\n .build())\n .objectives(SloObjectiveArgs.builder()\n .name(\"tf-objective-1\")\n .target(0.99)\n .displayName(\"OK\")\n .value(1)\n .countMetrics(SloObjectiveCountMetricArgs.builder()\n .incremental(true)\n .goods(SloObjectiveCountMetricGoodArgs.builder()\n .prometheuses(SloObjectiveCountMetricGoodPrometheusArgs.builder()\n .promql(\"1.0\")\n .build())\n .build())\n .totals(SloObjectiveCountMetricTotalArgs.builder()\n .prometheuses(SloObjectiveCountMetricTotalPrometheusArgs.builder()\n .promql(\"1.0\")\n .build())\n .build())\n .build())\n .build())\n .indicator(SloIndicatorArgs.builder()\n .name(\"test-terraform-prom-agent\")\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n thisProject:\n type: nobl9:Project\n properties:\n displayName: Test N9 Terraform\n description: An example N9 Terraform project\n thisService:\n type: nobl9:Service\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Front Page\n description: Front page service\n thisSlo:\n type: nobl9:Slo\n properties:\n service: ${thisService.name}\n budgetingMethod: Occurrences\n project: ${thisProject.name}\n labels:\n - key: env\n values:\n - dev\n - prod\n - key: team\n values:\n - red\n attachments:\n - utl: https://www.nobl9.com/\n displayName: SLO provider\n - utl: https://duckduckgo.com/\n displayName: Nice search engine\n alertPolicies:\n - foo-front-page-latency\n timeWindow:\n unit: Day\n count: 30\n isRolling: true\n objectives:\n - name: tf-objective-1\n target: 0.99\n displayName: OK\n value: 2000\n op: gte\n rawMetrics:\n - queries:\n - prometheuses:\n - promql: |2\n latency_west_c7{code=\"ALL\",instance=\"localhost:3000\",job=\"prometheus\",service=\"globacount\"}\n indicator:\n name: test-terraform-prom-agent\n thisIndex/sloSlo:\n type: nobl9:Slo\n properties:\n service: ${thisService.name}\n budgetingMethod: Occurrences\n project: ${thisProject.name}\n timeWindow:\n unit: Day\n count: 30\n isRolling: true\n objectives:\n - name: tf-objective-1\n target: 0.99\n displayName: OK\n value: 1\n countMetrics:\n - incremental: true\n goods:\n - prometheuses:\n - promql: 1.0\n totals:\n - prometheuses:\n - promql: 1.0\n indicator:\n name: test-terraform-prom-agent\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/SLOs_as_code/?_highlight=slo\n", + "description": "An SLO is a target value or range of values for a service that is measured by a service level indicator (SLI). SLOs allows you to define the reliability of your products and services in terms of customer expectations. You can create SLOs for user journeys, internal services, or even infrastructure.\n\nFor more information, refer to [SLO configuration documentation](https://docs.nobl9.com/yaml-guide#slo)\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@piclemx/pulumi-nobl9\";\n\nconst thisProject = new nobl9.Project(\"thisProject\", {\n displayName: \"Test N9 Terraform\",\n description: \"An example N9 Terraform project\",\n});\nconst thisService = new nobl9.Service(\"thisService\", {\n project: thisProject.name,\n displayName: thisProject.displayName.apply(displayName =\u003e `${displayName} Front Page`),\n description: \"Front page service\",\n});\nconst thisSlo = new nobl9.Slo(\"thisSlo\", {\n service: thisService.name,\n budgetingMethod: \"Occurrences\",\n project: thisProject.name,\n labels: [\n {\n key: \"env\",\n values: [\n \"dev\",\n \"prod\",\n ],\n },\n {\n key: \"team\",\n values: [\"red\"],\n },\n ],\n attachments: [\n {\n url: \"https://www.nobl9.com/\",\n displayName: \"Nobl9 Reliability Center\",\n },\n {\n url: \"https://duckduckgo.com/\",\n displayName: \"Nice search engine\",\n },\n ],\n alertPolicies: [\"foo-front-page-latency\"],\n timeWindow: {\n unit: \"Day\",\n count: 30,\n isRolling: true,\n },\n objectives: [{\n name: \"tf-objective-1\",\n target: 0.99,\n displayName: \"OK\",\n value: 2000,\n op: \"gte\",\n rawMetrics: [{\n queries: [{\n prometheuses: [{\n promql: \" latency_west_c7{code=\\\"ALL\\\",instance=\\\"localhost:3000\\\",job=\\\"prometheus\\\",service=\\\"glob_account\\\"}\\n\",\n }],\n }],\n }],\n }],\n indicator: {\n name: \"test-terraform-prom-agent\",\n },\n});\nconst thisIndex_sloSlo = new nobl9.Slo(\"thisIndex/sloSlo\", {\n service: thisService.name,\n budgetingMethod: \"Occurrences\",\n project: thisProject.name,\n timeWindow: {\n unit: \"Day\",\n count: 30,\n isRolling: true,\n },\n objectives: [{\n name: \"tf-objective-1\",\n target: 0.99,\n displayName: \"OK\",\n value: 1,\n countMetrics: [{\n incremental: true,\n goods: [{\n prometheuses: [{\n promql: \"1.0\",\n }],\n }],\n totals: [{\n prometheuses: [{\n promql: \"1.0\",\n }],\n }],\n }],\n }],\n indicator: {\n name: \"test-terraform-prom-agent\",\n },\n anomalyConfig: {\n noData: {\n alertMethods: [\n {\n name: \"foo-method-method\",\n project: \"default\",\n },\n {\n name: \"bar-alert-method\",\n project: \"default\",\n },\n ],\n },\n },\n});\n```\n```python\nimport pulumi\nimport piclemx_pulumi_nobl9 as nobl9\n\nthis_project = nobl9.Project(\"thisProject\",\n display_name=\"Test N9 Terraform\",\n description=\"An example N9 Terraform project\")\nthis_service = nobl9.Service(\"thisService\",\n project=this_project.name,\n display_name=this_project.display_name.apply(lambda display_name: f\"{display_name} Front Page\"),\n description=\"Front page service\")\nthis_slo = nobl9.Slo(\"thisSlo\",\n service=this_service.name,\n budgeting_method=\"Occurrences\",\n project=this_project.name,\n labels=[\n nobl9.SloLabelArgs(\n key=\"env\",\n values=[\n \"dev\",\n \"prod\",\n ],\n ),\n nobl9.SloLabelArgs(\n key=\"team\",\n values=[\"red\"],\n ),\n ],\n attachments=[\n nobl9.SloAttachmentArgs(\n url=\"https://www.nobl9.com/\",\n display_name=\"Nobl9 Reliability Center\",\n ),\n nobl9.SloAttachmentArgs(\n url=\"https://duckduckgo.com/\",\n display_name=\"Nice search engine\",\n ),\n ],\n alert_policies=[\"foo-front-page-latency\"],\n time_window=nobl9.SloTimeWindowArgs(\n unit=\"Day\",\n count=30,\n is_rolling=True,\n ),\n objectives=[nobl9.SloObjectiveArgs(\n name=\"tf-objective-1\",\n target=0.99,\n display_name=\"OK\",\n value=2000,\n op=\"gte\",\n raw_metrics=[nobl9.SloObjectiveRawMetricArgs(\n queries=[nobl9.SloObjectiveRawMetricQueryArgs(\n prometheuses=[nobl9.SloObjectiveRawMetricQueryPrometheusArgs(\n promql=\" latency_west_c7{code=\\\"ALL\\\",instance=\\\"localhost:3000\\\",job=\\\"prometheus\\\",service=\\\"glob_account\\\"}\\n\",\n )],\n )],\n )],\n )],\n indicator=nobl9.SloIndicatorArgs(\n name=\"test-terraform-prom-agent\",\n ))\nthis_index_slo_slo = nobl9.Slo(\"thisIndex/sloSlo\",\n service=this_service.name,\n budgeting_method=\"Occurrences\",\n project=this_project.name,\n time_window=nobl9.SloTimeWindowArgs(\n unit=\"Day\",\n count=30,\n is_rolling=True,\n ),\n objectives=[nobl9.SloObjectiveArgs(\n name=\"tf-objective-1\",\n target=0.99,\n display_name=\"OK\",\n value=1,\n count_metrics=[nobl9.SloObjectiveCountMetricArgs(\n incremental=True,\n goods=[nobl9.SloObjectiveCountMetricGoodArgs(\n prometheuses=[nobl9.SloObjectiveCountMetricGoodPrometheusArgs(\n promql=\"1.0\",\n )],\n )],\n totals=[nobl9.SloObjectiveCountMetricTotalArgs(\n prometheuses=[nobl9.SloObjectiveCountMetricTotalPrometheusArgs(\n promql=\"1.0\",\n )],\n )],\n )],\n )],\n indicator=nobl9.SloIndicatorArgs(\n name=\"test-terraform-prom-agent\",\n ),\n anomaly_config=nobl9.SloAnomalyConfigArgs(\n no_data=nobl9.SloAnomalyConfigNoDataArgs(\n alert_methods=[\n nobl9.SloAnomalyConfigNoDataAlertMethodArgs(\n name=\"foo-method-method\",\n project=\"default\",\n ),\n nobl9.SloAnomalyConfigNoDataAlertMethodArgs(\n name=\"bar-alert-method\",\n project=\"default\",\n ),\n ],\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Piclemx.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var thisProject = new Nobl9.Project(\"thisProject\", new()\n {\n DisplayName = \"Test N9 Terraform\",\n Description = \"An example N9 Terraform project\",\n });\n\n var thisService = new Nobl9.Service(\"thisService\", new()\n {\n Project = thisProject.Name,\n DisplayName = thisProject.DisplayName.Apply(displayName =\u003e $\"{displayName} Front Page\"),\n Description = \"Front page service\",\n });\n\n var thisSlo = new Nobl9.Slo(\"thisSlo\", new()\n {\n Service = thisService.Name,\n BudgetingMethod = \"Occurrences\",\n Project = thisProject.Name,\n Labels = new[]\n {\n new Nobl9.Inputs.SloLabelArgs\n {\n Key = \"env\",\n Values = new[]\n {\n \"dev\",\n \"prod\",\n },\n },\n new Nobl9.Inputs.SloLabelArgs\n {\n Key = \"team\",\n Values = new[]\n {\n \"red\",\n },\n },\n },\n Attachments = new[]\n {\n new Nobl9.Inputs.SloAttachmentArgs\n {\n Url = \"https://www.nobl9.com/\",\n DisplayName = \"Nobl9 Reliability Center\",\n },\n new Nobl9.Inputs.SloAttachmentArgs\n {\n Url = \"https://duckduckgo.com/\",\n DisplayName = \"Nice search engine\",\n },\n },\n AlertPolicies = new[]\n {\n \"foo-front-page-latency\",\n },\n TimeWindow = new Nobl9.Inputs.SloTimeWindowArgs\n {\n Unit = \"Day\",\n Count = 30,\n IsRolling = true,\n },\n Objectives = new[]\n {\n new Nobl9.Inputs.SloObjectiveArgs\n {\n Name = \"tf-objective-1\",\n Target = 0.99,\n DisplayName = \"OK\",\n Value = 2000,\n Op = \"gte\",\n RawMetrics = new[]\n {\n new Nobl9.Inputs.SloObjectiveRawMetricArgs\n {\n Queries = new[]\n {\n new Nobl9.Inputs.SloObjectiveRawMetricQueryArgs\n {\n Prometheuses = new[]\n {\n new Nobl9.Inputs.SloObjectiveRawMetricQueryPrometheusArgs\n {\n Promql = @\" latency_west_c7{code=\"\"ALL\"\",instance=\"\"localhost:3000\"\",job=\"\"prometheus\"\",service=\"\"glob_account\"\"}\n\",\n },\n },\n },\n },\n },\n },\n },\n },\n Indicator = new Nobl9.Inputs.SloIndicatorArgs\n {\n Name = \"test-terraform-prom-agent\",\n },\n });\n\n var thisIndex_sloSlo = new Nobl9.Slo(\"thisIndex/sloSlo\", new()\n {\n Service = thisService.Name,\n BudgetingMethod = \"Occurrences\",\n Project = thisProject.Name,\n TimeWindow = new Nobl9.Inputs.SloTimeWindowArgs\n {\n Unit = \"Day\",\n Count = 30,\n IsRolling = true,\n },\n Objectives = new[]\n {\n new Nobl9.Inputs.SloObjectiveArgs\n {\n Name = \"tf-objective-1\",\n Target = 0.99,\n DisplayName = \"OK\",\n Value = 1,\n CountMetrics = new[]\n {\n new Nobl9.Inputs.SloObjectiveCountMetricArgs\n {\n Incremental = true,\n Goods = new[]\n {\n new Nobl9.Inputs.SloObjectiveCountMetricGoodArgs\n {\n Prometheuses = new[]\n {\n new Nobl9.Inputs.SloObjectiveCountMetricGoodPrometheusArgs\n {\n Promql = \"1.0\",\n },\n },\n },\n },\n Totals = new[]\n {\n new Nobl9.Inputs.SloObjectiveCountMetricTotalArgs\n {\n Prometheuses = new[]\n {\n new Nobl9.Inputs.SloObjectiveCountMetricTotalPrometheusArgs\n {\n Promql = \"1.0\",\n },\n },\n },\n },\n },\n },\n },\n },\n Indicator = new Nobl9.Inputs.SloIndicatorArgs\n {\n Name = \"test-terraform-prom-agent\",\n },\n AnomalyConfig = new Nobl9.Inputs.SloAnomalyConfigArgs\n {\n NoData = new Nobl9.Inputs.SloAnomalyConfigNoDataArgs\n {\n AlertMethods = new[]\n {\n new Nobl9.Inputs.SloAnomalyConfigNoDataAlertMethodArgs\n {\n Name = \"foo-method-method\",\n Project = \"default\",\n },\n new Nobl9.Inputs.SloAnomalyConfigNoDataAlertMethodArgs\n {\n Name = \"bar-alert-method\",\n Project = \"default\",\n },\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tthisProject, err := nobl9.NewProject(ctx, \"thisProject\", \u0026nobl9.ProjectArgs{\n\t\t\tDisplayName: pulumi.String(\"Test N9 Terraform\"),\n\t\t\tDescription: pulumi.String(\"An example N9 Terraform project\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tthisService, err := nobl9.NewService(ctx, \"thisService\", \u0026nobl9.ServiceArgs{\n\t\t\tProject: thisProject.Name,\n\t\t\tDisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) {\n\t\t\t\treturn fmt.Sprintf(\"%v Front Page\", displayName), nil\n\t\t\t}).(pulumi.StringOutput),\n\t\t\tDescription: pulumi.String(\"Front page service\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewSlo(ctx, \"thisSlo\", \u0026nobl9.SloArgs{\n\t\t\tService: thisService.Name,\n\t\t\tBudgetingMethod: pulumi.String(\"Occurrences\"),\n\t\t\tProject: thisProject.Name,\n\t\t\tLabels: nobl9.SloLabelArray{\n\t\t\t\t\u0026nobl9.SloLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"env\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"dev\"),\n\t\t\t\t\t\tpulumi.String(\"prod\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026nobl9.SloLabelArgs{\n\t\t\t\t\tKey: pulumi.String(\"team\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"red\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAttachments: nobl9.SloAttachmentArray{\n\t\t\t\t\u0026nobl9.SloAttachmentArgs{\n\t\t\t\t\tUrl: pulumi.String(\"https://www.nobl9.com/\"),\n\t\t\t\t\tDisplayName: pulumi.String(\"Nobl9 Reliability Center\"),\n\t\t\t\t},\n\t\t\t\t\u0026nobl9.SloAttachmentArgs{\n\t\t\t\t\tUrl: pulumi.String(\"https://duckduckgo.com/\"),\n\t\t\t\t\tDisplayName: pulumi.String(\"Nice search engine\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAlertPolicies: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"foo-front-page-latency\"),\n\t\t\t},\n\t\t\tTimeWindow: \u0026nobl9.SloTimeWindowArgs{\n\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\tCount: pulumi.Int(30),\n\t\t\t\tIsRolling: pulumi.Bool(true),\n\t\t\t},\n\t\t\tObjectives: nobl9.SloObjectiveArray{\n\t\t\t\t\u0026nobl9.SloObjectiveArgs{\n\t\t\t\t\tName: pulumi.String(\"tf-objective-1\"),\n\t\t\t\t\tTarget: pulumi.Float64(0.99),\n\t\t\t\t\tDisplayName: pulumi.String(\"OK\"),\n\t\t\t\t\tValue: pulumi.Float64(2000),\n\t\t\t\t\tOp: pulumi.String(\"gte\"),\n\t\t\t\t\tRawMetrics: nobl9.SloObjectiveRawMetricArray{\n\t\t\t\t\t\t\u0026nobl9.SloObjectiveRawMetricArgs{\n\t\t\t\t\t\t\tQueries: nobl9.SloObjectiveRawMetricQueryArray{\n\t\t\t\t\t\t\t\t\u0026nobl9.SloObjectiveRawMetricQueryArgs{\n\t\t\t\t\t\t\t\t\tPrometheuses: nobl9.SloObjectiveRawMetricQueryPrometheusArray{\n\t\t\t\t\t\t\t\t\t\t\u0026nobl9.SloObjectiveRawMetricQueryPrometheusArgs{\n\t\t\t\t\t\t\t\t\t\t\tPromql: pulumi.String(\" latency_west_c7{code=\\\"ALL\\\",instance=\\\"localhost:3000\\\",job=\\\"prometheus\\\",service=\\\"glob_account\\\"}\\n\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIndicator: \u0026nobl9.SloIndicatorArgs{\n\t\t\t\tName: pulumi.String(\"test-terraform-prom-agent\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nobl9.NewSlo(ctx, \"thisIndex/sloSlo\", \u0026nobl9.SloArgs{\n\t\t\tService: thisService.Name,\n\t\t\tBudgetingMethod: pulumi.String(\"Occurrences\"),\n\t\t\tProject: thisProject.Name,\n\t\t\tTimeWindow: \u0026nobl9.SloTimeWindowArgs{\n\t\t\t\tUnit: pulumi.String(\"Day\"),\n\t\t\t\tCount: pulumi.Int(30),\n\t\t\t\tIsRolling: pulumi.Bool(true),\n\t\t\t},\n\t\t\tObjectives: nobl9.SloObjectiveArray{\n\t\t\t\t\u0026nobl9.SloObjectiveArgs{\n\t\t\t\t\tName: pulumi.String(\"tf-objective-1\"),\n\t\t\t\t\tTarget: pulumi.Float64(0.99),\n\t\t\t\t\tDisplayName: pulumi.String(\"OK\"),\n\t\t\t\t\tValue: pulumi.Float64(1),\n\t\t\t\t\tCountMetrics: nobl9.SloObjectiveCountMetricArray{\n\t\t\t\t\t\t\u0026nobl9.SloObjectiveCountMetricArgs{\n\t\t\t\t\t\t\tIncremental: pulumi.Bool(true),\n\t\t\t\t\t\t\tGoods: nobl9.SloObjectiveCountMetricGoodArray{\n\t\t\t\t\t\t\t\t\u0026nobl9.SloObjectiveCountMetricGoodArgs{\n\t\t\t\t\t\t\t\t\tPrometheuses: nobl9.SloObjectiveCountMetricGoodPrometheusArray{\n\t\t\t\t\t\t\t\t\t\t\u0026nobl9.SloObjectiveCountMetricGoodPrometheusArgs{\n\t\t\t\t\t\t\t\t\t\t\tPromql: pulumi.String(\"1.0\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tTotals: nobl9.SloObjectiveCountMetricTotalArray{\n\t\t\t\t\t\t\t\t\u0026nobl9.SloObjectiveCountMetricTotalArgs{\n\t\t\t\t\t\t\t\t\tPrometheuses: nobl9.SloObjectiveCountMetricTotalPrometheusArray{\n\t\t\t\t\t\t\t\t\t\t\u0026nobl9.SloObjectiveCountMetricTotalPrometheusArgs{\n\t\t\t\t\t\t\t\t\t\t\tPromql: pulumi.String(\"1.0\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIndicator: \u0026nobl9.SloIndicatorArgs{\n\t\t\t\tName: pulumi.String(\"test-terraform-prom-agent\"),\n\t\t\t},\n\t\t\tAnomalyConfig: \u0026nobl9.SloAnomalyConfigArgs{\n\t\t\t\tNoData: \u0026nobl9.SloAnomalyConfigNoDataArgs{\n\t\t\t\t\tAlertMethods: nobl9.SloAnomalyConfigNoDataAlertMethodArray{\n\t\t\t\t\t\t\u0026nobl9.SloAnomalyConfigNoDataAlertMethodArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"foo-method-method\"),\n\t\t\t\t\t\t\tProject: pulumi.String(\"default\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\u0026nobl9.SloAnomalyConfigNoDataAlertMethodArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"bar-alert-method\"),\n\t\t\t\t\t\t\tProject: pulumi.String(\"default\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Project;\nimport com.pulumi.nobl9.ProjectArgs;\nimport com.pulumi.nobl9.Service;\nimport com.pulumi.nobl9.ServiceArgs;\nimport com.pulumi.nobl9.Slo;\nimport com.pulumi.nobl9.SloArgs;\nimport com.pulumi.nobl9.inputs.SloLabelArgs;\nimport com.pulumi.nobl9.inputs.SloAttachmentArgs;\nimport com.pulumi.nobl9.inputs.SloTimeWindowArgs;\nimport com.pulumi.nobl9.inputs.SloObjectiveArgs;\nimport com.pulumi.nobl9.inputs.SloIndicatorArgs;\nimport com.pulumi.nobl9.inputs.SloAnomalyConfigArgs;\nimport com.pulumi.nobl9.inputs.SloAnomalyConfigNoDataArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var thisProject = new Project(\"thisProject\", ProjectArgs.builder() \n .displayName(\"Test N9 Terraform\")\n .description(\"An example N9 Terraform project\")\n .build());\n\n var thisService = new Service(\"thisService\", ServiceArgs.builder() \n .project(thisProject.name())\n .displayName(thisProject.displayName().applyValue(displayName -\u003e String.format(\"%s Front Page\", displayName)))\n .description(\"Front page service\")\n .build());\n\n var thisSlo = new Slo(\"thisSlo\", SloArgs.builder() \n .service(thisService.name())\n .budgetingMethod(\"Occurrences\")\n .project(thisProject.name())\n .labels( \n SloLabelArgs.builder()\n .key(\"env\")\n .values( \n \"dev\",\n \"prod\")\n .build(),\n SloLabelArgs.builder()\n .key(\"team\")\n .values(\"red\")\n .build())\n .attachments( \n SloAttachmentArgs.builder()\n .url(\"https://www.nobl9.com/\")\n .displayName(\"Nobl9 Reliability Center\")\n .build(),\n SloAttachmentArgs.builder()\n .url(\"https://duckduckgo.com/\")\n .displayName(\"Nice search engine\")\n .build())\n .alertPolicies(\"foo-front-page-latency\")\n .timeWindow(SloTimeWindowArgs.builder()\n .unit(\"Day\")\n .count(30)\n .isRolling(true)\n .build())\n .objectives(SloObjectiveArgs.builder()\n .name(\"tf-objective-1\")\n .target(0.99)\n .displayName(\"OK\")\n .value(2000)\n .op(\"gte\")\n .rawMetrics(SloObjectiveRawMetricArgs.builder()\n .queries(SloObjectiveRawMetricQueryArgs.builder()\n .prometheuses(SloObjectiveRawMetricQueryPrometheusArgs.builder()\n .promql(\"\"\"\n latency_west_c7{code=\"ALL\",instance=\"localhost:3000\",job=\"prometheus\",service=\"glob_account\"}\n \"\"\")\n .build())\n .build())\n .build())\n .build())\n .indicator(SloIndicatorArgs.builder()\n .name(\"test-terraform-prom-agent\")\n .build())\n .build());\n\n var thisIndex_sloSlo = new Slo(\"thisIndex/sloSlo\", SloArgs.builder() \n .service(thisService.name())\n .budgetingMethod(\"Occurrences\")\n .project(thisProject.name())\n .timeWindow(SloTimeWindowArgs.builder()\n .unit(\"Day\")\n .count(30)\n .isRolling(true)\n .build())\n .objectives(SloObjectiveArgs.builder()\n .name(\"tf-objective-1\")\n .target(0.99)\n .displayName(\"OK\")\n .value(1)\n .countMetrics(SloObjectiveCountMetricArgs.builder()\n .incremental(true)\n .goods(SloObjectiveCountMetricGoodArgs.builder()\n .prometheuses(SloObjectiveCountMetricGoodPrometheusArgs.builder()\n .promql(\"1.0\")\n .build())\n .build())\n .totals(SloObjectiveCountMetricTotalArgs.builder()\n .prometheuses(SloObjectiveCountMetricTotalPrometheusArgs.builder()\n .promql(\"1.0\")\n .build())\n .build())\n .build())\n .build())\n .indicator(SloIndicatorArgs.builder()\n .name(\"test-terraform-prom-agent\")\n .build())\n .anomalyConfig(SloAnomalyConfigArgs.builder()\n .noData(SloAnomalyConfigNoDataArgs.builder()\n .alertMethods( \n SloAnomalyConfigNoDataAlertMethodArgs.builder()\n .name(\"foo-method-method\")\n .project(\"default\")\n .build(),\n SloAnomalyConfigNoDataAlertMethodArgs.builder()\n .name(\"bar-alert-method\")\n .project(\"default\")\n .build())\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n thisProject:\n type: nobl9:Project\n properties:\n displayName: Test N9 Terraform\n description: An example N9 Terraform project\n thisService:\n type: nobl9:Service\n properties:\n project: ${thisProject.name}\n displayName: ${thisProject.displayName} Front Page\n description: Front page service\n thisSlo:\n type: nobl9:Slo\n properties:\n service: ${thisService.name}\n budgetingMethod: Occurrences\n project: ${thisProject.name}\n labels:\n - key: env\n values:\n - dev\n - prod\n - key: team\n values:\n - red\n attachments:\n - url: https://www.nobl9.com/\n displayName: Nobl9 Reliability Center\n - url: https://duckduckgo.com/\n displayName: Nice search engine\n alertPolicies:\n - foo-front-page-latency\n timeWindow:\n unit: Day\n count: 30\n isRolling: true\n objectives:\n - name: tf-objective-1\n target: 0.99\n displayName: OK\n value: 2000\n op: gte\n rawMetrics:\n - queries:\n - prometheuses:\n - promql: |2\n latency_west_c7{code=\"ALL\",instance=\"localhost:3000\",job=\"prometheus\",service=\"glob_account\"}\n indicator:\n name: test-terraform-prom-agent\n thisIndex/sloSlo:\n type: nobl9:Slo\n properties:\n service: ${thisService.name}\n budgetingMethod: Occurrences\n project: ${thisProject.name}\n timeWindow:\n unit: Day\n count: 30\n isRolling: true\n objectives:\n - name: tf-objective-1\n target: 0.99\n displayName: OK\n value: 1\n countMetrics:\n - incremental: true\n goods:\n - prometheuses:\n - promql: '1.0'\n totals:\n - prometheuses:\n - promql: '1.0'\n indicator:\n name: test-terraform-prom-agent\n anomalyConfig:\n noData:\n alertMethods:\n - name: foo-method-method\n project: default\n - name: bar-alert-method\n project: default\n```\n\n{{% /example %}}\n{{% /examples %}}\n## Nobl9 Official Documentation\n\nhttps://docs.nobl9.com/SLOs_as_code/?_highlight=slo\n", "properties": { "alertPolicies": { "type": "array", @@ -9076,6 +9895,16 @@ }, "description": "Alert Policies attached to SLO\n" }, + "anomalyConfig": { + "$ref": "#/types/nobl9:index/SloAnomalyConfig:SloAnomalyConfig", + "description": "Configuration for Anomalies. Currently supported Anomaly Type is NoData\n" + }, + "attachment": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloAttachment:SloAttachment" + } + }, "attachments": { "type": "array", "items": { @@ -9097,7 +9926,7 @@ }, "displayName": { "type": "string", - "description": "User-friendly display name of the resource.\n" + "description": "Name displayed for the attachment. Max. length: 63 characters.\n" }, "indicator": { "$ref": "#/types/nobl9:index/SloIndicator:SloIndicator", @@ -9112,7 +9941,7 @@ }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + "description": "The name of the previously defined alert method.\n" }, "objectives": { "type": "array", @@ -9123,7 +9952,7 @@ }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n" + "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n" }, "service": { "type": "string", @@ -9151,6 +9980,16 @@ }, "description": "Alert Policies attached to SLO\n" }, + "anomalyConfig": { + "$ref": "#/types/nobl9:index/SloAnomalyConfig:SloAnomalyConfig", + "description": "Configuration for Anomalies. Currently supported Anomaly Type is NoData\n" + }, + "attachment": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloAttachment:SloAttachment" + } + }, "attachments": { "type": "array", "items": { @@ -9172,7 +10011,7 @@ }, "displayName": { "type": "string", - "description": "User-friendly display name of the resource.\n" + "description": "Name displayed for the attachment. Max. length: 63 characters.\n" }, "indicator": { "$ref": "#/types/nobl9:index/SloIndicator:SloIndicator", @@ -9187,7 +10026,7 @@ }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "The name of the previously defined alert method.\n", "willReplaceOnChanges": true }, "objectives": { @@ -9199,7 +10038,7 @@ }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n", "willReplaceOnChanges": true }, "service": { @@ -9229,6 +10068,16 @@ }, "description": "Alert Policies attached to SLO\n" }, + "anomalyConfig": { + "$ref": "#/types/nobl9:index/SloAnomalyConfig:SloAnomalyConfig", + "description": "Configuration for Anomalies. Currently supported Anomaly Type is NoData\n" + }, + "attachment": { + "type": "array", + "items": { + "$ref": "#/types/nobl9:index/SloAttachment:SloAttachment" + } + }, "attachments": { "type": "array", "items": { @@ -9250,7 +10099,7 @@ }, "displayName": { "type": "string", - "description": "User-friendly display name of the resource.\n" + "description": "Name displayed for the attachment. Max. length: 63 characters.\n" }, "indicator": { "$ref": "#/types/nobl9:index/SloIndicator:SloIndicator", @@ -9265,7 +10114,7 @@ }, "name": { "type": "string", - "description": "Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "The name of the previously defined alert method.\n", "willReplaceOnChanges": true }, "objectives": { @@ -9277,7 +10126,7 @@ }, "project": { "type": "string", - "description": "Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names).\n", + "description": "Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field.\n", "willReplaceOnChanges": true }, "service": { @@ -9292,5 +10141,51 @@ "type": "object" } } + }, + "functions": { + "nobl9:index/getAwsIamRoleExternalId:getAwsIamRoleExternalId": { + "description": "Returns external ID and AWS account ID that can be used to create [cross-account IAM roles in AWS](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cross-account-iam-roles-new).\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nobl9 from \"@pulumi/nobl9\";\n\nconst this = nobl9.getAwsIamRoleExternalId({\n name: \"my-datasource-name\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nobl9 as nobl9\n\nthis = nobl9.get_aws_iam_role_external_id(name=\"my-datasource-name\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nobl9 = Pulumi.Nobl9;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var @this = Nobl9.GetAwsIamRoleExternalId.Invoke(new()\n {\n Name = \"my-datasource-name\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/piclemx/pulumi-nobl9/sdk/go/nobl9\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nobl9.GetAwsIamRoleExternalId(ctx, \u0026nobl9.GetAwsIamRoleExternalIdArgs{\n\t\t\tName: \"my-datasource-name\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nobl9.Nobl9Functions;\nimport com.pulumi.nobl9.inputs.GetAwsIamRoleExternalIdArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var this = Nobl9Functions.getAwsIamRoleExternalId(GetAwsIamRoleExternalIdArgs.builder()\n .name(\"my-datasource-name\")\n .build());\n\n }\n}\n```\n```yaml\nvariables:\n this:\n fn::invoke:\n Function: nobl9:getAwsIamRoleExternalId\n Arguments:\n name: my-datasource-name\n```\n{{% /example %}}\n{{% /examples %}}", + "inputs": { + "description": "A collection of arguments for invoking getAwsIamRoleExternalId.\n", + "properties": { + "name": { + "type": "string", + "description": "Data source name\n" + } + }, + "type": "object", + "required": [ + "name" + ] + }, + "outputs": { + "description": "A collection of values returned by getAwsIamRoleExternalId.\n", + "properties": { + "accountId": { + "type": "string", + "description": "External ID\n" + }, + "externalId": { + "type": "string", + "description": "Nobl9 AWS Account ID\n" + }, + "id": { + "type": "string", + "description": "The provider-assigned unique ID for this managed resource.\n" + }, + "name": { + "type": "string", + "description": "Data source name\n" + } + }, + "type": "object", + "required": [ + "accountId", + "externalId", + "name", + "id" + ] + } + } } } \ No newline at end of file diff --git a/provider/cmd/pulumi-tfgen-nobl9/main.go b/provider/cmd/pulumi-tfgen-nobl9/main.go index aef1809..44a3a90 100644 --- a/provider/cmd/pulumi-tfgen-nobl9/main.go +++ b/provider/cmd/pulumi-tfgen-nobl9/main.go @@ -21,6 +21,5 @@ import ( ) func main() { - // Modify the path to point to the new provider tfgen.Main("nobl9", version.Version, nobl9.Provider()) } diff --git a/provider/go.mod b/provider/go.mod index 950ce97..ca651c6 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -1,140 +1,150 @@ module github.com/piclemx/pulumi-nobl9/provider -go 1.18 +go 1.22 -replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20220824175045-450992f2f5b9 +replace github.com/hashicorp/terraform-plugin-sdk/v2 => github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240129205329-74776a5cd5f9 require ( - github.com/nobl9/terraform-provider-nobl9 v0.10.0 - github.com/pulumi/pulumi-terraform-bridge/v3 v3.28.1 - github.com/pulumi/pulumi/sdk/v3 v3.38.0 - golang.org/x/text v0.7.0 + github.com/ettle/strcase v0.1.1 + github.com/nobl9/terraform-provider-nobl9 v0.24.5 + github.com/pulumi/pulumi-terraform-bridge/v3 v3.73.0 + github.com/pulumi/pulumi/sdk/v3 v3.104.2 ) require ( - cloud.google.com/go v0.104.0 // indirect - cloud.google.com/go/compute v1.7.0 // indirect - cloud.google.com/go/iam v0.3.0 // indirect - cloud.google.com/go/kms v1.1.0 // indirect - cloud.google.com/go/logging v1.0.0 // indirect - cloud.google.com/go/storage v1.27.0 // indirect - github.com/Azure/azure-pipeline-go v0.2.3 // indirect - github.com/Azure/azure-sdk-for-go v57.0.0+incompatible // indirect - github.com/Azure/azure-storage-blob-go v0.14.0 // indirect - github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect - github.com/Azure/go-autorest v14.2.0+incompatible // indirect - github.com/Azure/go-autorest/autorest v0.11.20 // indirect - github.com/Azure/go-autorest/autorest/adal v0.9.15 // indirect - github.com/Azure/go-autorest/autorest/azure/auth v0.5.8 // indirect - github.com/Azure/go-autorest/autorest/azure/cli v0.4.3 // indirect - github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect - github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect - github.com/Azure/go-autorest/autorest/validation v0.3.1 // indirect - github.com/Azure/go-autorest/logger v0.2.1 // indirect - github.com/Azure/go-autorest/tracing v0.6.0 // indirect + cloud.google.com/go v0.110.10 // indirect + cloud.google.com/go/compute v1.23.3 // indirect + cloud.google.com/go/compute/metadata v0.2.3 // indirect + cloud.google.com/go/iam v1.1.5 // indirect + cloud.google.com/go/kms v1.15.5 // indirect + cloud.google.com/go/logging v1.8.1 // indirect + cloud.google.com/go/longrunning v0.5.4 // indirect + cloud.google.com/go/storage v1.35.1 // indirect + dario.cat/mergo v1.0.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/keyvault/azkeys v0.10.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/keyvault/internal v0.7.1 // indirect + github.com/AzureAD/microsoft-authentication-library-for-go v1.2.0 // indirect + github.com/BurntSushi/toml v1.3.2 // indirect github.com/Masterminds/goutils v1.1.1 // indirect - github.com/Masterminds/semver/v3 v3.1.1 // indirect - github.com/Masterminds/sprig/v3 v3.2.2 // indirect - github.com/Microsoft/go-winio v0.5.2 // indirect - github.com/ProtonMail/go-crypto v0.0.0-20210428141323-04723f9f07d7 // indirect - github.com/acomagu/bufpipe v1.0.3 // indirect + github.com/Masterminds/semver v1.5.0 // indirect + github.com/Masterminds/semver/v3 v3.2.0 // indirect + github.com/Masterminds/sprig/v3 v3.2.3 // indirect + github.com/MicahParks/jwkset v0.5.13 // indirect + github.com/MicahParks/keyfunc/v3 v3.2.5 // indirect + github.com/Microsoft/go-winio v0.6.1 // indirect + github.com/ProtonMail/go-crypto v1.1.0-alpha.0 // indirect github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect github.com/agext/levenshtein v1.2.3 // indirect github.com/apparentlymart/go-cidr v1.1.0 // indirect - github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect + github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect + github.com/armon/go-metrics v0.4.0 // indirect github.com/armon/go-radix v1.0.0 // indirect - github.com/aws/aws-sdk-go v1.40.34 // indirect - github.com/aws/aws-sdk-go-v2 v1.11.0 // indirect - github.com/aws/aws-sdk-go-v2/config v1.10.1 // indirect - github.com/aws/aws-sdk-go-v2/credentials v1.6.1 // indirect - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.8.0 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.0 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.0.0 // indirect - github.com/aws/aws-sdk-go-v2/internal/ini v1.3.0 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.5.0 // indirect - github.com/aws/aws-sdk-go-v2/service/kms v1.5.0 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.6.0 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.10.0 // indirect - github.com/aws/smithy-go v1.9.0 // indirect + github.com/atotto/clipboard v0.1.4 // indirect + github.com/aws/aws-sdk-go v1.50.31 // indirect + github.com/aws/aws-sdk-go-v2 v1.24.0 // indirect + github.com/aws/aws-sdk-go-v2/config v1.26.1 // indirect + github.com/aws/aws-sdk-go-v2/credentials v1.16.12 // indirect + github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10 // indirect + github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9 // indirect + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9 // indirect + github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9 // indirect + github.com/aws/aws-sdk-go-v2/service/kms v1.27.5 // indirect + github.com/aws/aws-sdk-go-v2/service/sso v1.18.5 // indirect + github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.26.5 // indirect + github.com/aws/smithy-go v1.19.0 // indirect + github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect github.com/bgentry/speakeasy v0.1.0 // indirect github.com/blang/semver v3.5.1+incompatible // indirect + github.com/bmatcuk/doublestar/v4 v4.6.1 // indirect github.com/cenkalti/backoff/v3 v3.2.2 // indirect + github.com/charmbracelet/bubbles v0.16.1 // indirect + github.com/charmbracelet/bubbletea v0.24.2 // indirect + github.com/charmbracelet/lipgloss v0.7.1 // indirect github.com/cheggaaa/pb v1.0.29 // indirect + github.com/cloudflare/circl v1.3.7 // indirect + github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 // indirect + github.com/cyphar/filepath-securejoin v0.2.4 // indirect github.com/davecgh/go-spew v1.1.1 // indirect - github.com/dimchansky/utfbom v1.1.1 // indirect + github.com/deckarep/golang-set/v2 v2.5.0 // indirect github.com/djherbis/times v1.5.0 // indirect - github.com/dustin/go-humanize v1.0.0 // indirect github.com/edsrzf/mmap-go v1.1.0 // indirect - github.com/emirpasic/gods v1.12.0 // indirect - github.com/ettle/strcase v0.1.1 // indirect - github.com/fatih/color v1.13.0 // indirect + github.com/emirpasic/gods v1.18.1 // indirect + github.com/fatih/color v1.16.0 // indirect + github.com/gabriel-vasile/mimetype v1.4.3 // indirect github.com/gedex/inflector v0.0.0-20170307190818-16278e9db813 // indirect - github.com/go-git/gcfg v1.5.0 // indirect - github.com/go-git/go-billy/v5 v5.3.1 // indirect - github.com/go-git/go-git/v5 v5.4.2 // indirect + github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect + github.com/go-git/go-billy/v5 v5.5.0 // indirect + github.com/go-git/go-git/v5 v5.11.0 // indirect + github.com/goccy/go-yaml v1.11.3 // indirect github.com/gofrs/uuid v4.2.0+incompatible // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang-jwt/jwt/v4 v4.4.1 // indirect - github.com/golang/glog v1.0.0 // indirect + github.com/golang-jwt/jwt/v5 v5.2.1 // indirect + github.com/golang/glog v1.1.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/golang/protobuf v1.5.2 // indirect + github.com/golang/protobuf v1.5.3 // indirect github.com/golang/snappy v0.0.4 // indirect - github.com/google/go-cmp v0.5.8 // indirect + github.com/google/go-cmp v0.6.0 // indirect github.com/google/go-querystring v1.1.0 // indirect + github.com/google/s2a-go v0.1.7 // indirect github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect - github.com/google/uuid v1.3.0 // indirect + github.com/google/uuid v1.6.0 // indirect github.com/google/wire v0.5.0 // indirect - github.com/googleapis/enterprise-certificate-proxy v0.1.0 // indirect - github.com/googleapis/gax-go/v2 v2.5.1 // indirect + github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect + github.com/googleapis/gax-go/v2 v2.12.0 // indirect github.com/gorilla/mux v1.8.0 // indirect github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect - github.com/hashicorp/go-checkpoint v0.5.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect - github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 // indirect - github.com/hashicorp/go-getter v1.6.1 // indirect - github.com/hashicorp/go-hclog v1.2.1 // indirect + github.com/hashicorp/go-cty v1.4.1-0.20200723130312-85980079f637 // indirect + github.com/hashicorp/go-getter v1.7.1 // indirect + github.com/hashicorp/go-hclog v1.5.0 // indirect + github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/go-plugin v1.4.4 // indirect - github.com/hashicorp/go-retryablehttp v0.7.2 // indirect + github.com/hashicorp/go-plugin v1.6.0 // indirect + github.com/hashicorp/go-retryablehttp v0.7.5 // indirect github.com/hashicorp/go-rootcerts v1.0.2 // indirect github.com/hashicorp/go-safetemp v1.0.0 // indirect + github.com/hashicorp/go-secure-stdlib/mlock v0.1.2 // indirect + github.com/hashicorp/go-secure-stdlib/parseutil v0.1.6 // indirect + github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 // indirect github.com/hashicorp/go-sockaddr v1.0.2 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/hashicorp/go-version v1.6.0 // indirect - github.com/hashicorp/hc-install v0.4.0 // indirect + github.com/hashicorp/golang-lru v0.5.4 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/hashicorp/hcl/v2 v2.13.0 // indirect + github.com/hashicorp/hcl/v2 v2.19.1 // indirect github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 // indirect github.com/hashicorp/logutils v1.0.0 // indirect - github.com/hashicorp/terraform-exec v0.17.2 // indirect - github.com/hashicorp/terraform-json v0.14.0 // indirect - github.com/hashicorp/terraform-plugin-go v0.14.0 // indirect - github.com/hashicorp/terraform-plugin-log v0.7.0 // indirect - github.com/hashicorp/terraform-plugin-sdk/v2 v2.19.0 // indirect - github.com/hashicorp/terraform-registry-address v0.0.0-20220623143253-7d51757b572c // indirect - github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734 // indirect - github.com/hashicorp/vault/api v1.1.1 // indirect - github.com/hashicorp/vault/sdk v0.2.1 // indirect - github.com/hashicorp/yamux v0.1.0 // indirect - github.com/huandu/xstrings v1.3.2 // indirect + github.com/hashicorp/terraform-plugin-go v0.22.0 // indirect + github.com/hashicorp/terraform-plugin-log v0.9.0 // indirect + github.com/hashicorp/terraform-plugin-sdk/v2 v2.33.0 // indirect + github.com/hashicorp/terraform-svchost v0.1.1 // indirect + github.com/hashicorp/vault/api v1.8.2 // indirect + github.com/hashicorp/vault/sdk v0.6.1 // indirect + github.com/hashicorp/yamux v0.1.1 // indirect + github.com/huandu/xstrings v1.3.3 // indirect github.com/iancoleman/strcase v0.2.0 // indirect - github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd // indirect - github.com/imdario/mergo v0.3.13 // indirect - github.com/inconshreveable/mousetrap v1.0.0 // indirect + github.com/imdario/mergo v0.3.15 // indirect + github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect - github.com/kevinburke/ssh_config v1.1.0 // indirect - github.com/klauspost/compress v1.13.6 // indirect - github.com/mattn/go-colorable v0.1.12 // indirect - github.com/mattn/go-ieproxy v0.0.1 // indirect - github.com/mattn/go-isatty v0.0.14 // indirect - github.com/mattn/go-runewidth v0.0.13 // indirect - github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b // indirect - github.com/mitchellh/cli v1.1.4 // indirect + github.com/kevinburke/ssh_config v1.2.0 // indirect + github.com/klauspost/compress v1.15.11 // indirect + github.com/kylelemons/godebug v1.1.0 // indirect + github.com/lucasb-eyer/go-colorful v1.2.0 // indirect + github.com/mattn/go-colorable v0.1.13 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect + github.com/mattn/go-localereader v0.0.1 // indirect + github.com/mattn/go-runewidth v0.0.15 // indirect + github.com/mitchellh/cli v1.1.5 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/go-ps v1.0.0 // indirect @@ -143,76 +153,89 @@ require ( github.com/mitchellh/hashstructure v1.0.0 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect - github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect + github.com/muesli/cancelreader v0.2.2 // indirect + github.com/muesli/reflow v0.3.0 // indirect + github.com/muesli/termenv v0.15.2 // indirect github.com/natefinch/atomic v1.0.1 // indirect - github.com/nobl9/nobl9-go v0.8.1 // indirect + github.com/nobl9/nobl9-go v0.78.1-0.20240305144417-5332fc9ea955 // indirect github.com/oklog/run v1.1.0 // indirect github.com/opentracing/basictracer-go v1.1.0 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/pgavlin/fx v0.1.6 // indirect github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 // indirect github.com/pierrec/lz4 v2.6.1+incompatible // indirect + github.com/pjbgf/sha1cd v0.3.0 // indirect + github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pkg/term v1.1.0 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/posener/complete v1.2.3 // indirect - github.com/pulumi/pulumi-java/pkg v0.5.3 // indirect - github.com/pulumi/pulumi-yaml v0.5.4 // indirect - github.com/pulumi/pulumi/pkg/v3 v3.38.0 // indirect - github.com/pulumi/terraform-diff-reader v0.0.0-20201211191010-ad4715e9285e // indirect - github.com/rivo/uniseg v0.2.0 // indirect - github.com/rjeczalik/notify v0.9.2 // indirect - github.com/rogpeppe/go-internal v1.8.1 // indirect + github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect + github.com/pulumi/esc v0.6.2 // indirect + github.com/pulumi/pulumi-java/pkg v0.9.9 // indirect + github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.7 // indirect + github.com/pulumi/pulumi-yaml v1.5.0 // indirect + github.com/pulumi/pulumi/pkg/v3 v3.104.2 // indirect + github.com/pulumi/schema-tools v0.1.2 // indirect + github.com/pulumi/terraform-diff-reader v0.0.2 // indirect + github.com/rivo/uniseg v0.4.4 // indirect + github.com/rogpeppe/go-internal v1.11.0 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/ryanuber/go-glob v1.0.0 // indirect github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect github.com/segmentio/asm v1.1.3 // indirect github.com/segmentio/encoding v0.3.5 // indirect - github.com/sergi/go-diff v1.2.0 // indirect + github.com/sergi/go-diff v1.3.1 // indirect github.com/shopspring/decimal v1.3.1 // indirect - github.com/spf13/afero v1.6.0 // indirect + github.com/skeema/knownhosts v1.2.1 // indirect + github.com/spf13/afero v1.9.5 // indirect github.com/spf13/cast v1.5.0 // indirect - github.com/spf13/cobra v1.4.0 // indirect + github.com/spf13/cobra v1.7.0 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/stretchr/testify v1.7.2 // indirect + github.com/stretchr/testify v1.9.0 // indirect + github.com/teambition/rrule-go v1.8.2 // indirect github.com/texttheater/golang-levenshtein v1.0.1 // indirect github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect - github.com/ulikunitz/xz v0.5.8 // indirect + github.com/ulikunitz/xz v0.5.10 // indirect github.com/vmihailenco/msgpack v4.0.4+incompatible // indirect - github.com/vmihailenco/msgpack/v4 v4.3.12 // indirect - github.com/vmihailenco/tagparser v0.1.2 // indirect - github.com/xanzy/ssh-agent v0.3.1 // indirect + github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect + github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect + github.com/xanzy/ssh-agent v0.3.3 // indirect github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f // indirect github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect github.com/xeipuuv/gojsonschema v1.2.0 // indirect - github.com/zclconf/go-cty v1.10.0 // indirect - go.opencensus.io v0.23.0 // indirect + github.com/zclconf/go-cty v1.14.2 // indirect + go.opencensus.io v0.24.0 // indirect go.uber.org/atomic v1.9.0 // indirect - gocloud.dev v0.24.0 // indirect - gocloud.dev/secrets/hashivault v0.24.0 // indirect - golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa // indirect - golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect - golang.org/x/net v0.7.0 // indirect - golang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1 // indirect - golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f // indirect - golang.org/x/sys v0.5.0 // indirect - golang.org/x/term v0.5.0 // indirect - golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac // indirect - golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f // indirect - google.golang.org/api v0.97.0 // indirect - google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto v0.0.0-20220920201722-2b89144ce006 // indirect - google.golang.org/grpc v1.49.0 // indirect - google.golang.org/protobuf v1.28.1 // indirect - gopkg.in/AlecAivazis/survey.v1 v1.8.9-0.20200217094205-6773bdf39b7f // indirect + gocloud.dev v0.36.0 // indirect + gocloud.dev/secrets/hashivault v0.27.0 // indirect + golang.org/x/crypto v0.19.0 // indirect + golang.org/x/exp v0.0.0-20240205201215-2c58cdc269a3 // indirect + golang.org/x/mod v0.15.0 // indirect + golang.org/x/net v0.20.0 // indirect + golang.org/x/oauth2 v0.14.0 // indirect + golang.org/x/sync v0.6.0 // indirect + golang.org/x/sys v0.17.0 // indirect + golang.org/x/term v0.17.0 // indirect + golang.org/x/text v0.14.0 // indirect + golang.org/x/time v0.5.0 // indirect + golang.org/x/tools v0.17.0 // indirect + golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect + google.golang.org/api v0.151.0 // indirect + google.golang.org/appengine v1.6.8 // indirect + google.golang.org/genproto v0.0.0-20231120223509-83a465c0220f // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20231120223509-83a465c0220f // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20231120223509-83a465c0220f // indirect + google.golang.org/grpc v1.61.1 // indirect + google.golang.org/protobuf v1.33.0 // indirect gopkg.in/square/go-jose.v2 v2.6.0 // indirect gopkg.in/warnings.v0 v0.1.2 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/frand v1.4.2 // indirect - sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 // indirect ) diff --git a/provider/go.sum b/provider/go.sum index 44eacfd..d192a53 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -1,11 +1,11 @@ bazil.org/fuse v0.0.0-20160811212531-371fbbdaa898/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8= -bazil.org/fuse v0.0.0-20180421153158-65cc252bf669/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8= +bazil.org/fuse v0.0.0-20200407214033-5883e5a4b512/go.mod h1:FbcW6z/2VytnFDhZfumh8Ss8zxHE6qpMP5sHTRe0EaM= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= -cloud.google.com/go v0.43.0/go.mod h1:BOSR3VbTLkk6FDC/TcffxP4NF/FFBGA5ku+jvKOP7pg= cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= +cloud.google.com/go v0.44.3/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= @@ -26,163 +26,732 @@ cloud.google.com/go v0.82.0/go.mod h1:vlKccHJGuFBFufnAnuB08dfEH9Y3H7dzDzRECFdC2T cloud.google.com/go v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY= cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM= cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY= -cloud.google.com/go v0.88.0/go.mod h1:dnKwfYbP9hQhefiUvpbcAyoGSHUrOxR20JVElLiUvEY= -cloud.google.com/go v0.89.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ= cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ= -cloud.google.com/go v0.92.2/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= -cloud.google.com/go v0.92.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= -cloud.google.com/go v0.94.0/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4= cloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4= cloud.google.com/go v0.97.0/go.mod h1:GF7l59pYBVlXQIBLx3a761cZ41F9bBH3JUlihCt2Udc= cloud.google.com/go v0.99.0/go.mod h1:w0Xx2nLzqWJPuozYQX+hFfCSI8WioryfRDzkoI/Y2ZA= +cloud.google.com/go v0.100.1/go.mod h1:fs4QogzfH5n2pBXBP9vRiU+eCny7lD2vmFZy79Iuw1U= cloud.google.com/go v0.100.2/go.mod h1:4Xra9TjzAeYHrl5+oeLlzbM2k3mjVhZh4UqTZ//w99A= cloud.google.com/go v0.102.0/go.mod h1:oWcCzKlqJ5zgHQt9YsaeTY9KzIvjyy0ArmiBUgpQ+nc= -cloud.google.com/go v0.104.0 h1:gSmWO7DY1vOm0MVU6DNXM11BWHHsTUmsC5cv1fuW5X8= +cloud.google.com/go v0.102.1/go.mod h1:XZ77E9qnTEnrgEOvr4xzfdX5TRo7fB4T2F4O6+34hIU= +cloud.google.com/go v0.103.0/go.mod h1:vwLx1nqLrzLX/fpwSMOXmFIqBOyHsvHbnAdbGSJ+mKk= cloud.google.com/go v0.104.0/go.mod h1:OO6xxXdJyvuJPcEPBLN9BJPD+jep5G1+2U5B5gkRYtA= +cloud.google.com/go v0.105.0/go.mod h1:PrLgOJNe5nfE9UMxKxgXj4mD3voiP+YQ6gdt6KMFOKM= +cloud.google.com/go v0.107.0/go.mod h1:wpc2eNrD7hXUTy8EKS10jkxpZBjASrORK7goS+3YX2I= +cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY= +cloud.google.com/go v0.110.10 h1:LXy9GEO+timppncPIAZoOj3l58LIU9k+kn48AN7IO3Y= +cloud.google.com/go v0.110.10/go.mod h1:v1OoFqYxiBkUrruItNM3eT4lLByNjxmJSV/xDKJNnic= +cloud.google.com/go/accessapproval v1.4.0/go.mod h1:zybIuC3KpDOvotz59lFe5qxRZx6C75OtwbisN56xYB4= +cloud.google.com/go/accessapproval v1.5.0/go.mod h1:HFy3tuiGvMdcd/u+Cu5b9NkO1pEICJ46IR82PoUdplw= +cloud.google.com/go/accessapproval v1.6.0/go.mod h1:R0EiYnwV5fsRFiKZkPHr6mwyk2wxUJ30nL4j2pcFY2E= +cloud.google.com/go/accesscontextmanager v1.3.0/go.mod h1:TgCBehyr5gNMz7ZaH9xubp+CE8dkrszb4oK9CWyvD4o= +cloud.google.com/go/accesscontextmanager v1.4.0/go.mod h1:/Kjh7BBu/Gh83sv+K60vN9QE5NJcd80sU33vIe2IFPE= +cloud.google.com/go/accesscontextmanager v1.6.0/go.mod h1:8XCvZWfYw3K/ji0iVnp+6pu7huxoQTLmxAbVjbloTtM= +cloud.google.com/go/accesscontextmanager v1.7.0/go.mod h1:CEGLewx8dwa33aDAZQujl7Dx+uYhS0eay198wB/VumQ= +cloud.google.com/go/aiplatform v1.22.0/go.mod h1:ig5Nct50bZlzV6NvKaTwmplLLddFx0YReh9WfTO5jKw= +cloud.google.com/go/aiplatform v1.24.0/go.mod h1:67UUvRBKG6GTayHKV8DBv2RtR1t93YRu5B1P3x99mYY= +cloud.google.com/go/aiplatform v1.27.0/go.mod h1:Bvxqtl40l0WImSb04d0hXFU7gDOiq9jQmorivIiWcKg= +cloud.google.com/go/aiplatform v1.35.0/go.mod h1:7MFT/vCaOyZT/4IIFfxH4ErVg/4ku6lKv3w0+tFTgXQ= +cloud.google.com/go/aiplatform v1.36.1/go.mod h1:WTm12vJRPARNvJ+v6P52RDHCNe4AhvjcIZ/9/RRHy/k= +cloud.google.com/go/aiplatform v1.37.0/go.mod h1:IU2Cv29Lv9oCn/9LkFiiuKfwrRTq+QQMbW+hPCxJGZw= +cloud.google.com/go/analytics v0.11.0/go.mod h1:DjEWCu41bVbYcKyvlws9Er60YE4a//bK6mnhWvQeFNI= +cloud.google.com/go/analytics v0.12.0/go.mod h1:gkfj9h6XRf9+TS4bmuhPEShsh3hH8PAZzm/41OOhQd4= +cloud.google.com/go/analytics v0.17.0/go.mod h1:WXFa3WSym4IZ+JiKmavYdJwGG/CvpqiqczmL59bTD9M= +cloud.google.com/go/analytics v0.18.0/go.mod h1:ZkeHGQlcIPkw0R/GW+boWHhCOR43xz9RN/jn7WcqfIE= +cloud.google.com/go/analytics v0.19.0/go.mod h1:k8liqf5/HCnOUkbawNtrWWc+UAzyDlW89doe8TtoDsE= +cloud.google.com/go/apigateway v1.3.0/go.mod h1:89Z8Bhpmxu6AmUxuVRg/ECRGReEdiP3vQtk4Z1J9rJk= +cloud.google.com/go/apigateway v1.4.0/go.mod h1:pHVY9MKGaH9PQ3pJ4YLzoj6U5FUDeDFBllIz7WmzJoc= +cloud.google.com/go/apigateway v1.5.0/go.mod h1:GpnZR3Q4rR7LVu5951qfXPJCHquZt02jf7xQx7kpqN8= +cloud.google.com/go/apigeeconnect v1.3.0/go.mod h1:G/AwXFAKo0gIXkPTVfZDd2qA1TxBXJ3MgMRBQkIi9jc= +cloud.google.com/go/apigeeconnect v1.4.0/go.mod h1:kV4NwOKqjvt2JYR0AoIWo2QGfoRtn/pkS3QlHp0Ni04= +cloud.google.com/go/apigeeconnect v1.5.0/go.mod h1:KFaCqvBRU6idyhSNyn3vlHXc8VMDJdRmwDF6JyFRqZ8= +cloud.google.com/go/apigeeregistry v0.4.0/go.mod h1:EUG4PGcsZvxOXAdyEghIdXwAEi/4MEaoqLMLDMIwKXY= +cloud.google.com/go/apigeeregistry v0.5.0/go.mod h1:YR5+s0BVNZfVOUkMa5pAR2xGd0A473vA5M7j247o1wM= +cloud.google.com/go/apigeeregistry v0.6.0/go.mod h1:BFNzW7yQVLZ3yj0TKcwzb8n25CFBri51GVGOEUcgQsc= +cloud.google.com/go/apikeys v0.4.0/go.mod h1:XATS/yqZbaBK0HOssf+ALHp8jAlNHUgyfprvNcBIszU= +cloud.google.com/go/apikeys v0.5.0/go.mod h1:5aQfwY4D+ewMMWScd3hm2en3hCj+BROlyrt3ytS7KLI= +cloud.google.com/go/apikeys v0.6.0/go.mod h1:kbpXu5upyiAlGkKrJgQl8A0rKNNJ7dQ377pdroRSSi8= +cloud.google.com/go/appengine v1.4.0/go.mod h1:CS2NhuBuDXM9f+qscZ6V86m1MIIqPj3WC/UoEuR1Sno= +cloud.google.com/go/appengine v1.5.0/go.mod h1:TfasSozdkFI0zeoxW3PTBLiNqRmzraodCWatWI9Dmak= +cloud.google.com/go/appengine v1.6.0/go.mod h1:hg6i0J/BD2cKmDJbaFSYHFyZkgBEfQrDg/X0V5fJn84= +cloud.google.com/go/appengine v1.7.0/go.mod h1:eZqpbHFCqRGa2aCdope7eC0SWLV1j0neb/QnMJVWx6A= +cloud.google.com/go/appengine v1.7.1/go.mod h1:IHLToyb/3fKutRysUlFO0BPt5j7RiQ45nrzEJmKTo6E= +cloud.google.com/go/area120 v0.5.0/go.mod h1:DE/n4mp+iqVyvxHN41Vf1CR602GiHQjFPusMFW6bGR4= +cloud.google.com/go/area120 v0.6.0/go.mod h1:39yFJqWVgm0UZqWTOdqkLhjoC7uFfgXRC8g/ZegeAh0= +cloud.google.com/go/area120 v0.7.0/go.mod h1:a3+8EUD1SX5RUcCs3MY5YasiO1z6yLiNLRiFrykbynY= +cloud.google.com/go/area120 v0.7.1/go.mod h1:j84i4E1RboTWjKtZVWXPqvK5VHQFJRF2c1Nm69pWm9k= +cloud.google.com/go/artifactregistry v1.6.0/go.mod h1:IYt0oBPSAGYj/kprzsBjZ/4LnG/zOcHyFHjWPCi6SAQ= +cloud.google.com/go/artifactregistry v1.7.0/go.mod h1:mqTOFOnGZx8EtSqK/ZWcsm/4U8B77rbcLP6ruDU2Ixk= +cloud.google.com/go/artifactregistry v1.8.0/go.mod h1:w3GQXkJX8hiKN0v+at4b0qotwijQbYUqF2GWkZzAhC0= +cloud.google.com/go/artifactregistry v1.9.0/go.mod h1:2K2RqvA2CYvAeARHRkLDhMDJ3OXy26h3XW+3/Jh2uYc= +cloud.google.com/go/artifactregistry v1.11.1/go.mod h1:lLYghw+Itq9SONbCa1YWBoWs1nOucMH0pwXN1rOBZFI= +cloud.google.com/go/artifactregistry v1.11.2/go.mod h1:nLZns771ZGAwVLzTX/7Al6R9ehma4WUEhZGWV6CeQNQ= +cloud.google.com/go/artifactregistry v1.12.0/go.mod h1:o6P3MIvtzTOnmvGagO9v/rOjjA0HmhJ+/6KAXrmYDCI= +cloud.google.com/go/artifactregistry v1.13.0/go.mod h1:uy/LNfoOIivepGhooAUpL1i30Hgee3Cu0l4VTWHUC08= +cloud.google.com/go/asset v1.5.0/go.mod h1:5mfs8UvcM5wHhqtSv8J1CtxxaQq3AdBxxQi2jGW/K4o= +cloud.google.com/go/asset v1.7.0/go.mod h1:YbENsRK4+xTiL+Ofoj5Ckf+O17kJtgp3Y3nn4uzZz5s= +cloud.google.com/go/asset v1.8.0/go.mod h1:mUNGKhiqIdbr8X7KNayoYvyc4HbbFO9URsjbytpUaW0= +cloud.google.com/go/asset v1.9.0/go.mod h1:83MOE6jEJBMqFKadM9NLRcs80Gdw76qGuHn8m3h8oHQ= +cloud.google.com/go/asset v1.10.0/go.mod h1:pLz7uokL80qKhzKr4xXGvBQXnzHn5evJAEAtZiIb0wY= +cloud.google.com/go/asset v1.11.1/go.mod h1:fSwLhbRvC9p9CXQHJ3BgFeQNM4c9x10lqlrdEUYXlJo= +cloud.google.com/go/asset v1.12.0/go.mod h1:h9/sFOa4eDIyKmH6QMpm4eUK3pDojWnUhTgJlk762Hg= +cloud.google.com/go/asset v1.13.0/go.mod h1:WQAMyYek/b7NBpYq/K4KJWcRqzoalEsxz/t/dTk4THw= +cloud.google.com/go/assuredworkloads v1.5.0/go.mod h1:n8HOZ6pff6re5KYfBXcFvSViQjDwxFkAkmUFffJRbbY= +cloud.google.com/go/assuredworkloads v1.6.0/go.mod h1:yo2YOk37Yc89Rsd5QMVECvjaMKymF9OP+QXWlKXUkXw= +cloud.google.com/go/assuredworkloads v1.7.0/go.mod h1:z/736/oNmtGAyU47reJgGN+KVoYoxeLBoj4XkKYscNI= +cloud.google.com/go/assuredworkloads v1.8.0/go.mod h1:AsX2cqyNCOvEQC8RMPnoc0yEarXQk6WEKkxYfL6kGIo= +cloud.google.com/go/assuredworkloads v1.9.0/go.mod h1:kFuI1P78bplYtT77Tb1hi0FMxM0vVpRC7VVoJC3ZoT0= +cloud.google.com/go/assuredworkloads v1.10.0/go.mod h1:kwdUQuXcedVdsIaKgKTp9t0UJkE5+PAVNhdQm4ZVq2E= +cloud.google.com/go/automl v1.5.0/go.mod h1:34EjfoFGMZ5sgJ9EoLsRtdPSNZLcfflJR39VbVNS2M0= +cloud.google.com/go/automl v1.6.0/go.mod h1:ugf8a6Fx+zP0D59WLhqgTDsQI9w07o64uf/Is3Nh5p8= +cloud.google.com/go/automl v1.7.0/go.mod h1:RL9MYCCsJEOmt0Wf3z9uzG0a7adTT1fe+aObgSpkCt8= +cloud.google.com/go/automl v1.8.0/go.mod h1:xWx7G/aPEe/NP+qzYXktoBSDfjO+vnKMGgsApGJJquM= +cloud.google.com/go/automl v1.12.0/go.mod h1:tWDcHDp86aMIuHmyvjuKeeHEGq76lD7ZqfGLN6B0NuU= +cloud.google.com/go/baremetalsolution v0.3.0/go.mod h1:XOrocE+pvK1xFfleEnShBlNAXf+j5blPPxrhjKgnIFc= +cloud.google.com/go/baremetalsolution v0.4.0/go.mod h1:BymplhAadOO/eBa7KewQ0Ppg4A4Wplbn+PsFKRLo0uI= +cloud.google.com/go/baremetalsolution v0.5.0/go.mod h1:dXGxEkmR9BMwxhzBhV0AioD0ULBmuLZI8CdwalUxuss= +cloud.google.com/go/batch v0.3.0/go.mod h1:TR18ZoAekj1GuirsUsR1ZTKN3FC/4UDnScjT8NXImFE= +cloud.google.com/go/batch v0.4.0/go.mod h1:WZkHnP43R/QCGQsZ+0JyG4i79ranE2u8xvjq/9+STPE= +cloud.google.com/go/batch v0.7.0/go.mod h1:vLZN95s6teRUqRQ4s3RLDsH8PvboqBK+rn1oevL159g= +cloud.google.com/go/beyondcorp v0.2.0/go.mod h1:TB7Bd+EEtcw9PCPQhCJtJGjk/7TC6ckmnSFS+xwTfm4= +cloud.google.com/go/beyondcorp v0.3.0/go.mod h1:E5U5lcrcXMsCuoDNyGrpyTm/hn7ne941Jz2vmksAxW8= +cloud.google.com/go/beyondcorp v0.4.0/go.mod h1:3ApA0mbhHx6YImmuubf5pyW8srKnCEPON32/5hj+RmM= +cloud.google.com/go/beyondcorp v0.5.0/go.mod h1:uFqj9X+dSfrheVp7ssLTaRHd2EHqSL4QZmH4e8WXGGU= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg= cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc= cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ= -cloud.google.com/go/bigtable v1.10.1/go.mod h1:cyHeKlx6dcZCO0oSQucYdauseD8kIENGuDOJPKMCVg8= +cloud.google.com/go/bigquery v1.42.0/go.mod h1:8dRTJxhtG+vwBKzE5OseQn/hiydoQN3EedCaOdYmxRA= +cloud.google.com/go/bigquery v1.43.0/go.mod h1:ZMQcXHsl+xmU1z36G2jNGZmKp9zNY5BUua5wDgmNCfw= +cloud.google.com/go/bigquery v1.44.0/go.mod h1:0Y33VqXTEsbamHJvJHdFmtqHvMIY28aK1+dFsvaChGc= +cloud.google.com/go/bigquery v1.47.0/go.mod h1:sA9XOgy0A8vQK9+MWhEQTY6Tix87M/ZurWFIxmF9I/E= +cloud.google.com/go/bigquery v1.48.0/go.mod h1:QAwSz+ipNgfL5jxiaK7weyOhzdoAy1zFm0Nf1fysJac= +cloud.google.com/go/bigquery v1.49.0/go.mod h1:Sv8hMmTFFYBlt/ftw2uN6dFdQPzBlREY9yBh7Oy7/4Q= +cloud.google.com/go/bigquery v1.50.0/go.mod h1:YrleYEh2pSEbgTBZYMJ5SuSr0ML3ypjRB1zgf7pvQLU= +cloud.google.com/go/billing v1.4.0/go.mod h1:g9IdKBEFlItS8bTtlrZdVLWSSdSyFUZKXNS02zKMOZY= +cloud.google.com/go/billing v1.5.0/go.mod h1:mztb1tBc3QekhjSgmpf/CV4LzWXLzCArwpLmP2Gm88s= +cloud.google.com/go/billing v1.6.0/go.mod h1:WoXzguj+BeHXPbKfNWkqVtDdzORazmCjraY+vrxcyvI= +cloud.google.com/go/billing v1.7.0/go.mod h1:q457N3Hbj9lYwwRbnlD7vUpyjq6u5U1RAOArInEiD5Y= +cloud.google.com/go/billing v1.12.0/go.mod h1:yKrZio/eu+okO/2McZEbch17O5CB5NpZhhXG6Z766ss= +cloud.google.com/go/billing v1.13.0/go.mod h1:7kB2W9Xf98hP9Sr12KfECgfGclsH3CQR0R08tnRlRbc= +cloud.google.com/go/binaryauthorization v1.1.0/go.mod h1:xwnoWu3Y84jbuHa0zd526MJYmtnVXn0syOjaJgy4+dM= +cloud.google.com/go/binaryauthorization v1.2.0/go.mod h1:86WKkJHtRcv5ViNABtYMhhNWRrD1Vpi//uKEy7aYEfI= +cloud.google.com/go/binaryauthorization v1.3.0/go.mod h1:lRZbKgjDIIQvzYQS1p99A7/U1JqvqeZg0wiI5tp6tg0= +cloud.google.com/go/binaryauthorization v1.4.0/go.mod h1:tsSPQrBd77VLplV70GUhBf/Zm3FsKmgSqgm4UmiDItk= +cloud.google.com/go/binaryauthorization v1.5.0/go.mod h1:OSe4OU1nN/VswXKRBmciKpo9LulY41gch5c68htf3/Q= +cloud.google.com/go/certificatemanager v1.3.0/go.mod h1:n6twGDvcUBFu9uBgt4eYvvf3sQ6My8jADcOVwHmzadg= +cloud.google.com/go/certificatemanager v1.4.0/go.mod h1:vowpercVFyqs8ABSmrdV+GiFf2H/ch3KyudYQEMM590= +cloud.google.com/go/certificatemanager v1.6.0/go.mod h1:3Hh64rCKjRAX8dXgRAyOcY5vQ/fE1sh8o+Mdd6KPgY8= +cloud.google.com/go/channel v1.8.0/go.mod h1:W5SwCXDJsq/rg3tn3oG0LOxpAo6IMxNa09ngphpSlnk= +cloud.google.com/go/channel v1.9.0/go.mod h1:jcu05W0my9Vx4mt3/rEHpfxc9eKi9XwsdDL8yBMbKUk= +cloud.google.com/go/channel v1.11.0/go.mod h1:IdtI0uWGqhEeatSB62VOoJ8FSUhJ9/+iGkJVqp74CGE= +cloud.google.com/go/channel v1.12.0/go.mod h1:VkxCGKASi4Cq7TbXxlaBezonAYpp1GCnKMY6tnMQnLU= +cloud.google.com/go/cloudbuild v1.3.0/go.mod h1:WequR4ULxlqvMsjDEEEFnOG5ZSRSgWOywXYDb1vPE6U= +cloud.google.com/go/cloudbuild v1.4.0/go.mod h1:5Qwa40LHiOXmz3386FrjrYM93rM/hdRr7b53sySrTqA= +cloud.google.com/go/cloudbuild v1.6.0/go.mod h1:UIbc/w9QCbH12xX+ezUsgblrWv+Cv4Tw83GiSMHOn9M= +cloud.google.com/go/cloudbuild v1.7.0/go.mod h1:zb5tWh2XI6lR9zQmsm1VRA+7OCuve5d8S+zJUul8KTg= +cloud.google.com/go/cloudbuild v1.9.0/go.mod h1:qK1d7s4QlO0VwfYn5YuClDGg2hfmLZEb4wQGAbIgL1s= +cloud.google.com/go/clouddms v1.3.0/go.mod h1:oK6XsCDdW4Ib3jCCBugx+gVjevp2TMXFtgxvPSee3OM= +cloud.google.com/go/clouddms v1.4.0/go.mod h1:Eh7sUGCC+aKry14O1NRljhjyrr0NFC0G2cjwX0cByRk= +cloud.google.com/go/clouddms v1.5.0/go.mod h1:QSxQnhikCLUw13iAbffF2CZxAER3xDGNHjsTAkQJcQA= +cloud.google.com/go/cloudtasks v1.5.0/go.mod h1:fD92REy1x5woxkKEkLdvavGnPJGEn8Uic9nWuLzqCpY= +cloud.google.com/go/cloudtasks v1.6.0/go.mod h1:C6Io+sxuke9/KNRkbQpihnW93SWDU3uXt92nu85HkYI= +cloud.google.com/go/cloudtasks v1.7.0/go.mod h1:ImsfdYWwlWNJbdgPIIGJWC+gemEGTBK/SunNQQNCAb4= +cloud.google.com/go/cloudtasks v1.8.0/go.mod h1:gQXUIwCSOI4yPVK7DgTVFiiP0ZW/eQkydWzwVMdHxrI= +cloud.google.com/go/cloudtasks v1.9.0/go.mod h1:w+EyLsVkLWHcOaqNEyvcKAsWp9p29dL6uL9Nst1cI7Y= +cloud.google.com/go/cloudtasks v1.10.0/go.mod h1:NDSoTLkZ3+vExFEWu2UJV1arUyzVDAiZtdWcsUyNwBs= cloud.google.com/go/compute v0.1.0/go.mod h1:GAesmwr110a34z04OlxYkATPBEfVhkymfTBXtfbBFow= cloud.google.com/go/compute v1.3.0/go.mod h1:cCZiE1NHEtai4wiufUhW8I8S1JKkAnhnQJWM7YD99wM= cloud.google.com/go/compute v1.5.0/go.mod h1:9SMHyhJlzhlkJqrPAc839t2BZFTSk6Jdj6mkzQJeu0M= cloud.google.com/go/compute v1.6.0/go.mod h1:T29tfhtVbq1wvAPo0E3+7vhgmkOYeXjhFvz/FMzPu0s= cloud.google.com/go/compute v1.6.1/go.mod h1:g85FgpzFvNULZ+S8AYq87axRKuf2Kh7deLqV/jJ3thU= -cloud.google.com/go/compute v1.7.0 h1:v/k9Eueb8aAJ0vZuxKMrgm6kPhCLZU9HxFU+AFDs9Uk= cloud.google.com/go/compute v1.7.0/go.mod h1:435lt8av5oL9P3fv1OEzSbSUe+ybHXGMPQHHZWZxy9U= +cloud.google.com/go/compute v1.10.0/go.mod h1:ER5CLbMxl90o2jtNbGSbtfOpQKR0t15FOtRsugnLrlU= +cloud.google.com/go/compute v1.12.0/go.mod h1:e8yNOBcBONZU1vJKCvCoDw/4JQsA0dpM4x/6PIIOocU= +cloud.google.com/go/compute v1.12.1/go.mod h1:e8yNOBcBONZU1vJKCvCoDw/4JQsA0dpM4x/6PIIOocU= +cloud.google.com/go/compute v1.13.0/go.mod h1:5aPTS0cUNMIc1CE546K+Th6weJUNQErARyZtRXDJ8GE= +cloud.google.com/go/compute v1.14.0/go.mod h1:YfLtxrj9sU4Yxv+sXzZkyPjEyPBZfXHUvjxega5vAdo= +cloud.google.com/go/compute v1.15.1/go.mod h1:bjjoF/NtFUrkD/urWfdHaKuOPDR5nWIs63rR+SXhcpA= +cloud.google.com/go/compute v1.18.0/go.mod h1:1X7yHxec2Ga+Ss6jPyjxRxpu2uu7PLgsOVXvgU0yacs= +cloud.google.com/go/compute v1.19.0/go.mod h1:rikpw2y+UMidAe9tISo04EHNOIf42RLYF/q8Bs93scU= +cloud.google.com/go/compute v1.19.1/go.mod h1:6ylj3a05WF8leseCdIf77NK0g1ey+nj5IKd5/kvShxE= +cloud.google.com/go/compute v1.23.3 h1:6sVlXXBmbd7jNX0Ipq0trII3e4n1/MsADLK6a+aiVlk= +cloud.google.com/go/compute v1.23.3/go.mod h1:VCgBUoMnIVIR0CscqQiPJLAG25E3ZRZMzcFZeQ+h8CI= +cloud.google.com/go/compute/metadata v0.1.0/go.mod h1:Z1VN+bulIf6bt4P/C37K4DyZYZEXYonfTBHHFPO/4UU= +cloud.google.com/go/compute/metadata v0.2.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= +cloud.google.com/go/compute/metadata v0.2.1/go.mod h1:jgHgmJd2RKBGzXqF5LR2EZMGxBkeanZ9wwa75XHJgOM= +cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY= +cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= +cloud.google.com/go/contactcenterinsights v1.3.0/go.mod h1:Eu2oemoePuEFc/xKFPjbTuPSj0fYJcPls9TFlPNnHHY= +cloud.google.com/go/contactcenterinsights v1.4.0/go.mod h1:L2YzkGbPsv+vMQMCADxJoT9YiTTnSEd6fEvCeHTYVck= +cloud.google.com/go/contactcenterinsights v1.6.0/go.mod h1:IIDlT6CLcDoyv79kDv8iWxMSTZhLxSCofVV5W6YFM/w= +cloud.google.com/go/container v1.6.0/go.mod h1:Xazp7GjJSeUYo688S+6J5V+n/t+G5sKBTFkKNudGRxg= +cloud.google.com/go/container v1.7.0/go.mod h1:Dp5AHtmothHGX3DwwIHPgq45Y8KmNsgN3amoYfxVkLo= +cloud.google.com/go/container v1.13.1/go.mod h1:6wgbMPeQRw9rSnKBCAJXnds3Pzj03C4JHamr8asWKy4= +cloud.google.com/go/container v1.14.0/go.mod h1:3AoJMPhHfLDxLvrlVWaK57IXzaPnLaZq63WX59aQBfM= +cloud.google.com/go/container v1.15.0/go.mod h1:ft+9S0WGjAyjDggg5S06DXj+fHJICWg8L7isCQe9pQA= +cloud.google.com/go/containeranalysis v0.5.1/go.mod h1:1D92jd8gRR/c0fGMlymRgxWD3Qw9C1ff6/T7mLgVL8I= +cloud.google.com/go/containeranalysis v0.6.0/go.mod h1:HEJoiEIu+lEXM+k7+qLCci0h33lX3ZqoYFdmPcoO7s4= +cloud.google.com/go/containeranalysis v0.7.0/go.mod h1:9aUL+/vZ55P2CXfuZjS4UjQ9AgXoSw8Ts6lemfmxBxI= +cloud.google.com/go/containeranalysis v0.9.0/go.mod h1:orbOANbwk5Ejoom+s+DUCTTJ7IBdBQJDcSylAx/on9s= +cloud.google.com/go/datacatalog v1.3.0/go.mod h1:g9svFY6tuR+j+hrTw3J2dNcmI0dzmSiyOzm8kpLq0a0= +cloud.google.com/go/datacatalog v1.5.0/go.mod h1:M7GPLNQeLfWqeIm3iuiruhPzkt65+Bx8dAKvScX8jvs= +cloud.google.com/go/datacatalog v1.6.0/go.mod h1:+aEyF8JKg+uXcIdAmmaMUmZ3q1b/lKLtXCmXdnc0lbc= +cloud.google.com/go/datacatalog v1.7.0/go.mod h1:9mEl4AuDYWw81UGc41HonIHH7/sn52H0/tc8f8ZbZIE= +cloud.google.com/go/datacatalog v1.8.0/go.mod h1:KYuoVOv9BM8EYz/4eMFxrr4DUKhGIOXxZoKYF5wdISM= +cloud.google.com/go/datacatalog v1.8.1/go.mod h1:RJ58z4rMp3gvETA465Vg+ag8BGgBdnRPEMMSTr5Uv+M= +cloud.google.com/go/datacatalog v1.12.0/go.mod h1:CWae8rFkfp6LzLumKOnmVh4+Zle4A3NXLzVJ1d1mRm0= +cloud.google.com/go/datacatalog v1.13.0/go.mod h1:E4Rj9a5ZtAxcQJlEBTLgMTphfP11/lNaAshpoBgemX8= +cloud.google.com/go/dataflow v0.6.0/go.mod h1:9QwV89cGoxjjSR9/r7eFDqqjtvbKxAK2BaYU6PVk9UM= +cloud.google.com/go/dataflow v0.7.0/go.mod h1:PX526vb4ijFMesO1o202EaUmouZKBpjHsTlCtB4parQ= +cloud.google.com/go/dataflow v0.8.0/go.mod h1:Rcf5YgTKPtQyYz8bLYhFoIV/vP39eL7fWNcSOyFfLJE= +cloud.google.com/go/dataform v0.3.0/go.mod h1:cj8uNliRlHpa6L3yVhDOBrUXH+BPAO1+KFMQQNSThKo= +cloud.google.com/go/dataform v0.4.0/go.mod h1:fwV6Y4Ty2yIFL89huYlEkwUPtS7YZinZbzzj5S9FzCE= +cloud.google.com/go/dataform v0.5.0/go.mod h1:GFUYRe8IBa2hcomWplodVmUx/iTL0FrsauObOM3Ipr0= +cloud.google.com/go/dataform v0.6.0/go.mod h1:QPflImQy33e29VuapFdf19oPbE4aYTJxr31OAPV+ulA= +cloud.google.com/go/dataform v0.7.0/go.mod h1:7NulqnVozfHvWUBpMDfKMUESr+85aJsC/2O0o3jWPDE= +cloud.google.com/go/datafusion v1.4.0/go.mod h1:1Zb6VN+W6ALo85cXnM1IKiPw+yQMKMhB9TsTSRDo/38= +cloud.google.com/go/datafusion v1.5.0/go.mod h1:Kz+l1FGHB0J+4XF2fud96WMmRiq/wj8N9u007vyXZ2w= +cloud.google.com/go/datafusion v1.6.0/go.mod h1:WBsMF8F1RhSXvVM8rCV3AeyWVxcC2xY6vith3iw3S+8= +cloud.google.com/go/datalabeling v0.5.0/go.mod h1:TGcJ0G2NzcsXSE/97yWjIZO0bXj0KbVlINXMG9ud42I= +cloud.google.com/go/datalabeling v0.6.0/go.mod h1:WqdISuk/+WIGeMkpw/1q7bK/tFEZxsrFJOJdY2bXvTQ= +cloud.google.com/go/datalabeling v0.7.0/go.mod h1:WPQb1y08RJbmpM3ww0CSUAGweL0SxByuW2E+FU+wXcM= +cloud.google.com/go/dataplex v1.3.0/go.mod h1:hQuRtDg+fCiFgC8j0zV222HvzFQdRd+SVX8gdmFcZzA= +cloud.google.com/go/dataplex v1.4.0/go.mod h1:X51GfLXEMVJ6UN47ESVqvlsRplbLhcsAt0kZCCKsU0A= +cloud.google.com/go/dataplex v1.5.2/go.mod h1:cVMgQHsmfRoI5KFYq4JtIBEUbYwc3c7tXmIDhRmNNVQ= +cloud.google.com/go/dataplex v1.6.0/go.mod h1:bMsomC/aEJOSpHXdFKFGQ1b0TDPIeL28nJObeO1ppRs= +cloud.google.com/go/dataproc v1.7.0/go.mod h1:CKAlMjII9H90RXaMpSxQ8EU6dQx6iAYNPcYPOkSbi8s= +cloud.google.com/go/dataproc v1.8.0/go.mod h1:5OW+zNAH0pMpw14JVrPONsxMQYMBqJuzORhIBfBn9uI= +cloud.google.com/go/dataproc v1.12.0/go.mod h1:zrF3aX0uV3ikkMz6z4uBbIKyhRITnxvr4i3IjKsKrw4= +cloud.google.com/go/dataqna v0.5.0/go.mod h1:90Hyk596ft3zUQ8NkFfvICSIfHFh1Bc7C4cK3vbhkeo= +cloud.google.com/go/dataqna v0.6.0/go.mod h1:1lqNpM7rqNLVgWBJyk5NF6Uen2PHym0jtVJonplVsDA= +cloud.google.com/go/dataqna v0.7.0/go.mod h1:Lx9OcIIeqCrw1a6KdO3/5KMP1wAmTc0slZWwP12Qq3c= cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= -cloud.google.com/go/firestore v1.5.0/go.mod h1:c4nNYR1qdq7eaZ+jSc5fonrQN2k3M7sWATcYTiakjEo= -cloud.google.com/go/iam v0.3.0 h1:exkAomrVUuzx9kWFI1wm3KI0uoDeUFPB4kKGzx6x+Gc= +cloud.google.com/go/datastore v1.10.0/go.mod h1:PC5UzAmDEkAmkfaknstTYbNpgE49HAgW2J1gcgUfmdM= +cloud.google.com/go/datastore v1.11.0/go.mod h1:TvGxBIHCS50u8jzG+AW/ppf87v1of8nwzFNgEZU1D3c= +cloud.google.com/go/datastream v1.2.0/go.mod h1:i/uTP8/fZwgATHS/XFu0TcNUhuA0twZxxQ3EyCUQMwo= +cloud.google.com/go/datastream v1.3.0/go.mod h1:cqlOX8xlyYF/uxhiKn6Hbv6WjwPPuI9W2M9SAXwaLLQ= +cloud.google.com/go/datastream v1.4.0/go.mod h1:h9dpzScPhDTs5noEMQVWP8Wx8AFBRyS0s8KWPx/9r0g= +cloud.google.com/go/datastream v1.5.0/go.mod h1:6TZMMNPwjUqZHBKPQ1wwXpb0d5VDVPl2/XoS5yi88q4= +cloud.google.com/go/datastream v1.6.0/go.mod h1:6LQSuswqLa7S4rPAOZFVjHIG3wJIjZcZrw8JDEDJuIs= +cloud.google.com/go/datastream v1.7.0/go.mod h1:uxVRMm2elUSPuh65IbZpzJNMbuzkcvu5CjMqVIUHrww= +cloud.google.com/go/deploy v1.4.0/go.mod h1:5Xghikd4VrmMLNaF6FiRFDlHb59VM59YoDQnOUdsH/c= +cloud.google.com/go/deploy v1.5.0/go.mod h1:ffgdD0B89tToyW/U/D2eL0jN2+IEV/3EMuXHA0l4r+s= +cloud.google.com/go/deploy v1.6.0/go.mod h1:f9PTHehG/DjCom3QH0cntOVRm93uGBDt2vKzAPwpXQI= +cloud.google.com/go/deploy v1.8.0/go.mod h1:z3myEJnA/2wnB4sgjqdMfgxCA0EqC3RBTNcVPs93mtQ= +cloud.google.com/go/dialogflow v1.15.0/go.mod h1:HbHDWs33WOGJgn6rfzBW1Kv807BE3O1+xGbn59zZWI4= +cloud.google.com/go/dialogflow v1.16.1/go.mod h1:po6LlzGfK+smoSmTBnbkIZY2w8ffjz/RcGSS+sh1el0= +cloud.google.com/go/dialogflow v1.17.0/go.mod h1:YNP09C/kXA1aZdBgC/VtXX74G/TKn7XVCcVumTflA+8= +cloud.google.com/go/dialogflow v1.18.0/go.mod h1:trO7Zu5YdyEuR+BhSNOqJezyFQ3aUzz0njv7sMx/iek= +cloud.google.com/go/dialogflow v1.19.0/go.mod h1:JVmlG1TwykZDtxtTXujec4tQ+D8SBFMoosgy+6Gn0s0= +cloud.google.com/go/dialogflow v1.29.0/go.mod h1:b+2bzMe+k1s9V+F2jbJwpHPzrnIyHihAdRFMtn2WXuM= +cloud.google.com/go/dialogflow v1.31.0/go.mod h1:cuoUccuL1Z+HADhyIA7dci3N5zUssgpBJmCzI6fNRB4= +cloud.google.com/go/dialogflow v1.32.0/go.mod h1:jG9TRJl8CKrDhMEcvfcfFkkpp8ZhgPz3sBGmAUYJ2qE= +cloud.google.com/go/dlp v1.6.0/go.mod h1:9eyB2xIhpU0sVwUixfBubDoRwP+GjeUoxxeueZmqvmM= +cloud.google.com/go/dlp v1.7.0/go.mod h1:68ak9vCiMBjbasxeVD17hVPxDEck+ExiHavX8kiHG+Q= +cloud.google.com/go/dlp v1.9.0/go.mod h1:qdgmqgTyReTz5/YNSSuueR8pl7hO0o9bQ39ZhtgkWp4= +cloud.google.com/go/documentai v1.7.0/go.mod h1:lJvftZB5NRiFSX4moiye1SMxHx0Bc3x1+p9e/RfXYiU= +cloud.google.com/go/documentai v1.8.0/go.mod h1:xGHNEB7CtsnySCNrCFdCyyMz44RhFEEX2Q7UD0c5IhU= +cloud.google.com/go/documentai v1.9.0/go.mod h1:FS5485S8R00U10GhgBC0aNGrJxBP8ZVpEeJ7PQDZd6k= +cloud.google.com/go/documentai v1.10.0/go.mod h1:vod47hKQIPeCfN2QS/jULIvQTugbmdc0ZvxxfQY1bg4= +cloud.google.com/go/documentai v1.16.0/go.mod h1:o0o0DLTEZ+YnJZ+J4wNfTxmDVyrkzFvttBXXtYRMHkM= +cloud.google.com/go/documentai v1.18.0/go.mod h1:F6CK6iUH8J81FehpskRmhLq/3VlwQvb7TvwOceQ2tbs= +cloud.google.com/go/domains v0.6.0/go.mod h1:T9Rz3GasrpYk6mEGHh4rymIhjlnIuB4ofT1wTxDeT4Y= +cloud.google.com/go/domains v0.7.0/go.mod h1:PtZeqS1xjnXuRPKE/88Iru/LdfoRyEHYA9nFQf4UKpg= +cloud.google.com/go/domains v0.8.0/go.mod h1:M9i3MMDzGFXsydri9/vW+EWz9sWb4I6WyHqdlAk0idE= +cloud.google.com/go/edgecontainer v0.1.0/go.mod h1:WgkZ9tp10bFxqO8BLPqv2LlfmQF1X8lZqwW4r1BTajk= +cloud.google.com/go/edgecontainer v0.2.0/go.mod h1:RTmLijy+lGpQ7BXuTDa4C4ssxyXT34NIuHIgKuP4s5w= +cloud.google.com/go/edgecontainer v0.3.0/go.mod h1:FLDpP4nykgwwIfcLt6zInhprzw0lEi2P1fjO6Ie0qbc= +cloud.google.com/go/edgecontainer v1.0.0/go.mod h1:cttArqZpBB2q58W/upSG++ooo6EsblxDIolxa3jSjbY= +cloud.google.com/go/errorreporting v0.3.0/go.mod h1:xsP2yaAp+OAW4OIm60An2bbLpqIhKXdWR/tawvl7QzU= +cloud.google.com/go/essentialcontacts v1.3.0/go.mod h1:r+OnHa5jfj90qIfZDO/VztSFqbQan7HV75p8sA+mdGI= +cloud.google.com/go/essentialcontacts v1.4.0/go.mod h1:8tRldvHYsmnBCHdFpvU+GL75oWiBKl80BiqlFh9tp+8= +cloud.google.com/go/essentialcontacts v1.5.0/go.mod h1:ay29Z4zODTuwliK7SnX8E86aUF2CTzdNtvv42niCX0M= +cloud.google.com/go/eventarc v1.7.0/go.mod h1:6ctpF3zTnaQCxUjHUdcfgcA1A2T309+omHZth7gDfmc= +cloud.google.com/go/eventarc v1.8.0/go.mod h1:imbzxkyAU4ubfsaKYdQg04WS1NvncblHEup4kvF+4gw= +cloud.google.com/go/eventarc v1.10.0/go.mod h1:u3R35tmZ9HvswGRBnF48IlYgYeBcPUCjkr4BTdem2Kw= +cloud.google.com/go/eventarc v1.11.0/go.mod h1:PyUjsUKPWoRBCHeOxZd/lbOOjahV41icXyUY5kSTvVY= +cloud.google.com/go/filestore v1.3.0/go.mod h1:+qbvHGvXU1HaKX2nD0WEPo92TP/8AQuCVEBXNY9z0+w= +cloud.google.com/go/filestore v1.4.0/go.mod h1:PaG5oDfo9r224f8OYXURtAsY+Fbyq/bLYoINEK8XQAI= +cloud.google.com/go/filestore v1.5.0/go.mod h1:FqBXDWBp4YLHqRnVGveOkHDf8svj9r5+mUDLupOWEDs= +cloud.google.com/go/filestore v1.6.0/go.mod h1:di5unNuss/qfZTw2U9nhFqo8/ZDSc466dre85Kydllg= +cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk= +cloud.google.com/go/firestore v1.6.1/go.mod h1:asNXNOzBdyVQmEU+ggO8UPodTkEVFW5Qx+rwHnAz+EY= +cloud.google.com/go/firestore v1.9.0/go.mod h1:HMkjKHNTtRyZNiMzu7YAsLr9K3X2udY2AMwDaMEQiiE= +cloud.google.com/go/functions v1.6.0/go.mod h1:3H1UA3qiIPRWD7PeZKLvHZ9SaQhR26XIJcC0A5GbvAk= +cloud.google.com/go/functions v1.7.0/go.mod h1:+d+QBcWM+RsrgZfV9xo6KfA1GlzJfxcfZcRPEhDDfzg= +cloud.google.com/go/functions v1.8.0/go.mod h1:RTZ4/HsQjIqIYP9a9YPbU+QFoQsAlYgrwOXJWHn1POY= +cloud.google.com/go/functions v1.9.0/go.mod h1:Y+Dz8yGguzO3PpIjhLTbnqV1CWmgQ5UwtlpzoyquQ08= +cloud.google.com/go/functions v1.10.0/go.mod h1:0D3hEOe3DbEvCXtYOZHQZmD+SzYsi1YbI7dGvHfldXw= +cloud.google.com/go/functions v1.12.0/go.mod h1:AXWGrF3e2C/5ehvwYo/GH6O5s09tOPksiKhz+hH8WkA= +cloud.google.com/go/functions v1.13.0/go.mod h1:EU4O007sQm6Ef/PwRsI8N2umygGqPBS/IZQKBQBcJ3c= +cloud.google.com/go/gaming v1.5.0/go.mod h1:ol7rGcxP/qHTRQE/RO4bxkXq+Fix0j6D4LFPzYTIrDM= +cloud.google.com/go/gaming v1.6.0/go.mod h1:YMU1GEvA39Qt3zWGyAVA9bpYz/yAhTvaQ1t2sK4KPUA= +cloud.google.com/go/gaming v1.7.0/go.mod h1:LrB8U7MHdGgFG851iHAfqUdLcKBdQ55hzXy9xBJz0+w= +cloud.google.com/go/gaming v1.8.0/go.mod h1:xAqjS8b7jAVW0KFYeRUxngo9My3f33kFmua++Pi+ggM= +cloud.google.com/go/gaming v1.9.0/go.mod h1:Fc7kEmCObylSWLO334NcO+O9QMDyz+TKC4v1D7X+Bc0= +cloud.google.com/go/gkebackup v0.2.0/go.mod h1:XKvv/4LfG829/B8B7xRkk8zRrOEbKtEam6yNfuQNH60= +cloud.google.com/go/gkebackup v0.3.0/go.mod h1:n/E671i1aOQvUxT541aTkCwExO/bTer2HDlj4TsBRAo= +cloud.google.com/go/gkebackup v0.4.0/go.mod h1:byAyBGUwYGEEww7xsbnUTBHIYcOPy/PgUWUtOeRm9Vg= +cloud.google.com/go/gkeconnect v0.5.0/go.mod h1:c5lsNAg5EwAy7fkqX/+goqFsU1Da/jQFqArp+wGNr/o= +cloud.google.com/go/gkeconnect v0.6.0/go.mod h1:Mln67KyU/sHJEBY8kFZ0xTeyPtzbq9StAVvEULYK16A= +cloud.google.com/go/gkeconnect v0.7.0/go.mod h1:SNfmVqPkaEi3bF/B3CNZOAYPYdg7sU+obZ+QTky2Myw= +cloud.google.com/go/gkehub v0.9.0/go.mod h1:WYHN6WG8w9bXU0hqNxt8rm5uxnk8IH+lPY9J2TV7BK0= +cloud.google.com/go/gkehub v0.10.0/go.mod h1:UIPwxI0DsrpsVoWpLB0stwKCP+WFVG9+y977wO+hBH0= +cloud.google.com/go/gkehub v0.11.0/go.mod h1:JOWHlmN+GHyIbuWQPl47/C2RFhnFKH38jH9Ascu3n0E= +cloud.google.com/go/gkehub v0.12.0/go.mod h1:djiIwwzTTBrF5NaXCGv3mf7klpEMcST17VBTVVDcuaw= +cloud.google.com/go/gkemulticloud v0.3.0/go.mod h1:7orzy7O0S+5kq95e4Hpn7RysVA7dPs8W/GgfUtsPbrA= +cloud.google.com/go/gkemulticloud v0.4.0/go.mod h1:E9gxVBnseLWCk24ch+P9+B2CoDFJZTyIgLKSalC7tuI= +cloud.google.com/go/gkemulticloud v0.5.0/go.mod h1:W0JDkiyi3Tqh0TJr//y19wyb1yf8llHVto2Htf2Ja3Y= +cloud.google.com/go/grafeas v0.2.0/go.mod h1:KhxgtF2hb0P191HlY5besjYm6MqTSTj3LSI+M+ByZHc= +cloud.google.com/go/gsuiteaddons v1.3.0/go.mod h1:EUNK/J1lZEZO8yPtykKxLXI6JSVN2rg9bN8SXOa0bgM= +cloud.google.com/go/gsuiteaddons v1.4.0/go.mod h1:rZK5I8hht7u7HxFQcFei0+AtfS9uSushomRlg+3ua1o= +cloud.google.com/go/gsuiteaddons v1.5.0/go.mod h1:TFCClYLd64Eaa12sFVmUyG62tk4mdIsI7pAnSXRkcFo= +cloud.google.com/go/iam v0.1.0/go.mod h1:vcUNEa0pEm0qRVpmWepWaFMIAI8/hjB9mO8rNCJtF6c= cloud.google.com/go/iam v0.3.0/go.mod h1:XzJPvDayI+9zsASAFO68Hk07u3z+f+JrT2xXNdp4bnY= -cloud.google.com/go/kms v0.1.0/go.mod h1:8Qp8PCAypHg4FdmlyW1QRAv09BGQ9Uzh7JnmIZxPk+c= -cloud.google.com/go/kms v1.1.0 h1:1yc4rLqCkVDS9Zvc7m+3mJ47kw0Uo5Q5+sMjcmUVUeM= -cloud.google.com/go/kms v1.1.0/go.mod h1:WdbppnCDMDpOvoYBMn1+gNmOeEoZYqAv+HeuKARGCXI= -cloud.google.com/go/logging v1.0.0 h1:kaunpnoEh9L4hu6JUsBa8Y20LBfKnCuDhKUgdZp7oK8= -cloud.google.com/go/logging v1.0.0/go.mod h1:V1cc3ogwobYzQq5f2R7DS/GvRIrI4FKj01Gs5glwAls= -cloud.google.com/go/monitoring v0.1.0/go.mod h1:Hpm3XfzJv+UTiXzCG5Ffp0wijzHTC7Cv4eR7o3x/fEE= +cloud.google.com/go/iam v0.5.0/go.mod h1:wPU9Vt0P4UmCux7mqtRu6jcpPAb74cP1fh50J3QpkUc= +cloud.google.com/go/iam v0.6.0/go.mod h1:+1AH33ueBne5MzYccyMHtEKqLE4/kJOibtffMHDMFMc= +cloud.google.com/go/iam v0.7.0/go.mod h1:H5Br8wRaDGNc8XP3keLc4unfUUZeyH3Sfl9XpQEYOeg= +cloud.google.com/go/iam v0.8.0/go.mod h1:lga0/y3iH6CX7sYqypWJ33hf7kkfXJag67naqGESjkE= +cloud.google.com/go/iam v0.11.0/go.mod h1:9PiLDanza5D+oWFZiH1uG+RnRCfEGKoyl6yo4cgWZGY= +cloud.google.com/go/iam v0.12.0/go.mod h1:knyHGviacl11zrtZUoDuYpDgLjvr28sLQaG0YB2GYAY= +cloud.google.com/go/iam v0.13.0/go.mod h1:ljOg+rcNfzZ5d6f1nAUJ8ZIxOaZUVoS14bKCtaLZ/D0= +cloud.google.com/go/iam v1.1.5 h1:1jTsCu4bcsNsE4iiqNT5SHwrDRCfRmIaaaVFhRveTJI= +cloud.google.com/go/iam v1.1.5/go.mod h1:rB6P/Ic3mykPbFio+vo7403drjlgvoWfYpJhMXEbzv8= +cloud.google.com/go/iap v1.4.0/go.mod h1:RGFwRJdihTINIe4wZ2iCP0zF/qu18ZwyKxrhMhygBEc= +cloud.google.com/go/iap v1.5.0/go.mod h1:UH/CGgKd4KyohZL5Pt0jSKE4m3FR51qg6FKQ/z/Ix9A= +cloud.google.com/go/iap v1.6.0/go.mod h1:NSuvI9C/j7UdjGjIde7t7HBz+QTwBcapPE07+sSRcLk= +cloud.google.com/go/iap v1.7.0/go.mod h1:beqQx56T9O1G1yNPph+spKpNibDlYIiIixiqsQXxLIo= +cloud.google.com/go/iap v1.7.1/go.mod h1:WapEwPc7ZxGt2jFGB/C/bm+hP0Y6NXzOYGjpPnmMS74= +cloud.google.com/go/ids v1.1.0/go.mod h1:WIuwCaYVOzHIj2OhN9HAwvW+DBdmUAdcWlFxRl+KubM= +cloud.google.com/go/ids v1.2.0/go.mod h1:5WXvp4n25S0rA/mQWAg1YEEBBq6/s+7ml1RDCW1IrcY= +cloud.google.com/go/ids v1.3.0/go.mod h1:JBdTYwANikFKaDP6LtW5JAi4gubs57SVNQjemdt6xV4= +cloud.google.com/go/iot v1.3.0/go.mod h1:r7RGh2B61+B8oz0AGE+J72AhA0G7tdXItODWsaA2oLs= +cloud.google.com/go/iot v1.4.0/go.mod h1:dIDxPOn0UvNDUMD8Ger7FIaTuvMkj+aGk94RPP0iV+g= +cloud.google.com/go/iot v1.5.0/go.mod h1:mpz5259PDl3XJthEmh9+ap0affn/MqNSP4My77Qql9o= +cloud.google.com/go/iot v1.6.0/go.mod h1:IqdAsmE2cTYYNO1Fvjfzo9po179rAtJeVGUvkLN3rLE= +cloud.google.com/go/kms v1.4.0/go.mod h1:fajBHndQ+6ubNw6Ss2sSd+SWvjL26RNo/dr7uxsnnOA= +cloud.google.com/go/kms v1.5.0/go.mod h1:QJS2YY0eJGBg3mnDfuaCyLauWwBJiHRboYxJ++1xJNg= +cloud.google.com/go/kms v1.6.0/go.mod h1:Jjy850yySiasBUDi6KFUwUv2n1+o7QZFyuUJg6OgjA0= +cloud.google.com/go/kms v1.8.0/go.mod h1:4xFEhYFqvW+4VMELtZyxomGSYtSQKzM178ylFW4jMAg= +cloud.google.com/go/kms v1.9.0/go.mod h1:qb1tPTgfF9RQP8e1wq4cLFErVuTJv7UsSC915J8dh3w= +cloud.google.com/go/kms v1.10.0/go.mod h1:ng3KTUtQQU9bPX3+QGLsflZIHlkbn8amFAMY63m8d24= +cloud.google.com/go/kms v1.10.1/go.mod h1:rIWk/TryCkR59GMC3YtHtXeLzd634lBbKenvyySAyYI= +cloud.google.com/go/kms v1.15.5 h1:pj1sRfut2eRbD9pFRjNnPNg/CzJPuQAzUujMIM1vVeM= +cloud.google.com/go/kms v1.15.5/go.mod h1:cU2H5jnp6G2TDpUGZyqTCoy1n16fbubHZjmVXSMtwDI= +cloud.google.com/go/language v1.4.0/go.mod h1:F9dRpNFQmJbkaop6g0JhSBXCNlO90e1KWx5iDdxbWic= +cloud.google.com/go/language v1.6.0/go.mod h1:6dJ8t3B+lUYfStgls25GusK04NLh3eDLQnWM3mdEbhI= +cloud.google.com/go/language v1.7.0/go.mod h1:DJ6dYN/W+SQOjF8e1hLQXMF21AkH2w9wiPzPCJa2MIE= +cloud.google.com/go/language v1.8.0/go.mod h1:qYPVHf7SPoNNiCL2Dr0FfEFNil1qi3pQEyygwpgVKB8= +cloud.google.com/go/language v1.9.0/go.mod h1:Ns15WooPM5Ad/5no/0n81yUetis74g3zrbeJBE+ptUY= +cloud.google.com/go/lifesciences v0.5.0/go.mod h1:3oIKy8ycWGPUyZDR/8RNnTOYevhaMLqh5vLUXs9zvT8= +cloud.google.com/go/lifesciences v0.6.0/go.mod h1:ddj6tSX/7BOnhxCSd3ZcETvtNr8NZ6t/iPhY2Tyfu08= +cloud.google.com/go/lifesciences v0.8.0/go.mod h1:lFxiEOMqII6XggGbOnKiyZ7IBwoIqA84ClvoezaA/bo= +cloud.google.com/go/logging v1.6.1/go.mod h1:5ZO0mHHbvm8gEmeEUHrmDlTDSu5imF6MUP9OfilNXBw= +cloud.google.com/go/logging v1.7.0/go.mod h1:3xjP2CjkM3ZkO73aj4ASA5wRPGGCRrPIAeNqVNkzY8M= +cloud.google.com/go/logging v1.8.1 h1:26skQWPeYhvIasWKm48+Eq7oUqdcdbwsCVwz5Ys0FvU= +cloud.google.com/go/logging v1.8.1/go.mod h1:TJjR+SimHwuC8MZ9cjByQulAMgni+RkXeI3wwctHJEI= +cloud.google.com/go/longrunning v0.1.1/go.mod h1:UUFxuDWkv22EuY93jjmDMFT5GPQKeFVJBIF6QlTqdsE= +cloud.google.com/go/longrunning v0.3.0/go.mod h1:qth9Y41RRSUE69rDcOn6DdK3HfQfsUI0YSmW3iIlLJc= +cloud.google.com/go/longrunning v0.4.1/go.mod h1:4iWDqhBZ70CvZ6BfETbvam3T8FMvLK+eFj0E6AaRQTo= +cloud.google.com/go/longrunning v0.5.4 h1:w8xEcbZodnA2BbW6sVirkkoC+1gP8wS57EUUgGS0GVg= +cloud.google.com/go/longrunning v0.5.4/go.mod h1:zqNVncI0BOP8ST6XQD1+VcvuShMmq7+xFSzOL++V0dI= +cloud.google.com/go/managedidentities v1.3.0/go.mod h1:UzlW3cBOiPrzucO5qWkNkh0w33KFtBJU281hacNvsdE= +cloud.google.com/go/managedidentities v1.4.0/go.mod h1:NWSBYbEMgqmbZsLIyKvxrYbtqOsxY1ZrGM+9RgDqInM= +cloud.google.com/go/managedidentities v1.5.0/go.mod h1:+dWcZ0JlUmpuxpIDfyP5pP5y0bLdRwOS4Lp7gMni/LA= +cloud.google.com/go/maps v0.1.0/go.mod h1:BQM97WGyfw9FWEmQMpZ5T6cpovXXSd1cGmFma94eubI= +cloud.google.com/go/maps v0.6.0/go.mod h1:o6DAMMfb+aINHz/p/jbcY+mYeXBoZoxTfdSQ8VAJaCw= +cloud.google.com/go/maps v0.7.0/go.mod h1:3GnvVl3cqeSvgMcpRlQidXsPYuDGQ8naBis7MVzpXsY= +cloud.google.com/go/mediatranslation v0.5.0/go.mod h1:jGPUhGTybqsPQn91pNXw0xVHfuJ3leR1wj37oU3y1f4= +cloud.google.com/go/mediatranslation v0.6.0/go.mod h1:hHdBCTYNigsBxshbznuIMFNe5QXEowAuNmmC7h8pu5w= +cloud.google.com/go/mediatranslation v0.7.0/go.mod h1:LCnB/gZr90ONOIQLgSXagp8XUW1ODs2UmUMvcgMfI2I= +cloud.google.com/go/memcache v1.4.0/go.mod h1:rTOfiGZtJX1AaFUrOgsMHX5kAzaTQ8azHiuDoTPzNsE= +cloud.google.com/go/memcache v1.5.0/go.mod h1:dk3fCK7dVo0cUU2c36jKb4VqKPS22BTkf81Xq617aWM= +cloud.google.com/go/memcache v1.6.0/go.mod h1:XS5xB0eQZdHtTuTF9Hf8eJkKtR3pVRCcvJwtm68T3rA= +cloud.google.com/go/memcache v1.7.0/go.mod h1:ywMKfjWhNtkQTxrWxCkCFkoPjLHPW6A7WOTVI8xy3LY= +cloud.google.com/go/memcache v1.9.0/go.mod h1:8oEyzXCu+zo9RzlEaEjHl4KkgjlNDaXbCQeQWlzNFJM= +cloud.google.com/go/metastore v1.5.0/go.mod h1:2ZNrDcQwghfdtCwJ33nM0+GrBGlVuh8rakL3vdPY3XY= +cloud.google.com/go/metastore v1.6.0/go.mod h1:6cyQTls8CWXzk45G55x57DVQ9gWg7RiH65+YgPsNh9s= +cloud.google.com/go/metastore v1.7.0/go.mod h1:s45D0B4IlsINu87/AsWiEVYbLaIMeUSoxlKKDqBGFS8= +cloud.google.com/go/metastore v1.8.0/go.mod h1:zHiMc4ZUpBiM7twCIFQmJ9JMEkDSyZS9U12uf7wHqSI= +cloud.google.com/go/metastore v1.10.0/go.mod h1:fPEnH3g4JJAk+gMRnrAnoqyv2lpUCqJPWOodSaf45Eo= +cloud.google.com/go/monitoring v1.1.0/go.mod h1:L81pzz7HKn14QCMaCs6NTQkdBnE87TElyanS95vIcl4= +cloud.google.com/go/monitoring v1.5.0/go.mod h1:/o9y8NYX5j91JjD/JvGLYbi86kL11OjyJXq2XziLJu4= +cloud.google.com/go/monitoring v1.7.0/go.mod h1:HpYse6kkGo//7p6sT0wsIC6IBDET0RhIsnmlA53dvEk= +cloud.google.com/go/monitoring v1.8.0/go.mod h1:E7PtoMJ1kQXWxPjB6mv2fhC5/15jInuulFdYYtlcvT4= +cloud.google.com/go/monitoring v1.12.0/go.mod h1:yx8Jj2fZNEkL/GYZyTLS4ZtZEZN8WtDEiEqG4kLK50w= +cloud.google.com/go/monitoring v1.13.0/go.mod h1:k2yMBAB1H9JT/QETjNkgdCGD9bPF712XiLTVr+cBrpw= +cloud.google.com/go/networkconnectivity v1.4.0/go.mod h1:nOl7YL8odKyAOtzNX73/M5/mGZgqqMeryi6UPZTk/rA= +cloud.google.com/go/networkconnectivity v1.5.0/go.mod h1:3GzqJx7uhtlM3kln0+x5wyFvuVH1pIBJjhCpjzSt75o= +cloud.google.com/go/networkconnectivity v1.6.0/go.mod h1:OJOoEXW+0LAxHh89nXd64uGG+FbQoeH8DtxCHVOMlaM= +cloud.google.com/go/networkconnectivity v1.7.0/go.mod h1:RMuSbkdbPwNMQjB5HBWD5MpTBnNm39iAVpC3TmsExt8= +cloud.google.com/go/networkconnectivity v1.10.0/go.mod h1:UP4O4sWXJG13AqrTdQCD9TnLGEbtNRqjuaaA7bNjF5E= +cloud.google.com/go/networkconnectivity v1.11.0/go.mod h1:iWmDD4QF16VCDLXUqvyspJjIEtBR/4zq5hwnY2X3scM= +cloud.google.com/go/networkmanagement v1.4.0/go.mod h1:Q9mdLLRn60AsOrPc8rs8iNV6OHXaGcDdsIQe1ohekq8= +cloud.google.com/go/networkmanagement v1.5.0/go.mod h1:ZnOeZ/evzUdUsnvRt792H0uYEnHQEMaz+REhhzJRcf4= +cloud.google.com/go/networkmanagement v1.6.0/go.mod h1:5pKPqyXjB/sgtvB5xqOemumoQNB7y95Q7S+4rjSOPYY= +cloud.google.com/go/networksecurity v0.5.0/go.mod h1:xS6fOCoqpVC5zx15Z/MqkfDwH4+m/61A3ODiDV1xmiQ= +cloud.google.com/go/networksecurity v0.6.0/go.mod h1:Q5fjhTr9WMI5mbpRYEbiexTzROf7ZbDzvzCrNl14nyU= +cloud.google.com/go/networksecurity v0.7.0/go.mod h1:mAnzoxx/8TBSyXEeESMy9OOYwo1v+gZ5eMRnsT5bC8k= +cloud.google.com/go/networksecurity v0.8.0/go.mod h1:B78DkqsxFG5zRSVuwYFRZ9Xz8IcQ5iECsNrPn74hKHU= +cloud.google.com/go/notebooks v1.2.0/go.mod h1:9+wtppMfVPUeJ8fIWPOq1UnATHISkGXGqTkxeieQ6UY= +cloud.google.com/go/notebooks v1.3.0/go.mod h1:bFR5lj07DtCPC7YAAJ//vHskFBxA5JzYlH68kXVdk34= +cloud.google.com/go/notebooks v1.4.0/go.mod h1:4QPMngcwmgb6uw7Po99B2xv5ufVoIQ7nOGDyL4P8AgA= +cloud.google.com/go/notebooks v1.5.0/go.mod h1:q8mwhnP9aR8Hpfnrc5iN5IBhrXUy8S2vuYs+kBJ/gu0= +cloud.google.com/go/notebooks v1.7.0/go.mod h1:PVlaDGfJgj1fl1S3dUwhFMXFgfYGhYQt2164xOMONmE= +cloud.google.com/go/notebooks v1.8.0/go.mod h1:Lq6dYKOYOWUCTvw5t2q1gp1lAp0zxAxRycayS0iJcqQ= +cloud.google.com/go/optimization v1.1.0/go.mod h1:5po+wfvX5AQlPznyVEZjGJTMr4+CAkJf2XSTQOOl9l4= +cloud.google.com/go/optimization v1.2.0/go.mod h1:Lr7SOHdRDENsh+WXVmQhQTrzdu9ybg0NecjHidBq6xs= +cloud.google.com/go/optimization v1.3.1/go.mod h1:IvUSefKiwd1a5p0RgHDbWCIbDFgKuEdB+fPPuP0IDLI= +cloud.google.com/go/orchestration v1.3.0/go.mod h1:Sj5tq/JpWiB//X/q3Ngwdl5K7B7Y0KZ7bfv0wL6fqVA= +cloud.google.com/go/orchestration v1.4.0/go.mod h1:6W5NLFWs2TlniBphAViZEVhrXRSMgUGDfW7vrWKvsBk= +cloud.google.com/go/orchestration v1.6.0/go.mod h1:M62Bevp7pkxStDfFfTuCOaXgaaqRAga1yKyoMtEoWPQ= +cloud.google.com/go/orgpolicy v1.4.0/go.mod h1:xrSLIV4RePWmP9P3tBl8S93lTmlAxjm06NSm2UTmKvE= +cloud.google.com/go/orgpolicy v1.5.0/go.mod h1:hZEc5q3wzwXJaKrsx5+Ewg0u1LxJ51nNFlext7Tanwc= +cloud.google.com/go/orgpolicy v1.10.0/go.mod h1:w1fo8b7rRqlXlIJbVhOMPrwVljyuW5mqssvBtU18ONc= +cloud.google.com/go/osconfig v1.7.0/go.mod h1:oVHeCeZELfJP7XLxcBGTMBvRO+1nQ5tFG9VQTmYS2Fs= +cloud.google.com/go/osconfig v1.8.0/go.mod h1:EQqZLu5w5XA7eKizepumcvWx+m8mJUhEwiPqWiZeEdg= +cloud.google.com/go/osconfig v1.9.0/go.mod h1:Yx+IeIZJ3bdWmzbQU4fxNl8xsZ4amB+dygAwFPlvnNo= +cloud.google.com/go/osconfig v1.10.0/go.mod h1:uMhCzqC5I8zfD9zDEAfvgVhDS8oIjySWh+l4WK6GnWw= +cloud.google.com/go/osconfig v1.11.0/go.mod h1:aDICxrur2ogRd9zY5ytBLV89KEgT2MKB2L/n6x1ooPw= +cloud.google.com/go/oslogin v1.4.0/go.mod h1:YdgMXWRaElXz/lDk1Na6Fh5orF7gvmJ0FGLIs9LId4E= +cloud.google.com/go/oslogin v1.5.0/go.mod h1:D260Qj11W2qx/HVF29zBg+0fd6YCSjSqLUkY/qEenQU= +cloud.google.com/go/oslogin v1.6.0/go.mod h1:zOJ1O3+dTU8WPlGEkFSh7qeHPPSoxrcMbbK1Nm2iX70= +cloud.google.com/go/oslogin v1.7.0/go.mod h1:e04SN0xO1UNJ1M5GP0vzVBFicIe4O53FOfcixIqTyXo= +cloud.google.com/go/oslogin v1.9.0/go.mod h1:HNavntnH8nzrn8JCTT5fj18FuJLFJc4NaZJtBnQtKFs= +cloud.google.com/go/phishingprotection v0.5.0/go.mod h1:Y3HZknsK9bc9dMi+oE8Bim0lczMU6hrX0UpADuMefr0= +cloud.google.com/go/phishingprotection v0.6.0/go.mod h1:9Y3LBLgy0kDTcYET8ZH3bq/7qni15yVUoAxiFxnlSUA= +cloud.google.com/go/phishingprotection v0.7.0/go.mod h1:8qJI4QKHoda/sb/7/YmMQ2omRLSLYSu9bU0EKCNI+Lk= +cloud.google.com/go/policytroubleshooter v1.3.0/go.mod h1:qy0+VwANja+kKrjlQuOzmlvscn4RNsAc0e15GGqfMxg= +cloud.google.com/go/policytroubleshooter v1.4.0/go.mod h1:DZT4BcRw3QoO8ota9xw/LKtPa8lKeCByYeKTIf/vxdE= +cloud.google.com/go/policytroubleshooter v1.5.0/go.mod h1:Rz1WfV+1oIpPdN2VvvuboLVRsB1Hclg3CKQ53j9l8vw= +cloud.google.com/go/policytroubleshooter v1.6.0/go.mod h1:zYqaPTsmfvpjm5ULxAyD/lINQxJ0DDsnWOP/GZ7xzBc= +cloud.google.com/go/privatecatalog v0.5.0/go.mod h1:XgosMUvvPyxDjAVNDYxJ7wBW8//hLDDYmnsNcMGq1K0= +cloud.google.com/go/privatecatalog v0.6.0/go.mod h1:i/fbkZR0hLN29eEWiiwue8Pb+GforiEIBnV9yrRUOKI= +cloud.google.com/go/privatecatalog v0.7.0/go.mod h1:2s5ssIFO69F5csTXcwBP7NPFTZvps26xGzvQ2PQaBYg= +cloud.google.com/go/privatecatalog v0.8.0/go.mod h1:nQ6pfaegeDAq/Q5lrfCQzQLhubPiZhSaNhIgfJlnIXs= cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= -cloud.google.com/go/pubsub v1.16.0/go.mod h1:6A8EfoWZ/lUvCWStKGwAWauJZSiuV0Mkmu6WilK/TxQ= -cloud.google.com/go/secretmanager v0.1.0/go.mod h1:3nGKHvnzDUVit7U0S9KAKJ4aOsO1xtwRG+7ey5LK1bM= +cloud.google.com/go/pubsub v1.24.0/go.mod h1:rWv09Te1SsRpRGPiWOMDKraMQTJyJps4MkUCoMGUgqw= +cloud.google.com/go/pubsub v1.26.0/go.mod h1:QgBH3U/jdJy/ftjPhTkyXNj543Tin1pRYcdcPRnFIRI= +cloud.google.com/go/pubsub v1.27.1/go.mod h1:hQN39ymbV9geqBnfQq6Xf63yNhUAhv9CZhzp5O6qsW0= +cloud.google.com/go/pubsub v1.28.0/go.mod h1:vuXFpwaVoIPQMGXqRyUQigu/AX1S3IWugR9xznmcXX8= +cloud.google.com/go/pubsub v1.30.0/go.mod h1:qWi1OPS0B+b5L+Sg6Gmc9zD1Y+HaM0MdUr7LsupY1P4= +cloud.google.com/go/pubsublite v1.5.0/go.mod h1:xapqNQ1CuLfGi23Yda/9l4bBCKz/wC3KIJ5gKcxveZg= +cloud.google.com/go/pubsublite v1.6.0/go.mod h1:1eFCS0U11xlOuMFV/0iBqw3zP12kddMeCbj/F3FSj9k= +cloud.google.com/go/pubsublite v1.7.0/go.mod h1:8hVMwRXfDfvGm3fahVbtDbiLePT3gpoiJYJY+vxWxVM= +cloud.google.com/go/recaptchaenterprise v1.3.1/go.mod h1:OdD+q+y4XGeAlxRaMn1Y7/GveP6zmq76byL6tjPE7d4= +cloud.google.com/go/recaptchaenterprise/v2 v2.1.0/go.mod h1:w9yVqajwroDNTfGuhmOjPDN//rZGySaf6PtFVcSCa7o= +cloud.google.com/go/recaptchaenterprise/v2 v2.2.0/go.mod h1:/Zu5jisWGeERrd5HnlS3EUGb/D335f9k51B/FVil0jk= +cloud.google.com/go/recaptchaenterprise/v2 v2.3.0/go.mod h1:O9LwGCjrhGHBQET5CA7dd5NwwNQUErSgEDit1DLNTdo= +cloud.google.com/go/recaptchaenterprise/v2 v2.4.0/go.mod h1:Am3LHfOuBstrLrNCBrlI5sbwx9LBg3te2N6hGvHn2mE= +cloud.google.com/go/recaptchaenterprise/v2 v2.5.0/go.mod h1:O8LzcHXN3rz0j+LBC91jrwI3R+1ZSZEWrfL7XHgNo9U= +cloud.google.com/go/recaptchaenterprise/v2 v2.6.0/go.mod h1:RPauz9jeLtB3JVzg6nCbe12qNoaa8pXc4d/YukAmcnA= +cloud.google.com/go/recaptchaenterprise/v2 v2.7.0/go.mod h1:19wVj/fs5RtYtynAPJdDTb69oW0vNHYDBTbB4NvMD9c= +cloud.google.com/go/recommendationengine v0.5.0/go.mod h1:E5756pJcVFeVgaQv3WNpImkFP8a+RptV6dDLGPILjvg= +cloud.google.com/go/recommendationengine v0.6.0/go.mod h1:08mq2umu9oIqc7tDy8sx+MNJdLG0fUi3vaSVbztHgJ4= +cloud.google.com/go/recommendationengine v0.7.0/go.mod h1:1reUcE3GIu6MeBz/h5xZJqNLuuVjNg1lmWMPyjatzac= +cloud.google.com/go/recommender v1.5.0/go.mod h1:jdoeiBIVrJe9gQjwd759ecLJbxCDED4A6p+mqoqDvTg= +cloud.google.com/go/recommender v1.6.0/go.mod h1:+yETpm25mcoiECKh9DEScGzIRyDKpZ0cEhWGo+8bo+c= +cloud.google.com/go/recommender v1.7.0/go.mod h1:XLHs/W+T8olwlGOgfQenXBTbIseGclClff6lhFVe9Bs= +cloud.google.com/go/recommender v1.8.0/go.mod h1:PkjXrTT05BFKwxaUxQmtIlrtj0kph108r02ZZQ5FE70= +cloud.google.com/go/recommender v1.9.0/go.mod h1:PnSsnZY7q+VL1uax2JWkt/UegHssxjUVVCrX52CuEmQ= +cloud.google.com/go/redis v1.7.0/go.mod h1:V3x5Jq1jzUcg+UNsRvdmsfuFnit1cfe3Z/PGyq/lm4Y= +cloud.google.com/go/redis v1.8.0/go.mod h1:Fm2szCDavWzBk2cDKxrkmWBqoCiL1+Ctwq7EyqBCA/A= +cloud.google.com/go/redis v1.9.0/go.mod h1:HMYQuajvb2D0LvMgZmLDZW8V5aOC/WxstZHiy4g8OiA= +cloud.google.com/go/redis v1.10.0/go.mod h1:ThJf3mMBQtW18JzGgh41/Wld6vnDDc/F/F35UolRZPM= +cloud.google.com/go/redis v1.11.0/go.mod h1:/X6eicana+BWcUda5PpwZC48o37SiFVTFSs0fWAJ7uQ= +cloud.google.com/go/resourcemanager v1.3.0/go.mod h1:bAtrTjZQFJkiWTPDb1WBjzvc6/kifjj4QBYuKCCoqKA= +cloud.google.com/go/resourcemanager v1.4.0/go.mod h1:MwxuzkumyTX7/a3n37gmsT3py7LIXwrShilPh3P1tR0= +cloud.google.com/go/resourcemanager v1.5.0/go.mod h1:eQoXNAiAvCf5PXxWxXjhKQoTMaUSNrEfg+6qdf/wots= +cloud.google.com/go/resourcemanager v1.6.0/go.mod h1:YcpXGRs8fDzcUl1Xw8uOVmI8JEadvhRIkoXXUNVYcVo= +cloud.google.com/go/resourcemanager v1.7.0/go.mod h1:HlD3m6+bwhzj9XCouqmeiGuni95NTrExfhoSrkC/3EI= +cloud.google.com/go/resourcesettings v1.3.0/go.mod h1:lzew8VfESA5DQ8gdlHwMrqZs1S9V87v3oCnKCWoOuQU= +cloud.google.com/go/resourcesettings v1.4.0/go.mod h1:ldiH9IJpcrlC3VSuCGvjR5of/ezRrOxFtpJoJo5SmXg= +cloud.google.com/go/resourcesettings v1.5.0/go.mod h1:+xJF7QSG6undsQDfsCJyqWXyBwUoJLhetkRMDRnIoXA= +cloud.google.com/go/retail v1.8.0/go.mod h1:QblKS8waDmNUhghY2TI9O3JLlFk8jybHeV4BF19FrE4= +cloud.google.com/go/retail v1.9.0/go.mod h1:g6jb6mKuCS1QKnH/dpu7isX253absFl6iE92nHwlBUY= +cloud.google.com/go/retail v1.10.0/go.mod h1:2gDk9HsL4HMS4oZwz6daui2/jmKvqShXKQuB2RZ+cCc= +cloud.google.com/go/retail v1.11.0/go.mod h1:MBLk1NaWPmh6iVFSz9MeKG/Psyd7TAgm6y/9L2B4x9Y= +cloud.google.com/go/retail v1.12.0/go.mod h1:UMkelN/0Z8XvKymXFbD4EhFJlYKRx1FGhQkVPU5kF14= +cloud.google.com/go/run v0.2.0/go.mod h1:CNtKsTA1sDcnqqIFR3Pb5Tq0usWxJJvsWOCPldRU3Do= +cloud.google.com/go/run v0.3.0/go.mod h1:TuyY1+taHxTjrD0ZFk2iAR+xyOXEA0ztb7U3UNA0zBo= +cloud.google.com/go/run v0.8.0/go.mod h1:VniEnuBwqjigv0A7ONfQUaEItaiCRVujlMqerPPiktM= +cloud.google.com/go/run v0.9.0/go.mod h1:Wwu+/vvg8Y+JUApMwEDfVfhetv30hCG4ZwDR/IXl2Qg= +cloud.google.com/go/scheduler v1.4.0/go.mod h1:drcJBmxF3aqZJRhmkHQ9b3uSSpQoltBPGPxGAWROx6s= +cloud.google.com/go/scheduler v1.5.0/go.mod h1:ri073ym49NW3AfT6DZi21vLZrG07GXr5p3H1KxN5QlI= +cloud.google.com/go/scheduler v1.6.0/go.mod h1:SgeKVM7MIwPn3BqtcBntpLyrIJftQISRrYB5ZtT+KOk= +cloud.google.com/go/scheduler v1.7.0/go.mod h1:jyCiBqWW956uBjjPMMuX09n3x37mtyPJegEWKxRsn44= +cloud.google.com/go/scheduler v1.8.0/go.mod h1:TCET+Y5Gp1YgHT8py4nlg2Sew8nUHMqcpousDgXJVQc= +cloud.google.com/go/scheduler v1.9.0/go.mod h1:yexg5t+KSmqu+njTIh3b7oYPheFtBWGcbVUYF1GGMIc= +cloud.google.com/go/secretmanager v1.5.0/go.mod h1:5C9kM+RwSpkURNovKySkNvGQLUaOgyoR5W0RUx2SyHQ= +cloud.google.com/go/secretmanager v1.6.0/go.mod h1:awVa/OXF6IiyaU1wQ34inzQNc4ISIDIrId8qE5QGgKA= +cloud.google.com/go/secretmanager v1.8.0/go.mod h1:hnVgi/bN5MYHd3Gt0SPuTPPp5ENina1/LxM+2W9U9J4= +cloud.google.com/go/secretmanager v1.9.0/go.mod h1:b71qH2l1yHmWQHt9LC80akm86mX8AL6X1MA01dW8ht4= +cloud.google.com/go/secretmanager v1.10.0/go.mod h1:MfnrdvKMPNra9aZtQFvBcvRU54hbPD8/HayQdlUgJpU= +cloud.google.com/go/security v1.5.0/go.mod h1:lgxGdyOKKjHL4YG3/YwIL2zLqMFCKs0UbQwgyZmfJl4= +cloud.google.com/go/security v1.7.0/go.mod h1:mZklORHl6Bg7CNnnjLH//0UlAlaXqiG7Lb9PsPXLfD0= +cloud.google.com/go/security v1.8.0/go.mod h1:hAQOwgmaHhztFhiQ41CjDODdWP0+AE1B3sX4OFlq+GU= +cloud.google.com/go/security v1.9.0/go.mod h1:6Ta1bO8LXI89nZnmnsZGp9lVoVWXqsVbIq/t9dzI+2Q= +cloud.google.com/go/security v1.10.0/go.mod h1:QtOMZByJVlibUT2h9afNDWRZ1G96gVywH8T5GUSb9IA= +cloud.google.com/go/security v1.12.0/go.mod h1:rV6EhrpbNHrrxqlvW0BWAIawFWq3X90SduMJdFwtLB8= +cloud.google.com/go/security v1.13.0/go.mod h1:Q1Nvxl1PAgmeW0y3HTt54JYIvUdtcpYKVfIB8AOMZ+0= +cloud.google.com/go/securitycenter v1.13.0/go.mod h1:cv5qNAqjY84FCN6Y9z28WlkKXyWsgLO832YiWwkCWcU= +cloud.google.com/go/securitycenter v1.14.0/go.mod h1:gZLAhtyKv85n52XYWt6RmeBdydyxfPeTrpToDPw4Auc= +cloud.google.com/go/securitycenter v1.15.0/go.mod h1:PeKJ0t8MoFmmXLXWm41JidyzI3PJjd8sXWaVqg43WWk= +cloud.google.com/go/securitycenter v1.16.0/go.mod h1:Q9GMaLQFUD+5ZTabrbujNWLtSLZIZF7SAR0wWECrjdk= +cloud.google.com/go/securitycenter v1.18.1/go.mod h1:0/25gAzCM/9OL9vVx4ChPeM/+DlfGQJDwBy/UC8AKK0= +cloud.google.com/go/securitycenter v1.19.0/go.mod h1:LVLmSg8ZkkyaNy4u7HCIshAngSQ8EcIRREP3xBnyfag= +cloud.google.com/go/servicecontrol v1.4.0/go.mod h1:o0hUSJ1TXJAmi/7fLJAedOovnujSEvjKCAFNXPQ1RaU= +cloud.google.com/go/servicecontrol v1.5.0/go.mod h1:qM0CnXHhyqKVuiZnGKrIurvVImCs8gmqWsDoqe9sU1s= +cloud.google.com/go/servicecontrol v1.10.0/go.mod h1:pQvyvSRh7YzUF2efw7H87V92mxU8FnFDawMClGCNuAA= +cloud.google.com/go/servicecontrol v1.11.0/go.mod h1:kFmTzYzTUIuZs0ycVqRHNaNhgR+UMUpw9n02l/pY+mc= +cloud.google.com/go/servicecontrol v1.11.1/go.mod h1:aSnNNlwEFBY+PWGQ2DoM0JJ/QUXqV5/ZD9DOLB7SnUk= +cloud.google.com/go/servicedirectory v1.4.0/go.mod h1:gH1MUaZCgtP7qQiI+F+A+OpeKF/HQWgtAddhTbhL2bs= +cloud.google.com/go/servicedirectory v1.5.0/go.mod h1:QMKFL0NUySbpZJ1UZs3oFAmdvVxhhxB6eJ/Vlp73dfg= +cloud.google.com/go/servicedirectory v1.6.0/go.mod h1:pUlbnWsLH9c13yGkxCmfumWEPjsRs1RlmJ4pqiNjVL4= +cloud.google.com/go/servicedirectory v1.7.0/go.mod h1:5p/U5oyvgYGYejufvxhgwjL8UVXjkuw7q5XcG10wx1U= +cloud.google.com/go/servicedirectory v1.8.0/go.mod h1:srXodfhY1GFIPvltunswqXpVxFPpZjf8nkKQT7XcXaY= +cloud.google.com/go/servicedirectory v1.9.0/go.mod h1:29je5JjiygNYlmsGz8k6o+OZ8vd4f//bQLtvzkPPT/s= +cloud.google.com/go/servicemanagement v1.4.0/go.mod h1:d8t8MDbezI7Z2R1O/wu8oTggo3BI2GKYbdG4y/SJTco= +cloud.google.com/go/servicemanagement v1.5.0/go.mod h1:XGaCRe57kfqu4+lRxaFEAuqmjzF0r+gWHjWqKqBvKFo= +cloud.google.com/go/servicemanagement v1.6.0/go.mod h1:aWns7EeeCOtGEX4OvZUWCCJONRZeFKiptqKf1D0l/Jc= +cloud.google.com/go/servicemanagement v1.8.0/go.mod h1:MSS2TDlIEQD/fzsSGfCdJItQveu9NXnUniTrq/L8LK4= +cloud.google.com/go/serviceusage v1.3.0/go.mod h1:Hya1cozXM4SeSKTAgGXgj97GlqUvF5JaoXacR1JTP/E= +cloud.google.com/go/serviceusage v1.4.0/go.mod h1:SB4yxXSaYVuUBYUml6qklyONXNLt83U0Rb+CXyhjEeU= +cloud.google.com/go/serviceusage v1.5.0/go.mod h1:w8U1JvqUqwJNPEOTQjrMHkw3IaIFLoLsPLvsE3xueec= +cloud.google.com/go/serviceusage v1.6.0/go.mod h1:R5wwQcbOWsyuOfbP9tGdAnCAc6B9DRwPG1xtWMDeuPA= +cloud.google.com/go/shell v1.3.0/go.mod h1:VZ9HmRjZBsjLGXusm7K5Q5lzzByZmJHf1d0IWHEN5X4= +cloud.google.com/go/shell v1.4.0/go.mod h1:HDxPzZf3GkDdhExzD/gs8Grqk+dmYcEjGShZgYa9URw= +cloud.google.com/go/shell v1.6.0/go.mod h1:oHO8QACS90luWgxP3N9iZVuEiSF84zNyLytb+qE2f9A= +cloud.google.com/go/spanner v1.41.0/go.mod h1:MLYDBJR/dY4Wt7ZaMIQ7rXOTLjYrmxLE/5ve9vFfWos= +cloud.google.com/go/spanner v1.44.0/go.mod h1:G8XIgYdOK+Fbcpbs7p2fiprDw4CaZX63whnSMLVBxjk= +cloud.google.com/go/spanner v1.45.0/go.mod h1:FIws5LowYz8YAE1J8fOS7DJup8ff7xJeetWEo5REA2M= +cloud.google.com/go/speech v1.6.0/go.mod h1:79tcr4FHCimOp56lwC01xnt/WPJZc4v3gzyT7FoBkCM= +cloud.google.com/go/speech v1.7.0/go.mod h1:KptqL+BAQIhMsj1kOP2la5DSEEerPDuOP/2mmkhHhZQ= +cloud.google.com/go/speech v1.8.0/go.mod h1:9bYIl1/tjsAnMgKGHKmBZzXKEkGgtU+MpdDPTE9f7y0= +cloud.google.com/go/speech v1.9.0/go.mod h1:xQ0jTcmnRFFM2RfX/U+rk6FQNUF6DQlydUSyoooSpco= +cloud.google.com/go/speech v1.14.1/go.mod h1:gEosVRPJ9waG7zqqnsHpYTOoAS4KouMRLDFMekpJ0J0= +cloud.google.com/go/speech v1.15.0/go.mod h1:y6oH7GhqCaZANH7+Oe0BhgIogsNInLlz542tg3VqeYI= cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= -cloud.google.com/go/storage v1.16.1/go.mod h1:LaNorbty3ehnU3rEjXSNV/NRgQA0O8Y+uh6bPe5UOk4= +cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= cloud.google.com/go/storage v1.22.1/go.mod h1:S8N1cAStu7BOeFfE8KAQzmyyLkK8p/vmRq6kuBTW58Y= -cloud.google.com/go/storage v1.27.0 h1:YOO045NZI9RKfCj1c5A/ZtuuENUc8OAW+gHdGnDgyMQ= +cloud.google.com/go/storage v1.23.0/go.mod h1:vOEEDNFnciUMhBeT6hsJIn3ieU5cFRmzeLgDvXzfIXc= +cloud.google.com/go/storage v1.24.0/go.mod h1:3xrJEFMXBsQLgxwThyjuD3aYlroL0TMRec1ypGUQ0KE= cloud.google.com/go/storage v1.27.0/go.mod h1:x9DOL8TK/ygDUMieqwfhdpQryTeEkhGKMi80i/iqR2s= -cloud.google.com/go/trace v0.1.0/go.mod h1:wxEwsoeRVPbeSkt7ZC9nWCgmoKQRAoySN7XHW2AmI7g= +cloud.google.com/go/storage v1.28.1/go.mod h1:Qnisd4CqDdo6BGs2AD5LLnEsmSQ80wQ5ogcBBKhU86Y= +cloud.google.com/go/storage v1.29.0/go.mod h1:4puEjyTKnku6gfKoTfNOU/W+a9JyuVNxjpS5GBrB8h4= +cloud.google.com/go/storage v1.35.1 h1:B59ahL//eDfx2IIKFBeT5Atm9wnNmj3+8xG/W4WB//w= +cloud.google.com/go/storage v1.35.1/go.mod h1:M6M/3V/D3KpzMTJyPOR/HU6n2Si5QdaXYEsng2xgOs8= +cloud.google.com/go/storagetransfer v1.5.0/go.mod h1:dxNzUopWy7RQevYFHewchb29POFv3/AaBgnhqzqiK0w= +cloud.google.com/go/storagetransfer v1.6.0/go.mod h1:y77xm4CQV/ZhFZH75PLEXY0ROiS7Gh6pSKrM8dJyg6I= +cloud.google.com/go/storagetransfer v1.7.0/go.mod h1:8Giuj1QNb1kfLAiWM1bN6dHzfdlDAVC9rv9abHot2W4= +cloud.google.com/go/storagetransfer v1.8.0/go.mod h1:JpegsHHU1eXg7lMHkvf+KE5XDJ7EQu0GwNJbbVGanEw= +cloud.google.com/go/talent v1.1.0/go.mod h1:Vl4pt9jiHKvOgF9KoZo6Kob9oV4lwd/ZD5Cto54zDRw= +cloud.google.com/go/talent v1.2.0/go.mod h1:MoNF9bhFQbiJ6eFD3uSsg0uBALw4n4gaCaEjBw9zo8g= +cloud.google.com/go/talent v1.3.0/go.mod h1:CmcxwJ/PKfRgd1pBjQgU6W3YBwiewmUzQYH5HHmSCmM= +cloud.google.com/go/talent v1.4.0/go.mod h1:ezFtAgVuRf8jRsvyE6EwmbTK5LKciD4KVnHuDEFmOOA= +cloud.google.com/go/talent v1.5.0/go.mod h1:G+ODMj9bsasAEJkQSzO2uHQWXHHXUomArjWQQYkqK6c= +cloud.google.com/go/texttospeech v1.4.0/go.mod h1:FX8HQHA6sEpJ7rCMSfXuzBcysDAuWusNNNvN9FELDd8= +cloud.google.com/go/texttospeech v1.5.0/go.mod h1:oKPLhR4n4ZdQqWKURdwxMy0uiTS1xU161C8W57Wkea4= +cloud.google.com/go/texttospeech v1.6.0/go.mod h1:YmwmFT8pj1aBblQOI3TfKmwibnsfvhIBzPXcW4EBovc= +cloud.google.com/go/tpu v1.3.0/go.mod h1:aJIManG0o20tfDQlRIej44FcwGGl/cD0oiRyMKG19IQ= +cloud.google.com/go/tpu v1.4.0/go.mod h1:mjZaX8p0VBgllCzF6wcU2ovUXN9TONFLd7iz227X2Xg= +cloud.google.com/go/tpu v1.5.0/go.mod h1:8zVo1rYDFuW2l4yZVY0R0fb/v44xLh3llq7RuV61fPM= +cloud.google.com/go/trace v1.0.0/go.mod h1:4iErSByzxkyHWzzlAj63/Gmjz0NH1ASqhJguHpGcr6A= +cloud.google.com/go/trace v1.2.0/go.mod h1:Wc8y/uYyOhPy12KEnXG9XGrvfMz5F5SrYecQlbW1rwM= +cloud.google.com/go/trace v1.3.0/go.mod h1:FFUE83d9Ca57C+K8rDl/Ih8LwOzWIV1krKgxg6N0G28= +cloud.google.com/go/trace v1.4.0/go.mod h1:UG0v8UBqzusp+z63o7FK74SdFE+AXpCLdFb1rshXG+Y= +cloud.google.com/go/trace v1.8.0/go.mod h1:zH7vcsbAhklH8hWFig58HvxcxyQbaIqMarMg9hn5ECA= +cloud.google.com/go/trace v1.9.0/go.mod h1:lOQqpE5IaWY0Ixg7/r2SjixMuc6lfTFeO4QGM4dQWOk= +cloud.google.com/go/translate v1.3.0/go.mod h1:gzMUwRjvOqj5i69y/LYLd8RrNQk+hOmIXTi9+nb3Djs= +cloud.google.com/go/translate v1.4.0/go.mod h1:06Dn/ppvLD6WvA5Rhdp029IX2Mi3Mn7fpMRLPvXT5Wg= +cloud.google.com/go/translate v1.5.0/go.mod h1:29YDSYveqqpA1CQFD7NQuP49xymq17RXNaUDdc0mNu0= +cloud.google.com/go/translate v1.6.0/go.mod h1:lMGRudH1pu7I3n3PETiOB2507gf3HnfLV8qlkHZEyos= +cloud.google.com/go/translate v1.7.0/go.mod h1:lMGRudH1pu7I3n3PETiOB2507gf3HnfLV8qlkHZEyos= +cloud.google.com/go/video v1.8.0/go.mod h1:sTzKFc0bUSByE8Yoh8X0mn8bMymItVGPfTuUBUyRgxk= +cloud.google.com/go/video v1.9.0/go.mod h1:0RhNKFRF5v92f8dQt0yhaHrEuH95m068JYOvLZYnJSw= +cloud.google.com/go/video v1.12.0/go.mod h1:MLQew95eTuaNDEGriQdcYn0dTwf9oWiA4uYebxM5kdg= +cloud.google.com/go/video v1.13.0/go.mod h1:ulzkYlYgCp15N2AokzKjy7MQ9ejuynOJdf1tR5lGthk= +cloud.google.com/go/video v1.14.0/go.mod h1:SkgaXwT+lIIAKqWAJfktHT/RbgjSuY6DobxEp0C5yTQ= +cloud.google.com/go/video v1.15.0/go.mod h1:SkgaXwT+lIIAKqWAJfktHT/RbgjSuY6DobxEp0C5yTQ= +cloud.google.com/go/videointelligence v1.6.0/go.mod h1:w0DIDlVRKtwPCn/C4iwZIJdvC69yInhW0cfi+p546uU= +cloud.google.com/go/videointelligence v1.7.0/go.mod h1:k8pI/1wAhjznARtVT9U1llUaFNPh7muw8QyOUpavru4= +cloud.google.com/go/videointelligence v1.8.0/go.mod h1:dIcCn4gVDdS7yte/w+koiXn5dWVplOZkE+xwG9FgK+M= +cloud.google.com/go/videointelligence v1.9.0/go.mod h1:29lVRMPDYHikk3v8EdPSaL8Ku+eMzDljjuvRs105XoU= +cloud.google.com/go/videointelligence v1.10.0/go.mod h1:LHZngX1liVtUhZvi2uNS0VQuOzNi2TkY1OakiuoUOjU= +cloud.google.com/go/vision v1.2.0/go.mod h1:SmNwgObm5DpFBme2xpyOyasvBc1aPdjvMk2bBk0tKD0= +cloud.google.com/go/vision/v2 v2.2.0/go.mod h1:uCdV4PpN1S0jyCyq8sIM42v2Y6zOLkZs+4R9LrGYwFo= +cloud.google.com/go/vision/v2 v2.3.0/go.mod h1:UO61abBx9QRMFkNBbf1D8B1LXdS2cGiiCRx0vSpZoUo= +cloud.google.com/go/vision/v2 v2.4.0/go.mod h1:VtI579ll9RpVTrdKdkMzckdnwMyX2JILb+MhPqRbPsY= +cloud.google.com/go/vision/v2 v2.5.0/go.mod h1:MmaezXOOE+IWa+cS7OhRRLK2cNv1ZL98zhqFFZaaH2E= +cloud.google.com/go/vision/v2 v2.6.0/go.mod h1:158Hes0MvOS9Z/bDMSFpjwsUrZ5fPrdwuyyvKSGAGMY= +cloud.google.com/go/vision/v2 v2.7.0/go.mod h1:H89VysHy21avemp6xcf9b9JvZHVehWbET0uT/bcuY/0= +cloud.google.com/go/vmmigration v1.2.0/go.mod h1:IRf0o7myyWFSmVR1ItrBSFLFD/rJkfDCUTO4vLlJvsE= +cloud.google.com/go/vmmigration v1.3.0/go.mod h1:oGJ6ZgGPQOFdjHuocGcLqX4lc98YQ7Ygq8YQwHh9A7g= +cloud.google.com/go/vmmigration v1.5.0/go.mod h1:E4YQ8q7/4W9gobHjQg4JJSgXXSgY21nA5r8swQV+Xxc= +cloud.google.com/go/vmmigration v1.6.0/go.mod h1:bopQ/g4z+8qXzichC7GW1w2MjbErL54rk3/C843CjfY= +cloud.google.com/go/vmwareengine v0.1.0/go.mod h1:RsdNEf/8UDvKllXhMz5J40XxDrNJNN4sagiox+OI208= +cloud.google.com/go/vmwareengine v0.2.2/go.mod h1:sKdctNJxb3KLZkE/6Oui94iw/xs9PRNC2wnNLXsHvH8= +cloud.google.com/go/vmwareengine v0.3.0/go.mod h1:wvoyMvNWdIzxMYSpH/R7y2h5h3WFkx6d+1TIsP39WGY= +cloud.google.com/go/vpcaccess v1.4.0/go.mod h1:aQHVbTWDYUR1EbTApSVvMq1EnT57ppDmQzZ3imqIk4w= +cloud.google.com/go/vpcaccess v1.5.0/go.mod h1:drmg4HLk9NkZpGfCmZ3Tz0Bwnm2+DKqViEpeEpOq0m8= +cloud.google.com/go/vpcaccess v1.6.0/go.mod h1:wX2ILaNhe7TlVa4vC5xce1bCnqE3AeH27RV31lnmZes= +cloud.google.com/go/webrisk v1.4.0/go.mod h1:Hn8X6Zr+ziE2aNd8SliSDWpEnSS1u4R9+xXZmFiHmGE= +cloud.google.com/go/webrisk v1.5.0/go.mod h1:iPG6fr52Tv7sGk0H6qUFzmL3HHZev1htXuWDEEsqMTg= +cloud.google.com/go/webrisk v1.6.0/go.mod h1:65sW9V9rOosnc9ZY7A7jsy1zoHS5W9IAXv6dGqhMQMc= +cloud.google.com/go/webrisk v1.7.0/go.mod h1:mVMHgEYH0r337nmt1JyLthzMr6YxwN1aAIEc2fTcq7A= +cloud.google.com/go/webrisk v1.8.0/go.mod h1:oJPDuamzHXgUc+b8SiHRcVInZQuybnvEW72PqTc7sSg= +cloud.google.com/go/websecurityscanner v1.3.0/go.mod h1:uImdKm2wyeXQevQJXeh8Uun/Ym1VqworNDlBXQevGMo= +cloud.google.com/go/websecurityscanner v1.4.0/go.mod h1:ebit/Fp0a+FWu5j4JOmJEV8S8CzdTkAS77oDsiSqYWQ= +cloud.google.com/go/websecurityscanner v1.5.0/go.mod h1:Y6xdCPy81yi0SQnDY1xdNTNpfY1oAgXUlcfN3B3eSng= +cloud.google.com/go/workflows v1.6.0/go.mod h1:6t9F5h/unJz41YqfBmqSASJSXccBLtD1Vwf+KmJENM0= +cloud.google.com/go/workflows v1.7.0/go.mod h1:JhSrZuVZWuiDfKEFxU0/F1PQjmpnpcoISEXH2bcHC3M= +cloud.google.com/go/workflows v1.8.0/go.mod h1:ysGhmEajwZxGn1OhGOGKsTXc5PyxOc0vfKf5Af+to4M= +cloud.google.com/go/workflows v1.9.0/go.mod h1:ZGkj1aFIOd9c8Gerkjjq7OW7I5+l6cSvT3ujaO/WwSA= +cloud.google.com/go/workflows v1.10.0/go.mod h1:fZ8LmRmZQWacon9UCX1r/g/DfAXx5VcPALq2CxzdePw= +code.cloudfoundry.org/clock v0.0.0-20180518195852-02e53af36e6c/go.mod h1:QD9Lzhd/ux6eNQVUDVRJX/RKTigpewimNYBi7ivZKY8= contrib.go.opencensus.io/exporter/aws v0.0.0-20200617204711-c478e41e60e9/go.mod h1:uu1P0UCM/6RbsMrgPa98ll8ZcHM858i/AD06a9aLRCA= -contrib.go.opencensus.io/exporter/stackdriver v0.13.8/go.mod h1:huNtlWx75MwO7qMs0KrMxPZXzNNWebav1Sq/pm02JdQ= +contrib.go.opencensus.io/exporter/stackdriver v0.13.13/go.mod h1:5pSSGY0Bhuk7waTHuDf4aQ8D2DrhgETRo9fy6k3Xlzc= contrib.go.opencensus.io/integrations/ocsql v0.1.7/go.mod h1:8DsSdjz3F+APR+0z0WkU1aRorQCFfRxvqjUUPMbF3fE= +dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= +dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= -dmitri.shuralyov.com/gpu/mtl v0.0.0-20201218220906-28db891af037/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= gioui.org v0.0.0-20210308172011-57750fc8a0a6/go.mod h1:RSH6KIUZ0p2xy5zHDxgAM4zumjgTw83q2ge/PI+yyw8= -github.com/AlecAivazis/survey/v2 v2.0.5/go.mod h1:WYBhg6f0y/fNYUuesWQc0PKbJcEliGcYHB9sNT3Bg74= -github.com/AlecAivazis/survey/v2 v2.2.9/go.mod h1:9DYvHgXtiXm6nCn+jXnOXLKbH+Yo9u8fAS/SduGdoPk= -github.com/Azure/azure-amqp-common-go/v3 v3.1.0/go.mod h1:PBIGdzcO1teYoufTKMcGibdKaYZv4avS+O6LNIp8bq0= -github.com/Azure/azure-amqp-common-go/v3 v3.1.1/go.mod h1:YsDaPfaO9Ub2XeSKdIy2DfwuiQlHQCauHJwSqtrkECI= -github.com/Azure/azure-pipeline-go v0.2.3 h1:7U9HBg1JFK3jHl5qmo4CTZKFTVgMwdFHMVtCdfBE21U= -github.com/Azure/azure-pipeline-go v0.2.3/go.mod h1:x841ezTBIMG6O3lAcl8ATHnsOPVl2bqk7S3ta6S6u4k= -github.com/Azure/azure-sdk-for-go v51.1.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= -github.com/Azure/azure-sdk-for-go v57.0.0+incompatible h1:isVki3PbIFrwKvKdVP1byxo73/pt+Nn174YxW1k4PNw= -github.com/Azure/azure-sdk-for-go v57.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= -github.com/Azure/azure-service-bus-go v0.10.16/go.mod h1:MlkLwGGf1ewcx5jZadn0gUEty+tTg0RaElr6bPf+QhI= -github.com/Azure/azure-storage-blob-go v0.14.0 h1:1BCg74AmVdYwO3dlKwtFU1V0wU2PZdREkXvAmZJRUlM= -github.com/Azure/azure-storage-blob-go v0.14.0/go.mod h1:SMqIBi+SuiQH32bvyjngEewEeXoPfKMgWlBDaYf6fck= -github.com/Azure/go-amqp v0.13.0/go.mod h1:qj+o8xPCz9tMSbQ83Vp8boHahuRDl5mkNHyt1xlxUTs= -github.com/Azure/go-amqp v0.13.11/go.mod h1:D5ZrjQqB1dyp1A+G73xeL/kNn7D5qHJIIsNNps7YNmk= -github.com/Azure/go-amqp v0.13.12/go.mod h1:D5ZrjQqB1dyp1A+G73xeL/kNn7D5qHJIIsNNps7YNmk= +git.sr.ht/~sbinet/gg v0.3.1/go.mod h1:KGYtlADtqsqANL9ueOFkWymvzUvLMQllU5Ixo+8v3pc= +github.com/AdaLogics/go-fuzz-headers v0.0.0-20210715213245-6c3934b029d8/go.mod h1:CzsSbkDixRphAF5hS6wbMKq0eI6ccJRb7/A0M6JBnwg= +github.com/Azure/azure-amqp-common-go/v3 v3.2.3/go.mod h1:7rPmbSfszeovxGfc5fSAXE4ehlXQZHpMja2OtxC2Tas= +github.com/Azure/azure-sdk-for-go v16.2.1+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-sdk-for-go v63.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-sdk-for-go v65.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-sdk-for-go v66.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-sdk-for-go/sdk/azcore v0.19.0/go.mod h1:h6H6c8enJmmocHUbLiiGY6sx7f9i+X3m1CHdd5c6Rdw= +github.com/Azure/azure-sdk-for-go/sdk/azcore v1.0.0/go.mod h1:uGG2W01BaETf0Ozp+QxxKJdMBNRWPdstHG0Fmdwn1/U= +github.com/Azure/azure-sdk-for-go/sdk/azcore v1.1.1/go.mod h1:uGG2W01BaETf0Ozp+QxxKJdMBNRWPdstHG0Fmdwn1/U= +github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0 h1:fb8kj/Dh4CSwgsOzHeZY4Xh68cFVbzXx+ONXGMY//4w= +github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0/go.mod h1:uReU2sSxZExRPBAg3qKzmAucSi51+SP1OhohieR821Q= +github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.11.0/go.mod h1:HcM1YX14R7CJcghJGOYCgdezslRSVzqwLf/q+4Y2r/0= +github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.0.0/go.mod h1:+6sju8gk8FRmSajX3Oz4G5Gm7P+mbqE9FVaXXFYTkCM= +github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 h1:BMAjVKJM0U/CYF27gA0ZMmXGkOcvfFtD0oHVZ1TIPRI= +github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0/go.mod h1:1fXstnBMas5kzG+S3q8UoJcmyU6nUeunJcMDHcRYHhs= +github.com/Azure/azure-sdk-for-go/sdk/internal v0.7.0/go.mod h1:yqy467j36fJxcRV2TzfVZ1pCb5vxm4BtZPUdYWe/Xo8= +github.com/Azure/azure-sdk-for-go/sdk/internal v1.0.0/go.mod h1:eWRD7oawr1Mu1sLCawqVc0CUiF43ia3qQMxLscsKQ9w= +github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 h1:d81/ng9rET2YqdVkVwkb6EXeRrLJIwyGnJcAlAWKwhs= +github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0/go.mod h1:s4kgfzA0covAXNicZHDMN58jExvcng2mC/DepXiF1EI= +github.com/Azure/azure-sdk-for-go/sdk/keyvault/azkeys v0.10.0 h1:m/sWOGCREuSBqg2htVQTBY8nOZpyajYztF0vUvSZTuM= +github.com/Azure/azure-sdk-for-go/sdk/keyvault/azkeys v0.10.0/go.mod h1:Pu5Zksi2KrU7LPbZbNINx6fuVrUp/ffvpxdDj+i8LeE= +github.com/Azure/azure-sdk-for-go/sdk/keyvault/internal v0.7.1 h1:FbH3BbSb4bvGluTesZZ+ttN/MDsnMmQP36OSnDuSXqw= +github.com/Azure/azure-sdk-for-go/sdk/keyvault/internal v0.7.1/go.mod h1:9V2j0jn9jDEkCkv8w/bKTNppX/d0FVA1ud77xCIP4KA= +github.com/Azure/azure-sdk-for-go/sdk/messaging/azservicebus v1.0.2/go.mod h1:LH9XQnMr2ZYxQdVdCrzLO9mxeDyrDFa6wbSI3x5zCZk= +github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.1/go.mod h1:eZ4g6GUvXiGulfIbbhh1Xr4XwUYaYaWMqzGD/284wCA= +github.com/Azure/go-amqp v0.17.0/go.mod h1:9YJ3RhxRT1gquYnzpZO1vcYMMpAdJT+QEg6fwmw9Zlg= +github.com/Azure/go-amqp v0.17.5/go.mod h1:9YJ3RhxRT1gquYnzpZO1vcYMMpAdJT+QEg6fwmw9Zlg= github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= -github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= +github.com/Azure/go-ansiterm v0.0.0-20210608223527-2377c96fe795/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= -github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= +github.com/Azure/go-autorest v10.8.1+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= -github.com/Azure/go-autorest/autorest v0.11.3/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= -github.com/Azure/go-autorest/autorest v0.11.9/go.mod h1:eipySxLmqSyC5s5k1CLupqet0PSENBEDP93LQ9a8QYw= -github.com/Azure/go-autorest/autorest v0.11.17/go.mod h1:eipySxLmqSyC5s5k1CLupqet0PSENBEDP93LQ9a8QYw= +github.com/Azure/go-autorest/autorest v0.11.1/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= -github.com/Azure/go-autorest/autorest v0.11.20 h1:s8H1PbCZSqg/DH7JMlOz6YMig6htWLNPsjDdlLqCx3M= -github.com/Azure/go-autorest/autorest v0.11.20/go.mod h1:o3tqFY+QR40VOlk+pV4d77mORO64jOXSgEnPQgLK6JY= +github.com/Azure/go-autorest/autorest v0.11.24/go.mod h1:G6kyRlFnTuSbEYkQGawPfsCswgme4iYf6rfSKUDzbCc= +github.com/Azure/go-autorest/autorest v0.11.25/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U= +github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U= +github.com/Azure/go-autorest/autorest v0.11.28/go.mod h1:MrkzG3Y3AH668QyF9KRk5neJnGgmhQ6krbhR8Q5eMvA= github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg= github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= -github.com/Azure/go-autorest/autorest/adal v0.9.11/go.mod h1:nBKAnTomx8gDtl+3ZCJv2v0KACFHWTB2drffI1B68Pk= github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= -github.com/Azure/go-autorest/autorest/adal v0.9.14/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= -github.com/Azure/go-autorest/autorest/adal v0.9.15 h1:X+p2GF0GWyOiSmqohIaEeuNFNDY4I4EOlVuUQvFdWMk= -github.com/Azure/go-autorest/autorest/adal v0.9.15/go.mod h1:tGMin8I49Yij6AQ+rvV+Xa/zwxYQB5hmsd6DkfAx2+A= -github.com/Azure/go-autorest/autorest/azure/auth v0.5.3/go.mod h1:4bJZhUhcq8LB20TruwHbAQsmUs2Xh+QR7utuJpLXX3A= -github.com/Azure/go-autorest/autorest/azure/auth v0.5.8 h1:TzPg6B6fTZ0G1zBf3T54aI7p3cAT6u//TOXGPmFMOXg= -github.com/Azure/go-autorest/autorest/azure/auth v0.5.8/go.mod h1:kxyKZTSfKh8OVFWPAgOgQ/frrJgeYQJPyR5fLFmXko4= -github.com/Azure/go-autorest/autorest/azure/cli v0.4.2/go.mod h1:7qkJkT+j6b+hIpzMOwPChJhTqS8VbsqqgULzMNRugoM= -github.com/Azure/go-autorest/autorest/azure/cli v0.4.3 h1:DOhB+nXkF7LN0JfBGB5YtCF6QLK8mLe4psaHF7ZQEKM= -github.com/Azure/go-autorest/autorest/azure/cli v0.4.3/go.mod h1:yAQ2b6eP/CmLPnmLvxtT1ALIY3OR1oFcCqVBi8vHiTc= -github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= +github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= +github.com/Azure/go-autorest/autorest/adal v0.9.20/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= +github.com/Azure/go-autorest/autorest/adal v0.9.21/go.mod h1:zua7mBUaCc5YnSLKYgGJR/w5ePdMDA6H56upLsHzA9U= +github.com/Azure/go-autorest/autorest/azure/auth v0.5.11/go.mod h1:84w/uV8E37feW2NCJ08uT9VBfjfUHpgLVnG2InYD6cg= +github.com/Azure/go-autorest/autorest/azure/cli v0.4.5/go.mod h1:ADQAXrkgm7acgWVUNamOgh8YNrv4p27l3Wc55oVfpzg= +github.com/Azure/go-autorest/autorest/azure/cli v0.4.6/go.mod h1:piCfgPho7BiIDdEQ1+g4VmKyD5y+p/XtSNqE6Hc4QD0= github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= -github.com/Azure/go-autorest/autorest/mocks v0.4.1 h1:K0laFcLE6VLTOwNgSxaGbUcLPuGXlNkbVvq4cW4nIHk= github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= -github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= +github.com/Azure/go-autorest/autorest/mocks v0.4.2/go.mod h1:Vy7OitM9Kei0i1Oj+LvyAWMXJHeKH1MVlzFugfVrmyU= github.com/Azure/go-autorest/autorest/to v0.4.0/go.mod h1:fE8iZBn7LQR7zH/9XU2NcPR4o9jEImooCeWJcYV/zLE= -github.com/Azure/go-autorest/autorest/validation v0.3.1 h1:AgyqjAd94fwNAoTjl/WQXg4VvFeRFpO+UhNyRXqF1ac= github.com/Azure/go-autorest/autorest/validation v0.3.1/go.mod h1:yhLgjC0Wda5DYXl6JAsWyUe4KVNffhoDhG0zVzUMo3E= github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= -github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg= github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= -github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo= github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= +github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0/go.mod h1:Vt9sXTKwMyGcOxSmLDMnGPgqsUg7m8pe215qMLrDXw4= +github.com/AzureAD/microsoft-authentication-library-for-go v1.2.0 h1:hVeq+yCyUi+MsoO/CU95yqCIcdzra5ovzk8Q2BBpV2M= +github.com/AzureAD/microsoft-authentication-library-for-go v1.2.0/go.mod h1:wP83P5OoQ5p6ip3ScPr0BAq0BvuPAvacpEuSzyouqAI= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= +github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= -github.com/DATA-DOG/go-sqlmock v1.4.1/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM= github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= -github.com/GoogleCloudPlatform/cloudsql-proxy v1.24.0/go.mod h1:3tx938GhY4FC+E1KT/jNjDw7Z5qxAEtIiERJ2sXjnII= -github.com/HdrHistogram/hdrhistogram-go v1.1.0/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo= +github.com/GoogleCloudPlatform/cloudsql-proxy v1.31.2/go.mod h1:qR6jVnZTKDCW3j+fC9mOEPHm++1nKDMkqbbkD6KNsfo= github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob0t8PQPMybUNFM= +github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo= github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c/go.mod h1:X0CRv0ky0k6m906ixxpzmDRLvX58TFUKS2eePweuyxk= github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0= -github.com/MakeNowJust/heredoc/v2 v2.0.1/go.mod h1:6/2Abh5s+hc3g9nbWLe9ObDIOhaRrqsyY9MWy+4JdRM= -github.com/Masterminds/goutils v1.1.0/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= -github.com/Masterminds/semver v1.4.2/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= -github.com/Masterminds/semver/v3 v3.1.1 h1:hLg3sBzpNErnxhQtUy/mmLR2I9foDujNK030IGemrRc= +github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww= +github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= -github.com/Masterminds/sprig v2.16.0+incompatible/go.mod h1:y6hNFY5UBTIWBxnzTeuNhlNS5hqE0NB0E6fgfo2Br3o= -github.com/Masterminds/sprig/v3 v3.2.0/go.mod h1:tWhwTbUTndesPNeF0C900vKoq283u6zp4APT9vaF3SI= -github.com/Masterminds/sprig/v3 v3.2.2 h1:17jRggJu518dr3QaafizSXOjKYp94wKfABxUmyxvxX8= -github.com/Masterminds/sprig/v3 v3.2.2/go.mod h1:UoaO7Yp8KlPnJIYWTFkMaqPUYKTfGFPhxNuwnnxkKlk= -github.com/Masterminds/squirrel v1.5.0/go.mod h1:NNaOrjSoIDfDA40n7sr2tPNZRfjzjA400rg+riTZj10= +github.com/Masterminds/semver/v3 v3.2.0 h1:3MEsd0SM6jqZojhjLWWeBY+Kcjy9i6MQAeY7YgDP83g= +github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= +github.com/Masterminds/sprig/v3 v3.2.1/go.mod h1:UoaO7Yp8KlPnJIYWTFkMaqPUYKTfGFPhxNuwnnxkKlk= +github.com/Masterminds/sprig/v3 v3.2.3 h1:eL2fZNezLomi0uOLqjQoN6BfsDD+fyLtgbJMAj9n6YA= +github.com/Masterminds/sprig/v3 v3.2.3/go.mod h1:rXcFaZ2zZbLRJv/xSysmlgIM1u11eBaRMhvYXJNkGuM= +github.com/MicahParks/jwkset v0.5.13 h1:vRXsx+b8uaZm1AU6MpavHJXOmuwP36iR+DNmlg2Lx8o= +github.com/MicahParks/jwkset v0.5.13/go.mod h1:q8ptTGn/Z9c4MwbcfeCDssADeVQb3Pk7PnVxrvi+2QY= +github.com/MicahParks/keyfunc/v3 v3.2.5 h1:eg4s2zd2nfadnAzAsv9xvJCdCfLNy4s/aSiAxRn+aAk= +github.com/MicahParks/keyfunc/v3 v3.2.5/go.mod h1:8hmM7h/hNerfF8uC8cFVnT+afxBgh6nKRTR/0vAm5So= github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA= github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA= github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw= +github.com/Microsoft/go-winio v0.4.16-0.20201130162521-d1ffc52c7331/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= github.com/Microsoft/go-winio v0.4.16/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= -github.com/Microsoft/go-winio v0.5.0/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= -github.com/Microsoft/go-winio v0.5.2 h1:a9IhgEQBCUEk6QCdml9CiJGhAws+YwffDHEMp1VMrpA= +github.com/Microsoft/go-winio v0.4.17-0.20210211115548-6eac466e5fa3/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.4.17-0.20210324224401-5516f17a5958/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.4.17/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.5.1/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= +github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= +github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= +github.com/Microsoft/hcsshim v0.8.6/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= +github.com/Microsoft/hcsshim v0.8.7-0.20190325164909-8abdbb8205e4/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= +github.com/Microsoft/hcsshim v0.8.7/go.mod h1:OHd7sQqRFrYd3RmSgbgji+ctCwkbq2wbEYNSzOYtcBQ= github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8= -github.com/NYTimes/gziphandler v1.0.1/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= -github.com/Netflix/go-expect v0.0.0-20180615182759-c93bf25de8e8 h1:xzYJEypr/85nBpB11F9br+3HUrpgb+fcm5iADzXXYEw= -github.com/Netflix/go-expect v0.0.0-20180615182759-c93bf25de8e8/go.mod h1:oX5x61PbNXchhh0oikYAH+4Pcfw5LKv21+Jnpr6r6Pc= -github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk= +github.com/Microsoft/hcsshim v0.8.14/go.mod h1:NtVKoYxQuTLx6gEq0L96c9Ju4JbRJ4nY2ow3VK6a9Lg= +github.com/Microsoft/hcsshim v0.8.15/go.mod h1:x38A4YbHbdxJtc0sF6oIz+RG0npwSCAvn69iY6URG00= +github.com/Microsoft/hcsshim v0.8.16/go.mod h1:o5/SZqmR7x9JNKsW3pu+nqHm0MF8vbA+VxGOoXdC600= +github.com/Microsoft/hcsshim v0.8.20/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= +github.com/Microsoft/hcsshim v0.8.21/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= +github.com/Microsoft/hcsshim v0.8.23/go.mod h1:4zegtUJth7lAvFyc6cH2gGQ5B3OFQim01nnU2M8jKDg= +github.com/Microsoft/hcsshim v0.9.2/go.mod h1:7pLA8lDk46WKDWlVsENo92gC0XFa8rbKfyFRBqxEbCc= +github.com/Microsoft/hcsshim/test v0.0.0-20201218223536-d3e5debf77da/go.mod h1:5hlzMzRKMLyo42nCZ9oml8AdTlq/0cvIaBv6tK1RehU= +github.com/Microsoft/hcsshim/test v0.0.0-20210227013316-43a75bb4edd3/go.mod h1:mw7qgWloBUl75W/gVH3cQszUg1+gUITj7D6NY7ywVnY= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= +github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= -github.com/ProtonMail/go-crypto v0.0.0-20210428141323-04723f9f07d7 h1:YoJbenK9C67SkzkDfmQuVln04ygHj3vjZfd9FL+GmQQ= -github.com/ProtonMail/go-crypto v0.0.0-20210428141323-04723f9f07d7/go.mod h1:z4/9nQmJSSwwds7ejkxaJwO37dru3geImFUdJlaLzQo= -github.com/RoaringBitmap/roaring v0.4.16/go.mod h1:8khRDP4HmeXns4xIj9oGrKSz7XTQiJx2zgh7AcNke4w= -github.com/SAP/go-hdb v0.14.1/go.mod h1:7fdQLVC2lER3urZLjZCm0AuMQfApof92n3aylBPEkMo= +github.com/ProtonMail/go-crypto v0.0.0-20230717121422-5aa5874ade95/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= +github.com/ProtonMail/go-crypto v1.1.0-alpha.0 h1:nHGfwXmFvJrSR9xu8qL7BkO4DqTHXE9N5vPhgY2I+j0= +github.com/ProtonMail/go-crypto v1.1.0-alpha.0/go.mod h1:rA3QumHc/FZ8pAHreoekgiAbzpNsfQAosU5td4SnOrE= +github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo= github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= github.com/VividCortex/gohistogram v1.0.0/go.mod h1:Pf5mBqqDxYaXu3hDrrU+w6nw50o/4+TcAqDqk/vUH7g= -github.com/acomagu/bufpipe v1.0.3 h1:fxAGrHZTgQ9w5QqVItgzwj235/uYZYgbXitB+dLupOk= -github.com/acomagu/bufpipe v1.0.3/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ2sYmHc4= +github.com/acomagu/bufpipe v1.0.4/go.mod h1:mxdxdup/WdsKVreO5GpW4+M/1CE2sMG4jeGJ2sYmHc4= github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY= github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA= github.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c= @@ -191,22 +760,27 @@ github.com/agext/levenshtein v1.2.2/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= github.com/agl/ed25519 v0.0.0-20170116200512-5312a6153412/go.mod h1:WPjqKcmVOxf0XSf3YxCJs6N6AOSrOx3obionmG7T0y0= +github.com/ajstarks/deck v0.0.0-20200831202436-30c9fc6549a9/go.mod h1:JynElWSGnm/4RlzPXRlREEwqTHAN3T56Bv2ITsFT3gY= +github.com/ajstarks/deck/generate v0.0.0-20210309230005-c3f852c02e19/go.mod h1:T13YZdzov6OU0A1+RfKZiZN9ca6VeKdBdyDV+BY97Tk= github.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw= +github.com/ajstarks/svgo v0.0.0-20211024235047-1546f124cd8b/go.mod h1:1KcenG0jGWcpt8ov532z81sp/kMMUG485J2InIOyADM= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= -github.com/andybalholm/brotli v1.0.3/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= -github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239 h1:kFOfPq6dUM1hTo4JG6LR5AXSUEsOjtdm0kw0FtQtMJA= -github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c= +github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137/go.mod h1:OMCwj8VM1Kc9e19TLln2VL61YJF0x1XFtfdL4JdbSyE= +github.com/alexflint/go-filemutex v0.0.0-20171022225611-72bdc8eae2ae/go.mod h1:CgnQgUtFrFz9mxFNtED3jI5tLDjKlOM+oUF/sTk6ps0= +github.com/alexflint/go-filemutex v1.1.0/go.mod h1:7P4iRhttt/nUvUOrYIhcpMzv2G6CY9UnI16Z+UJqRyk= +github.com/andybalholm/brotli v1.0.4/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= +github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= +github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= -github.com/aokoli/goutils v1.0.1/go.mod h1:SijmP0QR8LtwsmDs8Yii5Z/S4trXFGFC2oO5g9DP+DQ= -github.com/apache/arrow/go/arrow v0.0.0-20211112161151-bc219186db40/go.mod h1:Q7yQnSMnLvcXlZ8RV+jwz/6y1rQTqbX6C82SndT52Zs= -github.com/apache/arrow/go/v7 v7.0.0/go.mod h1:vG2y+fH8mEUcX29tM6hOULGE06/XqEI8sG5fANM6T5w= +github.com/apache/arrow/go/v10 v10.0.1/go.mod h1:YvhnlEePVnBS4+0z3fhPfUy7W1Ikj0Ih0vcRo/gZ1M0= +github.com/apache/arrow/go/v11 v11.0.0/go.mod h1:Eg5OsL5H+e299f7u5ssuXsuHQVEGC4xei5aX110hRiI= github.com/apache/thrift v0.12.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ= github.com/apache/thrift v0.13.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ= -github.com/apache/thrift v0.15.0/go.mod h1:PHK3hniurgQaNMZYaCLEqXKsYK8upmhPbmdP2FXSqgU= +github.com/apache/thrift v0.16.0/go.mod h1:PHK3hniurgQaNMZYaCLEqXKsYK8upmhPbmdP2FXSqgU= github.com/apparentlymart/go-cidr v1.0.1/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/YjEn/vI25Lg7Gwc= github.com/apparentlymart/go-cidr v1.1.0 h1:2mAhrMoF+nhXqxTzSZMUzDHkLjmIHC+Zzn4tdgBZjnU= github.com/apparentlymart/go-cidr v1.1.0/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/YjEn/vI25Lg7Gwc= @@ -215,75 +789,112 @@ github.com/apparentlymart/go-dump v0.0.0-20190214190832-042adf3cf4a0 h1:MzVXffFU github.com/apparentlymart/go-dump v0.0.0-20190214190832-042adf3cf4a0/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM= github.com/apparentlymart/go-textseg v1.0.0/go.mod h1:z96Txxhf3xSFMPmb5X/1W05FF/Nj9VFpLOpjS5yuumk= github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec= -github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= +github.com/apparentlymart/go-textseg/v15 v15.0.0 h1:uYvfpb3DyLSCGWnctWKGj857c6ew1u1fNQOlOtuGxQY= +github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmmsvpAG721bKi0joRfFdHIWJ4= github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= -github.com/armon/go-metrics v0.3.0/go.mod h1:zXjbSimjXTd7vOpY8B0/2LpvNvDoXBuplAD+gJD3GYs= github.com/armon/go-metrics v0.3.3/go.mod h1:4O98XIr/9W0sxpJ8UaYkvjk10Iff7SnFrb4QAOwNTFc= +github.com/armon/go-metrics v0.3.9/go.mod h1:4O98XIr/9W0sxpJ8UaYkvjk10Iff7SnFrb4QAOwNTFc= +github.com/armon/go-metrics v0.4.0 h1:yCQqn7dwca4ITXb+CbubHmedzaQYHhNhrEXLYUeEe8Q= +github.com/armon/go-metrics v0.4.0/go.mod h1:E6amYzXo6aW1tqzoZGT755KkbgrJsSdpwZ+3JqfkOG4= github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI= github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/aryann/difflib v0.0.0-20170710044230-e206f873d14a/go.mod h1:DAHtR1m6lCRdSC2Tm3DSWRPvIPr6xNKyeHdqDQSQT+A= +github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= +github.com/asaskevich/govalidator v0.0.0-20200907205600-7a23bdc65eef/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= +github.com/asaskevich/govalidator v0.0.0-20210307081110-f21760c49a8d/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= +github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4= +github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn0Yu86PYI= github.com/aws/aws-lambda-go v1.13.3/go.mod h1:4UKl9IzQMoD+QF79YdCuzCwp8VbmG4VAQwij/eHl5CU= +github.com/aws/aws-sdk-go v1.15.11/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= github.com/aws/aws-sdk-go v1.15.27/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= github.com/aws/aws-sdk-go v1.15.78/go.mod h1:E3/ieXAlvM0XWO57iftYVDLLvQ824smPP3ATZkfNZeM= github.com/aws/aws-sdk-go v1.25.3/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.25.37/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.29.16/go.mod h1:1KvfttTE3SPKMpo8g2c6jL3ZKfXtFvKscTgahTma5Xg= -github.com/aws/aws-sdk-go v1.30.27/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= -github.com/aws/aws-sdk-go v1.37.0/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= -github.com/aws/aws-sdk-go v1.40.34 h1:SBYmodndE2d4AYucuuJnOXk4MD1SFbucoIdpwKVKeSA= -github.com/aws/aws-sdk-go v1.40.34/go.mod h1:585smgzpB/KqRA+K3y/NL/oYRqQvpNJYvLm+LY1U59Q= +github.com/aws/aws-sdk-go v1.38.35/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.43.11/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= +github.com/aws/aws-sdk-go v1.43.31/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= +github.com/aws/aws-sdk-go v1.44.45/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= +github.com/aws/aws-sdk-go v1.44.68/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= +github.com/aws/aws-sdk-go v1.44.122/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= +github.com/aws/aws-sdk-go v1.50.31 h1:gx2NRLLEDUmQFC4YUsfMUKkGCwpXVO8ijUecq/nOQGA= +github.com/aws/aws-sdk-go v1.50.31/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g= -github.com/aws/aws-sdk-go-v2 v1.9.0/go.mod h1:cK/D0BBs0b/oWPIcX/Z/obahJK1TT7IPVjy53i/mX/4= -github.com/aws/aws-sdk-go-v2 v1.11.0 h1:HxyD62DyNhCfiFGUHqJ/xITD6rAjJ7Dm/2nLxLmO4Ag= -github.com/aws/aws-sdk-go-v2 v1.11.0/go.mod h1:SQfA+m2ltnu1cA0soUkj4dRSsmITiVQUJvBIZjzfPyQ= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.0.0/go.mod h1:Xn6sxgRuIDflLRJFj5Ev7UxABIkNbccFPV/p8itDReM= -github.com/aws/aws-sdk-go-v2/config v1.7.0/go.mod h1:w9+nMZ7soXCe5nT46Ri354SNhXDQ6v+V5wqDjnZE+GY= -github.com/aws/aws-sdk-go-v2/config v1.10.1 h1:z/ViqIjW6ZeuLWgTWMTSyZzaVWo/1cWeVf1Uu+RF01E= -github.com/aws/aws-sdk-go-v2/config v1.10.1/go.mod h1:auIv5pIIn3jIBHNRcVQcsczn6Pfa6Dyv80Fai0ueoJU= -github.com/aws/aws-sdk-go-v2/credentials v1.4.0/go.mod h1:dgGR+Qq7Wjcd4AOAW5Rf5Tnv3+x7ed6kETXyS9WCuAY= -github.com/aws/aws-sdk-go-v2/credentials v1.6.1 h1:A39JYth2fFCx+omN/gib/jIppx3rRnt2r7UKPq7Mh5Y= -github.com/aws/aws-sdk-go-v2/credentials v1.6.1/go.mod h1:QyvQk1IYTqBWSi1T6UgT/W8DMxBVa5pVuLFSRLLhGf8= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.5.0/go.mod h1:CpNzHK9VEFUCknu50kkB8z58AH2B5DvPP7ea1LHve/Y= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.8.0 h1:OpZjuUy8Jt3CA1WgJgBC5Bz+uOjE5Ppx4NFTRaooUuA= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.8.0/go.mod h1:5E1J3/TTYy6z909QNR0QnXGBpfESYGDqd3O0zqONghU= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.7.1/go.mod h1:wN/mvkow08GauDwJ70jnzJ1e+hE+Q3Q7TwpYLXOe9oI= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.0 h1:zY8cNmbBXt3pzjgWgdIbzpQ6qxoCwt+Nx9JbrAf2mbY= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.0/go.mod h1:NO3Q5ZTTQtO2xIg2+xTXYDiT7knSejfeDm7WGDaOo0U= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.0.0 h1:Z3aR/OXBnkYK9zXkNkfitHX6SmUBzSsx8VMHbH4Lvhw= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.0.0/go.mod h1:anlUzBoEWglcUxUQwZA7HQOEVEnQALVZsizAapB2hq8= -github.com/aws/aws-sdk-go-v2/internal/ini v1.2.2/go.mod h1:BQV0agm+JEhqR+2RT5e1XTFIDcAAV0eW6z2trp+iduw= -github.com/aws/aws-sdk-go-v2/internal/ini v1.3.0 h1:c10Z7fWxtJCoyc8rv06jdh9xrKnu7bAJiRaKWvTb2mU= -github.com/aws/aws-sdk-go-v2/internal/ini v1.3.0/go.mod h1:6oXGy4GLpypD3uCh8wcqztigGgmhLToMfjavgh+VySg= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.5.0/go.mod h1:80NaCIH9YU3rzTTs/J/ECATjXuRqzo/wB6ukO6MZ0XY= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.3.0/go.mod h1:R1KK+vY8AfalhG1AOu5e35pOD2SdoPKQCFLTvnxiohk= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.5.0 h1:qGZWS/WgiFY+Zgad2u0gwBHpJxz6Ne401JE7iQI1nKs= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.5.0/go.mod h1:Mq6AEc+oEjCUlBuLiK5YwW4shSOAKCQ3tXN0sQeYoBA= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.9.0/go.mod h1:xKCZ4YFSF2s4Hnb/J0TLeOsKuGzICzcElaOKNGrVnx4= -github.com/aws/aws-sdk-go-v2/service/kms v1.5.0 h1:10e9mzaaYIIePEuxUzW5YJ8LKHNG/NX63evcvS3ux9U= -github.com/aws/aws-sdk-go-v2/service/kms v1.5.0/go.mod h1:w7JuP9Oq1IKMFQPkNe3V6s9rOssXzOVEMNEqK1L1bao= -github.com/aws/aws-sdk-go-v2/service/s3 v1.19.0/go.mod h1:Gwz3aVctJe6mUY9T//bcALArPUaFmNAy2rTB9qN4No8= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.6.0/go.mod h1:B+7C5UKdVq1ylkI/A6O8wcurFtaux0R1njePNPtKwoA= -github.com/aws/aws-sdk-go-v2/service/ssm v1.10.0/go.mod h1:4dXS5YNqI3SNbetQ7X7vfsMlX6ZnboJA2dulBwJx7+g= -github.com/aws/aws-sdk-go-v2/service/sso v1.4.0/go.mod h1:+1fpWnL96DL23aXPpMGbsmKe8jLTEfbjuQoA4WS1VaA= -github.com/aws/aws-sdk-go-v2/service/sso v1.6.0 h1:JDgKIUZOmLFu/Rv6zXLrVTWCmzA0jcTdvsT8iFIKrAI= -github.com/aws/aws-sdk-go-v2/service/sso v1.6.0/go.mod h1:Q/l0ON1annSU+mc0JybDy1Gy6dnJxIcWjphO6qJPzvM= -github.com/aws/aws-sdk-go-v2/service/sts v1.7.0/go.mod h1:0qcSMCyASQPN2sk/1KQLQ2Fh6yq8wm0HSDAimPhzCoM= -github.com/aws/aws-sdk-go-v2/service/sts v1.10.0 h1:1jh8J+JjYRp+QWKOsaZt7rGUgoyrqiiVwIm+w0ymeUw= -github.com/aws/aws-sdk-go-v2/service/sts v1.10.0/go.mod h1:jLKCFqS+1T4i7HDqCP9GM4Uk75YW1cS0o82LdxpMyOE= -github.com/aws/smithy-go v1.8.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E= -github.com/aws/smithy-go v1.9.0 h1:c7FUdEqrQA1/UVKKCNDFQPNKGp4FQg3YW4Ck5SLTG58= -github.com/aws/smithy-go v1.9.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E= -github.com/benbjohnson/clock v0.0.0-20161215174838-7dc76406b6d3/go.mod h1:UMqtWQTnOe4byzwe7Zhwh8f8s+36uszN51sJrSIZlTE= +github.com/aws/aws-sdk-go-v2 v1.16.8/go.mod h1:6CpKuLXg2w7If3ABZCl/qZ6rEgwtjZTn4eAf4RcEyuw= +github.com/aws/aws-sdk-go-v2 v1.24.0 h1:890+mqQ+hTpNuw0gGP6/4akolQkSToDJgHfQE7AwGuk= +github.com/aws/aws-sdk-go-v2 v1.24.0/go.mod h1:LNh45Br1YAkEKaAqvmE1m8FUx6a5b/V0oAKV7of29b4= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.3/go.mod h1:gNsR5CaXKmQSSzrmGxmwmct/r+ZBfbxorAuXYsj/M5Y= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.4 h1:OCs21ST2LrepDfD3lwlQiOqIGp6JiEUqG84GzTDoyJs= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.4/go.mod h1:usURWEKSNNAcAZuzRn/9ZYPT8aZQkR7xcCtunK/LkJo= +github.com/aws/aws-sdk-go-v2/config v1.15.15/go.mod h1:A1Lzyy/o21I5/s2FbyX5AevQfSVXpvvIDCoVFD0BC4E= +github.com/aws/aws-sdk-go-v2/config v1.26.1 h1:z6DqMxclFGL3Zfo+4Q0rLnAZ6yVkzCRxhRMsiRQnD1o= +github.com/aws/aws-sdk-go-v2/config v1.26.1/go.mod h1:ZB+CuKHRbb5v5F0oJtGdhFTelmrxd4iWO1lf0rQwSAg= +github.com/aws/aws-sdk-go-v2/credentials v1.12.10/go.mod h1:g5eIM5XRs/OzIIK81QMBl+dAuDyoLN0VYaLP+tBqEOk= +github.com/aws/aws-sdk-go-v2/credentials v1.16.12 h1:v/WgB8NxprNvr5inKIiVVrXPuuTegM+K8nncFkr1usU= +github.com/aws/aws-sdk-go-v2/credentials v1.16.12/go.mod h1:X21k0FjEJe+/pauud82HYiQbEr9jRKY3kXEIQ4hXeTQ= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.12.9/go.mod h1:KDCCm4ONIdHtUloDcFvK2+vshZvx4Zmj7UMDfusuz5s= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10 h1:w98BT5w+ao1/r5sUuiH6JkVzjowOKeOJRHERyy1vh58= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10/go.mod h1:K2WGI7vUvkIv1HoNbfBA1bvIZ+9kL3YVmWxeKuLQsiw= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.21/go.mod h1:iIYPrQ2rYfZiB/iADYlhj9HHZ9TTi6PqKQPAqygohbE= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.15.7 h1:FnLf60PtjXp8ZOzQfhJVsqF0OtYKQZWQfqOLshh8YXg= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.15.7/go.mod h1:tDVvl8hyU6E9B8TrnNrZQEVkQlB8hjJwcgpPhgtlnNg= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.15/go.mod h1:pWrr2OoHlT7M/Pd2y4HV3gJyPb3qj5qMmnPkKSNPYK4= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9 h1:v+HbZaCGmOwnTTVS86Fleq0vPzOd7tnJGbFhP0stNLs= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9/go.mod h1:Xjqy+Nyj7VDLBtCMkQYOw1QYfAEZCVLrfI0ezve8wd4= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.9/go.mod h1:08tUpeSGN33QKSO7fwxXczNfiwCpbj+GxK6XKwqWVv0= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9 h1:N94sVhRACtXyVcjXxrwK1SKFIJrA9pOJ5yu2eSHnmls= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9/go.mod h1:hqamLz7g1/4EJP+GH5NBhcUMLjW+gKLQabgyz6/7WAU= +github.com/aws/aws-sdk-go-v2/internal/ini v1.3.16/go.mod h1:CYmI+7x03jjJih8kBEEFKRQc40UjUokT0k7GbvrhhTc= +github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2 h1:GrSw8s0Gs/5zZ0SX+gX4zQjRnRsMJDJ2sLur1gRBhEM= +github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2/go.mod h1:6fQQgfuGmw8Al/3M2IgIllycxV7ZW7WCdVSqfBeUiCY= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.6/go.mod h1:O7Oc4peGZDEKlddivslfYFvAbgzvl/GH3J8j3JIGBXc= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.2.9 h1:ugD6qzjYtB7zM5PN/ZIeaAIyefPaD82G8+SJopgvUpw= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.2.9/go.mod h1:YD0aYBWCrPENpHolhKw2XDlTIWae2GKXT1T4o6N6hiM= +github.com/aws/aws-sdk-go-v2/service/iam v1.19.0 h1:9vCynoqC+dgxZKrsjvAniyIopsv3RZFsZ6wkQ+yxtj8= +github.com/aws/aws-sdk-go-v2/service/iam v1.19.0/go.mod h1:OyAuvpFeSVNppcSsp1hFOVQcaTRc1LE24YIR7pMbbAA= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.3/go.mod h1:gkb2qADY+OHaGLKNTYxMaQNacfeyQpZ4csDTQMeFmcw= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 h1:/b31bi3YVNlkzkBrm9LfpaKoaYZUxIAj4sHfOTmLfqw= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4/go.mod h1:2aGXHFmbInwgP9ZfpmdIfOELL79zhdNYNmReK8qDfdQ= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.10/go.mod h1:Qks+dxK3O+Z2deAhNo6cJ8ls1bam3tUGUAcgxQP1c70= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.9 h1:/90OR2XbSYfXucBMJ4U14wrjlfleq/0SB6dZDPncgmo= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.9/go.mod h1:dN/Of9/fNZet7UrQQ6kTDo/VSwKPIq94vjlU16bRARc= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.9/go.mod h1:yQowTpvdZkFVuHrLBXmczat4W+WJKg/PafBZnGBLga0= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9 h1:Nf2sHxjMJR8CSImIVCONRi4g0Su3J+TSTbS7G0pUeMU= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9/go.mod h1:idky4TER38YIjr2cADF1/ugFMKvZV7p//pVeV5LZbF0= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.13.9/go.mod h1:Rc5+wn2k8gFSi3V1Ch4mhxOzjMh+bYSXVFfVaqowQOY= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.9 h1:iEAeF6YC3l4FzlJPP9H3Ko1TXpdjdqWffxXjp8SY6uk= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.9/go.mod h1:kjsXoK23q9Z/tLBrckZLLyvjhZoS+AGrzqzUfEClvMM= +github.com/aws/aws-sdk-go-v2/service/kms v1.18.1/go.mod h1:4PZMUkc9rXHWGVB5J9vKaZy3D7Nai79ORworQ3ASMiM= +github.com/aws/aws-sdk-go-v2/service/kms v1.27.5 h1:7lKTr8zJ2nVaVgyII+7hUayTi7xWedMuANiNVXiD2S8= +github.com/aws/aws-sdk-go-v2/service/kms v1.27.5/go.mod h1:D9FVDkZjkZnnFHymJ3fPVz0zOUlNSd0xcIIVmmrAac8= +github.com/aws/aws-sdk-go-v2/service/s3 v1.27.2/go.mod h1:u+566cosFI+d+motIz3USXEh6sN8Nq4GrNXSg2RXVMo= +github.com/aws/aws-sdk-go-v2/service/s3 v1.47.5 h1:Keso8lIOS+IzI2MkPZyK6G0LYcK3My2LQ+T5bxghEAY= +github.com/aws/aws-sdk-go-v2/service/s3 v1.47.5/go.mod h1:vADO6Jn+Rq4nDtfwNjhgR84qkZwiC6FqCaXdw/kYwjA= +github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.15.14/go.mod h1:xakbH8KMsQQKqzX87uyyzTHshc/0/Df8bsTneTS5pFU= +github.com/aws/aws-sdk-go-v2/service/sns v1.17.10/go.mod h1:uITsRNVMeCB3MkWpXxXw0eDz8pW4TYLzj+eyQtbhSxM= +github.com/aws/aws-sdk-go-v2/service/sqs v1.19.1/go.mod h1:A94o564Gj+Yn+7QO1eLFeI7UVv3riy/YBFOfICVqFvU= +github.com/aws/aws-sdk-go-v2/service/ssm v1.27.6/go.mod h1:fiFzQgj4xNOg4/wqmAiPvzgDMXPD+cUEplX/CYn+0j0= +github.com/aws/aws-sdk-go-v2/service/sso v1.11.13/go.mod h1:d7ptRksDDgvXaUvxyHZ9SYh+iMDymm94JbVcgvSYSzU= +github.com/aws/aws-sdk-go-v2/service/sso v1.18.5 h1:ldSFWz9tEHAwHNmjx2Cvy1MjP5/L9kNoR0skc6wyOOM= +github.com/aws/aws-sdk-go-v2/service/sso v1.18.5/go.mod h1:CaFfXLYL376jgbP7VKC96uFcU8Rlavak0UlAwk1Dlhc= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5 h1:2k9KmFawS63euAkY4/ixVNsYYwrwnd5fIvgEKkfZFNM= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5/go.mod h1:W+nd4wWDVkSUIox9bacmkBP5NMFQeTJ/xqNabpzSR38= +github.com/aws/aws-sdk-go-v2/service/sts v1.16.10/go.mod h1:cftkHYN6tCDNfkSasAmclSfl4l7cySoay8vz7p/ce0E= +github.com/aws/aws-sdk-go-v2/service/sts v1.26.5 h1:5UYvv8JUvllZsRnfrcMQ+hJ9jNICmcgKPAO1CER25Wg= +github.com/aws/aws-sdk-go-v2/service/sts v1.26.5/go.mod h1:XX5gh4CB7wAs4KhcF46G6C8a2i7eupU19dcAAE+EydU= +github.com/aws/smithy-go v1.12.0/go.mod h1:Tg+OJXh4MB2R/uN61Ko2f6hTZwB/ZYGOtib8J3gBHzA= +github.com/aws/smithy-go v1.19.0 h1:KWFKQV80DpP3vJrrA9sVAHQ5gc2z8i4EzrLhLlWXcBM= +github.com/aws/smithy-go v1.19.0/go.mod h1:NukqUGpCZIILqqiV0NIjeFh24kd/FAa4beRb6nbIUPE= +github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= +github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8= +github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= -github.com/benbjohnson/immutable v0.3.0/go.mod h1:uc6OHo6PN2++n98KHLxW8ef4W42ylHiQSENghE1ezxI= -github.com/benbjohnson/tmpl v1.0.0/go.mod h1:igT620JFIi44B6awvU9IsDhR77IXWtFigTLil/RPdps= +github.com/beorn7/perks v0.0.0-20160804104726-4c0e84591b9a/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= @@ -291,112 +902,280 @@ github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d h1:xDfNPAt8lFiC1U github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d/go.mod h1:6QX/PXZ00z/TKoufEY6K/a0k6AhaJrQKdFe6OfVXsa4= github.com/bgentry/speakeasy v0.1.0 h1:ByYyxL9InA1OWqxJqqp2A5pYHUrCiAL6K3J+LKSsQkY= github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bitly/go-simplejson v0.5.0/go.mod h1:cXHtHw4XUPsvGaxgjIAn8PhEWG9NfngEKAMDJEczWVA= +github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA= +github.com/bketelsen/crypt v0.0.3-0.20200106085610-5cbc8cc4026c/go.mod h1:MKsuJmJgSg28kpZDP6UIiPt0e0Oz0kqKNGyRaWEPv84= +github.com/blang/semver v3.1.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ= github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= -github.com/bonitoo-io/go-sql-bigquery v0.3.4-1.4.0/go.mod h1:J4Y6YJm0qTWB9aFziB7cPeSyc6dOZFyJdteSeybVpXQ= +github.com/bmatcuk/doublestar/v4 v4.6.1 h1:FH9SifrbvJhnlQpztAx++wlkk70QBf0iBWDwNy7PA4I= +github.com/bmatcuk/doublestar/v4 v4.6.1/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTSPVIjEY1Wr7jzc= +github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= github.com/boombuler/barcode v1.0.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= -github.com/buger/jsonparser v0.0.0-20191004114745-ee4c978eae7e/go.mod h1:errmMKH8tTB49UR2A8C8DPYkyudelsYJwJFaZHQ6ik8= -github.com/c-bata/go-prompt v0.2.2/go.mod h1:VzqtzE2ksDBcdln8G7mk2RX9QyGjH+OVqOCSiVIqS34= -github.com/cactus/go-statsd-client/statsd v0.0.0-20191106001114-12b4e2b38748/go.mod h1:l/bIBLeOl9eX+wxJAzxS4TveKRtAqlyDpHjhkfO0MEI= +github.com/boombuler/barcode v1.0.1/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= +github.com/bshuster-repo/logrus-logstash-hook v0.4.1/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= +github.com/bufbuild/protocompile v0.4.0 h1:LbFKd2XowZvQ/kajzguUp2DC9UEIQhIq77fZZlaQsNA= +github.com/bufbuild/protocompile v0.4.0/go.mod h1:3v93+mbWn/v3xzN+31nwkJfrEpAUwp+BagBSZWx+TP8= +github.com/buger/jsonparser v0.0.0-20180808090653-f4dd9f5a6b44/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= +github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0= +github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= +github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= +github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= +github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= github.com/casbin/casbin/v2 v2.1.2/go.mod h1:YcPU1XXisHhLzuxH9coDNf2FbKpjGlbCg3n9yuLkIJQ= github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM= github.com/cenkalti/backoff/v3 v3.0.0/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs= github.com/cenkalti/backoff/v3 v3.2.2 h1:cfUAAO3yvKMYKPrvhDuHSwQnhZNk/RMHKdZqKTxfm6M= github.com/cenkalti/backoff/v3 v3.2.2/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs= +github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= +github.com/cenkalti/backoff/v4 v4.1.2/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= +github.com/cenkalti/backoff/v4 v4.1.3/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/census-instrumentation/opencensus-proto v0.3.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/census-instrumentation/opencensus-proto v0.4.1/go.mod h1:4T9NM4+4Vw91VeyqjLS6ao50K5bOcLKN6Q42XnYaRYw= +github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= +github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/charmbracelet/bubbles v0.16.1 h1:6uzpAAaT9ZqKssntbvZMlksWHruQLNxg49H5WdeuYSY= +github.com/charmbracelet/bubbles v0.16.1/go.mod h1:2QCp9LFlEsBQMvIYERr7Ww2H2bA7xen1idUDIzm/+Xc= +github.com/charmbracelet/bubbletea v0.24.2 h1:uaQIKx9Ai6Gdh5zpTbGiWpytMU+CfsPp06RaW2cx/SY= +github.com/charmbracelet/bubbletea v0.24.2/go.mod h1:XdrNrV4J8GiyshTtx3DNuYkR1FDaJmO3l2nejekbsgg= +github.com/charmbracelet/lipgloss v0.7.1 h1:17WMwi7N1b1rVWOjMT+rCh7sQkvDU75B2hbZpc5Kc1E= +github.com/charmbracelet/lipgloss v0.7.1/go.mod h1:yG0k3giv8Qj8edTCbbg6AlQ5e8KNWpFujkNawKNhE2c= +github.com/checkpoint-restore/go-criu/v4 v4.1.0/go.mod h1:xUQBLp4RLc5zJtWY++yjOoMoB5lihDt7fai+75m+rGw= +github.com/checkpoint-restore/go-criu/v5 v5.0.0/go.mod h1:cfwC0EG7HMUenopBsUf9d89JlCLQIfgVcNsNN0t6T2M= +github.com/checkpoint-restore/go-criu/v5 v5.3.0/go.mod h1:E/eQpaFtUKGOOSEBZgmKAcn+zUUwWxqcaKZlF54wK8E= github.com/cheggaaa/pb v1.0.27/go.mod h1:pQciLPpbU0oxA0h+VJYYLxO+XeDQb5pZijXscXHm81s= github.com/cheggaaa/pb v1.0.29 h1:FckUN5ngEk2LpvuG0fw1GEFx6LtyY2pWI/Z2QgCnEYo= github.com/cheggaaa/pb v1.0.29/go.mod h1:W40334L7FMC5JKWldsTWbdGjLo0RxUKK73K+TuPxX30= github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= +github.com/chzyer/logex v1.2.0/go.mod h1:9+9sk7u7pGNWYMkh0hdiL++6OeibzJccyQU4p4MedaY= github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= +github.com/chzyer/readline v1.5.0/go.mod h1:x22KAscuvRqlLoK9CsoYsmxoXZMMFVyOl86cAH8qUic= github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/chzyer/test v0.0.0-20210722231415-061457976a23/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/cilium/ebpf v0.0.0-20200110133405-4032b1d8aae3/go.mod h1:MA5e5Lr8slmEg9bt0VpxxWqJlO4iwu3FBdHUzV7wQVg= +github.com/cilium/ebpf v0.0.0-20200702112145-1c8d4c9ef775/go.mod h1:7cR51M8ViRLIdUjrmSXlK9pkrsDlLHbO8jiB8X8JnOc= +github.com/cilium/ebpf v0.2.0/go.mod h1:To2CFviqOWL/M0gIMsvSMlqe7em/l1ALkX1PyjrX2Qs= +github.com/cilium/ebpf v0.4.0/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= +github.com/cilium/ebpf v0.6.2/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= +github.com/cilium/ebpf v0.7.0/go.mod h1:/oI2+1shJiTGAMgl6/RgJr36Eo1jzrRcAWbcXO2usCA= github.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag= github.com/circonus-labs/circonusllhist v0.1.3/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I= github.com/clbanning/x2j v0.0.0-20191024224557-825249438eec/go.mod h1:jMjuTZXRI4dUb/I5gc9Hdhagfvm9+RyrPryS/auMzxE= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= +github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= +github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= +github.com/cncf/udpa/go v0.0.0-20220112060539-c52dc94e7fbe/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20220314180256-7f1daf1720fc/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20230105202645-06c439db220b/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20230607035331-e9ce68804cb4/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ= github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= +github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo= +github.com/cockroachdb/errors v1.2.4/go.mod h1:rQD95gz6FARkaKkQXUksEje/d9a6wBJoCr5oaCLELYA= +github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u985jwjWRlyHXQbwatDASoW0RMlZ/3i9yJHE2xLkI= github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI= +github.com/containerd/aufs v0.0.0-20200908144142-dab0cbea06f4/go.mod h1:nukgQABAEopAHvB6j7cnP5zJ+/3aVcE7hCYqvIwAHyE= +github.com/containerd/aufs v0.0.0-20201003224125-76a6863f2989/go.mod h1:AkGGQs9NM2vtYHaUen+NljV0/baGCAPELGm2q9ZXpWU= +github.com/containerd/aufs v0.0.0-20210316121734-20793ff83c97/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= +github.com/containerd/aufs v1.0.0/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= +github.com/containerd/btrfs v0.0.0-20201111183144-404b9149801e/go.mod h1:jg2QkJcsabfHugurUvvPhS3E08Oxiuh5W/g1ybB4e0E= +github.com/containerd/btrfs v0.0.0-20210316141732-918d888fb676/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= +github.com/containerd/btrfs v1.0.0/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= +github.com/containerd/cgroups v0.0.0-20190717030353-c4b9ac5c7601/go.mod h1:X9rLEHIqSf/wfK8NsPqxJmeZgW4pcfzdXITDrUSJ6uI= github.com/containerd/cgroups v0.0.0-20190919134610-bf292b21730f/go.mod h1:OApqhQ4XNSNC13gXIwDjhOQxjWa/NxkwZXJ1EvqT0ko= +github.com/containerd/cgroups v0.0.0-20200531161412-0dbf7f05ba59/go.mod h1:pA0z1pT8KYB3TCXK/ocprsh7MAkoW8bZVzPdih9snmM= +github.com/containerd/cgroups v0.0.0-20200710171044-318312a37340/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= +github.com/containerd/cgroups v0.0.0-20200824123100-0b889c03f102/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= +github.com/containerd/cgroups v0.0.0-20210114181951-8a68de567b68/go.mod h1:ZJeTFisyysqgcCdecO57Dj79RfL0LNeGiFUqLYQRYLE= +github.com/containerd/cgroups v1.0.1/go.mod h1:0SJrPIenamHDcZhEcJMNBB85rHcUsw4f25ZfBiPYRkU= +github.com/containerd/cgroups v1.0.3/go.mod h1:/ofk34relqNjSGyqPrmEULrO4Sc8LJhvJmWbUCUKqj8= github.com/containerd/console v0.0.0-20180822173158-c12b1e7919c1/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= +github.com/containerd/console v0.0.0-20181022165439-0650fd9eeb50/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= +github.com/containerd/console v0.0.0-20191206165004-02ecf6a7291e/go.mod h1:8Pf4gM6VEbTNRIT26AyyU7hxdQU3MvAvxVI0sc00XBE= +github.com/containerd/console v1.0.1/go.mod h1:XUsP6YE/mKtz6bxc+I8UiKKTP04qjQL4qcS3XoQ5xkw= +github.com/containerd/console v1.0.2/go.mod h1:ytZPjGgY2oeTkAONYafi2kSj0aYggsf8acV1PGKCbzQ= +github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U= +github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 h1:q2hJAaP1k2wIvVRd/hEHD7lacgqrCPS+k8g1MndzfWY= +github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk= +github.com/containerd/containerd v1.2.10/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.0-beta.2.0.20190828155532-0293cbd26c69/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.0/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= github.com/containerd/containerd v1.3.2/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.3.4/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.0-beta.2.0.20200729163537-40b22ef07410/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.1/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.3/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.9/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.5.0-beta.1/go.mod h1:5HfvG1V2FsKesEGQ17k5/T7V960Tmcumvqn8Mc+pCYQ= +github.com/containerd/containerd v1.5.0-beta.3/go.mod h1:/wr9AVtEM7x9c+n0+stptlo/uBBoBORwEx6ardVcmKU= +github.com/containerd/containerd v1.5.0-beta.4/go.mod h1:GmdgZd2zA2GYIBZ0w09ZvgqEq8EfBp/m3lcVZIvPHhI= +github.com/containerd/containerd v1.5.0-rc.0/go.mod h1:V/IXoMqNGgBlabz3tHD2TWDoTJseu1FGOKuoA4nNb2s= +github.com/containerd/containerd v1.5.1/go.mod h1:0DOxVqwDy2iZvrZp2JUx/E+hS0UNTVn7dJnIOwtYR4g= +github.com/containerd/containerd v1.5.7/go.mod h1:gyvv6+ugqY25TiXxcZC3L5yOeYgEw0QMhscqVp1AR9c= +github.com/containerd/containerd v1.5.8/go.mod h1:YdFSv5bTFLpG2HIYmfqDpSYYTDX+mc5qtSuYx1YUb/s= +github.com/containerd/containerd v1.6.1/go.mod h1:1nJz5xCZPusx6jJU8Frfct988y0NpumIq9ODB0kLtoE= github.com/containerd/continuity v0.0.0-20190426062206-aaeac12a7ffc/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= -github.com/containerd/continuity v0.0.0-20200709052629-daa8e1ccc0bc/go.mod h1:cECdGN1O8G9bgKTlLhuPJimka6Xb/Gg7vYzCTNVxhvo= +github.com/containerd/continuity v0.0.0-20190815185530-f2a389ac0a02/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20191127005431-f65d91d395eb/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20200710164510-efbc4488d8fe/go.mod h1:cECdGN1O8G9bgKTlLhuPJimka6Xb/Gg7vYzCTNVxhvo= +github.com/containerd/continuity v0.0.0-20201208142359-180525291bb7/go.mod h1:kR3BEg7bDFaEddKm54WSmrol1fKWDU1nKYkgrcgZT7Y= +github.com/containerd/continuity v0.0.0-20210208174643-50096c924a4e/go.mod h1:EXlVlkqNba9rJe3j7w3Xa924itAMLgZH4UD/Q4PExuQ= +github.com/containerd/continuity v0.1.0/go.mod h1:ICJu0PwR54nI0yPEnJ6jcS+J7CZAUXrLh8lPo2knzsM= +github.com/containerd/continuity v0.2.2/go.mod h1:pWygW9u7LtS1o4N/Tn0FoCFDIXZ7rxcMX7HX1Dmibvk= +github.com/containerd/fifo v0.0.0-20180307165137-3d5202aec260/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= github.com/containerd/fifo v0.0.0-20190226154929-a9fb20d87448/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= +github.com/containerd/fifo v0.0.0-20200410184934-f15a3290365b/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= +github.com/containerd/fifo v0.0.0-20201026212402-0724c46b320c/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= +github.com/containerd/fifo v0.0.0-20210316144830-115abcc95a1d/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= +github.com/containerd/fifo v1.0.0/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= +github.com/containerd/go-cni v1.0.1/go.mod h1:+vUpYxKvAF72G9i1WoDOiPGRtQpqsNW/ZHtSlv++smU= +github.com/containerd/go-cni v1.0.2/go.mod h1:nrNABBHzu0ZwCug9Ije8hL2xBCYh/pjfMb1aZGrrohk= +github.com/containerd/go-cni v1.1.0/go.mod h1:Rflh2EJ/++BA2/vY5ao3K6WJRR/bZKsX123aPk+kUtA= +github.com/containerd/go-cni v1.1.3/go.mod h1:Rflh2EJ/++BA2/vY5ao3K6WJRR/bZKsX123aPk+kUtA= github.com/containerd/go-runc v0.0.0-20180907222934-5a6d9f37cfa3/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= +github.com/containerd/go-runc v0.0.0-20190911050354-e029b79d8cda/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= +github.com/containerd/go-runc v0.0.0-20200220073739-7016d3ce2328/go.mod h1:PpyHrqVs8FTi9vpyHwPwiNEGaACDxT/N/pLcvMSRA9g= +github.com/containerd/go-runc v0.0.0-20201020171139-16b287bc67d0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= +github.com/containerd/go-runc v1.0.0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= +github.com/containerd/imgcrypt v1.0.1/go.mod h1:mdd8cEPW7TPgNG4FpuP3sGBiQ7Yi/zak9TYCG3juvb0= +github.com/containerd/imgcrypt v1.0.4-0.20210301171431-0ae5c75f59ba/go.mod h1:6TNsg0ctmizkrOgXRNQjAPFWpMYRWuiB6dSF4Pfa5SA= +github.com/containerd/imgcrypt v1.1.1-0.20210312161619-7ed62a527887/go.mod h1:5AZJNI6sLHJljKuI9IHnw1pWqo/F0nGDOuR9zgTs7ow= +github.com/containerd/imgcrypt v1.1.1/go.mod h1:xpLnwiQmEUJPvQoAapeb2SNCxz7Xr6PJrXQb0Dpc4ms= +github.com/containerd/imgcrypt v1.1.3/go.mod h1:/TPA1GIDXMzbj01yd8pIbQiLdQxed5ue1wb8bP7PQu4= +github.com/containerd/nri v0.0.0-20201007170849-eb1350a75164/go.mod h1:+2wGSDGFYfE5+So4M5syatU0N0f0LbWpuqyMi4/BE8c= +github.com/containerd/nri v0.0.0-20210316161719-dbaa18c31c14/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= +github.com/containerd/nri v0.1.0/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= +github.com/containerd/stargz-snapshotter/estargz v0.4.1/go.mod h1:x7Q9dg9QYb4+ELgxmo4gBUeJB0tl5dqH1Sdz0nJU1QM= github.com/containerd/ttrpc v0.0.0-20190828154514-0e0f228740de/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= +github.com/containerd/ttrpc v0.0.0-20190828172938-92c8520ef9f8/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= +github.com/containerd/ttrpc v0.0.0-20191028202541-4f1b8fe65a5c/go.mod h1:LPm1u0xBw8r8NOKoOdNMeVHSawSsltak+Ihv+etqsE8= +github.com/containerd/ttrpc v1.0.1/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v1.0.2/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v1.1.0/go.mod h1:XX4ZTnoOId4HklF4edwc4DcqskFZuvXB1Evzy5KFQpQ= github.com/containerd/typeurl v0.0.0-20180627222232-a93fcdb778cd/go.mod h1:Cm3kwCdlkCfMSHURc+r6fwoGH6/F1hH3S4sg0rLFWPc= +github.com/containerd/typeurl v0.0.0-20190911142611-5eb25027c9fd/go.mod h1:GeKYzf2pQcqv7tJ0AoCuuhtnqhva5LNU3U+OyKxxJpk= +github.com/containerd/typeurl v1.0.1/go.mod h1:TB1hUtrpaiO88KEK56ijojHS1+NeF0izUACaJW2mdXg= +github.com/containerd/typeurl v1.0.2/go.mod h1:9trJWW2sRlGub4wZJRTW83VtbOLS6hwcDZXTn6oPz9s= +github.com/containerd/zfs v0.0.0-20200918131355-0a33824f23a2/go.mod h1:8IgZOBdv8fAgXddBT4dBXJPtxyRsejFIpXoklgxgEjw= +github.com/containerd/zfs v0.0.0-20210301145711-11e8f1707f62/go.mod h1:A9zfAbMlQwE+/is6hi0Xw8ktpL+6glmqZYtevJgaB8Y= +github.com/containerd/zfs v0.0.0-20210315114300-dde8f0fda960/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containerd/zfs v0.0.0-20210324211415-d5c4544f0433/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containerd/zfs v1.0.0/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containernetworking/cni v0.7.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v0.8.0/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v0.8.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v1.0.1/go.mod h1:AKuhXbN5EzmD4yTNtfSsX3tPcmtrBI6QcRV0NiNt15Y= +github.com/containernetworking/plugins v0.8.6/go.mod h1:qnw5mN19D8fIwkqW7oHHYDHVlzhJpcY6TQxn/fUyDDM= +github.com/containernetworking/plugins v0.9.1/go.mod h1:xP/idU2ldlzN6m4p5LmGiwRDjeJr6FLK6vuiUwoH7P8= +github.com/containernetworking/plugins v1.0.1/go.mod h1:QHCfGpaTwYTbbH+nZXKVTxNBDZcxSOplJT5ico8/FLE= +github.com/containers/ocicrypt v1.0.1/go.mod h1:MeJDzk1RJHv89LjsH0Sp5KTY3ZYkjXO/C+bKAeWFIrc= +github.com/containers/ocicrypt v1.1.0/go.mod h1:b8AOe0YR67uU8OqfVNcznfFpAzu3rdgUV4GP9qXPfu4= +github.com/containers/ocicrypt v1.1.1/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= +github.com/containers/ocicrypt v1.1.2/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/go-iptables v0.4.5/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= +github.com/coreos/go-iptables v0.5.0/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= +github.com/coreos/go-iptables v0.6.0/go.mod h1:Qe8Bv2Xik5FyTXwgIbLAnv2sWSBmvWdFETJConOQ//Q= +github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd v0.0.0-20161114122254-48702e0da86b/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd/v22 v22.0.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/creack/pty v1.1.11 h1:07n33Z8lZxZ2qwegKbObQohDhXDQxiMMz1NOUGYlesw= github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/cyberdelia/templates v0.0.0-20141128023046-ca7fffd4298c/go.mod h1:GyV+0YP4qX0UQ7r2MoYZ+AvYDp12OF5yg4q8rGnyNh4= -github.com/daixiang0/gci v0.2.8/go.mod h1:+4dZ7TISfSmqfAGv59ePaHfNzgGtIkHAhhdKggP1JAc= -github.com/dave/jennifer v1.2.0/go.mod h1:fIb+770HOpJ2fmN9EPPKOqm1vMGhB+TwXKMZhrIygKg= +github.com/cyphar/filepath-securejoin v0.2.2/go.mod h1:FpkQEhXnPnOthhzymB7CGsFk2G9VLXONKD9G7QGMM+4= +github.com/cyphar/filepath-securejoin v0.2.3/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= +github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/d2g/dhcp4 v0.0.0-20170904100407-a1d1b6c41b1c/go.mod h1:Ct2BUK8SB0YC1SMSibvLzxjeJLnrYEVLULFNiHY9YfQ= +github.com/d2g/dhcp4client v1.0.0/go.mod h1:j0hNfjhrt2SxUOw55nL0ATM/z4Yt3t2Kd1mW34z5W5s= +github.com/d2g/dhcp4server v0.0.0-20181031114812-7d4a0a7f59a5/go.mod h1:Eo87+Kg/IX2hfWJfwxMzLyuSZyxSoAug2nGa1G2QAi8= +github.com/d2g/hardwareaddr v0.0.0-20190221164911-e7d9fbe030e4/go.mod h1:bMl4RjIciD2oAxI7DmWRx6gbeqrkoLqv3MV0vzNad+I= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn47hh8kt6rqSlvmrXFAc= -github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.0-20210816181553-5444fa50b93d/go.mod h1:tmAIfUFEirG/Y8jhZ9M+h36obRZAk/1fcSpXwAVlfqE= -github.com/deepmap/oapi-codegen v1.6.0/go.mod h1:ryDa9AgbELGeB+YEXE1dR53yAjHwFvE9iAUlWl9Al3M= -github.com/denisenkom/go-mssqldb v0.9.0/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU= -github.com/denisenkom/go-mssqldb v0.10.0/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU= +github.com/deckarep/golang-set/v2 v2.5.0 h1:hn6cEZtQ0h3J8kFrHR/NrzyOoTnjgW1+FmNJzQ7y/sA= +github.com/deckarep/golang-set/v2 v2.5.0/go.mod h1:VAky9rY/yGXJOLEDv3OMci+7wtDpOF4IN+y82NBOac4= +github.com/denisenkom/go-mssqldb v0.12.2/go.mod h1:lnIw1mZukFRZDJYQ0Pb833QS2IaC3l5HkEfra2LJ+sk= +github.com/dennwc/varint v1.0.0/go.mod h1:hnItb35rvZvJrbTALZtY/iQfDs48JKRG1RPpgziApxA= +github.com/denverdino/aliyungo v0.0.0-20190125010748-a747050bb1ba/go.mod h1:dV8lFg6daOBZbT6/BDGIz6Y3WFGn8juu6G+CQ6LHtl0= github.com/devigned/tab v0.1.1/go.mod h1:XG9mPq0dFghrYvoBF3xdRrJzSTX1b7IQrvaL9mzjeJY= +github.com/dgrijalva/jwt-go v0.0.0-20170104182250-a601269ab70c/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= -github.com/dgryski/go-bitstream v0.0.0-20180413035011-3522498ce2c8/go.mod h1:VMaSuZ+SZcx/wljOQKvp5srsbCiKDEb6K2wC4+PiBmQ= github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= -github.com/dimchansky/utfbom v1.1.0/go.mod h1:rO41eb7gLfo8SF1jd9F8HplJm1Fewwi4mQvIirEdv+8= -github.com/dimchansky/utfbom v1.1.1 h1:vV6w1AhK4VMnhBno/TPVCoK9U/LP0PkLCS9tbxHdi/U= +github.com/dgryski/go-sip13 v0.0.0-20200911182023-62edffca9245/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= +github.com/digitalocean/godo v1.78.0/go.mod h1:GBmu8MkjZmNARE7IXRPmkbbnocNN8+uBm0xbEVw2LCs= +github.com/digitalocean/godo v1.81.0/go.mod h1:BPCqvwbjbGqxuUnIKB4EvS/AX7IDnNmt5fwvIkWo+ew= github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE= github.com/djherbis/times v1.5.0 h1:79myA211VwPhFTqUk8xehWrsEO+zcIZj0zT8mXPVARU= github.com/djherbis/times v1.5.0/go.mod h1:5q7FDLvbNg1L/KaBmPcWlVR9NmoKo3+ucqUA3ijQhA0= -github.com/docker/distribution v2.7.0+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/dnaeon/go-vcr v1.0.1/go.mod h1:aBB1+wY4s93YsC3HHjMBMrwTj2R9FHDzUr9KyGc8n1E= +github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko= +github.com/dnaeon/go-vcr v1.2.0 h1:zHCHvJYTMh1N7xnV7zf1m1GPBF9Ad0Jk/whtQ1663qI= +github.com/dnaeon/go-vcr v1.2.0/go.mod h1:R4UdLID7HZT3taECzJs4YgbbH6PIGXB6W/sc5OLb6RQ= +github.com/docker/cli v0.0.0-20191017083524-a8ff7f821017/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/distribution v0.0.0-20190905152932-14b96e55d84c/go.mod h1:0+TTO4EOBfRPhZXAeF1Vu+W3hHZ8eLp8PgKVZlcvtFY= +github.com/docker/distribution v2.7.1-0.20190205005809-0d3efadf0154+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/docker v0.7.3-0.20180815000130-e05b657120a6/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -github.com/docker/docker v1.4.2-0.20200319182547-c7ad2b866182/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -github.com/docker/docker v1.13.1/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v20.10.14+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v20.10.17+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker-credential-helpers v0.6.3/go.mod h1:WRaJzqw3CTB9bk10avuGsjVBZsD05qeibJ1/TYlvc0Y= github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= +github.com/docker/go-events v0.0.0-20170721190031-9461782956ad/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= +github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= +github.com/docker/go-metrics v0.0.0-20180209012529-399ea8c73916/go.mod h1:/u0gXw0Gay3ceNrsHubL3BtdOL2fHf93USgMTe0W5dI= +github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= +github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= -github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/eapache/go-resiliency v1.1.0/go.mod h1:kFI+JgMyC7bLPUVY133qvEBtVayf5mFgVsvEsIPBvNs= github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1:+020luEh2TKB4/GOp8oxxtq0Daoen/Cii55CzbTV6DU= github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I= -github.com/eclipse/paho.mqtt.golang v1.2.0/go.mod h1:H9keYFcgq3Qr5OUJm/JZI/i6U7joQ8SYLhZwfeOo6Ts= -github.com/editorconfig-checker/editorconfig-checker v0.0.0-20190819115812-1474bdeaf2a2/go.mod h1:nnr6DXFepwb2+GC7evku5Mak3wGGRShiYy6fPkdIwVM= -github.com/editorconfig/editorconfig-core-go/v2 v2.1.1/go.mod h1:/LuhWJiQ9Gvo1DhVpa4ssm5qeg8rrztdtI7j/iCie2k= github.com/edsrzf/mmap-go v1.0.0/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M= github.com/edsrzf/mmap-go v1.1.0 h1:6EUwBLQ/Mcr1EYLE4Tn1VdW1A4ckqCQWZBw8Hr0kjpQ= github.com/edsrzf/mmap-go v1.1.0/go.mod h1:19H/e8pUPLicwkyNgOykDXkJ9F0MHE+Z52B8EIth78Q= -github.com/elazarl/go-bindata-assetfs v1.0.0/go.mod h1:v+YaWX3bdea5J/mo8dSETolEo7R71Vk1u8bnjau5yw4= -github.com/emirpasic/gods v1.12.0 h1:QAUIPSaCu4G+POclxeqb3F+WPpdKqFGlw36+yOzGlrg= -github.com/emirpasic/gods v1.12.0/go.mod h1:YfzfFFoVP/catgzJb4IKIqXjX78Ha8FMSDh3ymbK86o= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/elazarl/goproxy v0.0.0-20221015165544-a0805db90819/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= +github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= +github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= +github.com/elazarl/goproxy/ext v0.0.0-20190711103511-473e67f1d7d2/go.mod h1:gNh8nYJoAm43RfaxurUnxr+N1PwuFV3ZMl/efxlIlY8= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= +github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= github.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= @@ -406,56 +1185,80 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.m github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= +github.com/envoyproxy/go-control-plane v0.10.1/go.mod h1:AY7fTTXNdv/aJ2O5jwpxAPOWUZ7hQAEvzN5Pf27BkQQ= github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE= +github.com/envoyproxy/go-control-plane v0.10.3/go.mod h1:fJJn/j26vwOu972OllsvAgJJM//w9BV6Fxbg2LuVd34= +github.com/envoyproxy/go-control-plane v0.11.1-0.20230524094728-9239064ad72f/go.mod h1:sfYdkwUW4BA3PbKjySwjJy+O4Pu0h62rlqCMHNk+K+Q= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/envoyproxy/protoc-gen-validate v0.6.7/go.mod h1:dyJXwwfPK2VSqiB9Klm1J6romD608Ba7Hij42vrOBCo= +github.com/envoyproxy/protoc-gen-validate v0.9.1/go.mod h1:OKNgG7TCp5pF4d6XftA0++PMirau2/yoOwVac3AbF2w= +github.com/envoyproxy/protoc-gen-validate v0.10.1/go.mod h1:DRjgyB0I43LtJapqN6NiRwroiAU2PaFuvk/vjgh61ss= github.com/ettle/strcase v0.1.1 h1:htFueZyVeE1XNnMEfbqp5r67qAN/4r6ya1ysq8Q+Zcw= github.com/ettle/strcase v0.1.1/go.mod h1:hzDLsPC7/lwKyBOywSHEP89nt2pDgdy+No1NBA9o9VY= +github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.11.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.12.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch/v5 v5.5.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= -github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= +github.com/fatih/color v1.10.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= +github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= +github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= +github.com/fatih/structs v1.1.0 h1:Q7juDM0QtcnhCpeyLGQKyg4TOIghuNXrkL32pHAUMxo= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= -github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc= +github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/felixge/httpsnoop v1.0.2/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/felixge/httpsnoop v1.0.3/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= -github.com/form3tech-oss/jwt-go v3.2.5+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g= -github.com/foxcpp/go-mockdns v0.0.0-20201212160233-ede2f9158d15/go.mod h1:tPg4cp4nseejPd+UKxtCVQ2hUxNTZ7qQZJa7CLriIeo= github.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db/go.mod h1:7dvUGVsVBjqR7JHJk0brhHOZYGmfBYOrK0ZhYMEtBr4= github.com/franela/goreq v0.0.0-20171204163338-bcd34c9993f8/go.mod h1:ZhphrRTfi2rbfLwlschooIH4+wKKDR4Pdxhh+TRoA20= github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y= +github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k= +github.com/frankban/quicktest v1.13.0/go.mod h1:qLE0fzW0VuyUAJgPU19zByoIr0HtCHN/r/VLSOOIySU= github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE= +github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU= -github.com/fujiwara/shapeio v1.0.0/go.mod h1:LmEmu6L/8jetyj1oewewFb7bZCNRwE7wLCUNzDLaLVA= -github.com/gabriel-vasile/mimetype v1.4.0/go.mod h1:fA8fi6KUiG7MgQQ+mEWotXoEOvmxRtOJlERCzSmRvr8= +github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmVXmkdnm1bU= +github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa/go.mod h1:KnogPXtdwXqoenmZCw6S+25EAm2MkxbG0deNDu4cbSA= +github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0= +github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk= +github.com/garyburd/redigo v0.0.0-20150301180006-535138d7bcd7/go.mod h1:NR3MbYisc3/PwhQ00EMzDiPmrwpPxAn5GI05/YaO1SY= github.com/gedex/inflector v0.0.0-20170307190818-16278e9db813 h1:Uc+IZ7gYqAf/rSGFplbWBSHaGolEQlNLgMgSE3ccnIQ= github.com/gedex/inflector v0.0.0-20170307190818-16278e9db813/go.mod h1:P+oSoE9yhSRvsmYyZsshflcR6ePWYLql6UU1amW13IM= -github.com/getkin/kin-openapi v0.53.0/go.mod h1:7Yn5whZr5kJi6t+kShccXS8ae1APpYTW6yheSwk8Yi4= +github.com/getkin/kin-openapi v0.76.0/go.mod h1:660oXbgy5JFMKreazJaQTw7o+X00qeSyhcnluiMv+Xg= +github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ= +github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= github.com/gin-gonic/gin v1.6.3/go.mod h1:75u5sXoLsGZoRN5Sgbi1eraJ4GU3++wFwWzhwvtwp4M= -github.com/gliderlabs/ssh v0.2.2 h1:6zsha5zo/TWhRhwqCD3+EarCAgZ2yN28ipRnGPnwkI0= -github.com/gliderlabs/ssh v0.2.2/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aevW3Awn0= -github.com/glycerine/go-unsnap-stream v0.0.0-20181221182339-f9677308dec2/go.mod h1:/20jfyN9Y5QPEAprSgKAUr+glWDY39ZiUEAYOEv5dsE= -github.com/glycerine/goconvey v0.0.0-20180728074245-46e3a41ad493/go.mod h1:Ogl1Tioa0aV7gstGFO7KhffUsb9M4ydbEbbxpcEDc24= +github.com/gin-gonic/gin v1.7.7/go.mod h1:axIBovoeJpVj8S3BwE0uPMTeReE4+AfFtqpqaZ1qq1U= +github.com/gliderlabs/ssh v0.3.5 h1:OcaySEmAQJgyYcArR+gGGTHCyE7nvhEMTlYY+Dp8CpY= +github.com/gliderlabs/ssh v0.3.5/go.mod h1:8XB4KraRrX39qHhT6yxPsHedjA08I/uBVwj4xC+/+z4= github.com/go-asn1-ber/asn1-ber v1.3.1/go.mod h1:hEBeB/ic+5LoWskz+yKT7vGhhPYkProFKoKdwZRWMe0= -github.com/go-chi/chi v4.1.0+incompatible/go.mod h1:eB3wogJHnLi3x/kFX2A+IbTBlXxmMeXJVKy9tTv1XzQ= -github.com/go-chi/chi/v5 v5.0.0/go.mod h1:BBug9lr0cqtdAhsu6R4AAdvufI0/XBzAQSsUqJpoZOs= github.com/go-fonts/dejavu v0.1.0/go.mod h1:4Wt4I4OU2Nq9asgDCteaAaWZOV24E+0/Pwo0gppep4g= github.com/go-fonts/latin-modern v0.2.0/go.mod h1:rQVLdDMK+mK1xscDwsqM5J8U2jrRa3T0ecnM9pNujks= github.com/go-fonts/liberation v0.1.1/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY= +github.com/go-fonts/liberation v0.2.0/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY= github.com/go-fonts/stix v0.1.0/go.mod h1:w/c1f0ldAUlJmLBvlbkvVXLAD+tAMqobIIQpmnUIzUY= -github.com/go-git/gcfg v1.5.0 h1:Q5ViNfGF8zFgyJWPqYwA7qGFoMTEiBmdlkcfRmpIMa4= -github.com/go-git/gcfg v1.5.0/go.mod h1:5m20vg6GwYabIxaOonVkTdrILxQMpEShl1xiMF4ua+E= -github.com/go-git/go-billy/v5 v5.2.0/go.mod h1:pmpqyWchKfYfrkb/UVH4otLvyi/5gJlGI4Hb3ZqZ3W0= -github.com/go-git/go-billy/v5 v5.3.1 h1:CPiOUAzKtMRvolEKw+bG1PLRpT7D3LIs3/3ey4Aiu34= +github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= +github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= github.com/go-git/go-billy/v5 v5.3.1/go.mod h1:pmpqyWchKfYfrkb/UVH4otLvyi/5gJlGI4Hb3ZqZ3W0= -github.com/go-git/go-git-fixtures/v4 v4.2.1 h1:n9gGL1Ct/yIw+nfsfr8s4+sbhT+Ncu2SubfXjIWgci8= -github.com/go-git/go-git-fixtures/v4 v4.2.1/go.mod h1:K8zd3kDUAykwTdDCr+I0per6Y6vMiRR/nnVTBtavnB0= -github.com/go-git/go-git/v5 v5.4.2 h1:BXyZu9t0VkbiHtqrsvdq39UDhGJTl1h55VW6CSC4aY4= -github.com/go-git/go-git/v5 v5.4.2/go.mod h1:gQ1kArt6d+n+BGd+/B/I74HwRTLhth2+zti4ihgckDc= +github.com/go-git/go-billy/v5 v5.4.1/go.mod h1:vjbugF6Fz7JIflbVpl1hJsGjSHNltrSw45YK/ukIvQg= +github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= +github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= +github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20230305113008-0c11038e723f/go.mod h1:8LHG1a3SRW71ettAD/jW13h8c6AqjVSeL11RAdgaqpo= +github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= +github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= +github.com/go-git/go-git/v5 v5.8.1/go.mod h1:FHFuoD6yGz5OSKEBK+aWN9Oah0q54Jxl0abmj6GnqAo= +github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4= +github.com/go-git/go-git/v5 v5.11.0/go.mod h1:6GFcX2P3NM7FPBfpePbpLd21XxsgdAt+lKqXmCUiUCY= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= @@ -463,58 +1266,140 @@ github.com/go-ini/ini v1.25.4/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3I github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-kit/kit v0.10.0/go.mod h1:xUsJbQ/Fp4kEt7AFgCuvyX4a71u8h9jB8tj/ORgOZ7o= +github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= +github.com/go-kit/log v0.2.0/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0= +github.com/go-kit/log v0.2.1/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0= github.com/go-latex/latex v0.0.0-20210118124228-b3d85cf34e07/go.mod h1:CO1AlKB2CSIqUrmQPqA0gdRIlnLEY0gK5JGjh37zN5U= -github.com/go-ldap/ldap v3.0.2+incompatible/go.mod h1:qfd9rJvER9Q0/D/Sqn1DfHRoBp40uXYvFoEVrNEPqRc= -github.com/go-ldap/ldap/v3 v3.1.3/go.mod h1:3rbOH3jRS2u6jg2rJnKAMLE/xQyCKIveG2Sa/Cohzb8= +github.com/go-latex/latex v0.0.0-20210823091927-c0d11ff05a81/go.mod h1:SX0U8uGpxhq9o2S/CELCSUxEWWAuoCUcVCQWv7G2OCk= github.com/go-ldap/ldap/v3 v3.1.10/go.mod h1:5Zun81jBTabRaI8lzN7E1JjyEl1g6zI6u9pd8luAK4Q= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= +github.com/go-logfmt/logfmt v0.5.1/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs= +github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= github.com/go-logr/logr v0.4.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.1/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/stdr v1.2.0/go.mod h1:YkVgnZu1ZjjL7xTxrfm/LLZBfkhTqSR1ydtm6jTKKwI= +github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= +github.com/go-openapi/analysis v0.21.2/go.mod h1:HZwRk4RRisyG8vx2Oe6aqeSQcoxRp47Xkp3+K6q+LdY= +github.com/go-openapi/errors v0.19.8/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/errors v0.19.9/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/errors v0.20.2/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= +github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg= +github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= +github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= +github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= +github.com/go-openapi/jsonreference v0.19.6/go.mod h1:diGHMEHg2IqXZGKxqyvWdfWU/aim5Dprw5bqpKkTvns= +github.com/go-openapi/loads v0.21.1/go.mod h1:/DtAMXXneXFjbQMGEtbamCZb+4x7eGwkvZCvBmwUG+g= +github.com/go-openapi/runtime v0.23.1/go.mod h1:AKurw9fNre+h3ELZfk6ILsfvPN+bvvlaU/M9q/r9hpk= +github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc= +github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= +github.com/go-openapi/spec v0.20.4/go.mod h1:faYFR1CvsJZ0mNsmsphTMSoRrNV3TEDoAM7FOEWeq8I= +github.com/go-openapi/strfmt v0.21.0/go.mod h1:ZRQ409bWMj+SOgXofQAGTIo2Ebu72Gs+WaRADcS5iNg= +github.com/go-openapi/strfmt v0.21.1/go.mod h1:I/XVKeLc5+MM5oPNN7P6urMOpuLXEcNrCX/rPGuWb0k= +github.com/go-openapi/strfmt v0.21.2/go.mod h1:I/XVKeLc5+MM5oPNN7P6urMOpuLXEcNrCX/rPGuWb0k= +github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I= +github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-openapi/swag v0.19.15/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-openapi/swag v0.21.1/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-openapi/validate v0.21.0/go.mod h1:rjnrwK57VJ7A8xqfpAOEKRH8yQSGUriMu5/zuPSQ1hg= +github.com/go-pdf/fpdf v0.5.0/go.mod h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M= +github.com/go-pdf/fpdf v0.6.0/go.mod h1:HzcnA+A23uwogo0tp9yU+l3V+KXhiESpt1PMayhOh5M= github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= +github.com/go-playground/locales v0.13.0 h1:HyWk6mgj5qFqCT5fjGBuRArbVDfE4hi8+e8ceBS/t7Q= github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8= +github.com/go-playground/universal-translator v0.17.0 h1:icxd5fm+REJzpZx7ZfpaD876Lmtgy7VtROAbHHXk8no= github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA= github.com/go-playground/validator/v10 v10.2.0/go.mod h1:uOYAAleCW8F/7oMFd6aG0GOhaH6EGOAJShg8Id5JGkI= +github.com/go-playground/validator/v10 v10.4.1/go.mod h1:nlOn6nFhuKACm19sB/8EGNn9GlaMV7XkbRSipzJ0Ii4= +github.com/go-playground/validator/v10 v10.16.0 h1:x+plE831WK4vaKHO/jpgUGsvLKIqRRkz6M78GuJAfGE= +github.com/go-playground/validator/v10 v10.16.0/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU= +github.com/go-resty/resty/v2 v2.1.1-0.20191201195748-d7b97669fe48/go.mod h1:dZGr0i9PLlaaTD4H/hoZIDjQ+r6xq8mgbRzHZf7f2J8= github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= -github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-test/deep v1.0.1/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= -github.com/go-test/deep v1.0.2-0.20181118220953-042da051cf31/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= +github.com/go-stack/stack v1.8.1/go.mod h1:dcoOX6HbPZSZptuspn9bctJ+N/CnF5gGygcUP3XYfe4= +github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= github.com/go-test/deep v1.0.2/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68= github.com/go-test/deep v1.0.3/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA= +github.com/go-zookeeper/zk v1.0.2/go.mod h1:nOB03cncLtlp4t+UAkGSV+9beXP/akpekBwL+UX1Qcw= +github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0= +github.com/gobuffalo/depgen v0.0.0-20190329151759-d478694a28d3/go.mod h1:3STtPUQYuzV0gBVOY3vy6CfMm/ljR4pABfrTeHNLHUY= +github.com/gobuffalo/depgen v0.1.0/go.mod h1:+ifsuy7fhi15RWncXQQKjWS9JPkdah5sZvtHc2RXGlg= +github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= +github.com/gobuffalo/envy v1.7.0/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= +github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs= +github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= +github.com/gobuffalo/flect v0.1.3/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= +github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk= +github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e/go.mod h1:80lIj3kVJWwOrXWWMRzzdhW3DsrdjILVil/SFKBzF28= +github.com/gobuffalo/genny v0.1.0/go.mod h1:XidbUqzak3lHdS//TPu2OgiFB+51Ur5f7CSnXZ/JDvo= +github.com/gobuffalo/genny v0.1.1/go.mod h1:5TExbEyY48pfunL4QSXxlDOmdsD44RRq4mVZ0Ex28Xk= +github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw= +github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360= +github.com/gobuffalo/gogen v0.1.0/go.mod h1:8NTelM5qd8RZ15VjQTFkAW6qOMx5wBbW4dSCS3BY8gg= +github.com/gobuffalo/gogen v0.1.1/go.mod h1:y8iBtmHmGc4qa3urIyo1shvOD8JftTtfcKi+71xfDNE= +github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8= +github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= +github.com/gobuffalo/mapi v1.0.2/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= +github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= +github.com/gobuffalo/packd v0.1.0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= +github.com/gobuffalo/packr/v2 v2.0.9/go.mod h1:emmyGweYTm6Kdper+iywB6YK5YzuKchGtJQZ0Odn4pQ= +github.com/gobuffalo/packr/v2 v2.2.0/go.mod h1:CaAwI0GPIAv+5wKLtv8Afwl+Cm78K/I/VCm/3ptBN+0= +github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754/go.mod h1:HhnNqWY95UYwwW3uSASeV7vtgYkT2t16hJgV3AEPUpw= github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo= github.com/gobwas/pool v0.2.0/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw= github.com/gobwas/ws v1.0.2/go.mod h1:szmBTxLgaFppYjEmNtny/v3w89xOydFnnZMcgRRu/EM= -github.com/gocarina/gocsv v0.0.0-20210408192840-02d7211d929d/go.mod h1:5YoVOkjYAQumqlV356Hj3xeYh4BdZuLE0/nRkf2NKkI= -github.com/goccy/go-json v0.7.10/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= -github.com/goccy/go-json v0.9.7/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= +github.com/goccy/go-json v0.9.11/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= +github.com/goccy/go-yaml v1.9.5/go.mod h1:U/jl18uSupI5rdI2jmuCswEA2htH9eXfferR3KfscvA= +github.com/goccy/go-yaml v1.11.3 h1:B3W9IdWbvrUu2OYQGwvU1nZtvMQJPBKgBUuweJjLj6I= +github.com/goccy/go-yaml v1.11.3/go.mod h1:wKnAMd44+9JAAnGQpWVEgBzGt3YuTaQ4uXoHvE4m7WU= +github.com/godbus/dbus v0.0.0-20151105175453-c7fdd8b5cd55/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= +github.com/godbus/dbus v0.0.0-20180201030542-885f9cc04c9c/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4= +github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/godbus/dbus/v5 v5.0.6/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofrs/uuid v3.3.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= +github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gofrs/uuid v4.2.0+incompatible h1:yyYWMnhkhrKwwr8gAOcOCYxOOscHgDS9yZgBrnJfGa0= github.com/gofrs/uuid v4.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFGgqEef3s= +github.com/gogo/googleapis v1.2.0/go.mod h1:Njal3psf3qN6dwBtQfUmBZh2ybovJ0tlu3o/AC7HYjU= +github.com/gogo/googleapis v1.4.0/go.mod h1:5YRNX2z1oM5gXdAkurHa942MDgEJyk02w4OecKY87+c= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.0/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt v3.2.1+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I= github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= -github.com/golang-jwt/jwt/v4 v4.4.1 h1:pC5DB52sCeK48Wlb9oPcdhnjkz1TKt1D/P7WKJ0kUcQ= -github.com/golang-jwt/jwt/v4 v4.4.1/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-jwt/jwt/v4 v4.2.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= +github.com/golang-jwt/jwt/v4 v4.4.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-jwt/jwt/v5 v5.2.1 h1:OuVbFODueb089Lh128TAcimifWaLhJwVflnrgM17wHk= +github.com/golang-jwt/jwt/v5 v5.2.1/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk= github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0= +github.com/golang-sql/sqlexp v0.1.0/go.mod h1:J4ad9Vo8ZCWQ2GMrC4UCQy1JpCbwU9m3EOqtpKwwwHI= github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k= -github.com/golang/gddo v0.0.0-20181116215533-9bd4a3295021/go.mod h1:xEhNfoBDX1hzLm2Nf80qUvZ2sVwoMZ8d6IE2SrsQfh4= -github.com/golang/geo v0.0.0-20190916061304-5b978397cfec/go.mod h1:QZ0nwyI2jOfgRAoBvP+ab5aRr7c9x7lhGEJrKvBwjWI= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= -github.com/golang/glog v1.0.0 h1:nfP3RFugxnNRyKgeWd4oI1nYvXpxrx8ck8ZrcizshdQ= github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4= +github.com/golang/glog v1.1.0/go.mod h1:pfYeQZ3JWZoXTV5sFc986z3HTpwQs9At6P4ImfuP3NQ= +github.com/golang/glog v1.1.2 h1:DVjP2PbBOzHyzA+dn3WhHIq4NdVu3Q+pvivFICf/7fo= +github.com/golang/glog v1.1.2/go.mod h1:zR+okUeTbrL6EL3xHUDxZuEtGv04p5shwip1+mL/rLQ= github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -548,19 +1433,19 @@ github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= -github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= +github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golangci/lint-1 v0.0.0-20181222135242-d2cdd8c08219/go.mod h1:/X8TswGSh1pIozq4ZwCfxS0WA5JGXguxk94ar/4c87Y= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA= -github.com/google/flatbuffers v2.0.0+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= -github.com/google/flatbuffers v2.0.5+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= +github.com/google/flatbuffers v2.0.8+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= +github.com/google/gnostic v0.5.7-v3refs/go.mod h1:73MKFl6jIHelAJNaBGFzt3SPtZULs9dYrGFt8OiIsHQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= @@ -574,23 +1459,30 @@ github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE= -github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg= github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/go-jsonnet v0.17.0/go.mod h1:sOcuej3UW1vpPTZOr8L7RQimqai1a57bt5j22LzGZCw= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-containerregistry v0.5.1/go.mod h1:Ct15B4yir3PLOP5jsy0GNeYVaIZs/MK/Jz5any1wFW0= +github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck= github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= github.com/google/go-replayers/grpcreplay v1.1.0 h1:S5+I3zYyZ+GQz68OfbURDdt/+cSMqCK1wrvNx7WBzTE= github.com/google/go-replayers/grpcreplay v1.1.0/go.mod h1:qzAvJ8/wi57zq7gWqaE6AwLM6miiXUQwP1S+I9icmhk= -github.com/google/go-replayers/httpreplay v1.0.0 h1:8SmT8fUYM4nueF+UnXIX8LJxNTb1vpPuknXz+yTWzL4= -github.com/google/go-replayers/httpreplay v1.0.0/go.mod h1:LJhKoTwS5Wy5Ld/peq8dFFG5OfJyHEz7ft+DsTUv25M= +github.com/google/go-replayers/httpreplay v1.1.1/go.mod h1:gN9GeLIs7l6NUoVaSSnv2RiqK1NiwAmD0MrKeC9IIks= +github.com/google/go-replayers/httpreplay v1.2.0 h1:VM1wEyyjaoU53BwrOnaf9VhAyQQEEioJvFYxYcLRKzk= +github.com/google/go-replayers/httpreplay v1.2.0/go.mod h1:WahEFFZZ7a1P4VM1qEeHy+tME4bwyqPcwWbNlUI1Mcg= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/martian v2.1.1-0.20190517191504-25dcb96d9e51+incompatible h1:xmapqc1AyLoB+ddYT6r04bD9lIjlOqGaREovi0SzFaE= github.com/google/martian v2.1.1-0.20190517191504-25dcb96d9e51+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= -github.com/google/martian/v3 v3.2.1 h1:d8MncMlErDFTwQGBK1xhv026j9kqhvw1Qv9IbWT1VLQ= github.com/google/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= +github.com/google/martian/v3 v3.3.2 h1:IqNFLAmvJOgVlpdEBiQbDc2EwKW77amAycfTuWKdfvw= +github.com/google/martian/v3 v3.3.2/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= @@ -606,9 +1498,12 @@ github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20210506205249-923b5ab0fc1a/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210715191844-86eeefc3e471/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20220318212150-b2ab0324ddda/go.mod h1:KgnwoLYCZ8IQu3XUZ8Nc/bM9CCZFOyjUNOSygVozoDg= +github.com/google/pprof v0.0.0-20220608213341-c488b8fa1db3/go.mod h1:gSuNB+gJaOiQKLEZ+q+PK9Mq3SOzhRcw2GsGS/FhYDk= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o= +github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= github.com/google/subcommands v1.0.1/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk= @@ -616,13 +1511,18 @@ github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+ github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/wire v0.5.0 h1:I7ELFeVBr3yfPIcc8+MWvrjk+3VjbcSzoXm3JVa+jD8= github.com/google/wire v0.5.0/go.mod h1:ngWDr9Qvq3yZA10YrxfyGELY/AFWGVpy9c1LTRi1EoU= github.com/googleapis/enterprise-certificate-proxy v0.0.0-20220520183353-fd19c99a87aa/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8= -github.com/googleapis/enterprise-certificate-proxy v0.1.0 h1:zO8WHNx/MYiAKJ3d5spxZXZE6KHmIQGQcAzwUzV7qQw= github.com/googleapis/enterprise-certificate-proxy v0.1.0/go.mod h1:17drOmN3MwGY7t0e+Ei9b45FFGA3fBs3x36SsCg1hq8= +github.com/googleapis/enterprise-certificate-proxy v0.2.0/go.mod h1:8C0jb7/mgJe/9KK8Lm7X9ctZC2t60YyIpYEI16jx0Qg= +github.com/googleapis/enterprise-certificate-proxy v0.2.1/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k= +github.com/googleapis/enterprise-certificate-proxy v0.2.3/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k= +github.com/googleapis/enterprise-certificate-proxy v0.3.2 h1:Vie5ybvEvT75RniqhfFxPRy3Bf7vr3h0cechB90XaQs= +github.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0= @@ -630,30 +1530,56 @@ github.com/googleapis/gax-go/v2 v2.1.1/go.mod h1:hddJymUZASv3XPyGkUpKj8pPO47Rmb0 github.com/googleapis/gax-go/v2 v2.2.0/go.mod h1:as02EH8zWkzwUoLbBaFeQ+arQaj/OthfcblKl4IGNaM= github.com/googleapis/gax-go/v2 v2.3.0/go.mod h1:b8LNqSzNabLiUpXKkY7HAR5jr6bIT99EXz9pXxye9YM= github.com/googleapis/gax-go/v2 v2.4.0/go.mod h1:XOTVJ59hdnfJLIP/dh8n5CGryZR2LxK9wbMD5+iXC6c= -github.com/googleapis/gax-go/v2 v2.5.1 h1:kBRZU0PSuI7PspsSb/ChWoVResUcwNVIdpB049pKTiw= github.com/googleapis/gax-go/v2 v2.5.1/go.mod h1:h6B0KMMFNtI2ddbGJn3T3ZbwkeT6yqEF02fYlzkUCyo= +github.com/googleapis/gax-go/v2 v2.6.0/go.mod h1:1mjbznJAPHFpesgE5ucqfYEscaz5kMdcIDwU/6+DDoY= +github.com/googleapis/gax-go/v2 v2.7.0/go.mod h1:TEop28CZZQ2y+c0VxMUmu1lV+fQx57QpBWsYpwqHJx8= +github.com/googleapis/gax-go/v2 v2.7.1/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI= +github.com/googleapis/gax-go/v2 v2.12.0 h1:A+gCJKdRfqXkr+BIRGtZLibNXf0m1f9E4HG56etFpas= +github.com/googleapis/gax-go/v2 v2.12.0/go.mod h1:y+aIqrI5eb1YGMVJfuV3185Ts/D7qKpsEkdD5+I6QGU= +github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= +github.com/googleapis/gnostic v0.5.1/go.mod h1:6U4PtQXGIEt/Z3h5MAT7FNofLnw9vXk2cUuW7uA/OeU= +github.com/googleapis/gnostic v0.5.5/go.mod h1:7+EbHbldMins07ALC74bsA81Ovc97DwqyJO1AENw9kA= github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4= +github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= +github.com/gophercloud/gophercloud v0.24.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c= +github.com/gophercloud/gophercloud v0.25.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gopherjs/gopherjs v0.0.0-20190812055157-5d271430af9f/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg= +github.com/gorilla/handlers v0.0.0-20150720190736-60c7bfde3e33/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ= github.com/gorilla/mux v1.6.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/mux v1.7.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= -github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI= github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/grafana/regexp v0.0.0-20220304095617-2e8d9baf4ac2/go.mod h1:M5qHK+eWfAv8VR/265dIuEpL3fNfeC21tXXp9itM24A= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.7.0/go.mod h1:hgWBS7lorOAVIJEQMi4ZsPv9hVvWI6+ch50m39Pf2Ks= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.10.2/go.mod h1:chrfS3YoLAlKTRE5cFWvCbt8uGAjshktT4PveTUpsFQ= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.3/go.mod h1:o//XUCC/F+yRGJoPO/VU0GSB0f8Nhgmxx0VIRUvaC0w= github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1:MJG/KsmcqMwFAkh8mTnAwhyKoB+sTAnY4CACC110tbU= github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645/go.mod h1:6iZfnjpejD4L/4DwD7NryNaJyCQdzwWwH2MWhCA90Kw= +github.com/hanwen/go-fuse v1.0.0/go.mod h1:unqXarDXqzAk0rt98O2tVndEPIpUgLD9+rwFisZH3Ok= +github.com/hanwen/go-fuse/v2 v2.1.0/go.mod h1:oRyA5eK+pvJyv5otpO/DgccS8y/RvYMaO00GgRLGryc= +github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q= github.com/hashicorp/consul/api v1.3.0/go.mod h1:MmDNSzIMUjNpY/mQ398R4bk2FnqQLoPndWW5VkKPlCE= +github.com/hashicorp/consul/api v1.12.0/go.mod h1:6pVBMo0ebnYdt2S3H87XhekM/HHrUoTD2XXb/VrZVy0= +github.com/hashicorp/consul/api v1.13.0/go.mod h1:ZlVrynguJKcYr54zGaDbaL3fOvKC9m72FhPvA8T35KQ= +github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= github.com/hashicorp/consul/sdk v0.3.0/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= +github.com/hashicorp/consul/sdk v0.8.0/go.mod h1:GBvyrGALthsZObzUGsfgHZQDXjg4lOjagTIwIR1vPms= +github.com/hashicorp/cronexpr v1.1.1/go.mod h1:P4wA0KBl9C5q2hABiMO7cp6jcIg96CDh1Efb3g1PWA4= +github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= @@ -663,45 +1589,60 @@ github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtng github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= github.com/hashicorp/go-cleanhttp v0.5.2/go.mod h1:kO/YDlP8L1346E6Sodw+PrpBSV4/SoxCXGY6BqNFT48= -github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320 h1:1/D3zfFHttUKaCaGKZ/dR2roBXv0vKbSCnssIldfQdI= github.com/hashicorp/go-cty v1.4.1-0.20200414143053-d3edf31b6320/go.mod h1:EiZBMaudVLy8fmjf9Npq1dq9RalhveqZG5w/yz3mHWs= +github.com/hashicorp/go-cty v1.4.1-0.20200723130312-85980079f637 h1:Ud/6/AdmJ1R7ibdS0Wo5MWPj0T1R0fkpaD087bBaW8I= +github.com/hashicorp/go-cty v1.4.1-0.20200723130312-85980079f637/go.mod h1:EiZBMaudVLy8fmjf9Npq1dq9RalhveqZG5w/yz3mHWs= github.com/hashicorp/go-getter v1.4.0/go.mod h1:7qxyCd8rBfcShwsvxgIguu4KbS3l8bUCwg2Umn7RjeY= -github.com/hashicorp/go-getter v1.6.1 h1:NASsgP4q6tL94WH6nJxKWj8As2H/2kop/bB1d8JMyRY= -github.com/hashicorp/go-getter v1.6.1/go.mod h1:IZCrswsZPeWv9IkVnLElzRU/gz/QPi6pZHn4tv6vbwA= +github.com/hashicorp/go-getter v1.7.1 h1:SWiSWN/42qdpR0MdhaOc/bLR48PLuP1ZQtYLRlM69uY= +github.com/hashicorp/go-getter v1.7.1/go.mod h1:W7TalhMmbPmsSMdNjD0ZskARur/9GJ17cfHTRtXV744= github.com/hashicorp/go-hclog v0.0.0-20180709165350-ff2cf002a8dd/go.mod h1:9bjs9uLqI8l75knNv3lV1kA55veR+WUPSiKIWcQHudI= -github.com/hashicorp/go-hclog v0.8.0/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= github.com/hashicorp/go-hclog v0.12.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= +github.com/hashicorp/go-hclog v0.12.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= github.com/hashicorp/go-hclog v0.14.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= -github.com/hashicorp/go-hclog v0.16.1/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= -github.com/hashicorp/go-hclog v1.2.0/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= -github.com/hashicorp/go-hclog v1.2.1 h1:YQsLlGDJgwhXFpucSPyVbCBviQtjlHv3jLTlp8YmtEw= -github.com/hashicorp/go-hclog v1.2.1/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= +github.com/hashicorp/go-hclog v0.16.2/go.mod h1:whpDNt7SSdeAju8AWKIWsul05p54N/39EeqMAyrmvFQ= +github.com/hashicorp/go-hclog v1.2.2/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= +github.com/hashicorp/go-hclog v1.5.0 h1:bI2ocEMgcVlz55Oj1xZNBsVi900c7II+fWDyV9o+13c= +github.com/hashicorp/go-hclog v1.5.0/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= -github.com/hashicorp/go-immutable-radix v1.1.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-immutable-radix v1.2.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc= +github.com/hashicorp/go-immutable-radix v1.3.1/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= github.com/hashicorp/go-kms-wrapping/entropy v0.1.0/go.mod h1:d1g9WGtAunDNpek8jUIEJnBlbgKS1N2Q61QkHiZyR1g= github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= +github.com/hashicorp/go-multierror v0.0.0-20161216184304-ed905158d874/go.mod h1:JMRHfdO9jKNzS/+BTlxCjKNQHg/jZAft8U7LloJvN7I= github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= github.com/hashicorp/go-multierror v1.1.0/go.mod h1:spPvp8C1qA32ftKqdAHm4hHTbPw+vmowP0z+KUhOZdA= github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= -github.com/hashicorp/go-plugin v1.0.0/go.mod h1:++UyYGoz3o5w9ZzAdZxtQKrWWP+iqPBn3cQptSMzBuY= github.com/hashicorp/go-plugin v1.0.1/go.mod h1:++UyYGoz3o5w9ZzAdZxtQKrWWP+iqPBn3cQptSMzBuY= -github.com/hashicorp/go-plugin v1.4.4 h1:NVdrSdFRt3SkZtNckJ6tog7gbpRrcbOjQi/rgF7JYWQ= +github.com/hashicorp/go-plugin v1.4.3/go.mod h1:5fGEH17QVwTTcR0zV7yhDPLLmFX9YSZ38b18Udy6vYQ= github.com/hashicorp/go-plugin v1.4.4/go.mod h1:viDMjcLJuDui6pXb8U4HVfb8AamCWhHGUjr2IrTF67s= +github.com/hashicorp/go-plugin v1.5.1/go.mod h1:w1sAEES3g3PuV/RzUrgow20W2uErMly84hhD3um1WL4= +github.com/hashicorp/go-plugin v1.6.0 h1:wgd4KxHJTVGGqWBq4QPB1i5BZNEx9BR8+OFmHDmTk8A= +github.com/hashicorp/go-plugin v1.6.0/go.mod h1:lBS5MtSSBZk0SHc66KACcjjlU6WzEVP/8pwz68aMkCI= github.com/hashicorp/go-retryablehttp v0.5.3/go.mod h1:9B5zBasrRhHXnJnui7y6sL7es7NDiJgTc6Er0maI1Xs= -github.com/hashicorp/go-retryablehttp v0.6.2/go.mod h1:gEx6HMUGxYYhJScX7W1Il64m6cc2C1mDaW3NQ9sY1FY= -github.com/hashicorp/go-retryablehttp v0.6.4/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= github.com/hashicorp/go-retryablehttp v0.6.6/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= -github.com/hashicorp/go-retryablehttp v0.7.0/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= -github.com/hashicorp/go-retryablehttp v0.7.2 h1:AcYqCvkpalPnPF2pn0KamgwamS42TqUDDYFRKq/RAd0= -github.com/hashicorp/go-retryablehttp v0.7.2/go.mod h1:Jy/gPYAdjqffZ/yFGCFV2doI5wjtH1ewM9u8iYVjtX8= +github.com/hashicorp/go-retryablehttp v0.7.1/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= +github.com/hashicorp/go-retryablehttp v0.7.5 h1:bJj+Pj19UZMIweq/iie+1u5YCdGrnxCT9yvm0e+Nd5M= +github.com/hashicorp/go-retryablehttp v0.7.5/go.mod h1:Jy/gPYAdjqffZ/yFGCFV2doI5wjtH1ewM9u8iYVjtX8= github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU= -github.com/hashicorp/go-rootcerts v1.0.1/go.mod h1:pqUvnprVnM5bf7AOirdbb01K4ccR319Vf4pU3K5EGc8= github.com/hashicorp/go-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc= github.com/hashicorp/go-rootcerts v1.0.2/go.mod h1:pqUvnprVnM5bf7AOirdbb01K4ccR319Vf4pU3K5EGc8= github.com/hashicorp/go-safetemp v1.0.0 h1:2HR189eFNrjHQyENnQMMpCiBAsRxzbTMIgBhEyExpmo= github.com/hashicorp/go-safetemp v1.0.0/go.mod h1:oaerMy3BhqiTbVye6QuFhFtIceqFoDHxNAB65b+Rj1I= +github.com/hashicorp/go-secure-stdlib/base62 v0.1.1/go.mod h1:EdWO6czbmthiwZ3/PUsDV+UD1D5IRU4ActiaWGwt0Yw= +github.com/hashicorp/go-secure-stdlib/mlock v0.1.1/go.mod h1:zq93CJChV6L9QTfGKtfBxKqD7BqqXx5O04A/ns2p5+I= +github.com/hashicorp/go-secure-stdlib/mlock v0.1.2 h1:p4AKXPPS24tO8Wc8i1gLvSKdmkiSY5xuju57czJ/IJQ= +github.com/hashicorp/go-secure-stdlib/mlock v0.1.2/go.mod h1:zq93CJChV6L9QTfGKtfBxKqD7BqqXx5O04A/ns2p5+I= +github.com/hashicorp/go-secure-stdlib/parseutil v0.1.1/go.mod h1:QmrqtbKuxxSWTN3ETMPuB+VtEiBJ/A9XhoYGv8E1uD8= +github.com/hashicorp/go-secure-stdlib/parseutil v0.1.6 h1:om4Al8Oy7kCm/B86rLCLah4Dt5Aa0Fr5rYBG60OzwHQ= +github.com/hashicorp/go-secure-stdlib/parseutil v0.1.6/go.mod h1:QmrqtbKuxxSWTN3ETMPuB+VtEiBJ/A9XhoYGv8E1uD8= +github.com/hashicorp/go-secure-stdlib/password v0.1.1/go.mod h1:9hH302QllNwu1o2TGYtSk8I8kTAN0ca1EHpwhm5Mmzo= +github.com/hashicorp/go-secure-stdlib/strutil v0.1.1/go.mod h1:gKOamz3EwoIoJq7mlMIRBpVTAUn8qPCrEclOKKWhD3U= +github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 h1:kes8mmyCpxJsI7FTwtzRqEy9CdjCtrXrXGuOpxEA7Ts= +github.com/hashicorp/go-secure-stdlib/strutil v0.1.2/go.mod h1:Gou2R9+il93BqX25LAKCLuM+y9U2T4hlwvT1yprcna4= +github.com/hashicorp/go-secure-stdlib/tlsutil v0.1.1/go.mod h1:l8slYwnJA26yBz+ErHpp2IRCLr0vuOMGBORIz4rRiAs= github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU= github.com/hashicorp/go-sockaddr v1.0.2 h1:ztczhD1jLxIRjVejw8gFomI1BQZOe2WoVOu0SyteCQc= github.com/hashicorp/go-sockaddr v1.0.2/go.mod h1:rB4wwRAUzs07qva3c5SdrY/NEtAUjGlgmH/UkBUC97A= @@ -713,227 +1654,302 @@ github.com/hashicorp/go-uuid v1.0.3 h1:2gKiV6YVmrJ1i2CKKa9obLvRieoRGviZFL26PcT/C github.com/hashicorp/go-uuid v1.0.3/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-version v1.1.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/go-version v1.5.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -github.com/hashicorp/golang-lru v0.5.3/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= -github.com/hashicorp/hc-install v0.4.0 h1:cZkRFr1WVa0Ty6x5fTvL1TuO1flul231rWkGH92oYYk= -github.com/hashicorp/hc-install v0.4.0/go.mod h1:5d155H8EC5ewegao9A4PUTMNPZaq+TbOzkJJZ4vrXeI= +github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= +github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= +github.com/hashicorp/hc-install v0.6.0/go.mod h1:10I912u3nntx9Umo1VAeYPUUuehk0aRQJYpMwbX5wQA= +github.com/hashicorp/hc-install v0.6.3 h1:yE/r1yJvWbtrJ0STwScgEnCanb0U9v7zp0Gbkmcoxqs= +github.com/hashicorp/hc-install v0.6.3/go.mod h1:KamGdbodYzlufbWh4r9NRo8y6GLHWZP2GBtdnms1Ln0= github.com/hashicorp/hcl v0.0.0-20170504190234-a4b07c25de5f/go.mod h1:oZtUIOe8dh44I2q6ScRibXws4Ajl+d+nod3AaR9vL5w= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hashicorp/hcl/v2 v2.0.0/go.mod h1:oVVDG71tEinNGYCxinCYadcmKU9bglqW9pV3txagJ90= -github.com/hashicorp/hcl/v2 v2.13.0 h1:0Apadu1w6M11dyGFxWnmhhcMjkbAiKCv7G1r/2QgCNc= -github.com/hashicorp/hcl/v2 v2.13.0/go.mod h1:e4z5nxYlWNPdDSNYX+ph14EvWYMFm3eP0zIUqPc2jr0= +github.com/hashicorp/hcl/v2 v2.18.0/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= +github.com/hashicorp/hcl/v2 v2.19.1 h1://i05Jqznmb2EXqa39Nsvyan2o5XyMowW5fnCKW5RPI= +github.com/hashicorp/hcl/v2 v2.19.1/go.mod h1:ThLC89FV4p9MPW804KVbe/cEXoQ8NZEh+JtMeeGErHE= github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93 h1:T1Q6ag9tCwun16AW+XK3tAql24P4uTGUMIn1/92WsQQ= github.com/hashicorp/hil v0.0.0-20190212132231-97b3a9cdfa93/go.mod h1:n2TSygSNwsLJ76m8qFXTSc7beTb+auJxYdqrnoqwZWE= github.com/hashicorp/logutils v1.0.0 h1:dLEQVugN8vlakKOUE3ihGLTZJRB4j+M2cdTm/ORI65Y= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= +github.com/hashicorp/mdns v1.0.4/go.mod h1:mtBihi+LeNXGtG8L9dX59gAEa12BDtBQSp4v/YAJqrc= github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= +github.com/hashicorp/memberlist v0.3.0/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE= +github.com/hashicorp/memberlist v0.3.1/go.mod h1:MS2lj3INKhZjWNqd3N0m3J+Jxf3DAOnAH9VT3Sh9MUE= +github.com/hashicorp/nomad/api v0.0.0-20220629141207-c2428e1673ec/go.mod h1:jP79oXjopTyH6E8LF0CEMq67STgrlmBRIyijA0tuR5o= github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= +github.com/hashicorp/serf v0.9.6/go.mod h1:TXZNMjZQijwlDvp+r0b63xZ45H7JmCmgg4gpTwn9UV4= github.com/hashicorp/terraform-config-inspect v0.0.0-20191115094559-17f92b0546e8/go.mod h1:p+ivJws3dpqbp1iP84+npOyAmTTOLMgCzrXd3GSdn/A= -github.com/hashicorp/terraform-exec v0.17.2 h1:EU7i3Fh7vDUI9nNRdMATCEfnm9axzTnad8zszYZ73Go= -github.com/hashicorp/terraform-exec v0.17.2/go.mod h1:tuIbsL2l4MlwwIZx9HPM+LOV9vVyEfBYu2GsO1uH3/8= +github.com/hashicorp/terraform-exec v0.19.0/go.mod h1:tbxUpe3JKruE9Cuf65mycSIT8KiNPZ0FkuTE3H4urQg= +github.com/hashicorp/terraform-exec v0.20.0 h1:DIZnPsqzPGuUnq6cH8jWcPunBfY+C+M8JyYF3vpnuEo= +github.com/hashicorp/terraform-exec v0.20.0/go.mod h1:ckKGkJWbsNqFKV1itgMnE0hY9IYf1HoiekpuN0eWoDw= github.com/hashicorp/terraform-json v0.4.0/go.mod h1:eAbqb4w0pSlRmdvl8fOyHAi/+8jnkVYN28gJkSJrLhU= -github.com/hashicorp/terraform-json v0.14.0 h1:sh9iZ1Y8IFJLx+xQiKHGud6/TSUCM0N8e17dKDpqV7s= -github.com/hashicorp/terraform-json v0.14.0/go.mod h1:5A9HIWPkk4e5aeeXIBbkcOvaZbIYnAIkEyqP2pNSckM= -github.com/hashicorp/terraform-plugin-go v0.14.0 h1:ttnSlS8bz3ZPYbMb84DpcPhY4F5DsQtcAS7cHo8uvP4= -github.com/hashicorp/terraform-plugin-go v0.14.0/go.mod h1:2nNCBeRLaenyQEi78xrGrs9hMbulveqG/zDMQSvVJTE= -github.com/hashicorp/terraform-plugin-log v0.7.0 h1:SDxJUyT8TwN4l5b5/VkiTIaQgY6R+Y2BQ0sRZftGKQs= -github.com/hashicorp/terraform-plugin-log v0.7.0/go.mod h1:p4R1jWBXRTvL4odmEkFfDdhUjHf9zcs/BCoNHAc7IK4= +github.com/hashicorp/terraform-json v0.17.1/go.mod h1:Huy6zt6euxaY9knPAFKjUITn8QxUFIe9VuSzb4zn/0o= +github.com/hashicorp/terraform-json v0.21.0 h1:9NQxbLNqPbEMze+S6+YluEdXgJmhQykRyRNd+zTI05U= +github.com/hashicorp/terraform-json v0.21.0/go.mod h1:qdeBs11ovMzo5puhrRibdD6d2Dq6TyE/28JiU4tIQxk= +github.com/hashicorp/terraform-plugin-go v0.19.0/go.mod h1:EhRSkEPNoylLQntYsk5KrDHTZJh9HQoumZXbOGOXmec= +github.com/hashicorp/terraform-plugin-go v0.22.0 h1:1OS1Jk5mO0f5hrziWJGXXIxBrMe2j/B8E+DVGw43Xmc= +github.com/hashicorp/terraform-plugin-go v0.22.0/go.mod h1:mPULV91VKss7sik6KFEcEu7HuTogMLLO/EvWCuFkRVE= +github.com/hashicorp/terraform-plugin-log v0.9.0 h1:i7hOA+vdAItN1/7UrfBqBwvYPQ9TFvymaRGZED3FCV0= +github.com/hashicorp/terraform-plugin-log v0.9.0/go.mod h1:rKL8egZQ/eXSyDqzLUuwUYLVdlYeamldAHSxjUFADow= github.com/hashicorp/terraform-plugin-sdk v1.7.0 h1:B//oq0ZORG+EkVrIJy0uPGSonvmXqxSzXe8+GhknoW0= github.com/hashicorp/terraform-plugin-sdk v1.7.0/go.mod h1:OjgQmey5VxnPej/buEhe+YqKm0KNvV3QqU4hkqHqPCY= github.com/hashicorp/terraform-plugin-test v1.2.0/go.mod h1:QIJHYz8j+xJtdtLrFTlzQVC0ocr3rf/OjIpgZLK56Hs= -github.com/hashicorp/terraform-registry-address v0.0.0-20220623143253-7d51757b572c h1:D8aRO6+mTqHfLsK/BC3j5OAoogv1WLRWzY1AaTo3rBg= -github.com/hashicorp/terraform-registry-address v0.0.0-20220623143253-7d51757b572c/go.mod h1:Wn3Na71knbXc1G8Lh+yu/dQWWJeFQEpDeJMtWMtlmNI= +github.com/hashicorp/terraform-registry-address v0.2.2/go.mod h1:LtwNbCihUoUZ3RYriyS2wF/lGPB6gF9ICLRtuDk7hSo= +github.com/hashicorp/terraform-registry-address v0.2.3 h1:2TAiKJ1A3MAkZlH1YI/aTVcLZRu7JseiXNRHbOAyoTI= +github.com/hashicorp/terraform-registry-address v0.2.3/go.mod h1:lFHA76T8jfQteVfT7caREqguFrW3c4MFSPhZB7HHgUM= github.com/hashicorp/terraform-svchost v0.0.0-20191011084731-65d371908596/go.mod h1:kNDNcF7sN4DocDLBkQYz73HGKwN1ANB1blq4lIYLYvg= -github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734 h1:HKLsbzeOsfXmKNpr3GiT18XAblV0BjCbzL8KQAMZGa0= -github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734/go.mod h1:kNDNcF7sN4DocDLBkQYz73HGKwN1ANB1blq4lIYLYvg= -github.com/hashicorp/vault/api v1.0.2/go.mod h1:AV/+M5VPDpB90arloVX0rVDUIHkONiwz5Uza9HRtpUE= -github.com/hashicorp/vault/api v1.0.5-0.20200519221902-385fac77e20f/go.mod h1:euTFbi2YJgwcju3imEt919lhJKF68nN1cQPq3aA+kBE= -github.com/hashicorp/vault/api v1.1.1 h1:907ld+Z9cALyvbZK2qUX9cLwvSaEQsMVQB3x2KE8+AI= -github.com/hashicorp/vault/api v1.1.1/go.mod h1:29UXcn/1cLOPHQNMWA7bCz2By4PSd0VKPAydKXS5yN0= -github.com/hashicorp/vault/sdk v0.1.8/go.mod h1:tHZfc6St71twLizWNHvnnbiGFo1aq0eD2jGPLtP8kAU= -github.com/hashicorp/vault/sdk v0.1.14-0.20200519221530-14615acda45f/go.mod h1:WX57W2PwkrOPQ6rVQk+dy5/htHIaB4aBM70EwKThu10= -github.com/hashicorp/vault/sdk v0.2.1 h1:S4O6Iv/dyKlE9AUTXGa7VOvZmsCvg36toPKgV4f2P4M= -github.com/hashicorp/vault/sdk v0.2.1/go.mod h1:WfUiO1vYzfBkz1TmoE4ZGU7HD0T0Cl/rZwaxjBkgN4U= +github.com/hashicorp/terraform-svchost v0.1.1 h1:EZZimZ1GxdqFRinZ1tpJwVxxt49xc/S52uzrw4x0jKQ= +github.com/hashicorp/terraform-svchost v0.1.1/go.mod h1:mNsjQfZyf/Jhz35v6/0LWcv26+X7JPS+buii2c9/ctc= +github.com/hashicorp/vault/api v1.7.2/go.mod h1:xbfA+1AvxFseDzxxdWaL0uO99n1+tndus4GCrtouy0M= +github.com/hashicorp/vault/api v1.8.2 h1:C7OL9YtOtwQbTKI9ogB0A1wffRbCN+rH/LLCHO3d8HM= +github.com/hashicorp/vault/api v1.8.2/go.mod h1:ML8aYzBIhY5m1MD1B2Q0JV89cC85YVH4t5kBaZiyVaE= +github.com/hashicorp/vault/sdk v0.5.1/go.mod h1:DoGraE9kKGNcVgPmTuX357Fm6WAx1Okvde8Vp3dPDoU= +github.com/hashicorp/vault/sdk v0.5.3/go.mod h1:DoGraE9kKGNcVgPmTuX357Fm6WAx1Okvde8Vp3dPDoU= +github.com/hashicorp/vault/sdk v0.6.1 h1:sjZC1z4j5Rh2GXYbkxn5BLK05S1p7+MhW4AgdUmgRUA= +github.com/hashicorp/vault/sdk v0.6.1/go.mod h1:Ck4JuAC6usTphfrrRJCRH+7/N7O2ozZzkm/fzQFt4uM= github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM= github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM= -github.com/hashicorp/yamux v0.1.0 h1:DzDIF6Sd7GD2sX0kDFpHAsJMY4L+OfTvtuaQsOYXxzk= -github.com/hashicorp/yamux v0.1.0/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= +github.com/hashicorp/yamux v0.1.1 h1:yrQxtgseBDrq9Y652vSRDvsKCJKOUD+GzTS4Y0Y8pvE= +github.com/hashicorp/yamux v0.1.1/go.mod h1:CtWFDAQgb7dxtzFs4tWbplKIe2jSi3+5vKbgIO0SLnQ= +github.com/hetznercloud/hcloud-go v1.33.1/go.mod h1:XX/TQub3ge0yWR2yHWmnDVIrB+MQbda1pHxkUmDlUME= +github.com/hetznercloud/hcloud-go v1.35.0/go.mod h1:mepQwR6va27S3UQthaEPGS86jtzSY9xWL1e9dyxXpgA= github.com/hexops/autogold v1.3.0 h1:IEtGNPxBeBu8RMn8eKWh/Ll9dVNgSnJ7bp/qHgMQ14o= +github.com/hexops/autogold v1.3.0/go.mod h1:d4hwi2rid66Sag+BVuHgwakW/EmaFr8vdTSbWDbrDRI= +github.com/hexops/autogold/v2 v2.2.1 h1:JPUXuZQGkcQMv7eeDXuNMovjfoRYaa0yVcm+F3voaGY= +github.com/hexops/autogold/v2 v2.2.1/go.mod h1:IJwxtUfj1BGLm0YsR/k+dIxYi6xbeLjqGke2bzcOTMI= github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM= -github.com/hexops/valast v1.4.0 h1:sFzyxPDP0riFQUzSBXTCCrAbbIndHPWMndxuEjXdZlc= -github.com/hinshun/vt10x v0.0.0-20180616224451-1954e6464174 h1:WlZsjVhE8Af9IcZDGgJGQpNflI3+MJSBhsgT5PCtzBQ= -github.com/hinshun/vt10x v0.0.0-20180616224451-1954e6464174/go.mod h1:DqJ97dSdRW1W22yXSB90986pcOyQ7r45iio1KN2ez1A= +github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg= +github.com/hexops/valast v1.4.4 h1:rETyycw+/L2ZVJHHNxEBgh8KUn+87WugH9MxcEv9PGs= +github.com/hexops/valast v1.4.4/go.mod h1:Jcy1pNH7LNraVaAZDLyv21hHg2WBv9Nf9FL6fGxU7o4= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/huandu/xstrings v1.0.0/go.mod h1:4qWG/gcEcfX4z/mBDHJ++3ReCw9ibxbsNJbcucJdbSo= github.com/huandu/xstrings v1.3.1/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= -github.com/huandu/xstrings v1.3.2 h1:L18LIDzqlW6xN2rEkpdV8+oL/IXWJ1APd+vsdYy4Wdw= github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= +github.com/huandu/xstrings v1.3.3 h1:/Gcsuc1x8JVbJ9/rlye4xZnVAbEkGauT8lbebqcQws4= +github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/hudl/fargo v1.3.0/go.mod h1:y3CKSmjA+wD2gak7sUSXTAoopbhU08POFhmITJgmKTg= github.com/iancoleman/strcase v0.2.0 h1:05I4QRnGpI0m37iZQRuskXh+w77mr6Z41lwQzuHLwW0= github.com/iancoleman/strcase v0.2.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= -github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd h1:anPrsicrIi2ColgWTVPk+TrN42hJIWlfPHSBP9S0ZkM= -github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd/go.mod h1:3LVOLeyx9XVvwPgrt2be44XgSqndprz1G18rSk8KD84= -github.com/imdario/mergo v0.3.4/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= -github.com/imdario/mergo v0.3.9/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/ianlancetaylor/demangle v0.0.0-20210905161508-09a460cdf81d/go.mod h1:aYm2/VgdVmcIU8iMfdMvDMsRAQjcfZSKFby6HOFvi/w= +github.com/ianlancetaylor/demangle v0.0.0-20220319035150-800ac71e25c2/go.mod h1:aYm2/VgdVmcIU8iMfdMvDMsRAQjcfZSKFby6HOFvi/w= +github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.8/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.10/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= -github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= -github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= +github.com/imdario/mergo v0.3.15 h1:M8XP7IuFNsqUx6VPK2P9OSmsYsI/YFaGil0uD21V3dM= +github.com/imdario/mergo v0.3.15/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= -github.com/influxdata/cron v0.0.0-20201006132531-4bb0a200dcbe/go.mod h1:XabtPPW2qsCg0tl+kjaPU+cFS+CjQXEXbT1VJvHT4og= -github.com/influxdata/flux v0.161.0/go.mod h1:dALQQHRj+70b+o/9RtaHAAXH3toMs2M58gfY66oEll8= -github.com/influxdata/gosnowflake v1.6.9/go.mod h1:9W/BvCXOKx2gJtQ+jdi1Vudev9t9/UDOEHnlJZ/y1nU= -github.com/influxdata/httprouter v1.3.1-0.20191122104820-ee83e2772f69/go.mod h1:pwymjR6SrP3gD3pRj9RJwdl1j5s3doEEV8gS4X9qSzA= -github.com/influxdata/influx-cli/v2 v2.2.1-0.20220318222112-88ba3464cd07/go.mod h1:p1X8Ga67SzLC35qmwvTCmWXdpZOTHSWWMXJ0zwRTW50= -github.com/influxdata/influxdb-client-go/v2 v2.3.1-0.20210518120617-5d1fff431040/go.mod h1:vLNHdxTJkIf2mSLvGrpj8TCcISApPoXkaxP8g9uRlW8= -github.com/influxdata/influxdb/v2 v2.2.0/go.mod h1:61UMNhpOjPkXR82YJWa4rYKLfaO0IVCqsq7ywIKnhVg= +github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= +github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/influxdata/influxdb1-client v0.0.0-20191209144304-8bf82d3c094d/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo= -github.com/influxdata/influxql v1.1.1-0.20211004132434-7e7d61973256/go.mod h1:gHp9y86a/pxhjJ+zMjNXiQAA197Xk9wLxaz+fGG+kWk= -github.com/influxdata/line-protocol v0.0.0-20200327222509-2487e7298839/go.mod h1:xaLFMmpvUxqXtVkUJfg9QmT88cDaCJ3ZKgdZ78oO8Qo= -github.com/influxdata/pkg-config v0.2.11/go.mod h1:EMS7Ll0S4qkzDk53XS3Z72/egBsPInt+BeRxb0WeSwk= -github.com/influxdata/promql/v2 v2.12.0/go.mod h1:fxOPu+DY0bqCTCECchSRtWfc+0X19ybifQhZoQNF5D8= -github.com/influxdata/tdigest v0.0.2-0.20210216194612-fc98d27c9e8b/go.mod h1:Z0kXnxzbTC2qrx4NaIzYkE1k66+6oEDQTvL95hQFh5Y= +github.com/intel/goresctrl v0.2.0/go.mod h1:+CZdzouYFn5EsxgqAQTEzMfwKwuc0fVdMrT9FCCAVRQ= +github.com/ionos-cloud/sdk-go/v6 v6.1.0/go.mod h1:Ox3W0iiEz0GHnfY9e5LmAxwklsxguuNFEUSu0gVRTME= +github.com/j-keck/arping v0.0.0-20160618110441-2cf9dc699c56/go.mod h1:ymszkNOg6tORTn+6F6j+Jc8TOr5osrynvN6ivFWZ2GA= +github.com/j-keck/arping v1.0.2/go.mod h1:aJbELhR92bSk7tp79AWM/ftfc90EfEi2bQJrbBFOsPw= +github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= +github.com/jackc/chunkreader/v2 v2.0.0/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= +github.com/jackc/chunkreader/v2 v2.0.1/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= +github.com/jackc/pgconn v0.0.0-20190420214824-7e0022ef6ba3/go.mod h1:jkELnwuX+w9qN5YIfX0fl88Ehu4XC3keFuOJJk9pcnA= +github.com/jackc/pgconn v0.0.0-20190824142844-760dd75542eb/go.mod h1:lLjNuW/+OfW9/pnVKPazfWOgNfH2aPem8YQ7ilXGvJE= +github.com/jackc/pgconn v0.0.0-20190831204454-2fabfa3c18b7/go.mod h1:ZJKsE/KZfsUgOEh9hBm+xYTstcNHg7UPMVJqRfQxq4s= +github.com/jackc/pgconn v1.8.0/go.mod h1:1C2Pb36bGIP9QHGBYCjnyhqu7Rv3sGshaQUvmfGIB/o= +github.com/jackc/pgconn v1.9.0/go.mod h1:YctiPyvzfU11JFxoXokUOOKQXQmDMoJL9vJzHH8/2JY= +github.com/jackc/pgconn v1.9.1-0.20210724152538-d89c8390a530/go.mod h1:4z2w8XhRbP1hYxkpTuBjTS3ne3J48K83+u0zoyvg2pI= +github.com/jackc/pgconn v1.12.1/go.mod h1:ZkhRC59Llhrq3oSfrikvwQ5NaxYExr6twkdkMLaKono= +github.com/jackc/pgio v1.0.0/go.mod h1:oP+2QK2wFfUWgr+gxjoBH9KGBb31Eio69xUb0w5bYf8= +github.com/jackc/pgmock v0.0.0-20190831213851-13a1b77aafa2/go.mod h1:fGZlG77KXmcq05nJLRkk0+p82V8B8Dw8KN2/V9c/OAE= +github.com/jackc/pgmock v0.0.0-20201204152224-4fe30f7445fd/go.mod h1:hrBW0Enj2AZTNpt/7Y5rr2xe/9Mn757Wtb2xeBzPv2c= +github.com/jackc/pgmock v0.0.0-20210724152146-4ad1a8207f65/go.mod h1:5R2h2EEX+qri8jOWMbJCtaPWkrrNc7OHwsp2TCqp7ak= +github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= +github.com/jackc/pgproto3 v1.1.0/go.mod h1:eR5FA3leWg7p9aeAqi37XOTgTIbkABlvcPB3E5rlc78= +github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190420180111-c116219b62db/go.mod h1:bhq50y+xrl9n5mRYyCBFKkpRVTLYJVWeCc+mEAI3yXA= +github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190609003834-432c2951c711/go.mod h1:uH0AWtUmuShn0bcesswc4aBTWGvw0cAxIJp+6OB//Wg= +github.com/jackc/pgproto3/v2 v2.0.0-rc3/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= +github.com/jackc/pgproto3/v2 v2.0.0-rc3.0.20190831210041-4c03ce451f29/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= +github.com/jackc/pgproto3/v2 v2.0.6/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgproto3/v2 v2.1.1/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgproto3/v2 v2.3.0/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgservicefile v0.0.0-20200714003250-2b9c44734f2b/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E= +github.com/jackc/pgtype v0.0.0-20190421001408-4ed0de4755e0/go.mod h1:hdSHsc1V01CGwFsrv11mJRHWJ6aifDLfdV3aVjFF0zg= +github.com/jackc/pgtype v0.0.0-20190824184912-ab885b375b90/go.mod h1:KcahbBH1nCMSo2DXpzsoWOAfFkdEtEJpPbVLq8eE+mc= +github.com/jackc/pgtype v0.0.0-20190828014616-a8802b16cc59/go.mod h1:MWlu30kVJrUS8lot6TQqcg7mtthZ9T0EoIBFiJcmcyw= +github.com/jackc/pgtype v1.8.1-0.20210724151600-32e20a603178/go.mod h1:C516IlIV9NKqfsMCXTdChteoXmwgUceqaLfjg2e3NlM= +github.com/jackc/pgtype v1.11.0/go.mod h1:LUMuVrfsFfdKGLw+AFFVv6KtHOFMwRgDDzBt76IqCA4= +github.com/jackc/pgx/v4 v4.0.0-20190420224344-cc3461e65d96/go.mod h1:mdxmSJJuR08CZQyj1PVQBHy9XOp5p8/SHH6a0psbY9Y= +github.com/jackc/pgx/v4 v4.0.0-20190421002000-1b8f0016e912/go.mod h1:no/Y67Jkk/9WuGR0JG/JseM9irFbnEPbuWV2EELPNuM= +github.com/jackc/pgx/v4 v4.0.0-pre1.0.20190824185557-6972a5742186/go.mod h1:X+GQnOEnf1dqHGpw7JmHqHc1NxDoalibchSk9/RWuDc= +github.com/jackc/pgx/v4 v4.12.1-0.20210724153913-640aa07df17c/go.mod h1:1QD0+tgSXP7iUjYm9C1NxKhny7lq6ee99u/z+IHFcgs= +github.com/jackc/pgx/v4 v4.16.1/go.mod h1:SIhx0D5hoADaiXZVyv+3gSm3LCIIINTVO0PficsvWGQ= +github.com/jackc/puddle v0.0.0-20190413234325-e4ced69a3a2b/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v0.0.0-20190608224051-11cab39313c9/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v1.1.3/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v1.2.1/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= +github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jessevdk/go-flags v1.5.0/go.mod h1:Fw0T6WPc1dYxT4mKEZRfG5kJhaTDP9pj1c2EWnYs/m4= -github.com/jhump/protoreflect v1.6.0 h1:h5jfMVslIg6l29nsMs0D8Wj17RDVdNYti0vDN/PZZoE= +github.com/jhump/gopoet v0.0.0-20190322174617-17282ff210b3/go.mod h1:me9yfT6IJSlOL3FCfrg+L6yzUEZ+5jW6WHt4Sk+UPUI= +github.com/jhump/gopoet v0.1.0/go.mod h1:me9yfT6IJSlOL3FCfrg+L6yzUEZ+5jW6WHt4Sk+UPUI= +github.com/jhump/goprotoc v0.5.0/go.mod h1:VrbvcYrQOrTi3i0Vf+m+oqQWk9l72mjkJCYo7UvLHRQ= github.com/jhump/protoreflect v1.6.0/go.mod h1:eaTn3RZAmMBcV0fifFvlm6VHNz3wSkYyXYWUh7ymB74= +github.com/jhump/protoreflect v1.11.0/go.mod h1:U7aMIjN0NWq9swDP7xDdoMfRHb35uiuTd3Z9nFXJf5E= +github.com/jhump/protoreflect v1.15.1 h1:HUMERORf3I3ZdX05WaQ6MIpd/NJ434hTp5YiKgfCL6c= +github.com/jhump/protoreflect v1.15.1/go.mod h1:jD/2GMKKE6OqX8qTjhADU1e6DShO+gavG9e0Q693nKo= github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jmespath/go-jmespath v0.0.0-20160803190731-bd40a432e4c7/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= -github.com/jmespath/go-jmespath v0.3.0/go.mod h1:9QtRXoHjLGCJ5IBSaohpXITPlowMeeYCZ7fLUTSywik= github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= -github.com/jmoiron/sqlx v1.3.4/go.mod h1:2BljVx/86SuTyjE+aPYlHCTNvZrnJXghYGpNiXLBMCQ= +github.com/joefitzgerald/rainbow-reporter v0.1.0/go.mod h1:481CNgqmVHQZzdIbN52CupLJyoVwB10FQ/IQlF1pdL8= github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg= github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/jonboulle/clockwork v0.2.2/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= +github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= -github.com/jsternberg/zap-logfmt v1.2.0/go.mod h1:kz+1CUmCutPWABnNkOu9hOHKdT2q3TDYCcsFy9hpqb0= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= github.com/jung-kurt/gofpdf v1.0.0/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= -github.com/jwilder/encoding v0.0.0-20170811194829-b4e1701a28ef/go.mod h1:Ct9fl0F6iIOGgxJ5npU/IUOhOhqlVrGjyIZc8/MagT0= -github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 h1:Z9n2FFNUXsshfwJMBgNA0RU6/i7WVaAegv3PtuIHPMs= +github.com/karrick/godirwalk v1.8.0/go.mod h1:H5KPZjojv4lE+QYImBI8xVtrBRgYrIVsaRPx4tDPEn4= +github.com/karrick/godirwalk v1.10.3/go.mod h1:RoGL9dQei4vP9ilrpETWE8CLOZ1kiN0LhBygSwrAsHA= github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8= -github.com/kevinburke/go-bindata v3.22.0+incompatible/go.mod h1:/pEEZ72flUW2p0yi30bslSp9YqD9pysLxunQDdb2CPM= -github.com/kevinburke/ssh_config v0.0.0-20201106050909-4977a11b4351/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= -github.com/kevinburke/ssh_config v1.1.0 h1:pH/t1WS9NzT8go394IqZeJTMHVm6Cr6ZJ6AQ+mdNo/o= -github.com/kevinburke/ssh_config v1.1.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= +github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4= +github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= github.com/keybase/go-crypto v0.0.0-20161004153544-93f5b35093ba/go.mod h1:ghbZscTyKdM07+Fw3KSi0hcJm+AlEUWj8QLlPtijN/M= github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/klauspost/asmfmt v1.3.1/go.mod h1:AG8TuvYojzulgDAMCnYn50l/5QV3Bs/tp6j0HLHbNSE= +github.com/klauspost/asmfmt v1.3.2/go.mod h1:AG8TuvYojzulgDAMCnYn50l/5QV3Bs/tp6j0HLHbNSE= github.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= -github.com/klauspost/compress v1.11.2/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= -github.com/klauspost/compress v1.13.1/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= -github.com/klauspost/compress v1.13.5/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= -github.com/klauspost/compress v1.13.6 h1:P76CopJELS0TiO2mebmnzgWaajssP/EszplttgQxcgc= +github.com/klauspost/compress v1.11.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= +github.com/klauspost/compress v1.11.13/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= +github.com/klauspost/compress v1.15.1/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= +github.com/klauspost/compress v1.15.9/go.mod h1:PhcZ0MbTNciWF3rruxRgKxI5NkcHHrHUDtV4Yw2GlzU= +github.com/klauspost/compress v1.15.11 h1:Lcadnb3RKGin4FYM/orgq0qde+nc15E5Cbqg4B9Sx9c= +github.com/klauspost/compress v1.15.11/go.mod h1:QPwzmACJjUTFsnSHH934V6woptycfrDDJnH7hvFVbGM= +github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= +github.com/kolo/xmlrpc v0.0.0-20201022064351-38db28db192b/go.mod h1:pcaDhQK0/NJZEvtCO0qQPPropqV0sJOJ6YW7X+9kRwM= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= +github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/pty v1.1.4/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/pty v1.1.8 h1:AkaSdXYQOWeaO3neb8EM634ahkXXe3jYbVh/F9lq+GI= +github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= +github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k= github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= -github.com/labstack/echo/v4 v4.2.1/go.mod h1:AA49e0DZ8kk5jTOOCKNuPR6oTnBS0dYiM4FW1e6jwpg= -github.com/labstack/gommon v0.3.0/go.mod h1:MULnywXg0yavhxWKc+lOruYdAhDwPK9wf0OL7NoOu+k= -github.com/lann/builder v0.0.0-20180802200727-47ae307949d0/go.mod h1:dXGbAdH5GtBTC4WfIxhKZfyBF/HBFgRZSWwZ9g/He9o= -github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0/go.mod h1:vmVJ0l/dxyfGW6FmdpVm2joNMFikkuWg0EoCKLGUMNw= +github.com/leodido/go-urn v1.2.0 h1:hpXL4XnriNwQ/ABnpepYM/1vCLWNDfUNts8dX3xTG6Y= github.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII= -github.com/lestrrat-go/backoff/v2 v2.0.8/go.mod h1:rHP/q/r9aT27n24JQLa7JhSQZCKBBOiM/uP402WwN8Y= -github.com/lestrrat-go/blackmagic v1.0.0/go.mod h1:TNgH//0vYSs8VXDCfkZLgIrVTTXQELZffUV0tz3MtdQ= -github.com/lestrrat-go/httpcc v1.0.1/go.mod h1:qiltp3Mt56+55GPVCbTdM9MlqhvzyuL6W/NMDA8vA5E= -github.com/lestrrat-go/iter v1.0.1/go.mod h1:zIdgO1mRKhn8l9vrZJZz9TUMMFbQbLeTsbqPDrJ/OJc= -github.com/lestrrat-go/jwx v1.2.25/go.mod h1:zoNuZymNl5lgdcu6P7K6ie2QRll5HVfF4xwxBBK1NxY= -github.com/lestrrat-go/option v1.0.0/go.mod h1:5ZHFbivi4xwXxhxY9XHDe2FHo6/Z7WWmtT7T5nBBp3I= github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lib/pq v1.1.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.10.2/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= +github.com/lib/pq v1.10.6/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20190605223551-bc2310a04743/go.mod h1:qklhhLq1aX+mtWk9cPHPzaBjWImj5ULL6C7HFJtXQMM= github.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0UBX0ZE6WURAspgAczcDHrL4= +github.com/linode/linodego v1.4.0/go.mod h1:PVsRxSlOiJyvG4/scTszpmZDTdgS+to3X6eS8pRrWI8= +github.com/linode/linodego v1.8.0/go.mod h1:heqhl91D8QTPVm2k9qZHP78zzbOdTFLXE9NJc3bcc50= +github.com/linuxkit/virtsock v0.0.0-20201010232012-f8cee7dfc7a3/go.mod h1:3r6x7q95whyfWQpmGZTu3gk3v2YkMi05HEzl7Tf7YEo= +github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= +github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= +github.com/lyft/protoc-gen-star v0.6.0/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= +github.com/lyft/protoc-gen-star v0.6.1/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= +github.com/lyft/protoc-gen-star/v2 v2.0.1/go.mod h1:RcCdONR2ScXaYnQC5tUzxzlpA3WVYF7/opLeUgcQs/o= github.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ= github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= +github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/matryer/is v1.2.0 h1:92UTHpy8CDwaJ08GqLDzhhuixiBUUD1p3AU6PHddz4A= +github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE= +github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0= +github.com/marstr/guid v1.1.0/go.mod h1:74gB1z2wpxxInTG6yaqA7KrtM0NZ+RbrcqDvYHefzho= github.com/matryer/is v1.2.0/go.mod h1:2fLPjFQM9rhQ15aVEtbuwhJinnOqrmgXPNdZsdwlWXA= -github.com/matryer/moq v0.0.0-20190312154309-6cfb0558e1bd/go.mod h1:9ELz6aaclSIGnZBoaSLZ3NAl1VTufbOrXBPvtcy6WiQ= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= -github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= -github.com/mattn/go-colorable v0.1.7/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= -github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= -github.com/mattn/go-ieproxy v0.0.1 h1:qiyop7gCflfhwCzGyeT0gro3sF9AIg9HU98JORTkqfI= -github.com/mattn/go-ieproxy v0.0.1/go.mod h1:pYabZ6IHcRpFh7vIaLfK7rdcWgFEb3SFJ6/gNWuh88E= +github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= +github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ= github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= -github.com/mattn/go-isatty v0.0.13/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= -github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= +github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4= +github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88= github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= -github.com/mattn/go-runewidth v0.0.3/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= -github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= -github.com/mattn/go-runewidth v0.0.13 h1:lTGmDsbAYt5DmK6OnoV7EuIF1wEIFAcxld6ypU4OSgU= -github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= -github.com/mattn/go-sqlite3 v1.11.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= -github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= -github.com/mattn/go-sqlite3 v1.14.7/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= -github.com/mattn/go-tty v0.0.0-20180907095812-13ff1204f104/go.mod h1:XPvLUNfbS4fJH25nqRHfWLMa1ONC8Amw+mIA639KxkE= +github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= +github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= +github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= +github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= +github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= +github.com/mattn/go-sqlite3 v1.14.14/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b h1:j7+1HpAFS1zy5+Q4qx1fWh90gTKwiN4QCGoY9TWyyO4= -github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b/go.mod h1:01TrycV0kFyexm33Z7vhZRXopbI8J3TDReVlkTgMUxE= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/maxbrunsfeld/counterfeiter/v6 v6.2.2/go.mod h1:eD9eIE7cdwcMi9rYluz88Jz2VyhSmden33/aXg4oVIY= +github.com/microsoft/ApplicationInsights-Go v0.4.4/go.mod h1:fKRUseBqkw6bDiXTs3ESTiU/4YTIHsQS4W3fP2ieF4U= github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= -github.com/miekg/dns v1.1.22/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= -github.com/mileusna/useragent v0.0.0-20190129205925-3e331f0949a5/go.mod h1:JWhYAp2EXqUtsxTKdeGlY8Wp44M7VxThC9FEoNGi2IE= +github.com/miekg/dns v1.1.26/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= +github.com/miekg/dns v1.1.41/go.mod h1:p6aan82bvRIyn+zDIv9xYNUpwa73JcSh9BKwknJysuI= +github.com/miekg/dns v1.1.48/go.mod h1:e3IlAVfNqAllflbibAZEWOXOQ+Ynzk/dDozDxY7XnME= +github.com/miekg/dns v1.1.50/go.mod h1:e3IlAVfNqAllflbibAZEWOXOQ+Ynzk/dDozDxY7XnME= +github.com/miekg/pkcs11 v1.0.3/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8/go.mod h1:mC1jAcsrzbxHt8iiaC+zU4b1ylILSosueou12R++wfY= github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod h1:RagcQ7I8IeTMnF8JTXieKnO4Z6JCsikNEzj0DwauVzE= +github.com/mistifyio/go-zfs v2.1.2-0.20190413222219-f784269be439+incompatible/go.mod h1:8AuVvqP/mXw1px98n46wfvcGfQ4ci2FwoAjKYxuo3Z4= github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= -github.com/mitchellh/cli v1.1.4 h1:qj8czE26AU4PbiaPXK5uVmMSM+V5BYsFBiM9HhGRLUA= -github.com/mitchellh/cli v1.1.4/go.mod h1:vTLESy5mRhKOs9KDp0/RATawxP1UqBmdrpVRMnpcvKQ= +github.com/mitchellh/cli v1.1.0/go.mod h1:xcISNoH86gajksDmfB23e/pu+B+GeFRMYmoHXxx3xhI= +github.com/mitchellh/cli v1.1.5 h1:OxRIeJXpAMztws/XHlN2vu6imG5Dpq+j61AzAX5fLng= +github.com/mitchellh/cli v1.1.5/go.mod h1:v8+iFts2sPIKUV1ltktPXMCC8fumSKFItNcD2cLtRR4= github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db/go.mod h1:l0dey0ia/Uv7NcFFVbCLtqEBQbrT4OCwCSKTEv6enCw= github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw= @@ -957,18 +1973,28 @@ github.com/mitchellh/hashstructure v1.0.0/go.mod h1:QjSHrPWS+BGUVBYkbTZWEnOh3G1D github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= -github.com/mitchellh/mapstructure v1.3.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.4.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/mapstructure v1.4.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/osext v0.0.0-20151018003038-5e2d6d41470f/go.mod h1:OkQIRizQZAeMln+1tSwduZz7+Af5oFlKirV/MSYes2A= github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.1/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ= github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= -github.com/mna/pigeon v1.0.1-0.20180808201053-bb0192cfc2ae/go.mod h1:Iym28+kJVnC1hfQvv5MUtI6AiFFzvQjHcvI4RFTG/04= -github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6 h1:dcztxKSvZ4Id8iPpHERQBbIJfabdt4wUm5qy3wOL2Zc= +github.com/mmcloughlin/avo v0.5.0/go.mod h1:ChHFdoV7ql95Wi7vuq2YT1bwCJqiWdZrQ1im3VujLYM= +github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= +github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= +github.com/moby/sys/mountinfo v0.4.0/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= +github.com/moby/sys/mountinfo v0.4.1/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= +github.com/moby/sys/mountinfo v0.5.0/go.mod h1:3bMD3Rg+zkqx8MRYPi7Pyb0Ie97QEBmdxbhnCLlSvSU= +github.com/moby/sys/signal v0.6.0/go.mod h1:GQ6ObYZfqacOwTtlXvcmh9A26dVRul/hbOZn88Kg8Tg= +github.com/moby/sys/symlink v0.1.0/go.mod h1:GGDODQmbFOjFsXvfLVn3+ZRxkch54RkSiGqsZeMYowQ= +github.com/moby/sys/symlink v0.2.0/go.mod h1:7uZVF2dqJjG/NsClqul95CqKOBRQyYSNnJ6BMgR/gFs= +github.com/moby/term v0.0.0-20200312100748-672ec06f55cd/go.mod h1:DdlQx2hp0Ss5/fLikoLlEeIYiATotOjgB//nb973jeo= +github.com/moby/term v0.0.0-20210610120745-9d4ed1856297/go.mod h1:vgPCkQMyxTZ7IDy8SXRufE172gr8+K/JE/7hHFxHW3A= github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6/go.mod h1:E2VnQOmVuvZB6UYnnDB0qG5Nq/1tD9acaOpo6xmt0Kw= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= @@ -977,9 +2003,24 @@ github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lN github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/modocache/gover v0.0.0-20171022184752-b58185e213c5/go.mod h1:caMODM3PzxT8aQXRPkAt8xlV/e7d7w8GM5g0fa5F0D8= +github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= +github.com/montanaflynn/stats v0.6.6/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow= github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= -github.com/mschoch/smat v0.0.0-20160514031455-90eadee771ae/go.mod h1:qAyveg+e4CE+eKJXWVjKXM4ck2QobLqTDytGJbLLhJg= +github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ= +github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI= +github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo= +github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= +github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo= +github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s= +github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8= +github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo= +github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/natefinch/atomic v1.0.1 h1:ZPYKxkqQOx3KZ+RsbnP/YsgvxWQPGxjC0oBt2AhwV0A= github.com/natefinch/atomic v1.0.1/go.mod h1:N/D/ELrljoqDyT3rZrsUmtsuzvHkeB/wWjHV22AZRbM= github.com/nats-io/jwt v0.3.0/go.mod h1:fRYCDE99xlTsqUzISS1Bi75UBJ6ljOJQOAAu5VglpSg= @@ -989,36 +2030,75 @@ github.com/nats-io/nats.go v1.9.1/go.mod h1:ZjDU1L/7fJ09jvUSRVBR2e7+RnLiiIQyqyzE github.com/nats-io/nkeys v0.1.0/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w= github.com/nats-io/nkeys v0.1.3/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w= github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c= +github.com/ncw/swift v1.0.47/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/nightlyone/lockfile v1.0.0 h1:RHep2cFKK4PonZJDdEl4GmkabuhbsRMgk/k3uAmxBiA= -github.com/nobl9/nobl9-go v0.8.1 h1:8u9ts16Zkg+vZAdXGtC7xtDlbxDm4bQ6ag3jUEjVcT0= -github.com/nobl9/nobl9-go v0.8.1/go.mod h1:V+SUN5VoHZrBtNQ7ghBEFIzqHw/IWPzWAm6KF4agKvE= -github.com/nobl9/terraform-provider-nobl9 v0.10.0 h1:IHuWziR6toh2GfYJY2sqnqyhZKfU/2THiOjunA57nU8= -github.com/nobl9/terraform-provider-nobl9 v0.10.0/go.mod h1:1+oYvgeZn+J2sAomQAsSYZ/9AilgGCnVw5fIew5eWYQ= -github.com/nsf/jsondiff v0.0.0-20200515183724-f29ed568f4ce h1:RPclfga2SEJmgMmz2k+Mg7cowZ8yv4Trqw9UsJby758= -github.com/nsf/jsondiff v0.0.0-20200515183724-f29ed568f4ce/go.mod h1:uFMI8w+ref4v2r9jz+c9i1IfIttS/OkmLfrk1jne5hs= +github.com/nightlyone/lockfile v1.0.0/go.mod h1:rywoIealpdNse2r832aiD9jRk8ErCatROs6LzC841CI= +github.com/nobl9/nobl9-go v0.78.1-0.20240305144417-5332fc9ea955 h1:5XQupNwaeoLNTwwusil59tCGKCLz+BVc/q1y0ilknYc= +github.com/nobl9/nobl9-go v0.78.1-0.20240305144417-5332fc9ea955/go.mod h1:mYgav7wQHhpTzs53KdyPnaY5eapqJJJTX+S5sJq5t90= +github.com/nobl9/terraform-provider-nobl9 v0.24.5 h1:ULFBhyHLO5rhCwYEelNSTRCfpf9vSTxdrTnQI8UP/08= +github.com/nobl9/terraform-provider-nobl9 v0.24.5/go.mod h1:uFm/1zvjSEpb+BszRBXBdFsOXjihFHOM3X4OxVeXilc= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= +github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= github.com/oklog/oklog v0.3.2/go.mod h1:FCV+B7mhrz4o+ueLpx+KqkyXRGMWOYEvfiXtdGtbWGs= github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA= github.com/oklog/run v1.1.0 h1:GEenZ1cK0+q0+wsJew9qUg/DyD8k3JzYsZAi5gYi2mA= github.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DVU= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= -github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= +github.com/onsi/ginkgo v0.0.0-20151202141238-7f8ab55aaf3b/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.10.3/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.13.0/go.mod h1:+REjRxOmWfHCjfv9TTWB1jD1Frx4XydAD3zm1lskyM0= +github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= +github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0= +github.com/onsi/gomega v0.0.0-20151007035656-2152b45fa28a/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= -github.com/onsi/gomega v1.8.1/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= +github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.10.3/go.mod h1:V9xEwhxec5O8UDM77eCW8vLymOMltsqPVYWrpDsH8xc= +github.com/onsi/gomega v1.15.0/go.mod h1:cIuvLEne0aoVhAgh/O6ac0Op8WWw9H6eYCriF+tEHG0= +github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= +github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk= +github.com/opencontainers/go-digest v0.0.0-20170106003457-a6d0ee40d420/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v1.0.0-rc1.0.20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= +github.com/opencontainers/image-spec v1.0.0/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.2-0.20211117181255-693428a734f5/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= github.com/opencontainers/runc v0.0.0-20190115041553-12f6a991201f/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc8.0.20190926000215-3e425f80a8c9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc93/go.mod h1:3NOsor4w32B2tC0Zbl8Knk4Wg84SM2ImC1fxBuqJ/H0= +github.com/opencontainers/runc v1.0.2/go.mod h1:aTaHFFwQXuA71CiyxOdFFIorAoemI04suvGRQFzWTD0= +github.com/opencontainers/runc v1.1.0/go.mod h1:Tj1hFw6eFWp/o33uxGf5yF2BX5yz2Z6iptFpuvbbKqc= github.com/opencontainers/runtime-spec v0.1.2-0.20190507144316-5b71a03e2700/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.1/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.2-0.20190207185410-29686dbc5559/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.2/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.3-0.20200929063507-e6143ca7d51d/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-tools v0.0.0-20181011054405-1d69bd0f9c39/go.mod h1:r3f7wjNzSs2extwzU3Y+6pKfobzPh+kKFJ3ofN+3nfs= +github.com/opencontainers/selinux v1.6.0/go.mod h1:VVGKuOLlE7v4PJyT6h7mNWvq1rzqiriPsEqVhc+svHE= +github.com/opencontainers/selinux v1.8.0/go.mod h1:RScLhm78qiWa2gbVCcGkC7tCGdgk3ogry1nUQF8Evvo= +github.com/opencontainers/selinux v1.8.2/go.mod h1:MUIHuUEvKB1wtJjQdOyYRgOnLD2xAPP8dBsCoU0KuF8= +github.com/opencontainers/selinux v1.10.0/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI= github.com/opentracing-contrib/go-observer v0.0.0-20170622124052-a52f23424492/go.mod h1:Ngi6UdF0k5OKD5t5wlmGhe/EDKPoUM3BXZSSfIuJbis= github.com/opentracing/basictracer-go v1.0.0/go.mod h1:QfBfYuafItcjQuMwinw9GhYKwFXS9KnPs5lxoYwgW74= github.com/opentracing/basictracer-go v1.1.0 h1:Oa1fTSBvAl8pa3U+IJYqrKm0NALwH9OsgwOqDv4xJW0= @@ -1033,24 +2113,33 @@ github.com/openzipkin/zipkin-go v0.2.1/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnh github.com/openzipkin/zipkin-go v0.2.2/go.mod h1:NaW6tEwdmWMaCDZzg8sh+IBNOxHMPnhQw8ySjnjRyN4= github.com/pact-foundation/pact-go v1.0.4/go.mod h1:uExwJY4kCzNPcHRj+hCR/HBbOOIwwtUjcrb0b5/5kLM= github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= +github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0MwY= github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= -github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ= github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= +github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE= +github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrapLU/GW4pbc= +github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= +github.com/pgavlin/fx v0.1.6 h1:r9jEg69DhNoCd3Xh0+5mIbdbS3PqWrVWujkY76MFRTU= +github.com/pgavlin/fx v0.1.6/go.mod h1:KWZJ6fqBBSh8GxHYqwYCf3rYE7Gp2p0N8tJp8xv9u9M= github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 h1:LoCV5cscNVWyK5ChN/uCoIFJz8jZD63VQiGJIRgr6uo= github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386/go.mod h1:MRxHTJrf9FhdfNQ8Hdeh9gmHevC9RJE/fu8M3JIGjoE= -github.com/philhofer/fwd v1.0.0/go.mod h1:gk3iGcWd9+svBvR0sR+KPcfE+RNWozjowpeBVG3ZVNU= github.com/phpdave11/gofpdf v1.4.2/go.mod h1:zpO6xFn9yxo3YLyMvW8HcKWVdbNqgIfOOp2dXMnm1mY= github.com/phpdave11/gofpdi v1.0.12/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI= +github.com/phpdave11/gofpdi v1.0.13/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI= github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc= github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= github.com/pierrec/lz4 v2.5.2+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= github.com/pierrec/lz4 v2.6.1+incompatible h1:9UY3+iC23yxF0UfGaYrGplQ+79Rg+h/q9FV9ix19jjM= github.com/pierrec/lz4 v2.6.1+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= -github.com/pierrec/lz4/v4 v4.1.8/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= -github.com/pierrec/lz4/v4 v4.1.9/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= -github.com/pierrec/lz4/v4 v4.1.11/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= +github.com/pierrec/lz4/v4 v4.1.15/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= +github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4= +github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI= +github.com/pkg/browser v0.0.0-20180916011732-0a3d74bf9ce4/go.mod h1:4OwLy04Bl9Ef3GJJCoec+30X3LQs/0/m4HFRt/2LUSA= +github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4/go.mod h1:N6UoU20jOqggOuDwUaBQpluzLNDqif3kq9z2wpdYEfQ= +github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8 h1:KoWmjvw+nsYOo29YJK9vDA65RGE3NrOnUtO7a+RF9HU= github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -1060,7 +2149,7 @@ github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/profile v1.2.1/go.mod h1:hJw3o1OdXxsrSjjVksARp5W95eeEaEfptyVZyv6JUPA= github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZI= -github.com/pkg/term v0.0.0-20180730021639-bffc007b7fd5/go.mod h1:eCbImbZ95eXtAUIbLAuAVnBnwf83mjf6QIVH8SHYwqQ= +github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pkg/term v1.1.0 h1:xIAAdCMh3QIAy+5FrE8Ad8XoDhEU4ufwbaSozViP9kk= github.com/pkg/term v1.1.0/go.mod h1:E25nymQcrSllhX42Ok8MRm1+hyBdHY0dCeiKZ9jpNGw= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= @@ -1069,112 +2158,176 @@ github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndr github.com/posener/complete v1.2.1/go.mod h1:6gapUrK/U1TAN7ciCoNRIdVC5sbdBTUh1DKN0g6uH7E= github.com/posener/complete v1.2.3 h1:NP0eAhjcjImqslEwo/1hq7gpajME0fTLTezBKDqfXqo= github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSgv7Sy7s/s= +github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= +github.com/prashantv/gostub v1.1.0/go.mod h1:A5zLQHz7ieHGG7is6LLXLz7I8+3LZzsrV0P1IAHhP5U= +github.com/prometheus/alertmanager v0.24.0/go.mod h1:r6fy/D7FRuZh5YbnX6J3MBY0eI4Pb5yPYS7/bPSXXqI= +github.com/prometheus/client_golang v0.0.0-20180209125602-c332b6f63c06/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v0.9.2/go.mod h1:OsXs2jCmiKlQ1lTBmv21f2mNfw4xf/QclQDMrYNZzcM= github.com/prometheus/client_golang v0.9.3-0.20190127221311-3c4408c8b829/go.mod h1:p2iRAGwDERtqlqzRXnrOVns+ignqQo//hLXqYxZYVNs= github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= github.com/prometheus/client_golang v1.3.0/go.mod h1:hJaj2vgQTGQmVCsAACORcieXFeDPbaTKGT+JTgUa3og= github.com/prometheus/client_golang v1.4.0/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU= -github.com/prometheus/client_golang v1.5.1/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= +github.com/prometheus/client_golang v1.12.2/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= +github.com/prometheus/client_model v0.0.0-20171117100541-99fa1f4be8e5/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190115171406-56726106282f/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.1.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.3.0/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w= +github.com/prometheus/common v0.0.0-20180110214958-89604d197083/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= -github.com/prometheus/common v0.0.0-20181126121408-4724e9255275/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= github.com/prometheus/common v0.2.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= github.com/prometheus/common v0.7.0/go.mod h1:DjGbpBbp5NYNiECxcL/VnbXCCaQpKd3tt26CguLLsqA= github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= +github.com/prometheus/common v0.29.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= +github.com/prometheus/common v0.30.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= +github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= +github.com/prometheus/common v0.34.0/go.mod h1:gB3sOl7P0TvJabZpLY5uQMpUqRCPPCyRLCZYc7JZTNE= +github.com/prometheus/common v0.37.0/go.mod h1:phzohg0JFMnBEFGxTDbfu3QyL5GI8gTQJFhYO5B3mfA= +github.com/prometheus/common/assets v0.1.0/go.mod h1:D17UVUE12bHbim7HzwUvtqm6gwBEaDQ0F+hIGbFbccI= +github.com/prometheus/common/assets v0.2.0/go.mod h1:D17UVUE12bHbim7HzwUvtqm6gwBEaDQ0F+hIGbFbccI= +github.com/prometheus/common/sigv4 v0.1.0/go.mod h1:2Jkxxk9yYvCkE5G1sQT7GuEXm57JrvHu9k5YwTjsNtI= +github.com/prometheus/exporter-toolkit v0.7.1/go.mod h1:ZUBIj498ePooX9t/2xtDjeQYwvRpiPP2lh5u4iblj2g= github.com/prometheus/procfs v0.0.0-20180125133057-cb4147076ac7/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.0.0-20181204211112-1dc9a6cbc91a/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20190117184657-bf6a532e95b1/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.0-20190522114515-bc1a522cf7b1/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= +github.com/prometheus/procfs v0.0.5/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.2.0/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/prometheus v0.35.0/go.mod h1:7HaLx5kEPKJ0GDgbODG0fZgXbQ8K/XjZNJXQmbmgQlY= +github.com/prometheus/prometheus v0.37.0/go.mod h1:egARUgz+K93zwqsVIAneFlLZefyGOON44WyAp4Xqbbk= github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= -github.com/pulumi/pulumi-java/pkg v0.5.3 h1:wqiP6TnKZm+ocTRLVwjzmd3fApCKQkvwba0qoh7zMV4= -github.com/pulumi/pulumi-java/pkg v0.5.3/go.mod h1:leMQvQ5IR3APhejwcWSfwZnkHosKHygKRaWkIyhsvtw= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.28.1 h1:eA9UqT9fywdd47eB1rLfEOwx+FE24+DFlFxsm2dIL9k= -github.com/pulumi/pulumi-terraform-bridge/v3 v3.28.1/go.mod h1:vJGI7DS84/eqsOjn1lOml/PpnYqO/f+2PQSf0X/VLyw= -github.com/pulumi/pulumi-yaml v0.5.4 h1:O4H0PD0hiJjpci0GJFSkihS+yC8rWACKxuLyjYVt5wo= -github.com/pulumi/pulumi-yaml v0.5.4/go.mod h1:e8BcP30yunk/u3mLXDykhtEQf8tTItYgQzPHDmRvJcg= -github.com/pulumi/pulumi/pkg/v3 v3.38.0 h1:JeL4iFCpW+56CPih/FOzdEFE4UyYBmiBt7g2hlu6JyU= -github.com/pulumi/pulumi/pkg/v3 v3.38.0/go.mod h1:AYMD/cLcFwYW0lZDTIgdy+QyCj3t/pTS1hNpUNwiXAs= -github.com/pulumi/pulumi/sdk/v3 v3.38.0 h1:xqO+t81RDY9w+GT+YRUZDHuvfYEz+vgQBkdtLe/8i7U= -github.com/pulumi/pulumi/sdk/v3 v3.38.0/go.mod h1:3/6Fr/c01n7Hw7mtAlO7X8WMBgLP5AVTyYe4CRfJQc4= -github.com/pulumi/terraform-diff-reader v0.0.0-20201211191010-ad4715e9285e h1:Dik4Qe/+xguB8JagPyXNlbOnRiXGmq/PSPQTGunYnTk= -github.com/pulumi/terraform-diff-reader v0.0.0-20201211191010-ad4715e9285e/go.mod h1:sZ9FUzGO+yM41hsQHs/yIcj/Y993qMdBxBU5mpDmAfQ= -github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20220824175045-450992f2f5b9 h1:JMw+t5I+6E8Lna7JF+ghAoOLOl23UIbshJyRNP+K1HU= -github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20220824175045-450992f2f5b9/go.mod h1:mYPs/uchNcBq7AclQv9QUtSf9iNcfp1Ag21jqTlDf2M= +github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0= +github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= +github.com/pulumi/esc v0.6.2 h1:+z+l8cuwIauLSwXQS0uoI3rqB+YG4SzsZYtHfNoXBvw= +github.com/pulumi/esc v0.6.2/go.mod h1:jNnYNjzsOgVTjCp0LL24NsCk8ZJxq4IoLQdCT0X7l8k= +github.com/pulumi/providertest v0.0.10 h1:bx77G0JYPO2Alf/SHRP05XpAYMrboKJkMIVkbFclVhI= +github.com/pulumi/providertest v0.0.10/go.mod h1:HsxjVsytcMIuNj19w1lT2W0QXY0oReXl1+h6eD2JXP8= +github.com/pulumi/pulumi-java/pkg v0.9.9 h1:F3xJUtMFDVrTGCxb7Rh2Q8s6tj7gMfM5pcoUthz7vFY= +github.com/pulumi/pulumi-java/pkg v0.9.9/go.mod h1:LVF1zeg3UkToHWxb67V+zEIxQc3EdMnlot5NWSt+FpA= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.73.0 h1:8EVPKIISUQe/iABfvPa6pe9sOCz6jQViAHx5/cK02LQ= +github.com/pulumi/pulumi-terraform-bridge/v3 v3.73.0/go.mod h1:gdaUiZPVbL5NyfANwaO4Bi87ds822JOm8BHJxr69OXU= +github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.7 h1:Z9vmfVTW0QtJrWh+DRR3UKiRZX23f45lFtdhQiUHEqE= +github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.7/go.mod h1:T9zHpTHyVz2EyobzByFFpjfqgGtXO4C4bNqC0j29D2I= +github.com/pulumi/pulumi-yaml v1.5.0 h1:HfXu+WSFNpycref9CK935cViYJzXwSgHGWM/RepyrW0= +github.com/pulumi/pulumi-yaml v1.5.0/go.mod h1:AvKSmEQv2EkPbpvAQroR1eP1LkJGC8z5NDM34rVWOtg= +github.com/pulumi/pulumi/pkg/v3 v3.104.2 h1:pxioQCKuTrGyeCmdxkR2M03nFBrPMhPnuHMaaTfxY1Y= +github.com/pulumi/pulumi/pkg/v3 v3.104.2/go.mod h1:AvF18k2O6rZIV27fF9i0UueP/PjiqSJeRMiOi3cVgEM= +github.com/pulumi/pulumi/sdk/v3 v3.104.2 h1:aOwUkrlsyEWrL1jlHqn2/36zMSPQrVUYUyZPqstrmjc= +github.com/pulumi/pulumi/sdk/v3 v3.104.2/go.mod h1:Ml3rpGfyZlI4zQCG7LN2XDSmH4XUNYdyBwJ3yEr/OpI= +github.com/pulumi/schema-tools v0.1.2 h1:Fd9xvUjgck4NA+7/jSk7InqCUT4Kj940+EcnbQKpfZo= +github.com/pulumi/schema-tools v0.1.2/go.mod h1:62lgj52Tzq11eqWTIaKd+EVyYAu5dEcDJxMhTjvMO/k= +github.com/pulumi/terraform-diff-reader v0.0.2 h1:kTE4nEXU3/SYXESvAIem+wyHMI3abqkI3OhJ0G04LLI= +github.com/pulumi/terraform-diff-reader v0.0.2/go.mod h1:sZ9FUzGO+yM41hsQHs/yIcj/Y993qMdBxBU5mpDmAfQ= +github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240129205329-74776a5cd5f9 h1:p8vtMw4abpcmwE0v8b6x2GKZQKisrmdjojkoP3oelak= +github.com/pulumi/terraform-plugin-sdk/v2 v2.0.0-20240129205329-74776a5cd5f9/go.mod h1:qH/34G25Ugdj5FcM95cSoXzUgIbgfhVLXCcEcYaMwq8= +github.com/rakyll/embedmd v0.0.0-20171029212350-c8060a0752a2/go.mod h1:7jOTMgqac46PZcF54q6l2hkLEG8op93fZu61KmxWDV4= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= -github.com/retailnext/hllpp v1.0.0/go.mod h1:RDpi1RftBQPUCDRw6SmxeaREsAaRKnOclghuzp/WRzc= -github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY= +github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= +github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= -github.com/rjeczalik/notify v0.9.2 h1:MiTWrPj55mNDHEiIX5YUSKefw/+lCQVoAFmD6oQm5w8= -github.com/rjeczalik/notify v0.9.2/go.mod h1:aErll2f0sUX9PXZnVNyeiObbmTlk5jnMoCa4QEjJeqM= +github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= +github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= +github.com/rogpeppe/go-charset v0.0.0-20180617210344-2471d30d28b4/go.mod h1:qgYeAmZ5ZIpBWTGllZSQnw97Dj+woV0toclVaRGI8pc= +github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg= -github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o= +github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= +github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= +github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= +github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= +github.com/rs/cors v1.8.2/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU= github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ= -github.com/rs/zerolog v1.21.0/go.mod h1:ZPhntP/xmq1nnND05hhpAh2QMhSsA4UN3MGZ6O2J3hM= +github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= +github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/ruudk/golang-pdf417 v0.0.0-20181029194003-1af4ab5afa58/go.mod h1:6lfFZQK844Gfx8o5WFuvpxWRwnSoipWe/p622j1v06w= +github.com/ruudk/golang-pdf417 v0.0.0-20201230142125-a7e3863a1245/go.mod h1:pQAZKsJ8yyVxGRWYNEm9oFB8ieLgKFnamEyDmSA0BRk= github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/ryanuber/columnize v2.1.0+incompatible/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk= github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc= github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 h1:OkMGxebDjyw0ULyrTYWeN0UNCCkmCWfjPnIA2W6oviI= github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06/go.mod h1:+ePHsJ1keEjQtpvf9HHw0f4ZeJ0TLRsxhunSI2hYJSs= +github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= +github.com/safchain/ethtool v0.0.0-20210803160452-9aa261dae9b1/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E= github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 h1:TToq11gyfNlrMFZiYujSekIsPd9AmsA2Bj/iv+s4JHE= github.com/santhosh-tekuri/jsonschema/v5 v5.0.0/go.mod h1:FKdcjfQW6rpZSnxxUvEA5H/cDPdvJ/SZJQLWWXWGrZ0= github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= -github.com/satori/go.uuid v1.2.1-0.20181028125025-b2ce2384e17b/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= +github.com/scaleway/scaleway-sdk-go v1.0.0-beta.9/go.mod h1:fCa7OJZ/9DRTnOKmxvT6pn+LPWUptQAmHF/SBJUGEcg= +github.com/sclevine/agouti v3.0.0+incompatible/go.mod h1:b4WX9W9L1sfQKXeJf1mUTLZKJ48R1S7H23Ji7oFO5Bw= +github.com/sclevine/spec v1.2.0/go.mod h1:W4J29eT/Kzv7/b9IWLB055Z+qvVC9vt0Arko24q7p+U= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/sebdah/goldie v1.0.0/go.mod h1:jXP4hmWywNEwZzhMuv2ccnqTSFpuq8iyQhtQdkkZBH4= +github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo= +github.com/seccomp/libseccomp-golang v0.9.2-0.20210429002308-3879420cc921/go.mod h1:JA8cRccbGaA1s33RQf7Y1+q9gHmZX1yB/z9WDN1C6fg= github.com/segmentio/asm v1.1.3 h1:WM03sfUOENvvKexOLp+pCqgb/WDjsi7EK8gIsICtzhc= github.com/segmentio/asm v1.1.3/go.mod h1:Ld3L4ZXGNcSLRg4JBsZ3//1+f/TjYl0Mzen/DQy1EJg= github.com/segmentio/encoding v0.3.5 h1:UZEiaZ55nlXGDL92scoVuw00RmiRCazIEmvPSbSvt8Y= github.com/segmentio/encoding v0.3.5/go.mod h1:n0JeuIqEQrQoPDGsjo8UNd1iA0U8d8+oHAA4E3G3OxM= -github.com/segmentio/kafka-go v0.1.0/go.mod h1:X6itGqS9L4jDletMsxZ7Dz+JFWxM6JHfPOCvTvk+EJo= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= -github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= +github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= +github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= +github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4= github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= -github.com/shurcooL/go-goon v0.0.0-20210110234559-7585751d9a17 h1:lRAUE0dIvigSSFAmaM2dfg7OH8T+a8zJ5smEh09a/GI= +github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749/go.mod h1:ZY1cvUeJuFPAdZ/B6v7RHavJWZn2YPVFQ1OSXhCGOkg= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= +github.com/shurcooL/vfsgen v0.0.0-20200824052919-0d455de96546/go.mod h1:TrYk7fJVaAttu97ZZKrO9UbRa8izdowaMIZcxYMbVaw= github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= +github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= +github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/skeema/knownhosts v1.2.0/go.mod h1:g4fPeYpque7P0xefxtGzV81ihjC8sX2IqpAoNkjxbMo= +github.com/skeema/knownhosts v1.2.1 h1:SHWdIUa82uGZz+F+47k8SY4QhhI291cXCpopT1lK2AQ= +github.com/skeema/knownhosts v1.2.1/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= -github.com/smartystreets/assertions v1.0.1/go.mod h1:kHHU4qYBaI3q23Pp3VPrmWhuIUrLW/7eUrw0BU5VaoM= github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= -github.com/smartystreets/goconvey v0.0.0-20190731233626-505e41936337/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= github.com/sony/gobreaker v0.4.1/go.mod h1:ZKptC7FHNvhBz7dN2LGjPVBz2sZJmc0/PkyDJOjmxWY= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= -github.com/spf13/afero v1.6.0 h1:xoax2sJ2DT8S8xA2paPFjDCScCNeWsg75VG0DLRreiY= +github.com/spf13/afero v1.3.3/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4= github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= +github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= +github.com/spf13/afero v1.9.5 h1:stMpOSZFs//0Lv29HduCmli3GUfpFoF3Y1Q/aXj/wVM= +github.com/spf13/afero v1.9.5/go.mod h1:UBogFpq8E9Hx+xc5CNTTEpTnuHVmXDwZcZcE1eb/UhQ= github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w= @@ -1182,9 +2335,11 @@ github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155 github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= -github.com/spf13/cobra v1.4.0 h1:y+wJpx64xcgO1V+RcnwW0LEHxTKRi2ZDPSBjWnrg88Q= -github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= +github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= +github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= +github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= +github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.2/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= @@ -1192,15 +2347,21 @@ github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnIn github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE= -github.com/spf13/viper v1.6.1/go.mod h1:t3iDnF5Jlj76alVNuyFBk5oUMCvsrkbvZK0WQdfDi5k= +github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= +github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980/go.mod h1:AO3tvPzVZ/ayst6UlUKUv6rcPQInYe3IknH3jYhAKu8= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw= github.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw= github.com/streadway/handy v0.0.0-20190108123426-d5acb3125c2a/go.mod h1:qNTQ5P5JnDBl6z3cMAg/SywNDC5ABu5ApDIw6lUbRmI= +github.com/stretchr/objx v0.0.0-20180129172003-8a3f7159479f/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.2.0 h1:Hbg2NidpLE8veEBkEZTL3CvlkUIVzuU9jDplZO54c48= github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= -github.com/stretchr/testify v1.2.1/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= +github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= @@ -1208,21 +2369,31 @@ github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5 github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.7.2 h1:4jaiDzPyXQvSd7D0EjG45355tLlV3VOECpq10pLC+8s= github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= +github.com/stretchr/testify v1.7.5/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.3/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= -github.com/testcontainers/testcontainers-go v0.0.0-20190108154635-47c0da630f72/go.mod h1:wt/nMz68+kIO4RoguOZzsdv1B3kTYw+SuIKyJYRQpgE= +github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/tchap/go-patricia v2.2.6+incompatible/go.mod h1:bmLyhP68RS6kStMGxByiQ23RP/odRBOTVjwp2cDyi6I= +github.com/teambition/rrule-go v1.8.2 h1:lIjpjvWTj9fFUZCmuoVDrKVOtdiyzbzc93qTmRVe/J8= +github.com/teambition/rrule-go v1.8.2/go.mod h1:Ieq5AbrKGciP1V//Wq8ktsTXwSwJHDD5mD/wLBGl3p4= +github.com/tedsuo/ifrit v0.0.0-20180802180643-bea94bb476cc/go.mod h1:eyZnKCc955uh98WQvzOm0dgAeLnf2O0Rz0LPoC5ze+0= github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= -github.com/tinylib/msgp v1.1.0/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE= +github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM= +github.com/tv42/httpunix v0.0.0-20191220191345-2ba4b9c3382c/go.mod h1:hzIxponao9Kjc7aWznkXaL4U4TWaDSs8zcsY4Ka08nM= github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68= github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE= -github.com/uber-go/tally v3.3.15+incompatible/go.mod h1:YDTIBxdXyOU/sCWilKB4bgyufu1cEi0jdVnRdxvjnmU= -github.com/uber/athenadriver v1.1.4/go.mod h1:tQjho4NzXw55LGfSZEcETuYydpY1vtmixUabHkC1K/E= -github.com/uber/jaeger-client-go v2.28.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= @@ -1231,62 +2402,92 @@ github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGr github.com/ugorji/go v1.1.7/go.mod h1:kZn38zHttfInRq0xu/PH0az30d+z6vm202qpg1oXVMw= github.com/ugorji/go/codec v1.1.7/go.mod h1:Ax+UKWsSmolVDwsd+7N3ZtXu+yMGCf907BLYF3GoBXY= github.com/ulikunitz/xz v0.5.5/go.mod h1:2bypXElzHzzJZwzH67Y6wb67pO62Rzfn7BSiF4ABRW8= -github.com/ulikunitz/xz v0.5.8 h1:ERv8V6GKqVi23rgu5cj9pVfVzJbOqAY2Ntl88O6c2nQ= -github.com/ulikunitz/xz v0.5.8/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= +github.com/ulikunitz/xz v0.5.10 h1:t92gobL9l3HE202wg3rlk19F6X+JOxl9BBrCCMYEYd8= +github.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= -github.com/urfave/cli v1.22.5/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= -github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= -github.com/valyala/fasttemplate v1.0.1/go.mod h1:UQGH1tvbgY+Nz5t2n7tXsz52dQxojPUpymEIMZ47gx8= -github.com/valyala/fasttemplate v1.2.1/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ= -github.com/vertica/vertica-sql-go v1.1.1/go.mod h1:fGr44VWdEvL+f+Qt5LkKLOT7GoxaWdoUCnPBU9h6t04= +github.com/urfave/cli v1.22.2/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= +github.com/vishvananda/netlink v0.0.0-20181108222139-023a6dafdcdf/go.mod h1:+SR5DhBJrl6ZM7CoCKvpw5BKroDKQ+PJqOg65H/2ktk= +github.com/vishvananda/netlink v1.1.0/go.mod h1:cTgwzPIzzgDAYoQrMm0EdrjRUBkTqKYppBueQtXaqoE= +github.com/vishvananda/netlink v1.1.1-0.20201029203352-d40f9887b852/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= +github.com/vishvananda/netlink v1.1.1-0.20210330154013-f5de75959ad5/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= +github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc/go.mod h1:ZjcWmFBXmLKZu9Nxj3WKYEafiSqer2rnvPr0en9UNpI= +github.com/vishvananda/netns v0.0.0-20191106174202-0a2b9b5464df/go.mod h1:JP3t17pCcGlemwknint6hfoeCVQrEMVwxRLRjXpq+BU= +github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= +github.com/vishvananda/netns v0.0.0-20210104183010-2eb08e3e575f/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= github.com/vmihailenco/msgpack v4.0.1+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= github.com/vmihailenco/msgpack v4.0.4+incompatible h1:dSLoQfGFAo3F6OoNhwUmLwVgaUXK79GlxNBwueZn0xI= github.com/vmihailenco/msgpack v4.0.4+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= -github.com/vmihailenco/msgpack/v4 v4.3.12 h1:07s4sz9IReOgdikxLTKNbBdqDMLsjPKXwvCazn8G65U= -github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4= -github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI= -github.com/vmihailenco/tagparser v0.1.2 h1:gnjoVuB/kljJ5wICEEOpx98oXMWPLj22G67Vbd1qPqc= -github.com/vmihailenco/tagparser v0.1.2/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI= -github.com/willf/bitset v1.1.9/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4= -github.com/xanzy/ssh-agent v0.3.0/go.mod h1:3s9xbODqPuuhK9JV1R321M/FlMZSBvE5aY6eAcqrDh0= -github.com/xanzy/ssh-agent v0.3.1 h1:AmzO1SSWxw73zxFZPRwaMN1MohDw8UyHnmuxyceTEGo= -github.com/xanzy/ssh-agent v0.3.1/go.mod h1:QIE4lCeL7nkC25x+yA3LBIYfwCc1TFziCtG7cBAac6w= +github.com/vmihailenco/msgpack/v5 v5.3.5/go.mod h1:7xyJ9e+0+9SaZT0Wt1RGleJXzli6Q/V5KbhBonMG9jc= +github.com/vmihailenco/msgpack/v5 v5.4.1 h1:cQriyiUvjTwOHg8QZaPihLWeRAAVoCpE00IUPn0Bjt8= +github.com/vmihailenco/msgpack/v5 v5.4.1/go.mod h1:GaZTsDaehaPpQVyxrf5mtQlH+pc21PIudVV/E3rRQok= +github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAhO7/IwNM9g= +github.com/vmihailenco/tagparser/v2 v2.0.0/go.mod h1:Wri+At7QHww0WTrCBeu4J6bNtoV6mEfg5OIWRZA9qds= +github.com/vultr/govultr/v2 v2.17.2/go.mod h1:ZFOKGWmgjytfyjeyAdhQlSWwTjh2ig+X49cAp50dzXI= +github.com/willf/bitset v1.1.11-0.20200630133818-d5bec3311243/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4= +github.com/willf/bitset v1.1.11/go.mod h1:83CECat5yLh5zVOf4P1ErAgKA5UDvKtgyUABdr3+MjI= +github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM= +github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= +github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= +github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs= +github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM= github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f h1:J9EGpcZtP0E/raorCMxlFGSTBrsSlaDGf3jU/qvAE2c= github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= +github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f/go.mod h1:5yf86TLmAcydyeJq5YvxkGPE2fm/u4myDekKRoLuqhs= github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= -github.com/xlab/treeprint v1.0.0/go.mod h1:IoImgRak9i3zJyuxOKUP1v4UZd1tMoKkq/Cimt1uhCg= +github.com/xlab/treeprint v1.1.0/go.mod h1:gj5Gd3gPdKtR1ikdDK6fnFLdmIS0X30kTTuNd/WEJu0= github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= -github.com/yudai/gojsondiff v1.0.0/go.mod h1:AY32+k2cwILAkW1fbgxQ5mUmMiZFgLIV+FBNExI05xg= -github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82/go.mod h1:lgjkn3NuSvDfVJdfcVVdX+jpBxNmX4rDAzaS45IcYoM= -github.com/yudai/pp v2.0.1+incompatible/go.mod h1:PuxR/8QJ7cyCkFp/aUDS+JY727OFEZkTdatxwunjIkc= +github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= +github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= +github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= github.com/zclconf/go-cty v1.0.0/go.mod h1:xnAOWiHeOqg2nWS62VtQ7pbOu17FtxJNW8RLEih+O3s= github.com/zclconf/go-cty v1.1.0/go.mod h1:xnAOWiHeOqg2nWS62VtQ7pbOu17FtxJNW8RLEih+O3s= github.com/zclconf/go-cty v1.2.0/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q/N4PQ8= github.com/zclconf/go-cty v1.2.1/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q/N4PQ8= -github.com/zclconf/go-cty v1.8.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk= -github.com/zclconf/go-cty v1.10.0 h1:mp9ZXQeIcN8kAwuqorjH+Q+njbJKjLrvB2yIh4q7U+0= -github.com/zclconf/go-cty v1.10.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk= +github.com/zclconf/go-cty v1.13.0/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= +github.com/zclconf/go-cty v1.13.1/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= +github.com/zclconf/go-cty v1.13.2/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= +github.com/zclconf/go-cty v1.14.0/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +github.com/zclconf/go-cty v1.14.2 h1:kTG7lqmBou0Zkx35r6HJHUQTvaRPr5bIAf3AoHS0izI= +github.com/zclconf/go-cty v1.14.2/go.mod h1:VvMs5i0vgZdhYawQNq5kePSpLAoz8u1xvZgrPIxfnZE= +github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b h1:FosyBZYxY34Wul7O/MSKey3txpPYyCqVO5ZyceuQJEI= github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8= github.com/zclconf/go-cty-yaml v1.0.1 h1:up11wlgAaDvlAGENcFDnZgkn0qUJurso7k6EpURKNF8= github.com/zclconf/go-cty-yaml v1.0.1/go.mod h1:IP3Ylp0wQpYm50IHK8OZWKMu6sPJIUgKa8XhiVHura0= -github.com/zeebo/xxh3 v0.13.0/go.mod h1:AQY73TOrhF3jNsdiM9zZOb8MThrYbZONHj7ryDBaLpg= +github.com/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0= +github.com/zeebo/xxh3 v1.0.2/go.mod h1:5NWz9Sef7zIDm2JHfFlcQvNekmcEl9ekUZQQKCYaDcA= +github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ= go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg= +go.etcd.io/etcd v0.5.0-alpha.5.0.20200910180754-dd1b699fc489/go.mod h1:yVHk9ub3CSBatqGNg7GRmsnfLWtoW60w4eDYfh7vHDg= +go.etcd.io/etcd/api/v3 v3.5.0/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/client/pkg/v3 v3.5.0/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/v2 v2.305.0/go.mod h1:h9puh54ZTgAKtEbut2oe9P4L/oqKCVB6xsXlzd7alYQ= +go.etcd.io/etcd/client/v3 v3.5.0/go.mod h1:AIKXXVX/DQXtfTEqBryiLTUXwON+GuvO6Z7lLS/oTh0= +go.etcd.io/etcd/pkg/v3 v3.5.0/go.mod h1:UzJGatBQ1lXChBkQF0AuAtkRQMYnHubxAEYIrC3MSsE= +go.etcd.io/etcd/raft/v3 v3.5.0/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= +go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4= +go.mongodb.org/mongo-driver v1.7.3/go.mod h1:NqaYOwnXWr5Pm7AOpO5QFxKJ503nbMse/R79oO62zWg= +go.mongodb.org/mongo-driver v1.7.5/go.mod h1:VXEWRZ6URJIkUq2SCAyapmhH0ZLRBP+FT4xhp5Zvxng= +go.mongodb.org/mongo-driver v1.8.3/go.mod h1:0sQWfOeY63QTntERDJJ/0SuKK0T1uVSgKCuAROlKEPY= +go.mozilla.org/pkcs7 v0.0.0-20200128120323-432b2356ecb1/go.mod h1:SNgMg+EgDFwmvSmLRTNKC5fegJjB7v23qTQ0XLGUNHk= go.opencensus.io v0.15.0/go.mod h1:UffZAU+4sDEINUGP/B7UfBBkq4fqLu9zXAX7ke6CHW0= go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= go.opencensus.io v0.20.2/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= @@ -1296,84 +2497,137 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= -go.opencensus.io v0.22.6/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= -go.opencensus.io v0.23.0 h1:gqCw0LfLxScz8irSi8exQc7fyQ0fKQU/qnC/X8+V/1M= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= +go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= +go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= +go.opentelemetry.io/contrib v0.20.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.20.0/go.mod h1:oVGt1LRbBOBq1A5BQLlUg9UaU/54aiHw8cgjV3aWZ/E= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.28.0/go.mod h1:vEhqr0m4eTc+DWxfsXoXue2GBgV2uUwVznkGIHW/e5w= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.20.0/go.mod h1:2AboqHi0CiIZU0qwhtUfCYD1GeUzvvIXWNkhDt7ZMG4= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.31.0/go.mod h1:PFmBsWbldL1kiWZk9+0LBZz2brhByaGsvp6pRICMlPE= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.32.0/go.mod h1:5eCOqeGphOyz6TsY3ZDNjE33SM/TFAK3RGuCL2naTgY= go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo= +go.opentelemetry.io/otel v1.3.0/go.mod h1:PWIKzi6JCp7sM0k9yZ43VX+T345uNbAkDKwHVjb2PTs= +go.opentelemetry.io/otel v1.6.0/go.mod h1:bfJD2DZVw0LBxghOTlgnlI0CV3hLDu9XF/QKOUXMTQQ= +go.opentelemetry.io/otel v1.6.1/go.mod h1:blzUabWHkX6LJewxvadmzafgh/wnvBSDBdOuwkAtrWQ= +go.opentelemetry.io/otel v1.7.0/go.mod h1:5BdUoMIz5WEs0vt0CUEMtSSaTSHBBVwrhnz7+nrD5xk= +go.opentelemetry.io/otel/exporters/otlp v0.20.0/go.mod h1:YIieizyaN77rtLJra0buKiNBOm9XQfkPEKBeuhoMwAM= +go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.3.0/go.mod h1:VpP4/RMn8bv8gNo9uK7/IMY4mtWLELsS+JIP0inH0h4= +go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.6.1/go.mod h1:NEu79Xo32iVb+0gVNV8PMd7GoWqnyDXRlj04yFjqz40= +go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.7.0/go.mod h1:M1hVZHNxcbkAlcvrOMlpQ4YOO3Awf+4N2dxkZL3xm04= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.3.0/go.mod h1:hO1KLR7jcKaDDKDkvI9dP/FIhpmna5lkqPUQdEjFAM8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.6.1/go.mod h1:YJ/JbY5ag/tSQFXzH3mtDmHqzF3aFn3DI/aB1n7pt4w= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.7.0/go.mod h1:ceUgdyfNv4h4gLxHR0WNfDiiVmZFodZhZSbOLhpxqXE= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.3.0/go.mod h1:keUU7UfnwWTWpJ+FWnyqmogPa82nuU5VUANFq49hlMY= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.6.1/go.mod h1:UJJXJj0rltNIemDMwkOJyggsvyMG9QHfJeFH0HS5JjM= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.7.0/go.mod h1:E+/KKhwOSw8yoPxSSuUHG6vKppkvhN+S1Jc7Nib3k3o= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.3.0/go.mod h1:QNX1aly8ehqqX1LEa6YniTU7VY9I6R3X/oPxhGdTceE= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.6.1/go.mod h1:DAKwdo06hFLc0U88O10x4xnb5sc7dDRDqRuiN+io8JE= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.7.0/go.mod h1:aFXT9Ng2seM9eizF+LfKiyPBGy8xIZKwhusC1gIu3hA= go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU= +go.opentelemetry.io/otel/metric v0.28.0/go.mod h1:TrzsfQAmQaB1PDcdhBauLMk7nyyg9hm+GoQq/ekE9Iw= +go.opentelemetry.io/otel/metric v0.30.0/go.mod h1:/ShZ7+TS4dHzDFmfi1kSXMhMVubNoP0oIaBp70J6UXU= go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa9FqQ2IQ8LoxiGnw= go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc= +go.opentelemetry.io/otel/sdk v1.3.0/go.mod h1:rIo4suHNhQwBIPg9axF8V9CA72Wz2mKF1teNrup8yzs= +go.opentelemetry.io/otel/sdk v1.6.1/go.mod h1:IVYrddmFZ+eJqu2k38qD3WezFR2pymCzm8tdxyh3R4E= +go.opentelemetry.io/otel/sdk v1.7.0/go.mod h1:uTEOTwaqIVuTGiJN7ii13Ibp75wJmYUDe374q6cZwUU= +go.opentelemetry.io/otel/sdk/export/metric v0.20.0/go.mod h1:h7RBNMsDJ5pmI1zExLi+bJK+Dr8NQCh0qGhm1KDnNlE= +go.opentelemetry.io/otel/sdk/metric v0.20.0/go.mod h1:knxiS8Xd4E/N+ZqKmUPf3gTTZ4/0TjTXukfxjzSTpHE= go.opentelemetry.io/otel/trace v0.20.0/go.mod h1:6GjCW8zgDjwGHGa6GkyeB8+/5vjT16gUEi0Nf1iBdgw= +go.opentelemetry.io/otel/trace v1.3.0/go.mod h1:c/VDhno8888bvQYmbYLqe41/Ldmr/KKunbvWM4/fEjk= +go.opentelemetry.io/otel/trace v1.6.0/go.mod h1:qs7BrU5cZ8dXQHBGxHMOxwME/27YH2qEp4/+tZLLwJE= +go.opentelemetry.io/otel/trace v1.6.1/go.mod h1:RkFRM1m0puWIq10oxImnGEduNBzxiN7TXluRBtE+5j0= +go.opentelemetry.io/otel/trace v1.7.0/go.mod h1:fzLSB9nqR2eXzxPXb2JW9IKE+ScyXA48yyE4TNvoHqU= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= +go.opentelemetry.io/proto/otlp v0.11.0/go.mod h1:QpEjXPrNQzrFDZgoTo49dgHR9RYRSrg3NAKnUGl9YpQ= +go.opentelemetry.io/proto/otlp v0.12.1/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= +go.opentelemetry.io/proto/otlp v0.15.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= +go.opentelemetry.io/proto/otlp v0.16.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= +go.opentelemetry.io/proto/otlp v0.19.0/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= -go.uber.org/atomic v1.5.1/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE= go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/automaxprocs v1.5.1/go.mod h1:BF4eumQw0P9GtnuxxovUd06vwm1o18oMzFtK66vU6XU= go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= +go.uber.org/goleak v1.1.12/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4= -go.uber.org/multierr v1.4.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4= go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= -go.uber.org/multierr v1.7.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak= +go.uber.org/multierr v1.8.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak= go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= go.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= -go.uber.org/zap v1.14.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= -go.uber.org/zap v1.16.0/go.mod h1:MA8QOfq0BHJwdXa996Y4dYkAqRKB8/1K1QMMZVaNZjQ= -go.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= -go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= -gocloud.dev v0.24.0 h1:cNtHD07zQQiv02OiwwDyVMuHmR7iQt2RLkzoAgz7wBs= -gocloud.dev v0.24.0/go.mod h1:uA+als++iBX5ShuG4upQo/3Zoz49iIPlYUWHV5mM8w8= -gocloud.dev/secrets/hashivault v0.24.0 h1:rutqnevHcRze+92YMGmjCH3gX+qES8IArg5qPhr8ZnM= -gocloud.dev/secrets/hashivault v0.24.0/go.mod h1:I4EieZgy8VTp5iVK2jSPlTidjENujhKq2Y/wXz8r8V0= +go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= +go.uber.org/zap v1.21.0/go.mod h1:wjWOCqI0f2ZZrJF/UufIOkiC8ii6tm1iqIsLo76RfJw= +gocloud.dev v0.27.0/go.mod h1:YlYKhYsY5/1JdHGWQDkAuqkezVKowu7qbe9aIeUF6p0= +gocloud.dev v0.36.0 h1:q5zoXux4xkOZP473e1EZbG8Gq9f0vlg1VNH5Du/ybus= +gocloud.dev v0.36.0/go.mod h1:bLxah6JQVKBaIxzsr5BQLYB4IYdWHkMZdzCXlo6F0gg= +gocloud.dev/secrets/hashivault v0.27.0 h1:AAeGJXr0tiHHJgg5tL8atOGktB4eK9EJAqkZbPKAcOo= +gocloud.dev/secrets/hashivault v0.27.0/go.mod h1:offqsI5oj0B0bVHZdfk/88uIb3NnN93ia8py0yvRlHY= +golang.org/x/arch v0.1.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20180505025534-4ec37c66abab/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190219172222-a4c6cb3142f2/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20190418165655-df01cb2cc480/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= +golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= +golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190530122614-20be4c3c3ed5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190923035154-9ee001bba392/go.mod h1:/lpIB1dKB+9EgE3H3cr1v9wB50oz8l4C4h62xy7jSTY= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200414173820-0848c9571904/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20200604202706-70a84ac30bf9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= +golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= +golang.org/x/crypto v0.0.0-20201216223049-8b5274cf687f/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= +golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= -golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8= golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20211117183948-ae814b36b871/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20211202192323-5770296d904e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220511200225-c6db032c6c88/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220517005047-85d78b3ac167/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa h1:zuSxTR4o9y82ebqCUJYNGJbGPo6sKVl54f/TVDObg1c= +golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220826181053-bd7e27e6170d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= +golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= +golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= +golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= +golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE= +golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= +golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= +golang.org/x/crypto v0.19.0 h1:ENy+Az/9Y1vSrlrvBSyna3PITt4tiZLf7sgCjZBX7Wo= +golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190125153040-c74c464bbbf2/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= -golang.org/x/exp v0.0.0-20190731235908-ec7cb31e5a56/go.mod h1:JhuoJpWY28nO4Vef9tZUw9qufEGTyX1+7lmHxV5q5G4= golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= golang.org/x/exp v0.0.0-20191002040644-a1355ae1e2c3/go.mod h1:NOZ3BPKG0ec/BKJQgnvsSFpcKLM5xXVWnvZS97DWHgE= golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= @@ -1382,8 +2636,9 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= -golang.org/x/exp v0.0.0-20211028214138-64b4c8e87d1a/go.mod h1:a3o/VtDNHN+dCVLEpzjjUHOzR+Ln3DHX056ZPzoZGGA= -golang.org/x/exp v0.0.0-20211216164055-b2b84827b756/go.mod h1:b9TAUYHmRtqA6klRHApnXMnj+OyLce4yF5cZCUbk2ps= +golang.org/x/exp v0.0.0-20220827204233-334a2380cb91/go.mod h1:cyybsKvd6eL0RnXn6p/Grxp8F5bW7iYuBgsNCOHpMYE= +golang.org/x/exp v0.0.0-20240205201215-2c58cdc269a3 h1:/RIbNt/Zr7rVhIkQhooTxCxFcdWLGIKnZA4IXNFSrvo= +golang.org/x/exp v0.0.0-20240205201215-2c58cdc269a3/go.mod h1:idGWGoKP1toJGkd5/ig9ZLuPcZBC3ewk7SzmH0uou08= golang.org/x/image v0.0.0-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= @@ -1393,6 +2648,10 @@ golang.org/x/image v0.0.0-20200430140353-33d19683fad8/go.mod h1:FeLwcggjj3mMvU+o golang.org/x/image v0.0.0-20200618115811-c13761719519/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/image v0.0.0-20201208152932-35266b937fa6/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/image v0.0.0-20210216034530-4410531fe030/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.0.0-20210607152325-775e3b0c77b9/go.mod h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM= +golang.org/x/image v0.0.0-20210628002857-a66eb6448b8d/go.mod h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM= +golang.org/x/image v0.0.0-20211028202545-6944b10bf410/go.mod h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM= +golang.org/x/image v0.0.0-20220302094943-723b81ca9867/go.mod h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= @@ -1407,28 +2666,32 @@ golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPI golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= -golang.org/x/mobile v0.0.0-20201217150744-e6ae53a27f4f/go.mod h1:skQtrUTUwhdJvXM/2KKJzY8pDgNr9I/FOMqDVRPBUS4= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= -golang.org/x/mod v0.1.1-0.20191209134235-331c550502dd/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.5.0/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= -golang.org/x/mod v0.5.1-0.20210830214625-1b1db11ec8f4/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= -golang.org/x/mod v0.6.0-dev.0.20211013180041-c96bc1413d57/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s= +golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.6.0/go.mod h1:4mET923SAdbXp2ki8ey+zGs1SLqsuM2Y0uvdZR/fUNI= +golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.9.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8= +golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20180530234432-1e491301e022/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180811021610-c39426892332/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181011144130-49bb7cea24b1/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1443,14 +2706,15 @@ golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190619014844-b5b0513f8c1b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191009170851-d66e71096ffb/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20191112182307-2180aed22343/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -1462,39 +2726,64 @@ golang.org/x/net v0.0.0-20200421231249-e086a090c8fd/go.mod h1:qpuaurCH72eLCgpAm/ golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20201006153459-a7d1128ccaa0/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= -golang.org/x/net v0.0.0-20210326060303-6b1517762897/go.mod h1:uSPa2vr4CLtc/ILN5odXGNXS6mhrKVzTaCXzk9m6W3k= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210410081132-afb366fc7cd1/go.mod h1:9tjilg8BloeKEkVJvy7fQ90B1CfIiPueXVOjqfkSzI8= +golang.org/x/net v0.0.0-20210421230115-4e50805a0758/go.mod h1:72T/g9IO56b78aLF+1Kcs5dz7/ng1VjMUvfKvpfy+jM= +golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210505024714-0287a6fb4125/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210520170846-37e1c6afe023/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210610132358-84b48f89b13b/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210726213435-c6fcb2dbf985/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210813160813-60bc85c4be6d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20211118161319-6a13c67c3ce4/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211216030914-fe4d6282115f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220325170049-de3da57026de/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220412020605-290c469a71a5/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.0.0-20220617184016-355a448f1bc9/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.0.0-20220802222814-0bcc04d9c69b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= +golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= golang.org/x/net v0.0.0-20220909164309-bea034e7d591/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= +golang.org/x/net v0.0.0-20221012135044-0b7e1fb9d458/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= +golang.org/x/net v0.0.0-20221014081412-f15817d10f9b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= +golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= +golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= +golang.org/x/net v0.4.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE= +golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= +golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= +golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= +golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= +golang.org/x/net v0.20.0 h1:aCL9BSgETF1k+blQaYUBx9hJ9LOGP3gAVemcZlf1Kpo= +golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1503,7 +2792,6 @@ golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4Iltr golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210126194326-f9ce19ea3013/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= @@ -1512,18 +2800,31 @@ golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20211005180243-6b3c2da341f1/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= golang.org/x/oauth2 v0.0.0-20220309155454-6242fa91716a/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= golang.org/x/oauth2 v0.0.0-20220608161450-d0670ef3b1eb/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE= +golang.org/x/oauth2 v0.0.0-20220622183110-fd043fe589d2/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE= +golang.org/x/oauth2 v0.0.0-20220628200809-02e64fa58f26/go.mod h1:jaDAt6Dkxork7LmZnYtzbRWj0W47D86a3TGe0YHBvmE= +golang.org/x/oauth2 v0.0.0-20220722155238-128564f6959c/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= -golang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1 h1:lxqLZaMad/dJHMFZH0NiNpiEZI/nhgWhe4wgzpE+MuA= golang.org/x/oauth2 v0.0.0-20220909003341-f21342109be1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= +golang.org/x/oauth2 v0.0.0-20221006150949-b44042a4b9c1/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= +golang.org/x/oauth2 v0.0.0-20221014153046-6fdb5e3db783/go.mod h1:h4gKUeWbJ4rQPri7E0u6Gs4e9Ri2zaLxzw5DI5XGrYg= +golang.org/x/oauth2 v0.1.0/go.mod h1:G9FE4dLTsbXUu90h/Pf85g4w1D+SSAgR+q46nJZ8M4A= +golang.org/x/oauth2 v0.4.0/go.mod h1:RznEsdpjGAINPTOF0UH/t+xJ75L18YO3Ho6Pyn+uRec= +golang.org/x/oauth2 v0.5.0/go.mod h1:9/XBHVqLaWO3/BRHs5jbpYCnOZVjj5V0ndyaAM7KB4I= +golang.org/x/oauth2 v0.6.0/go.mod h1:ycmewcwgD4Rpr3eZJLSB4Kyyljb3qDh40vJ8STE5HKw= +golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4= +golang.org/x/oauth2 v0.14.0 h1:P0Vrf/2538nmC0H+pEQ3MNFRRnVR7RlqyVw+bvm26z0= +golang.org/x/oauth2 v0.14.0/go.mod h1:lAtNWgaWfL4cm7j2OV8TxGi9Qb7ECORx8DktCY74OwM= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -1531,52 +2832,71 @@ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f h1:Ax0t5p6N38Ga0dThY21weqDEyz2oklo4IvDkpigvkD8= golang.org/x/sync v0.0.0-20220601150217-0de741cfad7f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ= +golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20180926160741-c2ed4eda69e7/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181122145206-62eef0e2fa9b/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181228144115-9a3f9b0469bb/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190129075346-302c3dd5f1cc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502175342-a43fa875dd82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190530182044-ad28b68e88f1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190522044717-8097e1b27ff5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190804053845-51ab0e2deafa/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190812073006-9eafafc0a87e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190922100055-0a153f010e69/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191112214154-59a1497f0cea/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191115151921-52ab43148777/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191210023423-ac6580df4449/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191220142924-d4481acd189f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200120151820-655fe14d7479/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200124204421-9fbb57f87de9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200217220822-9197077df867/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1584,96 +2904,164 @@ golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200727154430-2d971f7391a4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200622214017-ed371f2e16b4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200826173525-f9321e4c35a6/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200828194041-157a740278f4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200817155316-9781c653f443/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200831180312-196b9ba8737a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200916030750-2334cc1a136f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200922070232-aee5d888a860/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201117170446-d9b008d0a637/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201202213521-69691e467435/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210223095934-7937bea0104d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210303074136-134d130e1a04/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210304124612-50617c2ba197/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210324051608-47abb6519492/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210403161142-5e06dd20ab57/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210420072515-93ed5bcd2bfe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210502180810-71e4cd670f79/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210426230700-d19ff857e887/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210503080704-8803ae5d1324/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210601080250-7ecdf8ef093b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210603125802-9665404d3644/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210616045830-e2b7044e8c71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210816183151-1e6c022a8912/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210903071746-97244b99971b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210906170528-6f6e22806c34/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210917161153-d61c044b1678/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211007075335-d3039528d8ac/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211110154304-99a53858aa08/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211117180635-dee7805ff2e1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211116061358-0a5406a5449c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211210111614-af8b64212486/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220128215802-99c3d69c2c27/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220328115105-d36c6a25d886/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220412211240-33da011f77ad/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220502124256-b6088ccd6cba/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220517195934-5e4e11fc645e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220627191245-f75cf1eec38b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= +golang.org/x/sys v0.0.0-20220731174439-a90be440212d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220829200755-d48e67d00261/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y= +golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.5.0 h1:n2a8QNdAb0sZNpU9R1ALUXBbY+w51fCQDN+7EdxNBsY= +golang.org/x/term v0.0.0-20220722155259-a9ba230a4035/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= +golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA= +golang.org/x/term v0.4.0/go.mod h1:9P2UbLfCdcvo3p/nzKvsmas4TnlujnuoV9hGgYzW1lQ= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= +golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= +golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= +golang.org/x/term v0.17.0 h1:mkTF7LCd6WGJNL3K1Ad7kwxNfYAW6a8a8QqtMblp/4U= +golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.1-0.20181227161524-e6919f6577db/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo= +golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= +golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20201208040808-7e3f01d25324/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac h1:7zkz7BUtwNFFqcowJ+RIgu2MaV/MapERkDIy+mwPyjs= golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220224211638-0e9765cccd65/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220609170525-579cf78fd858/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220722155302-e5dcc9cfc0b9/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220922220347-f3bd1da661af/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= +golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190206041539-40960b6deb8e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1682,15 +3070,23 @@ golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3 golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190416151739-9c9e1878f421/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190420181800-aa740d480789/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190422233926-fe54fb35175b/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190425163242-31fd60d6bfdc/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190624222133-a101b041ded4/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190706070813-72ffa07ba3db/go.mod h1:jcCCGcm9btYwXyDqrUWc6MKQKKGJCWEQ3AfLSRIbEuI= golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20190823170909-c4a336ef6a2f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190907020128-2ca718005c18/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190927191325-030b2cf1153e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -1698,6 +3094,7 @@ golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191112195655-aa38f8e97acc/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -1706,7 +3103,6 @@ golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200103221440-774c71fcf114/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200117012304-6edc0a871e69/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= @@ -1715,24 +3111,26 @@ golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapK golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200304024140-c4206d458c3f/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200713011307-fd294ab11aed/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= +golang.org/x/tools v0.0.0-20200916195026-c9a70fc28ce3/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201118003311-bd56c0adb394/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201124115921-2c860bdd6e78/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20201208233053-a543418bbed2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= @@ -1742,25 +3140,38 @@ golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.8-0.20211029000441-d6a9af8af023/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU= +golang.org/x/tools v0.1.6-0.20210726203631-07bc1bf47fb2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.9/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU= -golang.org/x/tools v0.1.12 h1:VveCTK38A2rkS8ZqFY25HIDFscX5X9OoEhJd3quQmXU= +golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= +golang.org/x/tools v0.1.11/go.mod h1:SgwaegtQh8clINPpECJMqnxLv9I09HLqnW3RMqW0CA4= +golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= +golang.org/x/tools v0.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/tools v0.7.0/go.mod h1:4pg6aUX35JBAogB10C9AtvVL+qowtN4pT3CGSQex14s= +golang.org/x/tools v0.17.0 h1:FvmRgNOcs3kOa+T20R1uhfP9F6HgG2mfxDv1vrx1Htc= +golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps= +golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220517211312-f3a8303e98df/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f h1:uF6paiQQebLeSXkrTqHqz0MXhXXS1KgF41eUdBNvxK0= golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= +golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU= +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= -gonum.org/v1/gonum v0.0.0-20181121035319-3f7ecaa7e8ca/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= gonum.org/v1/gonum v0.8.2/go.mod h1:oe/vMfY3deqTw+1EZJhuvEW2iwGF1bW9wwu7XCu0+v0= gonum.org/v1/gonum v0.9.3/go.mod h1:TZumC3NeyVQskjXqmyWt4S3bINhy7B4eYwW69EbyX+0= -gonum.org/v1/netlib v0.0.0-20181029234149-ec6d1f5cefe6/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw= +gonum.org/v1/gonum v0.11.0/go.mod h1:fSG4YDCxxUZQJ7rKsQrj0gMOg00Il0Z96/qMA4bVQhA= gonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw= gonum.org/v1/plot v0.0.0-20190515093506-e2840ee46a6b/go.mod h1:Wt8AAjI+ypCyYX3nZBvf6cAIx93T+c/OS2HFAYskSZc= gonum.org/v1/plot v0.9.0/go.mod h1:3Pcqqmp6RHvJI72kgb8fThyUnav364FOsdDo2aGW5lY= +gonum.org/v1/plot v0.10.1/go.mod h1:VZW5OlhkL1mysU9vaqNHnsy86inf6Ot+jB3r+BczCEo= +google.golang.org/api v0.0.0-20160322025152-9bf6e6e569ff/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0= google.golang.org/api v0.3.1/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= @@ -1780,7 +3191,6 @@ google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSr google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= -google.golang.org/api v0.37.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= @@ -1789,12 +3199,12 @@ google.golang.org/api v0.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59t google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4= google.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw= google.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU= -google.golang.org/api v0.52.0/go.mod h1:Him/adpjt0sxtkWViy0b6xyKW/SD71CwdJ7HqJo7SrU= google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k= google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= google.golang.org/api v0.57.0/go.mod h1:dVPlbZyBo2/OjBpmvNdpn2GRm6rPy75jyU7bmhdrMgI= google.golang.org/api v0.58.0/go.mod h1:cAbP2FsxoGVNwtgNAmmn3y5G1TWAiVYRmg4yku3lv+E= +google.golang.org/api v0.59.0/go.mod h1:sT2boj7M9YJxZzgeZqXogmhfmRWDtPzT31xkieUbuZU= google.golang.org/api v0.61.0/go.mod h1:xQRti5UdCmoCEqFxcz93fTl338AVqDgyaDRuOZ3hg9I= google.golang.org/api v0.63.0/go.mod h1:gs4ij2ffTRXwuzzgJl/56BdwJaA194ijkfn++9tDuPo= google.golang.org/api v0.67.0/go.mod h1:ShHKP8E60yPsKNw/w8w+VYaj9H6buA5UqDp8dhbQZ6g= @@ -1802,11 +3212,31 @@ google.golang.org/api v0.70.0/go.mod h1:Bs4ZM2HGifEvXwd50TtW70ovgJffJYw2oRCOFU/S google.golang.org/api v0.71.0/go.mod h1:4PyU6e6JogV1f9eA4voyrTY2batOLdgZ5qZ5HOCc4j8= google.golang.org/api v0.74.0/go.mod h1:ZpfMZOVRMywNyvJFeqL9HRWBgAuRfSjJFpe9QtRRyDs= google.golang.org/api v0.75.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA= +google.golang.org/api v0.77.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA= google.golang.org/api v0.78.0/go.mod h1:1Sg78yoMLOhlQTeF+ARBoytAcH1NNyyl390YMy6rKmw= google.golang.org/api v0.80.0/go.mod h1:xY3nI94gbvBrE0J6NHXhxOmW97HG7Khjkku6AFB3Hyg= google.golang.org/api v0.84.0/go.mod h1:NTsGnUFJMYROtiquksZHBWtHfeMC7iYthki7Eq3pa8o= -google.golang.org/api v0.97.0 h1:x/vEL1XDF/2V4xzdNgFPaKHluRESo2aTsL7QzHnBtGQ= +google.golang.org/api v0.85.0/go.mod h1:AqZf8Ep9uZ2pyTvgL+x0D3Zt0eoT9b5E8fmzfu6FO2g= +google.golang.org/api v0.86.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw= +google.golang.org/api v0.90.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw= +google.golang.org/api v0.91.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw= +google.golang.org/api v0.93.0/go.mod h1:+Sem1dnrKlrXMR/X0bPnMWyluQe4RsNoYfmNLhOIkzw= +google.golang.org/api v0.95.0/go.mod h1:eADj+UBuxkh5zlrSntJghuNeg8HwQ1w5lTKkuqaETEI= +google.golang.org/api v0.96.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s= google.golang.org/api v0.97.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s= +google.golang.org/api v0.98.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s= +google.golang.org/api v0.99.0/go.mod h1:1YOf74vkVndF7pG6hIHuINsM7eWwpVTAfNMNiL91A08= +google.golang.org/api v0.100.0/go.mod h1:ZE3Z2+ZOr87Rx7dqFsdRQkRBk36kDtp/h+QpHbB7a70= +google.golang.org/api v0.102.0/go.mod h1:3VFl6/fzoA+qNuS1N1/VfXY4LjoXN/wzeIp7TweWwGo= +google.golang.org/api v0.103.0/go.mod h1:hGtW6nK1AC+d9si/UBhw8Xli+QMOf6xyNAyJw4qU9w0= +google.golang.org/api v0.106.0/go.mod h1:2Ts0XTHNVWxypznxWOYUeI4g3WdP9Pk2Qk58+a/O9MY= +google.golang.org/api v0.107.0/go.mod h1:2Ts0XTHNVWxypznxWOYUeI4g3WdP9Pk2Qk58+a/O9MY= +google.golang.org/api v0.108.0/go.mod h1:2Ts0XTHNVWxypznxWOYUeI4g3WdP9Pk2Qk58+a/O9MY= +google.golang.org/api v0.110.0/go.mod h1:7FC4Vvx1Mooxh8C5HWjzZHcavuS2f6pmJpZx60ca7iI= +google.golang.org/api v0.111.0/go.mod h1:qtFHvU9mhgTJegR31csQ+rwxyUTHOKFqCKWp1J0fdw0= +google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg= +google.golang.org/api v0.151.0 h1:FhfXLO/NFdJIzQtCqjpysWwqKk8AzGWBUhMIx67cVDU= +google.golang.org/api v0.151.0/go.mod h1:ccy+MJ6nrYFgE3WgRx/AMXOxOmU8Q4hSa+jjibzhxcg= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= @@ -1814,18 +3244,18 @@ google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7 google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/appengine v1.6.8 h1:IhEN5q69dyKagZPYMSdIjS2HqprW324FRQZJcGqPAsM= +google.golang.org/appengine v1.6.8/go.mod h1:1jJ3jBArFh5pcgW8gCtRJnepW8FzD1V44FJffLiz/Ds= +google.golang.org/cloud v0.0.0-20151119220103-975617b05ea8/go.mod h1:0H1ncTHf11KCFhTc/+EFRbzSCOZx+VUbRMk55Yv5MYk= google.golang.org/genproto v0.0.0-20170818010345-ee236bd376b0/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190404172233-64821d5d2107/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190522204451-c2c4e71fbf69/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= google.golang.org/genproto v0.0.0-20190530194941-fb225487d101/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= -google.golang.org/genproto v0.0.0-20190708153700-3bdd9d9f5532/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= -google.golang.org/genproto v0.0.0-20190716160619-c506a9f90610/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8= @@ -1834,6 +3264,7 @@ google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvx google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200117163144-32f20d992d24/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA= google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= @@ -1842,24 +3273,27 @@ google.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod h1:55QSHmfG google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod h1:YsZOwe1myG/8QRHRsmBRE1LrgQY60beZKjly0O1fX9U= google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= +google.golang.org/genproto v0.0.0-20200527145253-8367513e4ece/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= -google.golang.org/genproto v0.0.0-20200711021454-869866162049/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201019141844-1ed22bb0c154/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201110150050-8816d57aaa9a/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210126160654-44e461bb6506/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= @@ -1868,28 +3302,26 @@ google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaE google.golang.org/genproto v0.0.0-20210429181445-86c259c2b4ab/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= google.golang.org/genproto v0.0.0-20210513213006-bf773b8c8384/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= google.golang.org/genproto v0.0.0-20210517163617-5e0236093d7a/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= -google.golang.org/genproto v0.0.0-20210601144548-a796c710e9b6/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= google.golang.org/genproto v0.0.0-20210604141403-392c879c8b08/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= google.golang.org/genproto v0.0.0-20210608205507-b6d2f5bf0d7d/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= google.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84/go.mod h1:SzzZ/N+nwJDaO1kznhnlzqS8ocJICar6hYhVyhi++24= -google.golang.org/genproto v0.0.0-20210630183607-d20f26d13c79/go.mod h1:yiaVoXHpRzHGyxV3o4DktVWY4mSUErTKaeEOq6C3t3U= google.golang.org/genproto v0.0.0-20210713002101-d411969a0d9a/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= google.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= -google.golang.org/genproto v0.0.0-20210721163202-f1cecdd8b78a/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= -google.golang.org/genproto v0.0.0-20210722135532-667f2b7c528f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= google.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= google.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= google.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w= google.golang.org/genproto v0.0.0-20210821163610-241b8fcbd6c8/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210825212027-de86158e7fda/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= google.golang.org/genproto v0.0.0-20210828152312-66f60bf46e71/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= google.golang.org/genproto v0.0.0-20210903162649-d08c68adba83/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= google.golang.org/genproto v0.0.0-20210909211513-a8c4777a87af/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= google.golang.org/genproto v0.0.0-20210917145530-b395a37504d4/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20210921142501-181ce0d877f6/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= google.golang.org/genproto v0.0.0-20210924002016-3dee208752a0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20211008145708-270636b82663/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= google.golang.org/genproto v0.0.0-20211018162055-cf77aa76bad2/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20211028162531-8db9c33dc351/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= google.golang.org/genproto v0.0.0-20211118181313-81c1377c94b1/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= google.golang.org/genproto v0.0.0-20211206160659-862468c7d6e0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= google.golang.org/genproto v0.0.0-20211208223120-3a66f561d7aa/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= @@ -1901,32 +3333,95 @@ google.golang.org/genproto v0.0.0-20220222213610-43724f9ea8cf/go.mod h1:kGP+zUP2 google.golang.org/genproto v0.0.0-20220304144024-325a89244dc8/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI= google.golang.org/genproto v0.0.0-20220310185008-1973136f34c6/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI= google.golang.org/genproto v0.0.0-20220324131243-acbaeb5b85eb/go.mod h1:hAL49I2IFola2sVEjAn7MEwsja0xp51I0tlGAf9hz4E= +google.golang.org/genproto v0.0.0-20220329172620-7be39ac1afc7/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= google.golang.org/genproto v0.0.0-20220407144326-9054f6ed7bac/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= google.golang.org/genproto v0.0.0-20220413183235-5e96e2839df9/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= google.golang.org/genproto v0.0.0-20220414192740-2d67ff6cf2b4/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= google.golang.org/genproto v0.0.0-20220421151946-72621c1f0bd3/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= google.golang.org/genproto v0.0.0-20220429170224-98d788798c3e/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= +google.golang.org/genproto v0.0.0-20220502173005-c8bf987b8c21/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= google.golang.org/genproto v0.0.0-20220505152158-f39f71e6c8f3/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= google.golang.org/genproto v0.0.0-20220518221133-4f43b3371335/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= +google.golang.org/genproto v0.0.0-20220519153652-3a47de7e79bd/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= google.golang.org/genproto v0.0.0-20220523171625-347a074981d8/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= google.golang.org/genproto v0.0.0-20220608133413-ed9918b62aac/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= google.golang.org/genproto v0.0.0-20220616135557-88e70c0c3a90/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= +google.golang.org/genproto v0.0.0-20220617124728-180714bec0ad/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= google.golang.org/genproto v0.0.0-20220624142145-8cd45d7dbd1f/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= -google.golang.org/genproto v0.0.0-20220920201722-2b89144ce006 h1:mmbq5q8M1t7dhkLw320YK4PsOXm6jdnUAkErImaIqOg= +google.golang.org/genproto v0.0.0-20220628213854-d9e0b6570c03/go.mod h1:KEWEmljWE5zPzLBa/oHl6DaEt9LmfH6WtH1OHIvleBA= +google.golang.org/genproto v0.0.0-20220722212130-b98a9ff5e252/go.mod h1:GkXuJDJ6aQ7lnJcRF+SJVgFdQhypqgl3LB1C9vabdRE= +google.golang.org/genproto v0.0.0-20220801145646-83ce21fca29f/go.mod h1:iHe1svFLAZg9VWz891+QbRMwUv9O/1Ww+/mngYeThbc= +google.golang.org/genproto v0.0.0-20220802133213-ce4fa296bf78/go.mod h1:iHe1svFLAZg9VWz891+QbRMwUv9O/1Ww+/mngYeThbc= +google.golang.org/genproto v0.0.0-20220815135757-37a418bb8959/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= +google.golang.org/genproto v0.0.0-20220817144833-d7fd3f11b9b1/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= +google.golang.org/genproto v0.0.0-20220822174746-9e6da59bd2fc/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= +google.golang.org/genproto v0.0.0-20220829144015-23454907ede3/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= +google.golang.org/genproto v0.0.0-20220829175752-36a9c930ecbf/go.mod h1:dbqgFATTzChvnt+ujMdZwITVAJHFtfyN1qUhDqEiIlk= +google.golang.org/genproto v0.0.0-20220913154956-18f8339a66a5/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= +google.golang.org/genproto v0.0.0-20220914142337-ca0e39ece12f/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= +google.golang.org/genproto v0.0.0-20220915135415-7fd63a7952de/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= +google.golang.org/genproto v0.0.0-20220916172020-2692e8806bfa/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= +google.golang.org/genproto v0.0.0-20220919141832-68c03719ef51/go.mod h1:0Nb8Qy+Sk5eDzHnzlStwW3itdNaWoZA5XeSG+R3JHSo= google.golang.org/genproto v0.0.0-20220920201722-2b89144ce006/go.mod h1:ht8XFiar2npT/g4vkk7O0WYS1sHOHbdujxbEp7CJWbw= +google.golang.org/genproto v0.0.0-20220926165614-551eb538f295/go.mod h1:woMGP53BroOrRY3xTxlbr8Y3eB/nzAvvFM83q7kG2OI= +google.golang.org/genproto v0.0.0-20220926220553-6981cbe3cfce/go.mod h1:woMGP53BroOrRY3xTxlbr8Y3eB/nzAvvFM83q7kG2OI= +google.golang.org/genproto v0.0.0-20221010155953-15ba04fc1c0e/go.mod h1:3526vdqwhZAwq4wsRUaVG555sVgsNmIjRtO7t/JH29U= +google.golang.org/genproto v0.0.0-20221014173430-6e2ab493f96b/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM= +google.golang.org/genproto v0.0.0-20221014213838-99cd37c6964a/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM= +google.golang.org/genproto v0.0.0-20221024153911-1573dae28c9c/go.mod h1:9qHF0xnpdSfF6knlcsnpzUu5y+rpwgbvsyGAZPBMg4s= +google.golang.org/genproto v0.0.0-20221024183307-1bc688fe9f3e/go.mod h1:9qHF0xnpdSfF6knlcsnpzUu5y+rpwgbvsyGAZPBMg4s= +google.golang.org/genproto v0.0.0-20221025140454-527a21cfbd71/go.mod h1:9qHF0xnpdSfF6knlcsnpzUu5y+rpwgbvsyGAZPBMg4s= +google.golang.org/genproto v0.0.0-20221027153422-115e99e71e1c/go.mod h1:CGI5F/G+E5bKwmfYo09AXuVN4dD894kIKUFmVbP2/Fo= +google.golang.org/genproto v0.0.0-20221109142239-94d6d90a7d66/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= +google.golang.org/genproto v0.0.0-20221114212237-e4508ebdbee1/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= +google.golang.org/genproto v0.0.0-20221117204609-8f9c96812029/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= +google.golang.org/genproto v0.0.0-20221118155620-16455021b5e6/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= +google.golang.org/genproto v0.0.0-20221201164419-0e50fba7f41c/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= +google.golang.org/genproto v0.0.0-20221201204527-e3fa12d562f3/go.mod h1:rZS5c/ZVYMaOGBfO68GWtjOw/eLaZM1X6iVtgjZ+EWg= +google.golang.org/genproto v0.0.0-20221202195650-67e5cbc046fd/go.mod h1:cTsE614GARnxrLsqKREzmNYJACSWWpAWdNMwnD7c2BE= +google.golang.org/genproto v0.0.0-20221227171554-f9683d7f8bef/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230110181048-76db0878b65f/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230112194545-e10362b5ecf9/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230113154510-dbe35b8444a5/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230123190316-2c411cf9d197/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230124163310-31e0e69b6fc2/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230125152338-dcaf20b6aeaa/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230127162408-596548ed4efa/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230209215440-0dfe4f8abfcc/go.mod h1:RGgjbofJ8xD9Sq1VVhDM1Vok1vRONV+rg+CjzG4SZKM= +google.golang.org/genproto v0.0.0-20230216225411-c8e22ba71e44/go.mod h1:8B0gmkoRebU8ukX6HP+4wrVQUY1+6PkQ44BSyIlflHA= +google.golang.org/genproto v0.0.0-20230222225845-10f96fb3dbec/go.mod h1:3Dl5ZL0q0isWJt+FVcfpQyirqemEuLAK/iFvg1UP1Hw= +google.golang.org/genproto v0.0.0-20230223222841-637eb2293923/go.mod h1:3Dl5ZL0q0isWJt+FVcfpQyirqemEuLAK/iFvg1UP1Hw= +google.golang.org/genproto v0.0.0-20230303212802-e74f57abe488/go.mod h1:TvhZT5f700eVlTNwND1xoEZQeWTB2RY/65kplwl/bFA= +google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4/go.mod h1:NWraEVixdDnqcqQ30jipen1STv2r/n24Wb7twVTGR4s= +google.golang.org/genproto v0.0.0-20230320184635-7606e756e683/go.mod h1:NWraEVixdDnqcqQ30jipen1STv2r/n24Wb7twVTGR4s= +google.golang.org/genproto v0.0.0-20230323212658-478b75c54725/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak= +google.golang.org/genproto v0.0.0-20230330154414-c0448cd141ea/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak= +google.golang.org/genproto v0.0.0-20230331144136-dcfb400f0633/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak= +google.golang.org/genproto v0.0.0-20230525234025-438c736192d0/go.mod h1:9ExIQyXL5hZrHzQceCwuSYwZZ5QZBazOcprJ5rgs3lY= +google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk= +google.golang.org/genproto v0.0.0-20231120223509-83a465c0220f h1:Vn+VyHU5guc9KjB5KrjI2q0wCOWEOIh0OEsleqakHJg= +google.golang.org/genproto v0.0.0-20231120223509-83a465c0220f/go.mod h1:nWSwAFPb+qfNJXsoeO3Io7zf4tMSfN8EA8RlDA04GhY= +google.golang.org/genproto/googleapis/api v0.0.0-20230525234020-1aefcd67740a/go.mod h1:ts19tUU+Z0ZShN1y3aPyq2+O3d5FUNNgT6FtOzmrNn8= +google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig= +google.golang.org/genproto/googleapis/api v0.0.0-20231120223509-83a465c0220f h1:2yNACc1O40tTnrsbk9Cv6oxiW8pxI/pXj0wRtdlYmgY= +google.golang.org/genproto/googleapis/api v0.0.0-20231120223509-83a465c0220f/go.mod h1:Uy9bTZJqmfrw2rIBxgGLnamc78euZULUBrLZ9XTITKI= +google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234015-3fc162c6f38a/go.mod h1:xURIpW9ES5+/GZhnV6beoEtxQrnkRGIfP5VQG2tCBLc= +google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= +google.golang.org/genproto/googleapis/rpc v0.0.0-20231120223509-83a465c0220f h1:ultW7fxlIvee4HYrtnaRPon9HpEgFk5zYpmfMgtKB5I= +google.golang.org/genproto/googleapis/rpc v0.0.0-20231120223509-83a465c0220f/go.mod h1:L9KNLi232K1/xB6f7AlSX692koaRnKaWSR0stBki0Yc= +google.golang.org/grpc v0.0.0-20160317175043-d3ddb4469d5a/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.8.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.14.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= -google.golang.org/grpc v1.19.1/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= -google.golang.org/grpc v1.22.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.22.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.24.0/go.mod h1:XDChyiUovWa60DnaeDeZmSW86xtLtjtZbwvSiRnRtcA= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= @@ -1950,16 +3445,25 @@ google.golang.org/grpc v1.39.1/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnD google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= google.golang.org/grpc v1.40.1/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= google.golang.org/grpc v1.41.0/go.mod h1:U3l9uK9J0sini8mHphKoXyaqDA/8VyGnDee1zzIUK6k= +google.golang.org/grpc v1.42.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= +google.golang.org/grpc v1.43.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= google.golang.org/grpc v1.44.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= google.golang.org/grpc v1.46.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= google.golang.org/grpc v1.46.2/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= google.golang.org/grpc v1.47.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= google.golang.org/grpc v1.48.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= -google.golang.org/grpc v1.49.0 h1:WTLtQzmQori5FUH25Pq4WT22oCsv8USpQ+F6rqtsmxw= google.golang.org/grpc v1.49.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= +google.golang.org/grpc v1.50.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= +google.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= +google.golang.org/grpc v1.51.0/go.mod h1:wgNDFcnuBGmxLKI/qn4T+m5BtEBYXJPvibbUPsAIPww= +google.golang.org/grpc v1.52.3/go.mod h1:pu6fVzoFb+NBYNAvQL08ic+lvB2IojljRYuun5vorUY= +google.golang.org/grpc v1.53.0/go.mod h1:OnIrk0ipVdj4N5d9IUoFUx72/VlD7+jUsHwZgwSMQpw= +google.golang.org/grpc v1.54.0/go.mod h1:PUSEXI6iWghWaB6lXM4knEgpJNu2qUcKfDtNci3EC2g= +google.golang.org/grpc v1.57.0/go.mod h1:Sd+9RMTACXwmub0zcNY2c4arhtrbBYD1AUHI/dt16Mo= +google.golang.org/grpc v1.61.1 h1:kLAiWrZs7YeDM6MumDe7m3y4aM6wacLzM1Y/wiLP9XY= +google.golang.org/grpc v1.61.1/go.mod h1:VUbo7IFqmF1QtCAstipjG0GIoq49KvMe9+h1jFLBNJs= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= -google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.2.0/go.mod h1:DNq5QpG7LJqD2AamLZ7zvKE0DEpVl2BSEVjFycAAjRY= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -1974,14 +3478,17 @@ google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp0 google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.28.1 h1:d0NfwRgPtno5B1Wa6L2DAG+KivqkdutMf1UhdNx175w= google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -gopkg.in/AlecAivazis/survey.v1 v1.8.9-0.20200217094205-6773bdf39b7f h1:AQkMzsSzHWrgZWqGRpuRaRPDmyNibcXlpGcnQJ7HxZw= -gopkg.in/AlecAivazis/survey.v1 v1.8.9-0.20200217094205-6773bdf39b7f/go.mod h1:CaHjv79TCgAvXMSFJSVgonHXYWxnhzI3eoHtnX5UgUo= +google.golang.org/protobuf v1.28.2-0.20230222093303-bc1253ad3743/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.29.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= +google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= -gopkg.in/asn1-ber.v1 v1.0.0-20181015200546-f715ec2f112d/go.mod h1:cuepJuh7vyXfUyUwEgHQXw849cJrilpS5NeIjOWESAw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20141024133853-64131543e789/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -1993,14 +3500,18 @@ gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o= gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo= -gopkg.in/ini.v1 v1.42.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= -gopkg.in/ini.v1 v1.46.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/inconshreveable/log15.v2 v2.0.0-20180818164646-67afb5ed74ec/go.mod h1:aPpfJ7XW+gOuirDoZ8gHhLh3kZ1B08FtV2bbmy7Jv3s= +gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/ini.v1 v1.66.4/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/square/go-jose.v2 v2.6.0 h1:NGk74WTnPKBNUhNzQX7PYcTLUjoq7mzKk2OKbvwk2iI= gopkg.in/square/go-jose.v2 v2.6.0/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/telebot.v3 v3.0.0/go.mod h1:7rExV8/0mDDNu9epSrDm/8j22KLaActH1Tbee6YjzWg= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= @@ -2015,14 +3526,16 @@ gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= -gotest.tools/v3 v3.0.2 h1:kG1BFyqVHuQoVQiR1bWGnfz/fmHvvuiSPIV7rvl360E= gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= +gotest.tools/v3 v3.0.3 h1:4AuOwCGf4lLR9u3YOe2awrHygurzhO/HeQ6laiA6Sx0= +gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -2032,18 +3545,121 @@ honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.1.3/go.mod h1:NgwopIslSNH47DimFoV78dnkksY2EFtX0ajyb3K/las= -honnef.co/go/tools v0.2.0/go.mod h1:lPVVZ2BS5TfnjLyizF7o7hv7j9/L+8cZY2hLyjP9cGY= +k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo= +k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ= +k8s.io/api v0.20.6/go.mod h1:X9e8Qag6JV/bL5G6bU8sdVRltWKmdHsFUGS3eVndqE8= +k8s.io/api v0.22.5/go.mod h1:mEhXyLaSD1qTOf40rRiKXkc+2iCem09rWLlFwhCEiAs= +k8s.io/api v0.23.5/go.mod h1:Na4XuKng8PXJ2JsploYYrivXrINeTaycCGcYgF91Xm8= +k8s.io/api v0.24.2/go.mod h1:AHqbSkTm6YrQ0ObxjO3Pmp/ubFF/KuM7jU+3khoBsOg= +k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/apimachinery v0.20.6/go.mod h1:ejZXtW1Ra6V1O5H8xPBGz+T3+4gfkTCeExAHKU57MAc= +k8s.io/apimachinery v0.22.1/go.mod h1:O3oNtNadZdeOMxHFVxOreoznohCpy0z6mocxbZr7oJ0= +k8s.io/apimachinery v0.22.5/go.mod h1:xziclGKwuuJ2RM5/rSFQSYAj0zdbci3DH8kj+WvyN0U= +k8s.io/apimachinery v0.23.5/go.mod h1:BEuFMMBaIbcOqVIJqNZJXGFTP4W6AycEpb5+m/97hrM= +k8s.io/apimachinery v0.24.2/go.mod h1:82Bi4sCzVBdpYjyI4jY6aHX+YCUchUIrZrXKedjd2UM= +k8s.io/apiserver v0.20.1/go.mod h1:ro5QHeQkgMS7ZGpvf4tSMx6bBOgPfE+f52KwvXfScaU= +k8s.io/apiserver v0.20.4/go.mod h1:Mc80thBKOyy7tbvFtB4kJv1kbdD0eIH8k8vianJcbFM= +k8s.io/apiserver v0.20.6/go.mod h1:QIJXNt6i6JB+0YQRNcS0hdRHJlMhflFmsBDeSgT1r8Q= +k8s.io/apiserver v0.22.5/go.mod h1:s2WbtgZAkTKt679sYtSudEQrTGWUSQAPe6MupLnlmaQ= +k8s.io/client-go v0.20.1/go.mod h1:/zcHdt1TeWSd5HoUe6elJmHSQ6uLLgp4bIJHVEuy+/Y= +k8s.io/client-go v0.20.4/go.mod h1:LiMv25ND1gLUdBeYxBIwKpkSC5IsozMMmOOeSJboP+k= +k8s.io/client-go v0.20.6/go.mod h1:nNQMnOvEUEsOzRRFIIkdmYOjAZrC8bgq0ExboWSU1I0= +k8s.io/client-go v0.22.5/go.mod h1:cs6yf/61q2T1SdQL5Rdcjg9J1ElXSwbjSrW2vFImM4Y= +k8s.io/client-go v0.23.5/go.mod h1:flkeinTO1CirYgzMPRWxUCnV0G4Fbu2vLhYCObnt/r4= +k8s.io/client-go v0.24.2/go.mod h1:zg4Xaoo+umDsfCWr4fCnmLEtQXyCNXCvJuSsglNcV30= +k8s.io/code-generator v0.19.7/go.mod h1:lwEq3YnLYb/7uVXLorOJfxg+cUu2oihFhHZ0n9NIla0= +k8s.io/component-base v0.20.1/go.mod h1:guxkoJnNoh8LNrbtiQOlyp2Y2XFCZQmrcg2n/DeYNLk= +k8s.io/component-base v0.20.4/go.mod h1:t4p9EdiagbVCJKrQ1RsA5/V4rFQNDfRlevJajlGwgjI= +k8s.io/component-base v0.20.6/go.mod h1:6f1MPBAeI+mvuts3sIdtpjljHWBQ2cIy38oBIWMYnrM= +k8s.io/component-base v0.22.5/go.mod h1:VK3I+TjuF9eaa+Ln67dKxhGar5ynVbwnGrUiNF4MqCI= +k8s.io/cri-api v0.17.3/go.mod h1:X1sbHmuXhwaHs9xxYffLqJogVsnI+f6cPRcgPel7ywM= +k8s.io/cri-api v0.20.1/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= +k8s.io/cri-api v0.20.4/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= +k8s.io/cri-api v0.20.6/go.mod h1:ew44AjNXwyn1s0U4xCKGodU7J1HzBeZ1MpGrpa5r8Yc= +k8s.io/cri-api v0.23.1/go.mod h1:REJE3PSU0h/LOV1APBrupxrEJqnoxZC8KWzkBUHwrK4= +k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/gengo v0.0.0-20210813121822-485abfe95c7c/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= +k8s.io/klog/v2 v2.30.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/klog/v2 v2.40.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/klog/v2 v2.70.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20200805222855-6aeccd4b50c6/go.mod h1:UuqjUnNftUyPE5H64/qeyjQoUZhGpeFDVdxjTeEVN2o= +k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= +k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= +k8s.io/kube-openapi v0.0.0-20211109043538-20434351676c/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= +k8s.io/kube-openapi v0.0.0-20211115234752-e816edb12b65/go.mod h1:sX9MT8g7NVZM5lVL/j8QyCCJe8YSMW30QvGZWaCIDIk= +k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk= +k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk= +k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210930125809-cb0fa318a74b/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20211116205334-6203023598ed/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= lukechampine.com/frand v1.4.2 h1:RzFIpOvkMXuPMBb9maa4ND4wjBn71E1Jpf8BzJHMaVw= lukechampine.com/frand v1.4.2/go.mod h1:4S/TM2ZgrKejMcKMbeLjISpJMO+/eZ1zu3vYX9dtj3s= -mvdan.cc/gofumpt v0.1.0 h1:hsVv+Y9UsZ/mFZTxJZuHVI6shSQCtzZ11h1JEFPAZLw= +lukechampine.com/uint128 v1.1.1/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk= +lukechampine.com/uint128 v1.2.0/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk= +modernc.org/cc/v3 v3.36.0/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI= +modernc.org/cc/v3 v3.36.2/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI= +modernc.org/cc/v3 v3.36.3/go.mod h1:NFUHyPn4ekoC/JHeZFfZurN6ixxawE1BnVonP/oahEI= +modernc.org/ccgo/v3 v3.0.0-20220428102840-41399a37e894/go.mod h1:eI31LL8EwEBKPpNpA4bU1/i+sKOwOrQy8D87zWUcRZc= +modernc.org/ccgo/v3 v3.0.0-20220430103911-bc99d88307be/go.mod h1:bwdAnOoaIt8Ax9YdWGjxWsdkPcZyRPHqrOvJxaKAKGw= +modernc.org/ccgo/v3 v3.16.4/go.mod h1:tGtX0gE9Jn7hdZFeU88slbTh1UtCYKusWOoCJuvkWsQ= +modernc.org/ccgo/v3 v3.16.6/go.mod h1:tGtX0gE9Jn7hdZFeU88slbTh1UtCYKusWOoCJuvkWsQ= +modernc.org/ccgo/v3 v3.16.8/go.mod h1:zNjwkizS+fIFDrDjIAgBSCLkWbJuHF+ar3QRn+Z9aws= +modernc.org/ccgo/v3 v3.16.9/go.mod h1:zNMzC9A9xeNUepy6KuZBbugn3c0Mc9TeiJO4lgvkJDo= +modernc.org/ccorpus v1.11.6/go.mod h1:2gEUTrWqdpH2pXsmTM1ZkjeSrUWDpjMu2T6m29L/ErQ= +modernc.org/httpfs v1.0.6/go.mod h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM= +modernc.org/libc v0.0.0-20220428101251-2d5f3daf273b/go.mod h1:p7Mg4+koNjc8jkqwcoFBJx7tXkpj00G77X7A72jXPXA= +modernc.org/libc v1.16.0/go.mod h1:N4LD6DBE9cf+Dzf9buBlzVJndKr/iJHG97vGLHYnb5A= +modernc.org/libc v1.16.1/go.mod h1:JjJE0eu4yeK7tab2n4S1w8tlWd9MxXLRzheaRnAKymU= +modernc.org/libc v1.16.17/go.mod h1:hYIV5VZczAmGZAnG15Vdngn5HSF5cSkbvfz2B7GRuVU= +modernc.org/libc v1.16.19/go.mod h1:p7Mg4+koNjc8jkqwcoFBJx7tXkpj00G77X7A72jXPXA= +modernc.org/libc v1.17.0/go.mod h1:XsgLldpP4aWlPlsjqKRdHPqCxCjISdHfM/yeWC5GyW0= +modernc.org/libc v1.17.1/go.mod h1:FZ23b+8LjxZs7XtFMbSzL/EhPxNbfZbErxEHc7cbD9s= +modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= +modernc.org/mathutil v1.4.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= +modernc.org/mathutil v1.5.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= +modernc.org/memory v1.1.1/go.mod h1:/0wo5ibyrQiaoUoH7f9D8dnglAmILJ5/cxZlRECf+Nw= +modernc.org/memory v1.2.0/go.mod h1:/0wo5ibyrQiaoUoH7f9D8dnglAmILJ5/cxZlRECf+Nw= +modernc.org/memory v1.2.1/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU= +modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= +modernc.org/opt v0.1.3/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= +modernc.org/sqlite v1.18.1/go.mod h1:6ho+Gow7oX5V+OiOQ6Tr4xeqbx13UZ6t+Fw9IRUG4d4= +modernc.org/strutil v1.1.1/go.mod h1:DE+MQQ/hjKBZS2zNInV5hhcipt5rLPWkmpbGeW5mmdw= +modernc.org/strutil v1.1.3/go.mod h1:MEHNA7PdEnEwLvspRMtWTNnp2nnyvMfkimT1NKNAGbw= +modernc.org/tcl v1.13.1/go.mod h1:XOLfOwzhkljL4itZkK6T72ckMgvj0BDsnKNdZVUOecw= +modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= +modernc.org/z v1.5.1/go.mod h1:eWFB510QWW5Th9YGZT81s+LwvaAs3Q2yr4sP0rmLkv8= +mvdan.cc/gofumpt v0.5.0 h1:0EQ+Z56k8tXjj/6TQD25BFNKQXpCvT0rnansIc7Ug5E= +mvdan.cc/gofumpt v0.5.0/go.mod h1:HBeVDtMKRZpXyxFciAirzdKklDlGu8aAy1wEbH5Y9js= nhooyr.io/websocket v1.8.6/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0= -nhooyr.io/websocket v1.8.7/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0= -pgregory.net/rapid v0.4.7 h1:MTNRktPuv5FNqOO151TM9mDTa+XHcX6ypYeISDVD14g= +pgregory.net/rapid v0.6.1 h1:4eyrDxyht86tT4Ztm+kvlyNBLIk071gR+ZQdhphc9dQ= +pgregory.net/rapid v0.6.1/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.14/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.15/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.22/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/json v0.0.0-20211020170558-c049b76a60c6/go.mod h1:p4QtZmO4uMYipTQNzagwnNoseA6OxSUutVw05NhYDRs= +sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2/go.mod h1:B+TnT182UBxE84DiCz4CVE26eOSDAeYCpfDnC2kdKMY= +sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.3/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.1.2/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= +sigs.k8s.io/structured-merge-diff/v4 v4.2.1/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= +sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU= -sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600 h1:hfyJ5ku9yFtLVOiSxa3IN+dx5eBQT9mPmKFypAmg8XM= -sourcegraph.com/sourcegraph/appdash v0.0.0-20211028080628-e2786a622600/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU= diff --git a/provider/resources.go b/provider/resources.go index 77b7fc3..85eaf37 100644 --- a/provider/resources.go +++ b/provider/resources.go @@ -12,32 +12,74 @@ // See the License for the specific language governing permissions and // limitations under the License. -package nobl9 +package provider import ( + _ "embed" "fmt" "path/filepath" "strings" + "unicode" - "github.com/nobl9/terraform-provider-nobl9/nobl9" - "github.com/piclemx/pulumi-nobl9/provider/pkg/version" - "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge" + "github.com/ettle/strcase" + "github.com/pulumi/pulumi/sdk/v3/go/common/tokens" + "github.com/pulumi/pulumi/sdk/v3/go/common/util/contract" + "github.com/pulumi/pulumi/sdk/v3/go/common/resource" shim "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfshim" + "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfbridge" shimv2 "github.com/pulumi/pulumi-terraform-bridge/v3/pkg/tfshim/sdk-v2" - "github.com/pulumi/pulumi/sdk/v3/go/common/resource" - "golang.org/x/text/cases" - "golang.org/x/text/language" + "github.com/nobl9/terraform-provider-nobl9/nobl9" + "github.com/piclemx/pulumi-nobl9/provider/pkg/version" ) +//go:embed cmd/pulumi-resource-nobl9/bridge-metadata.json +var bridgeMetadata []byte + // all of the token components used below. const ( // This variable controls the default name of the package in the package - // registries for nodejs and python: - mainPkg = "nobl9" - // modules: mainMod = "index" // the nobl9 module ) +var name_overrides = map[string]string{} + +func convertName(tfname string) (module string, name string) { + tfNameItems := strings.Split(tfname, "_") + contract.Assertf(len(tfNameItems) >= 2, "Invalid snake case name %s", tfname) + contract.Assertf(tfNameItems[0] == "nobl9", "Invalid snake case name %s. Does not start with nobl9", tfname) + module = mainMod + name = strings.Join(tfNameItems[1:], "_") + name = strcase.ToPascal(name) + if v, ok := name_overrides[name]; ok { + name = v + } + contract.Assertf(!unicode.IsDigit(rune(name[0])), "Pulumi name must not start with a digit: %s", name) + return +} + +func makeDataSource(ds string) tokens.ModuleMember { + mod, name := convertName(ds) + return tfbridge.MakeDataSource("nobl9", mod, "get"+name) +} + +func makeResource(res string) tokens.Type { + mod, name := convertName(res) + return tfbridge.MakeResource("nobl9", mod, name) +} + +func moduleComputeStrategy() tfbridge.Strategy { + return tfbridge.Strategy{ + Resource: func(tfToken string, elem *tfbridge.ResourceInfo) error { + elem.Tok = makeResource(tfToken) + return nil + }, + DataSource: func(tfToken string, elem *tfbridge.DataSourceInfo) error { + elem.Tok = makeDataSource(tfToken) + return nil + }, + } +} + // preConfigureCallback is called before the providerConfigure function of the underlying provider. // It should validate that the provider can be configured, and provide actionable errors in the case // it cannot be. Configuration variables can be read from `vars` using the `stringValue` function - @@ -57,7 +99,7 @@ func Provider() tfbridge.ProviderInfo { Name: "nobl9", // DisplayName is a way to be able to change the casing of the provider // name when being displayed on the Pulumi registry - DisplayName: "", + DisplayName: "Nobl9", // The default publisher for all packages is Pulumi. // Change this to your personal name (or a company name) that you // would like to be shown in the Pulumi Registry if this package is published @@ -68,22 +110,29 @@ func Provider() tfbridge.ProviderInfo { // // You may host a logo on a domain you control or add an SVG logo for your package // in your repository and use the raw content URL for that file as your logo URL. - LogoURL: "", + LogoURL: "https://raw.githubusercontent.com/piclemx/pulumi-nobl9/main/docs/nobl9.png", // PluginDownloadURL is an optional URL used to download the Provider // for use in Pulumi programs // e.g https://github.com/org/pulumi-provider-name/releases/ - PluginDownloadURL: "https://github.com/piclemx/pulumi-nobl9/releases/", - Description: "A Pulumi package for creating and managing Nobl9 cloud resources.", + PluginDownloadURL: "github://api.github.com/piclemx/pulumi-nobl9", + Description: "A Pulumi package for creating and managing Nobl9 resources", // category/cloud tag helps with categorizing the package in the Pulumi Registry. // For all available categories, see `Keywords` in // https://www.pulumi.com/docs/guides/pulumi-packages/schema/#package. - Keywords: []string{"pulumi", "nobl9", "n9", "category/cloud"}, + Keywords: []string{ + "pulumi", + "nobl9", + "category/monitoring", + }, License: "Apache-2.0", - Homepage: "https://www.pulumi.com", + Homepage: "https://github.com/piclemx/pulumi-nobl9", Repository: "https://github.com/piclemx/pulumi-nobl9", // The GitHub Org for the provider - defaults to `terraform-providers`. Note that this // should match the TF provider module's require directive, not any replace directives. + Version: version.Version, GitHubOrg: "nobl9", + MetadataInfo: tfbridge.NewProviderMetadata(bridgeMetadata), + TFProviderVersion: "0.24.5", Config: map[string]*tfbridge.SchemaInfo{ // Add any required configuration here, or remove the example below if // no additional points are required. @@ -95,9 +144,23 @@ func Provider() tfbridge.ProviderInfo { // }, }, PreConfigureCallback: preConfigureCallback, - Resources: map[string]*tfbridge.ResourceInfo{}, - DataSources: map[string]*tfbridge.DataSourceInfo{}, + Resources: map[string]*tfbridge.ResourceInfo{ + // Map each resource in the Terraform provider to a Pulumi type. + // + // "aws_iam_role": { + // Tok: makeResource(mainMod, "aws_iam_role"), + // }, + }, + DataSources: map[string]*tfbridge.DataSourceInfo{ + // Map each data source in the Terraform provider to a Pulumi function. + // + // "aws_ami": { + // Tok: makeDataSource(mainMod, "aws_ami"), + // }, + }, JavaScript: &tfbridge.JavaScriptInfo{ + PackageName: "@piclemx/pulumi-nobl9", + // List any npm dependencies and their versions Dependencies: map[string]string{ "@pulumi/pulumi": "^3.0.0", @@ -112,6 +175,8 @@ func Provider() tfbridge.ProviderInfo { //Overlay: &tfbridge.OverlayInfo{}, }, Python: &tfbridge.PythonInfo{ + PackageName: "piclemx_pulumi_nobl9", + // List any Python dependencies and their version ranges Requires: map[string]string{ "pulumi": ">=3.0.0,<4.0.0", @@ -119,63 +184,26 @@ func Provider() tfbridge.ProviderInfo { }, Golang: &tfbridge.GolangInfo{ ImportBasePath: filepath.Join( - fmt.Sprintf("github.com/piclemx/pulumi-%[1]s/sdk/", mainPkg), + fmt.Sprintf("github.com/piclemx/pulumi-%[1]s/sdk/", "nobl9"), tfbridge.GetModuleMajorVersion(version.Version), "go", - mainPkg, + "nobl9", ), GenerateResourceContainerTypes: true, }, CSharp: &tfbridge.CSharpInfo{ + RootNamespace: "Piclemx", + PackageReferences: map[string]string{ "Pulumi": "3.*", }, }, + Java: &tfbridge.JavaInfo{ + BasePackage: "com.piclemx", + }, } - for _, res := range []string{ - "nobl9_agent", - "nobl9_alert_method_discord", - "nobl9_alert_method_email", - "nobl9_alert_method_jira", - "nobl9_alert_method_msteams", - "nobl9_alert_method_opsgenie", - "nobl9_alert_method_pagerduty", - "nobl9_alert_method_servicenow", - "nobl9_alert_method_slack", - "nobl9_alert_method_webhook", - "nobl9_alert_policy", - "nobl9_direct_appdynamics", - "nobl9_direct_bigquery", - "nobl9_direct_cloudwatch", - "nobl9_direct_datadog", - "nobl9_direct_dynatrace", - "nobl9_direct_gcm", - "nobl9_direct_influxdb", - "nobl9_direct_instana", - "nobl9_direct_lightstep", - "nobl9_direct_newrelic", - "nobl9_direct_pingdom", - "nobl9_direct_redshift", - "nobl9_direct_splunk", - "nobl9_direct_splunk_observability", - "nobl9_direct_sumologic", - "nobl9_direct_thousandeyes", - "nobl9_project", - "nobl9_role_binding", - "nobl9_service", - "nobl9_slo", - } { - name := strings.Builder{} - caser := cases.Title(language.English) - for _, s := range strings.Split(res, "_")[1:] { - name.WriteString(caser.String(s)) - } - prov.Resources[res] = &tfbridge.ResourceInfo{ - Tok: tfbridge.MakeResource(mainPkg, mainMod, name.String()), - } - } - + prov.MustComputeTokens(moduleComputeStrategy()) prov.SetAutonaming(255, "-") return prov diff --git a/sdk/dotnet/Agent.cs b/sdk/dotnet/Agent.cs index bf1b3f4..7287dba 100644 --- a/sdk/dotnet/Agent.cs +++ b/sdk/dotnet/Agent.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// /// The Agent is a lightweight application that executes the queries defined for your Nobl9 SLOs. Queries are written in the language supported by the data source in question and executed via native APIs. @@ -20,8 +21,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -34,12 +36,8 @@ namespace Pulumi.Nobl9 /// var thisAgent = new Nobl9.Agent("thisAgent", new() /// { /// Project = thisProject.Name, - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// AgentType = "prometheus", + /// ReleaseChannel = "stable", /// PrometheusConfig = new Nobl9.Inputs.AgentPrometheusConfigArgs /// { /// Url = "http://web.net", @@ -73,6 +71,12 @@ public partial class Agent : global::Pulumi.CustomResource [Output("appdynamicsConfig")] public Output AppdynamicsConfig { get; private set; } = null!; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + /// + [Output("azureMonitorConfig")] + public Output AzureMonitorConfig { get; private set; } = null!; + /// /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) /// @@ -145,6 +149,18 @@ public partial class Agent : global::Pulumi.CustomResource [Output("graphiteConfig")] public Output GraphiteConfig { get; private set; } = null!; + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Output("historicalDataRetrieval")] + public Output HistoricalDataRetrieval { get; private set; } = null!; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + /// + [Output("honeycombConfig")] + public Output HoneycombConfig { get; private set; } = null!; + /// /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) /// @@ -188,7 +204,7 @@ public partial class Agent : global::Pulumi.CustomResource public Output PingdomConfig { get; private set; } = null!; /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Name of the Lightstep project. /// [Output("project")] public Output Project { get; private set; } = null!; @@ -203,7 +219,7 @@ public partial class Agent : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; /// /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) @@ -212,7 +228,13 @@ public partial class Agent : global::Pulumi.CustomResource public Output RedshiftConfig { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -270,7 +292,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -312,6 +334,12 @@ public sealed class AgentArgs : global::Pulumi.ResourceArgs [Input("appdynamicsConfig")] public Input? AppdynamicsConfig { get; set; } + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + /// + [Input("azureMonitorConfig")] + public Input? AzureMonitorConfig { get; set; } + /// /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) /// @@ -372,6 +400,18 @@ public sealed class AgentArgs : global::Pulumi.ResourceArgs [Input("graphiteConfig")] public Input? GraphiteConfig { get; set; } + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Input("historicalDataRetrieval")] + public Input? HistoricalDataRetrieval { get; set; } + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + /// + [Input("honeycombConfig")] + public Input? HoneycombConfig { get; set; } + /// /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) /// @@ -415,7 +455,7 @@ public sealed class AgentArgs : global::Pulumi.ResourceArgs public Input? PingdomConfig { get; set; } /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Name of the Lightstep project. /// [Input("project", required: true)] public Input Project { get; set; } = null!; @@ -438,12 +478,19 @@ public sealed class AgentArgs : global::Pulumi.ResourceArgs [Input("redshiftConfig")] public Input? RedshiftConfig { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -500,6 +547,12 @@ public sealed class AgentState : global::Pulumi.ResourceArgs [Input("appdynamicsConfig")] public Input? AppdynamicsConfig { get; set; } + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + /// + [Input("azureMonitorConfig")] + public Input? AzureMonitorConfig { get; set; } + /// /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) /// @@ -572,6 +625,18 @@ public sealed class AgentState : global::Pulumi.ResourceArgs [Input("graphiteConfig")] public Input? GraphiteConfig { get; set; } + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Input("historicalDataRetrieval")] + public Input? HistoricalDataRetrieval { get; set; } + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + /// + [Input("honeycombConfig")] + public Input? HoneycombConfig { get; set; } + /// /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) /// @@ -615,7 +680,7 @@ public sealed class AgentState : global::Pulumi.ResourceArgs public Input? PingdomConfig { get; set; } /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Name of the Lightstep project. /// [Input("project")] public Input? Project { get; set; } @@ -638,12 +703,19 @@ public sealed class AgentState : global::Pulumi.ResourceArgs [Input("redshiftConfig")] public Input? RedshiftConfig { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/AlertMethodDiscord.cs b/sdk/dotnet/AlertMethodDiscord.cs index 69b4620..76cda2c 100644 --- a/sdk/dotnet/AlertMethodDiscord.cs +++ b/sdk/dotnet/AlertMethodDiscord.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodDiscord:AlertMethodDiscord")] public partial class AlertMethodDiscord : global::Pulumi.CustomResource @@ -65,7 +66,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "url", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -113,11 +118,21 @@ public sealed class AlertMethodDiscordArgs : global::Pulumi.ResourceArgs [Input("project", required: true)] public Input Project { get; set; } = null!; + [Input("url")] + private Input? _url; + /// /// Discord webhook endpoint URL. Refer to [Intro to webhooks | Discord documentation](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) for more details. /// - [Input("url")] - public Input? Url { get; set; } + public Input? Url + { + get => _url; + set + { + var emptySecret = Output.CreateSecret(0); + _url = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } public AlertMethodDiscordArgs() { @@ -151,11 +166,21 @@ public sealed class AlertMethodDiscordState : global::Pulumi.ResourceArgs [Input("project")] public Input? Project { get; set; } + [Input("url")] + private Input? _url; + /// /// Discord webhook endpoint URL. Refer to [Intro to webhooks | Discord documentation](https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks) for more details. /// - [Input("url")] - public Input? Url { get; set; } + public Input? Url + { + get => _url; + set + { + var emptySecret = Output.CreateSecret(0); + _url = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } public AlertMethodDiscordState() { diff --git a/sdk/dotnet/AlertMethodEmail.cs b/sdk/dotnet/AlertMethodEmail.cs index 42fe7f0..b5052f1 100644 --- a/sdk/dotnet/AlertMethodEmail.cs +++ b/sdk/dotnet/AlertMethodEmail.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodEmail:AlertMethodEmail")] public partial class AlertMethodEmail : global::Pulumi.CustomResource @@ -19,10 +20,10 @@ public partial class AlertMethodEmail : global::Pulumi.CustomResource public Output> Bccs { get; private set; } = null!; /// - /// The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + /// This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. /// [Output("body")] - public Output Body { get; private set; } = null!; + public Output Body { get; private set; } = null!; /// /// Carbon copy recipients. The maximum number of recipients is 10. @@ -55,10 +56,10 @@ public partial class AlertMethodEmail : global::Pulumi.CustomResource public Output Project { get; private set; } = null!; /// - /// The Subject of the email alert. + /// This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. /// [Output("subject")] - public Output Subject { get; private set; } = null!; + public Output Subject { get; private set; } = null!; /// /// Recipients. The maximum number of recipients is 10. @@ -89,7 +90,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -126,10 +127,10 @@ public InputList Bccs } /// - /// The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + /// This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. /// - [Input("body", required: true)] - public Input Body { get; set; } = null!; + [Input("body")] + public Input? Body { get; set; } [Input("ccs")] private InputList? _ccs; @@ -168,10 +169,10 @@ public InputList Ccs public Input Project { get; set; } = null!; /// - /// The Subject of the email alert. + /// This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. /// - [Input("subject", required: true)] - public Input Subject { get; set; } = null!; + [Input("subject")] + public Input? Subject { get; set; } [Input("tos", required: true)] private InputList? _tos; @@ -206,7 +207,7 @@ public InputList Bccs } /// - /// The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + /// This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. /// [Input("body")] public Input? Body { get; set; } @@ -248,7 +249,7 @@ public InputList Ccs public Input? Project { get; set; } /// - /// The Subject of the email alert. + /// This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. /// [Input("subject")] public Input? Subject { get; set; } diff --git a/sdk/dotnet/AlertMethodJira.cs b/sdk/dotnet/AlertMethodJira.cs index f5ae0ca..482a80c 100644 --- a/sdk/dotnet/AlertMethodJira.cs +++ b/sdk/dotnet/AlertMethodJira.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodJira:AlertMethodJira")] public partial class AlertMethodJira : global::Pulumi.CustomResource @@ -83,7 +84,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "apitoken", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -107,11 +112,21 @@ public static AlertMethodJira Get(string name, Input id, AlertMethodJira public sealed class AlertMethodJiraArgs : global::Pulumi.ResourceArgs { + [Input("apitoken")] + private Input? _apitoken; + /// /// [API Token](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/) with access rights to the project. /// - [Input("apitoken")] - public Input? Apitoken { get; set; } + public Input? Apitoken + { + get => _apitoken; + set + { + var emptySecret = Output.CreateSecret(0); + _apitoken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -163,11 +178,21 @@ public AlertMethodJiraArgs() public sealed class AlertMethodJiraState : global::Pulumi.ResourceArgs { + [Input("apitoken")] + private Input? _apitoken; + /// /// [API Token](https://support.atlassian.com/atlassian-account/docs/manage-api-tokens-for-your-atlassian-account/) with access rights to the project. /// - [Input("apitoken")] - public Input? Apitoken { get; set; } + public Input? Apitoken + { + get => _apitoken; + set + { + var emptySecret = Output.CreateSecret(0); + _apitoken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. diff --git a/sdk/dotnet/AlertMethodMsteams.cs b/sdk/dotnet/AlertMethodMsteams.cs index 936449c..396ec64 100644 --- a/sdk/dotnet/AlertMethodMsteams.cs +++ b/sdk/dotnet/AlertMethodMsteams.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodMsteams:AlertMethodMsteams")] public partial class AlertMethodMsteams : global::Pulumi.CustomResource @@ -65,7 +66,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "url", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -113,11 +118,21 @@ public sealed class AlertMethodMsteamsArgs : global::Pulumi.ResourceArgs [Input("project", required: true)] public Input Project { get; set; } = null!; + [Input("url")] + private Input? _url; + /// /// MS Teams [webhook endpoint URL](https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook). /// - [Input("url")] - public Input? Url { get; set; } + public Input? Url + { + get => _url; + set + { + var emptySecret = Output.CreateSecret(0); + _url = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } public AlertMethodMsteamsArgs() { @@ -151,11 +166,21 @@ public sealed class AlertMethodMsteamsState : global::Pulumi.ResourceArgs [Input("project")] public Input? Project { get; set; } + [Input("url")] + private Input? _url; + /// /// MS Teams [webhook endpoint URL](https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook). /// - [Input("url")] - public Input? Url { get; set; } + public Input? Url + { + get => _url; + set + { + var emptySecret = Output.CreateSecret(0); + _url = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } public AlertMethodMsteamsState() { diff --git a/sdk/dotnet/AlertMethodOpsgenie.cs b/sdk/dotnet/AlertMethodOpsgenie.cs index 7634845..90d648e 100644 --- a/sdk/dotnet/AlertMethodOpsgenie.cs +++ b/sdk/dotnet/AlertMethodOpsgenie.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodOpsgenie:AlertMethodOpsgenie")] public partial class AlertMethodOpsgenie : global::Pulumi.CustomResource @@ -71,7 +72,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "auth", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -95,11 +100,21 @@ public static AlertMethodOpsgenie Get(string name, Input id, AlertMethod public sealed class AlertMethodOpsgenieArgs : global::Pulumi.ResourceArgs { + [Input("auth")] + private Input? _auth; + /// /// Opsgenie authentication credentials. See [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/opsgenie#authentication) for supported formats. /// - [Input("auth")] - public Input? Auth { get; set; } + public Input? Auth + { + get => _auth; + set + { + var emptySecret = Output.CreateSecret(0); + _auth = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -139,11 +154,21 @@ public AlertMethodOpsgenieArgs() public sealed class AlertMethodOpsgenieState : global::Pulumi.ResourceArgs { + [Input("auth")] + private Input? _auth; + /// /// Opsgenie authentication credentials. See [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/opsgenie#authentication) for supported formats. /// - [Input("auth")] - public Input? Auth { get; set; } + public Input? Auth + { + get => _auth; + set + { + var emptySecret = Output.CreateSecret(0); + _auth = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. diff --git a/sdk/dotnet/AlertMethodPagerduty.cs b/sdk/dotnet/AlertMethodPagerduty.cs index 1e47d24..b6152f7 100644 --- a/sdk/dotnet/AlertMethodPagerduty.cs +++ b/sdk/dotnet/AlertMethodPagerduty.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodPagerduty:AlertMethodPagerduty")] public partial class AlertMethodPagerduty : global::Pulumi.CustomResource @@ -42,6 +43,12 @@ public partial class AlertMethodPagerduty : global::Pulumi.CustomResource [Output("project")] public Output Project { get; private set; } = null!; + /// + /// Sends a notification after the cooldown period is over. + /// + [Output("sendResolution")] + public Output SendResolution { get; private set; } = null!; + /// /// Create a AlertMethodPagerduty resource with the given unique name, arguments, and options. @@ -65,7 +72,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "integrationKey", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -101,11 +112,21 @@ public sealed class AlertMethodPagerdutyArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + [Input("integrationKey")] + private Input? _integrationKey; + /// /// PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations). /// - [Input("integrationKey")] - public Input? IntegrationKey { get; set; } + public Input? IntegrationKey + { + get => _integrationKey; + set + { + var emptySecret = Output.CreateSecret(0); + _integrationKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -119,6 +140,12 @@ public sealed class AlertMethodPagerdutyArgs : global::Pulumi.ResourceArgs [Input("project", required: true)] public Input Project { get; set; } = null!; + /// + /// Sends a notification after the cooldown period is over. + /// + [Input("sendResolution")] + public Input? SendResolution { get; set; } + public AlertMethodPagerdutyArgs() { } @@ -139,11 +166,21 @@ public sealed class AlertMethodPagerdutyState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + [Input("integrationKey")] + private Input? _integrationKey; + /// /// PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations). /// - [Input("integrationKey")] - public Input? IntegrationKey { get; set; } + public Input? IntegrationKey + { + get => _integrationKey; + set + { + var emptySecret = Output.CreateSecret(0); + _integrationKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -157,6 +194,12 @@ public sealed class AlertMethodPagerdutyState : global::Pulumi.ResourceArgs [Input("project")] public Input? Project { get; set; } + /// + /// Sends a notification after the cooldown period is over. + /// + [Input("sendResolution")] + public Input? SendResolution { get; set; } + public AlertMethodPagerdutyState() { } diff --git a/sdk/dotnet/AlertMethodServicenow.cs b/sdk/dotnet/AlertMethodServicenow.cs index 9156b6a..49a50aa 100644 --- a/sdk/dotnet/AlertMethodServicenow.cs +++ b/sdk/dotnet/AlertMethodServicenow.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodServicenow:AlertMethodServicenow")] public partial class AlertMethodServicenow : global::Pulumi.CustomResource @@ -77,7 +78,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "password", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -125,11 +130,21 @@ public sealed class AlertMethodServicenowArgs : global::Pulumi.ResourceArgs [Input("name")] public Input? Name { get; set; } + [Input("password")] + private Input? _password; + /// /// ServiceNow password. /// - [Input("password")] - public Input? Password { get; set; } + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -175,11 +190,21 @@ public sealed class AlertMethodServicenowState : global::Pulumi.ResourceArgs [Input("name")] public Input? Name { get; set; } + [Input("password")] + private Input? _password; + /// /// ServiceNow password. /// - [Input("password")] - public Input? Password { get; set; } + public Input? Password + { + get => _password; + set + { + var emptySecret = Output.CreateSecret(0); + _password = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). diff --git a/sdk/dotnet/AlertMethodSlack.cs b/sdk/dotnet/AlertMethodSlack.cs index 17ea4d4..21fa47e 100644 --- a/sdk/dotnet/AlertMethodSlack.cs +++ b/sdk/dotnet/AlertMethodSlack.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodSlack:AlertMethodSlack")] public partial class AlertMethodSlack : global::Pulumi.CustomResource @@ -65,7 +66,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "url", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -113,11 +118,21 @@ public sealed class AlertMethodSlackArgs : global::Pulumi.ResourceArgs [Input("project", required: true)] public Input Project { get; set; } = null!; + [Input("url")] + private Input? _url; + /// /// Slack [webhook endpoint URL](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack%22). /// - [Input("url")] - public Input? Url { get; set; } + public Input? Url + { + get => _url; + set + { + var emptySecret = Output.CreateSecret(0); + _url = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } public AlertMethodSlackArgs() { @@ -151,11 +166,21 @@ public sealed class AlertMethodSlackState : global::Pulumi.ResourceArgs [Input("project")] public Input? Project { get; set; } + [Input("url")] + private Input? _url; + /// /// Slack [webhook endpoint URL](https://slack.com/help/articles/115005265063-Incoming-webhooks-for-Slack%22). /// - [Input("url")] - public Input? Url { get; set; } + public Input? Url + { + get => _url; + set + { + var emptySecret = Output.CreateSecret(0); + _url = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } public AlertMethodSlackState() { diff --git a/sdk/dotnet/AlertMethodWebhook.cs b/sdk/dotnet/AlertMethodWebhook.cs index a10422b..a528f5d 100644 --- a/sdk/dotnet/AlertMethodWebhook.cs +++ b/sdk/dotnet/AlertMethodWebhook.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { [Nobl9ResourceType("nobl9:index/alertMethodWebhook:AlertMethodWebhook")] public partial class AlertMethodWebhook : global::Pulumi.CustomResource @@ -77,7 +78,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "url", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -143,11 +148,21 @@ public InputList TemplateFields set => _templateFields = value; } + [Input("url")] + private Input? _url; + /// /// URL of the webhook endpoint. /// - [Input("url")] - public Input? Url { get; set; } + public Input? Url + { + get => _url; + set + { + var emptySecret = Output.CreateSecret(0); + _url = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } public AlertMethodWebhookArgs() { @@ -199,11 +214,21 @@ public InputList TemplateFields set => _templateFields = value; } + [Input("url")] + private Input? _url; + /// /// URL of the webhook endpoint. /// - [Input("url")] - public Input? Url { get; set; } + public Input? Url + { + get => _url; + set + { + var emptySecret = Output.CreateSecret(0); + _url = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } public AlertMethodWebhookState() { diff --git a/sdk/dotnet/AlertPolicy.cs b/sdk/dotnet/AlertPolicy.cs index b4d5bc1..e14bd82 100644 --- a/sdk/dotnet/AlertPolicy.cs +++ b/sdk/dotnet/AlertPolicy.cs @@ -6,13 +6,14 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// /// An **Alert Policy** expresses a set of conditions you want to track or monitor. The conditions for an Alert Policy define what is monitored and when to activate an alert: when the performance of your service is declining, Nobl9 will send a notification to a predefined channel. /// - /// A Nobl9 AlertPolicy accepts up to 7 conditions. All the specified conditions must be satisfied to trigger an alert. + /// A Nobl9 AlertPolicy accepts up to 3 conditions. All the specified conditions must be satisfied to trigger an alert. /// /// For more details, refer to the [Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy). /// @@ -22,8 +23,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -46,6 +48,7 @@ namespace Pulumi.Nobl9 /// DisplayName = thisProject.DisplayName.Apply(displayName => $"{displayName} Front Page Latency"), /// Severity = "High", /// Description = "Alert when page latency is > 2000 and error budget would be exhausted", + /// Cooldown = "5m", /// Conditions = new[] /// { /// new Nobl9.Inputs.AlertPolicyConditionArgs @@ -64,6 +67,48 @@ namespace Pulumi.Nobl9 /// }, /// }); /// + /// var thisIndex_alertPolicyAlertPolicy = new Nobl9.AlertPolicy("thisIndex/alertPolicyAlertPolicy", new() + /// { + /// Project = thisProject.Name, + /// DisplayName = thisProject.DisplayName.Apply(displayName => $"{displayName} Slow Burn (1x12h and 2x15min)"), + /// Severity = "Low", + /// Description = "The budget is slowly exhausting and not recovering.", + /// Cooldown = "5m", + /// Conditions = new[] + /// { + /// new Nobl9.Inputs.AlertPolicyConditionArgs + /// { + /// Measurement = "averageBurnRate", + /// Value = 1, + /// AlertingWindow = "12h", + /// }, + /// new Nobl9.Inputs.AlertPolicyConditionArgs + /// { + /// Measurement = "averageBurnRate", + /// Value = 2, + /// AlertingWindow = "15m", + /// }, + /// }, + /// }); + /// + /// var thisNobl9Index_alertPolicyAlertPolicy = new Nobl9.AlertPolicy("thisNobl9Index/alertPolicyAlertPolicy", new() + /// { + /// Project = thisProject.Name, + /// DisplayName = thisProject.DisplayName.Apply(displayName => $"{displayName} Fast Burn (20x5min)"), + /// Severity = "High", + /// Description = "There’s been a significant spike in burn rate over a brief period.", + /// Cooldown = "5m", + /// Conditions = new[] + /// { + /// new Nobl9.Inputs.AlertPolicyConditionArgs + /// { + /// Measurement = "averageBurnRate", + /// Value = 20, + /// AlertingWindow = "5m", + /// }, + /// }, + /// }); + /// /// }); /// ``` /// ## Useful Links @@ -82,6 +127,12 @@ public partial class AlertPolicy : global::Pulumi.CustomResource [Output("conditions")] public Output> Conditions { get; private set; } = null!; + /// + /// An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + /// + [Output("cooldown")] + public Output Cooldown { get; private set; } = null!; + /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -95,13 +146,13 @@ public partial class AlertPolicy : global::Pulumi.CustomResource public Output DisplayName { get; private set; } = null!; /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Output("name")] public Output Name { get; private set; } = null!; /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. /// [Output("project")] public Output Project { get; private set; } = null!; @@ -135,7 +186,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -179,6 +230,12 @@ public InputList Conditions set => _conditions = value; } + /// + /// An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + /// + [Input("cooldown")] + public Input? Cooldown { get; set; } + /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -192,13 +249,13 @@ public InputList Conditions public Input? DisplayName { get; set; } /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name")] public Input? Name { get; set; } /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. /// [Input("project", required: true)] public Input Project { get; set; } = null!; @@ -237,6 +294,12 @@ public InputList Conditions set => _conditions = value; } + /// + /// An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + /// + [Input("cooldown")] + public Input? Cooldown { get; set; } + /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -250,13 +313,13 @@ public InputList Conditions public Input? DisplayName { get; set; } /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name")] public Input? Name { get; set; } /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. /// [Input("project")] public Input? Project { get; set; } diff --git a/sdk/dotnet/Config/Config.cs b/sdk/dotnet/Config/Config.cs index f4940ec..9e47f34 100644 --- a/sdk/dotnet/Config/Config.cs +++ b/sdk/dotnet/Config/Config.cs @@ -4,11 +4,11 @@ using System; using System.Collections.Immutable; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { public static class Config { - [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "IDE1006", Justification = + [global::System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "IDE1006", Justification = "Double underscore prefix used to avoid conflicts with variable names.")] private sealed class __Value { @@ -30,7 +30,7 @@ public void Set(T value) } } - private static readonly Pulumi.Config __config = new Pulumi.Config("nobl9"); + private static readonly global::Pulumi.Config __config = new global::Pulumi.Config("nobl9"); private static readonly __Value _clientId = new __Value(() => __config.Get("clientId")); /// @@ -85,10 +85,6 @@ public void Set(T value) } private static readonly __Value _organization = new __Value(() => __config.Get("organization")); - /// - /// Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that - /// contains resources managed by the Nobl9 Terraform provider. - /// public static string? Organization { get => _organization.Get(); diff --git a/sdk/dotnet/Config/README.md b/sdk/dotnet/Config/README.md index 80dd4d7..09a6328 100644 --- a/sdk/dotnet/Config/README.md +++ b/sdk/dotnet/Config/README.md @@ -1 +1 @@ -A Pulumi package for creating and managing Nobl9 cloud resources. +A Pulumi package for creating and managing Nobl9 resources diff --git a/sdk/dotnet/DirectAppdynamics.cs b/sdk/dotnet/DirectAppdynamics.cs index 4f67c1d..d45950d 100644 --- a/sdk/dotnet/DirectAppdynamics.cs +++ b/sdk/dotnet/DirectAppdynamics.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects with AppDynamics to collect SLI measurements and compare them to SLO targets. + /// AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects to AppDynamics for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [AppDynamics Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-direct) /// @@ -18,8 +19,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -29,12 +31,9 @@ namespace Pulumi.Nobl9 /// ClientName = "client name", /// ClientSecret = "secret", /// Description = "desc", + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, + /// ReleaseChannel = "stable", /// Url = "https://web.net", /// }); /// @@ -83,6 +82,18 @@ public partial class DirectAppdynamics : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Output("historicalDataRetrieval")] + public Output HistoricalDataRetrieval { get; private set; } = null!; + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -99,10 +110,16 @@ public partial class DirectAppdynamics : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -142,7 +159,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "clientSecret", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -178,11 +199,21 @@ public sealed class DirectAppdynamicsArgs : global::Pulumi.ResourceArgs [Input("clientName", required: true)] public Input ClientName { get; set; } = null!; + [Input("clientSecret")] + private Input? _clientSecret; + /// /// [required] | AppDynamics Client Secret. /// - [Input("clientSecret")] - public Input? ClientSecret { get; set; } + public Input? ClientSecret + { + get => _clientSecret; + set + { + var emptySecret = Output.CreateSecret(0); + _clientSecret = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -196,6 +227,18 @@ public sealed class DirectAppdynamicsArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Input("historicalDataRetrieval")] + public Input? HistoricalDataRetrieval { get; set; } + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -214,12 +257,19 @@ public sealed class DirectAppdynamicsArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -258,11 +308,21 @@ public sealed class DirectAppdynamicsState : global::Pulumi.ResourceArgs [Input("clientName")] public Input? ClientName { get; set; } + [Input("clientSecret")] + private Input? _clientSecret; + /// /// [required] | AppDynamics Client Secret. /// - [Input("clientSecret")] - public Input? ClientSecret { get; set; } + public Input? ClientSecret + { + get => _clientSecret; + set + { + var emptySecret = Output.CreateSecret(0); + _clientSecret = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -276,6 +336,18 @@ public sealed class DirectAppdynamicsState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Input("historicalDataRetrieval")] + public Input? HistoricalDataRetrieval { get; set; } + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -294,12 +366,19 @@ public sealed class DirectAppdynamicsState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectAzureMonitor.cs b/sdk/dotnet/DirectAzureMonitor.cs new file mode 100644 index 0000000..d6bace8 --- /dev/null +++ b/sdk/dotnet/DirectAzureMonitor.cs @@ -0,0 +1,375 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9 +{ + [Nobl9ResourceType("nobl9:index/directAzureMonitor:DirectAzureMonitor")] + public partial class DirectAzureMonitor : global::Pulumi.CustomResource + { + /// + /// [required] | Azure Application (client) ID. + /// + [Output("clientId")] + public Output ClientId { get; private set; } = null!; + + /// + /// [required] | Azure Application (client) Secret. + /// + [Output("clientSecret")] + public Output ClientSecret { get; private set; } = null!; + + /// + /// Optional description of the resource. Here, you can add details about who is responsible for the integration + /// (team/owner) or the purpose of creating it. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// User-friendly display name of the resource. + /// + [Output("displayName")] + public Output DisplayName { get; private set; } = null!; + + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Output("historicalDataRetrieval")] + public Output HistoricalDataRetrieval { get; private set; } = null!; + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + + /// + /// Unique name of the resource, must conform to the naming convention from [DNS + /// RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + /// RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Output("project")] + public Output Project { get; private set; } = null!; + + /// + /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + /// + [Output("queryDelay")] + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + /// anywhere; however, it's kept for backward compatibility. + /// + [Output("sourceOfs")] + public Output> SourceOfs { get; private set; } = null!; + + /// + /// The status of the created direct. + /// + [Output("status")] + public Output Status { get; private set; } = null!; + + /// + /// [required] | Azure Tenant ID. + /// + [Output("tenantId")] + public Output TenantId { get; private set; } = null!; + + + /// + /// Create a DirectAzureMonitor resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public DirectAzureMonitor(string name, DirectAzureMonitorArgs args, CustomResourceOptions? options = null) + : base("nobl9:index/directAzureMonitor:DirectAzureMonitor", name, args ?? new DirectAzureMonitorArgs(), MakeResourceOptions(options, "")) + { + } + + private DirectAzureMonitor(string name, Input id, DirectAzureMonitorState? state = null, CustomResourceOptions? options = null) + : base("nobl9:index/directAzureMonitor:DirectAzureMonitor", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "clientId", + "clientSecret", + }, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing DirectAzureMonitor resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// Any extra arguments used during the lookup. + /// A bag of options that control this resource's behavior + public static DirectAzureMonitor Get(string name, Input id, DirectAzureMonitorState? state = null, CustomResourceOptions? options = null) + { + return new DirectAzureMonitor(name, id, state, options); + } + } + + public sealed class DirectAzureMonitorArgs : global::Pulumi.ResourceArgs + { + [Input("clientId")] + private Input? _clientId; + + /// + /// [required] | Azure Application (client) ID. + /// + public Input? ClientId + { + get => _clientId; + set + { + var emptySecret = Output.CreateSecret(0); + _clientId = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("clientSecret")] + private Input? _clientSecret; + + /// + /// [required] | Azure Application (client) Secret. + /// + public Input? ClientSecret + { + get => _clientSecret; + set + { + var emptySecret = Output.CreateSecret(0); + _clientSecret = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// Optional description of the resource. Here, you can add details about who is responsible for the integration + /// (team/owner) or the purpose of creating it. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// User-friendly display name of the resource. + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Input("historicalDataRetrieval")] + public Input? HistoricalDataRetrieval { get; set; } + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + + /// + /// Unique name of the resource, must conform to the naming convention from [DNS + /// RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + /// RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Input("project", required: true)] + public Input Project { get; set; } = null!; + + /// + /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + /// + [Input("queryDelay")] + public Input? QueryDelay { get; set; } + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] + private InputList? _sourceOfs; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + /// anywhere; however, it's kept for backward compatibility. + /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] + public InputList SourceOfs + { + get => _sourceOfs ?? (_sourceOfs = new InputList()); + set => _sourceOfs = value; + } + + /// + /// [required] | Azure Tenant ID. + /// + [Input("tenantId", required: true)] + public Input TenantId { get; set; } = null!; + + public DirectAzureMonitorArgs() + { + } + public static new DirectAzureMonitorArgs Empty => new DirectAzureMonitorArgs(); + } + + public sealed class DirectAzureMonitorState : global::Pulumi.ResourceArgs + { + [Input("clientId")] + private Input? _clientId; + + /// + /// [required] | Azure Application (client) ID. + /// + public Input? ClientId + { + get => _clientId; + set + { + var emptySecret = Output.CreateSecret(0); + _clientId = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("clientSecret")] + private Input? _clientSecret; + + /// + /// [required] | Azure Application (client) Secret. + /// + public Input? ClientSecret + { + get => _clientSecret; + set + { + var emptySecret = Output.CreateSecret(0); + _clientSecret = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// Optional description of the resource. Here, you can add details about who is responsible for the integration + /// (team/owner) or the purpose of creating it. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// User-friendly display name of the resource. + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Input("historicalDataRetrieval")] + public Input? HistoricalDataRetrieval { get; set; } + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + + /// + /// Unique name of the resource, must conform to the naming convention from [DNS + /// RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + /// RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Input("project")] + public Input? Project { get; set; } + + /// + /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + /// + [Input("queryDelay")] + public Input? QueryDelay { get; set; } + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] + private InputList? _sourceOfs; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + /// anywhere; however, it's kept for backward compatibility. + /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] + public InputList SourceOfs + { + get => _sourceOfs ?? (_sourceOfs = new InputList()); + set => _sourceOfs = value; + } + + /// + /// The status of the created direct. + /// + [Input("status")] + public Input? Status { get; set; } + + /// + /// [required] | Azure Tenant ID. + /// + [Input("tenantId")] + public Input? TenantId { get; set; } + + public DirectAzureMonitorState() + { + } + public static new DirectAzureMonitorState Empty => new DirectAzureMonitorState(); + } +} diff --git a/sdk/dotnet/DirectBigquery.cs b/sdk/dotnet/DirectBigquery.cs index 3037b9c..9b2d3fc 100644 --- a/sdk/dotnet/DirectBigquery.cs +++ b/sdk/dotnet/DirectBigquery.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects with BigQuery to collect SLI measurements and compare them to SLO targets. + /// Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects to BigQuery for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [BigQuery Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-direct) /// @@ -18,21 +19,18 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { /// var test_bigquery = new Nobl9.DirectBigquery("test-bigquery", new() /// { /// Description = "desc", + /// LogCollectionEnabled = true, /// Project = "terraform", /// ServiceAccountKey = "secret", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -56,6 +54,12 @@ public partial class DirectBigquery : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -72,7 +76,13 @@ public partial class DirectBigquery : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// /// [required] | Service Account Key. @@ -81,7 +91,7 @@ public partial class DirectBigquery : global::Pulumi.CustomResource public Output ServiceAccountKey { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -115,7 +125,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "serviceAccountKey", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -151,6 +165,12 @@ public sealed class DirectBigqueryArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -170,17 +190,34 @@ public sealed class DirectBigqueryArgs : global::Pulumi.ResourceArgs public Input? QueryDelay { get; set; } /// - /// [required] | Service Account Key. + /// Release channel of the created datasource [stable/beta] /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("serviceAccountKey")] - public Input? ServiceAccountKey { get; set; } + private Input? _serviceAccountKey; - [Input("sourceOfs", required: true)] + /// + /// [required] | Service Account Key. + /// + public Input? ServiceAccountKey + { + get => _serviceAccountKey; + set + { + var emptySecret = Output.CreateSecret(0); + _serviceAccountKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -207,6 +244,12 @@ public sealed class DirectBigqueryState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -226,17 +269,34 @@ public sealed class DirectBigqueryState : global::Pulumi.ResourceArgs public Input? QueryDelay { get; set; } /// - /// [required] | Service Account Key. + /// Release channel of the created datasource [stable/beta] /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("serviceAccountKey")] - public Input? ServiceAccountKey { get; set; } + private Input? _serviceAccountKey; + + /// + /// [required] | Service Account Key. + /// + public Input? ServiceAccountKey + { + get => _serviceAccountKey; + set + { + var emptySecret = Output.CreateSecret(0); + _serviceAccountKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectCloudwatch.cs b/sdk/dotnet/DirectCloudwatch.cs index f245024..f67753b 100644 --- a/sdk/dotnet/DirectCloudwatch.cs +++ b/sdk/dotnet/DirectCloudwatch.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects with Amazon CloudWatch to collect SLI measurements and compare them to SLO targets. + /// Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects to Amazon CloudWatch for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Amazon CloudWatch Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-direct) /// @@ -18,14 +19,14 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { /// var test_cloudwatch = new Nobl9.DirectCloudwatch("test-cloudwatch", new() /// { - /// AccessKeyId = "secret", /// Description = "desc", /// HistoricalDataRetrieval = new Nobl9.Inputs.DirectCloudwatchHistoricalDataRetrievalArgs /// { @@ -46,13 +47,9 @@ namespace Pulumi.Nobl9 /// }, /// }, /// }, + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SecretAccessKey = "secret", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, + /// RoleArn = "secret", /// }); /// /// }); @@ -64,12 +61,6 @@ namespace Pulumi.Nobl9 [Nobl9ResourceType("nobl9:index/directCloudwatch:DirectCloudwatch")] public partial class DirectCloudwatch : global::Pulumi.CustomResource { - /// - /// [required] | AWS Access Key ID. - /// - [Output("accessKeyId")] - public Output AccessKeyId { get; private set; } = null!; - /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -86,7 +77,13 @@ public partial class DirectCloudwatch : global::Pulumi.CustomResource /// [Replay configuration documentation](https://docs.nobl9.com/replay) /// [Output("historicalDataRetrieval")] - public Output HistoricalDataRetrieval { get; private set; } = null!; + public Output HistoricalDataRetrieval { get; private set; } = null!; + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -104,16 +101,22 @@ public partial class DirectCloudwatch : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; /// - /// [required] | AWS Secret Access Key. + /// Release channel of the created datasource [stable/beta] /// - [Output("secretAccessKey")] - public Output SecretAccessKey { get; private set; } = null!; + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// [required] | ARN of the AWS IAM Role to assume. + /// + [Output("roleArn")] + public Output RoleArn { get; private set; } = null!; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -147,7 +150,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "roleArn", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -171,12 +178,6 @@ public static DirectCloudwatch Get(string name, Input id, DirectCloudwat public sealed class DirectCloudwatchArgs : global::Pulumi.ResourceArgs { - /// - /// [required] | AWS Access Key ID. - /// - [Input("accessKeyId")] - public Input? AccessKeyId { get; set; } - /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -195,6 +196,12 @@ public sealed class DirectCloudwatchArgs : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -214,17 +221,34 @@ public sealed class DirectCloudwatchArgs : global::Pulumi.ResourceArgs public Input? QueryDelay { get; set; } /// - /// [required] | AWS Secret Access Key. + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("roleArn")] + private Input? _roleArn; + + /// + /// [required] | ARN of the AWS IAM Role to assume. /// - [Input("secretAccessKey")] - public Input? SecretAccessKey { get; set; } + public Input? RoleArn + { + get => _roleArn; + set + { + var emptySecret = Output.CreateSecret(0); + _roleArn = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } - [Input("sourceOfs", required: true)] + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -239,12 +263,6 @@ public DirectCloudwatchArgs() public sealed class DirectCloudwatchState : global::Pulumi.ResourceArgs { - /// - /// [required] | AWS Access Key ID. - /// - [Input("accessKeyId")] - public Input? AccessKeyId { get; set; } - /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -263,6 +281,12 @@ public sealed class DirectCloudwatchState : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -282,17 +306,34 @@ public sealed class DirectCloudwatchState : global::Pulumi.ResourceArgs public Input? QueryDelay { get; set; } /// - /// [required] | AWS Secret Access Key. + /// Release channel of the created datasource [stable/beta] /// - [Input("secretAccessKey")] - public Input? SecretAccessKey { get; set; } + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("roleArn")] + private Input? _roleArn; + + /// + /// [required] | ARN of the AWS IAM Role to assume. + /// + public Input? RoleArn + { + get => _roleArn; + set + { + var emptySecret = Output.CreateSecret(0); + _roleArn = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectDatadog.cs b/sdk/dotnet/DirectDatadog.cs index 2f4ec7a..8624964 100644 --- a/sdk/dotnet/DirectDatadog.cs +++ b/sdk/dotnet/DirectDatadog.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects with Datadog to collect SLI measurements and compare them to SLO targets. + /// Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects to Datadog for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Datadog Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/datadog#datadog-direct). /// @@ -18,8 +19,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -47,13 +49,9 @@ namespace Pulumi.Nobl9 /// }, /// }, /// }, + /// LogCollectionEnabled = true, /// Project = "terraform", /// Site = "eu", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -93,7 +91,13 @@ public partial class DirectDatadog : global::Pulumi.CustomResource /// [Replay configuration documentation](https://docs.nobl9.com/replay) /// [Output("historicalDataRetrieval")] - public Output HistoricalDataRetrieval { get; private set; } = null!; + public Output HistoricalDataRetrieval { get; private set; } = null!; + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -111,7 +115,13 @@ public partial class DirectDatadog : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// /// `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). @@ -120,7 +130,7 @@ public partial class DirectDatadog : global::Pulumi.CustomResource public Output Site { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -154,7 +164,12 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "apiKey", + "applicationKey", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -178,17 +193,37 @@ public static DirectDatadog Get(string name, Input id, DirectDatadogStat public sealed class DirectDatadogArgs : global::Pulumi.ResourceArgs { + [Input("apiKey")] + private Input? _apiKey; + /// /// [required] | Datadog API Key. /// - [Input("apiKey")] - public Input? ApiKey { get; set; } + public Input? ApiKey + { + get => _apiKey; + set + { + var emptySecret = Output.CreateSecret(0); + _apiKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("applicationKey")] + private Input? _applicationKey; /// /// [required] | Datadog Application Key. /// - [Input("applicationKey")] - public Input? ApplicationKey { get; set; } + public Input? ApplicationKey + { + get => _applicationKey; + set + { + var emptySecret = Output.CreateSecret(0); + _applicationKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -208,6 +243,12 @@ public sealed class DirectDatadogArgs : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -226,18 +267,25 @@ public sealed class DirectDatadogArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + /// /// `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). /// [Input("site", required: true)] public Input Site { get; set; } = null!; - [Input("sourceOfs", required: true)] + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -252,17 +300,37 @@ public DirectDatadogArgs() public sealed class DirectDatadogState : global::Pulumi.ResourceArgs { + [Input("apiKey")] + private Input? _apiKey; + /// /// [required] | Datadog API Key. /// - [Input("apiKey")] - public Input? ApiKey { get; set; } + public Input? ApiKey + { + get => _apiKey; + set + { + var emptySecret = Output.CreateSecret(0); + _apiKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("applicationKey")] + private Input? _applicationKey; /// /// [required] | Datadog Application Key. /// - [Input("applicationKey")] - public Input? ApplicationKey { get; set; } + public Input? ApplicationKey + { + get => _applicationKey; + set + { + var emptySecret = Output.CreateSecret(0); + _applicationKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -282,6 +350,12 @@ public sealed class DirectDatadogState : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -300,6 +374,12 @@ public sealed class DirectDatadogState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + /// /// `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). /// @@ -310,8 +390,9 @@ public sealed class DirectDatadogState : global::Pulumi.ResourceArgs private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectDynatrace.cs b/sdk/dotnet/DirectDynatrace.cs index 0b787dd..bc95d28 100644 --- a/sdk/dotnet/DirectDynatrace.cs +++ b/sdk/dotnet/DirectDynatrace.cs @@ -6,20 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects with Dynatrace to collect SLI measurements and compare them to SLO targets. - /// + /// Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects to Dynatrace for SLI measurement collection and comparison with SLO targets. /// For more information, refer to [Dynatrace Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/dynatrace#dynatrace-direct). /// /// ## Example Usage /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -46,12 +47,8 @@ namespace Pulumi.Nobl9 /// }, /// }, /// }, + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// Url = "https://web.net", /// }); /// @@ -86,7 +83,13 @@ public partial class DirectDynatrace : global::Pulumi.CustomResource /// [Replay configuration documentation](https://docs.nobl9.com/replay) /// [Output("historicalDataRetrieval")] - public Output HistoricalDataRetrieval { get; private set; } = null!; + public Output HistoricalDataRetrieval { get; private set; } = null!; + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -104,10 +107,16 @@ public partial class DirectDynatrace : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -147,7 +156,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "dynatraceToken", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -183,11 +196,21 @@ public sealed class DirectDynatraceArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + [Input("dynatraceToken")] + private Input? _dynatraceToken; + /// /// [required] | Dynatrace Token. /// - [Input("dynatraceToken")] - public Input? DynatraceToken { get; set; } + public Input? DynatraceToken + { + get => _dynatraceToken; + set + { + var emptySecret = Output.CreateSecret(0); + _dynatraceToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// [Replay configuration documentation](https://docs.nobl9.com/replay) @@ -195,6 +218,12 @@ public sealed class DirectDynatraceArgs : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -213,12 +242,19 @@ public sealed class DirectDynatraceArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -251,11 +287,21 @@ public sealed class DirectDynatraceState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + [Input("dynatraceToken")] + private Input? _dynatraceToken; + /// /// [required] | Dynatrace Token. /// - [Input("dynatraceToken")] - public Input? DynatraceToken { get; set; } + public Input? DynatraceToken + { + get => _dynatraceToken; + set + { + var emptySecret = Output.CreateSecret(0); + _dynatraceToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// [Replay configuration documentation](https://docs.nobl9.com/replay) @@ -263,6 +309,12 @@ public sealed class DirectDynatraceState : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -281,12 +333,19 @@ public sealed class DirectDynatraceState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectGcm.cs b/sdk/dotnet/DirectGcm.cs index c1fffb3..8b32500 100644 --- a/sdk/dotnet/DirectGcm.cs +++ b/sdk/dotnet/DirectGcm.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects with GCM to collect SLI measurements and compare them to SLO targets. + /// Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects to GCM for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Google Cloud Monitoring Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-direct). /// @@ -18,21 +19,18 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { /// var test_gcm = new Nobl9.DirectGcm("test-gcm", new() /// { /// Description = "desc", + /// LogCollectionEnabled = true, /// Project = "terraform", /// ServiceAccountKey = "secret", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -56,6 +54,12 @@ public partial class DirectGcm : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -72,7 +76,13 @@ public partial class DirectGcm : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// /// [required] | Service Account Key. @@ -81,7 +91,7 @@ public partial class DirectGcm : global::Pulumi.CustomResource public Output ServiceAccountKey { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -115,7 +125,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "serviceAccountKey", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -151,6 +165,12 @@ public sealed class DirectGcmArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -170,17 +190,34 @@ public sealed class DirectGcmArgs : global::Pulumi.ResourceArgs public Input? QueryDelay { get; set; } /// - /// [required] | Service Account Key. + /// Release channel of the created datasource [stable/beta] /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("serviceAccountKey")] - public Input? ServiceAccountKey { get; set; } + private Input? _serviceAccountKey; - [Input("sourceOfs", required: true)] + /// + /// [required] | Service Account Key. + /// + public Input? ServiceAccountKey + { + get => _serviceAccountKey; + set + { + var emptySecret = Output.CreateSecret(0); + _serviceAccountKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -207,6 +244,12 @@ public sealed class DirectGcmState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -226,17 +269,34 @@ public sealed class DirectGcmState : global::Pulumi.ResourceArgs public Input? QueryDelay { get; set; } /// - /// [required] | Service Account Key. + /// Release channel of the created datasource [stable/beta] /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("serviceAccountKey")] - public Input? ServiceAccountKey { get; set; } + private Input? _serviceAccountKey; + + /// + /// [required] | Service Account Key. + /// + public Input? ServiceAccountKey + { + get => _serviceAccountKey; + set + { + var emptySecret = Output.CreateSecret(0); + _serviceAccountKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectHoneycomb.cs b/sdk/dotnet/DirectHoneycomb.cs new file mode 100644 index 0000000..50de338 --- /dev/null +++ b/sdk/dotnet/DirectHoneycomb.cs @@ -0,0 +1,360 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9 +{ + /// + /// Honeycomb is an observability platform that integrates system metrics with high-cardinality application data for in-depth analysis and swift debugging of complex software systems. Nobl9 connects to Honeycomb for SLI measurement collection and comparison with SLO targets. + /// + /// For more information, refer to [Honeycomb Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/honeycomb#hc-direct). + /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Nobl9 = Piclemx.Nobl9; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var test_honeycomb = new Nobl9.DirectHoneycomb("test-honeycomb", new() + /// { + /// ApiKey = "secret", + /// Description = "desc", + /// HistoricalDataRetrieval = new Nobl9.Inputs.DirectHoneycombHistoricalDataRetrievalArgs + /// { + /// DefaultDurations = new[] + /// { + /// new Nobl9.Inputs.DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs + /// { + /// Unit = "Day", + /// Value = 7, + /// }, + /// }, + /// MaxDurations = new[] + /// { + /// new Nobl9.Inputs.DirectHoneycombHistoricalDataRetrievalMaxDurationArgs + /// { + /// Unit = "Day", + /// Value = 7, + /// }, + /// }, + /// }, + /// LogCollectionEnabled = true, + /// Project = "terraform", + /// QueryDelay = new Nobl9.Inputs.DirectHoneycombQueryDelayArgs + /// { + /// Unit = "Minute", + /// Value = 6, + /// }, + /// ReleaseChannel = "beta", + /// }); + /// + /// }); + /// ``` + /// ## Nobl9 Official Documentation + /// + /// https://docs.nobl9.com/ + /// + [Nobl9ResourceType("nobl9:index/directHoneycomb:DirectHoneycomb")] + public partial class DirectHoneycomb : global::Pulumi.CustomResource + { + /// + /// [required] | Honeycomb API Key. + /// + [Output("apiKey")] + public Output ApiKey { get; private set; } = null!; + + /// + /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// User-friendly display name of the resource. + /// + [Output("displayName")] + public Output DisplayName { get; private set; } = null!; + + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Output("historicalDataRetrieval")] + public Output HistoricalDataRetrieval { get; private set; } = null!; + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + + /// + /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Output("project")] + public Output Project { get; private set; } = null!; + + /// + /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + /// + [Output("queryDelay")] + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + /// + [Output("sourceOfs")] + public Output> SourceOfs { get; private set; } = null!; + + /// + /// The status of the created direct. + /// + [Output("status")] + public Output Status { get; private set; } = null!; + + + /// + /// Create a DirectHoneycomb resource with the given unique name, arguments, and options. + /// + /// + /// The unique name of the resource + /// The arguments used to populate this resource's properties + /// A bag of options that control this resource's behavior + public DirectHoneycomb(string name, DirectHoneycombArgs args, CustomResourceOptions? options = null) + : base("nobl9:index/directHoneycomb:DirectHoneycomb", name, args ?? new DirectHoneycombArgs(), MakeResourceOptions(options, "")) + { + } + + private DirectHoneycomb(string name, Input id, DirectHoneycombState? state = null, CustomResourceOptions? options = null) + : base("nobl9:index/directHoneycomb:DirectHoneycomb", name, state, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "apiKey", + }, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing DirectHoneycomb resource's state with the given name, ID, and optional extra + /// properties used to qualify the lookup. + /// + /// + /// The unique name of the resulting resource. + /// The unique provider ID of the resource to lookup. + /// Any extra arguments used during the lookup. + /// A bag of options that control this resource's behavior + public static DirectHoneycomb Get(string name, Input id, DirectHoneycombState? state = null, CustomResourceOptions? options = null) + { + return new DirectHoneycomb(name, id, state, options); + } + } + + public sealed class DirectHoneycombArgs : global::Pulumi.ResourceArgs + { + [Input("apiKey")] + private Input? _apiKey; + + /// + /// [required] | Honeycomb API Key. + /// + public Input? ApiKey + { + get => _apiKey; + set + { + var emptySecret = Output.CreateSecret(0); + _apiKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// User-friendly display name of the resource. + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Input("historicalDataRetrieval")] + public Input? HistoricalDataRetrieval { get; set; } + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + + /// + /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Input("project", required: true)] + public Input Project { get; set; } = null!; + + /// + /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + /// + [Input("queryDelay")] + public Input? QueryDelay { get; set; } + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] + private InputList? _sourceOfs; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] + public InputList SourceOfs + { + get => _sourceOfs ?? (_sourceOfs = new InputList()); + set => _sourceOfs = value; + } + + public DirectHoneycombArgs() + { + } + public static new DirectHoneycombArgs Empty => new DirectHoneycombArgs(); + } + + public sealed class DirectHoneycombState : global::Pulumi.ResourceArgs + { + [Input("apiKey")] + private Input? _apiKey; + + /// + /// [required] | Honeycomb API Key. + /// + public Input? ApiKey + { + get => _apiKey; + set + { + var emptySecret = Output.CreateSecret(0); + _apiKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// User-friendly display name of the resource. + /// + [Input("displayName")] + public Input? DisplayName { get; set; } + + /// + /// [Replay configuration documentation](https://docs.nobl9.com/replay) + /// + [Input("historicalDataRetrieval")] + public Input? HistoricalDataRetrieval { get; set; } + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + + /// + /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// + [Input("project")] + public Input? Project { get; set; } + + /// + /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + /// + [Input("queryDelay")] + public Input? QueryDelay { get; set; } + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] + private InputList? _sourceOfs; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] + public InputList SourceOfs + { + get => _sourceOfs ?? (_sourceOfs = new InputList()); + set => _sourceOfs = value; + } + + /// + /// The status of the created direct. + /// + [Input("status")] + public Input? Status { get; set; } + + public DirectHoneycombState() + { + } + public static new DirectHoneycombState Empty => new DirectHoneycombState(); + } +} diff --git a/sdk/dotnet/DirectInfluxdb.cs b/sdk/dotnet/DirectInfluxdb.cs index 4523988..9397b0d 100644 --- a/sdk/dotnet/DirectInfluxdb.cs +++ b/sdk/dotnet/DirectInfluxdb.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects with InfluxDB to collect SLI measurements and compare them to SLO targets. + /// InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects to InfluxDB for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [InfluxDB Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-direct). /// @@ -18,8 +19,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -27,13 +29,9 @@ namespace Pulumi.Nobl9 /// { /// ApiToken = "secret", /// Description = "desc", + /// LogCollectionEnabled = true, /// OrganizationId = "secret", /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// Url = "https://web.net", /// }); /// @@ -64,6 +62,12 @@ public partial class DirectInfluxdb : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -86,10 +90,16 @@ public partial class DirectInfluxdb : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -129,7 +139,12 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "apiToken", + "organizationId", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -153,11 +168,21 @@ public static DirectInfluxdb Get(string name, Input id, DirectInfluxdbSt public sealed class DirectInfluxdbArgs : global::Pulumi.ResourceArgs { + [Input("apiToken")] + private Input? _apiToken; + /// /// [required] | InfluxDB API Token. /// - [Input("apiToken")] - public Input? ApiToken { get; set; } + public Input? ApiToken + { + get => _apiToken; + set + { + var emptySecret = Output.CreateSecret(0); + _apiToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -171,17 +196,33 @@ public sealed class DirectInfluxdbArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// [Input("name")] public Input? Name { get; set; } + [Input("organizationId")] + private Input? _organizationId; + /// /// [required] | InfluxDB Organization ID. /// - [Input("organizationId")] - public Input? OrganizationId { get; set; } + public Input? OrganizationId + { + get => _organizationId; + set + { + var emptySecret = Output.CreateSecret(0); + _organizationId = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -195,12 +236,19 @@ public sealed class DirectInfluxdbArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -221,11 +269,21 @@ public DirectInfluxdbArgs() public sealed class DirectInfluxdbState : global::Pulumi.ResourceArgs { + [Input("apiToken")] + private Input? _apiToken; + /// /// [required] | InfluxDB API Token. /// - [Input("apiToken")] - public Input? ApiToken { get; set; } + public Input? ApiToken + { + get => _apiToken; + set + { + var emptySecret = Output.CreateSecret(0); + _apiToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -239,17 +297,33 @@ public sealed class DirectInfluxdbState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// [Input("name")] public Input? Name { get; set; } + [Input("organizationId")] + private Input? _organizationId; + /// /// [required] | InfluxDB Organization ID. /// - [Input("organizationId")] - public Input? OrganizationId { get; set; } + public Input? OrganizationId + { + get => _organizationId; + set + { + var emptySecret = Output.CreateSecret(0); + _organizationId = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -263,12 +337,19 @@ public sealed class DirectInfluxdbState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectInstana.cs b/sdk/dotnet/DirectInstana.cs index 2119d0a..cccf35c 100644 --- a/sdk/dotnet/DirectInstana.cs +++ b/sdk/dotnet/DirectInstana.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects with Instana to collect SLI measurements and compare them to SLO targets. + /// Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects to Instana for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Instana Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/instana#instana-direct). /// @@ -18,8 +19,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -27,12 +29,8 @@ namespace Pulumi.Nobl9 /// { /// ApiToken = "secret", /// Description = "desc", + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// Url = "https://web.net", /// }); /// @@ -63,6 +61,12 @@ public partial class DirectInstana : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -79,10 +83,16 @@ public partial class DirectInstana : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -122,7 +132,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "apiToken", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -146,11 +160,21 @@ public static DirectInstana Get(string name, Input id, DirectInstanaStat public sealed class DirectInstanaArgs : global::Pulumi.ResourceArgs { + [Input("apiToken")] + private Input? _apiToken; + /// /// [required] | Instana API Token. /// - [Input("apiToken")] - public Input? ApiToken { get; set; } + public Input? ApiToken + { + get => _apiToken; + set + { + var emptySecret = Output.CreateSecret(0); + _apiToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -164,6 +188,12 @@ public sealed class DirectInstanaArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -182,12 +212,19 @@ public sealed class DirectInstanaArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -208,11 +245,21 @@ public DirectInstanaArgs() public sealed class DirectInstanaState : global::Pulumi.ResourceArgs { + [Input("apiToken")] + private Input? _apiToken; + /// /// [required] | Instana API Token. /// - [Input("apiToken")] - public Input? ApiToken { get; set; } + public Input? ApiToken + { + get => _apiToken; + set + { + var emptySecret = Output.CreateSecret(0); + _apiToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -226,6 +273,12 @@ public sealed class DirectInstanaState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -244,12 +297,19 @@ public sealed class DirectInstanaState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectLightstep.cs b/sdk/dotnet/DirectLightstep.cs index 5a9b8f5..668ff9a 100644 --- a/sdk/dotnet/DirectLightstep.cs +++ b/sdk/dotnet/DirectLightstep.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects with Lightstep to collect SLI measurements and compare them to SLO targets. + /// Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects to Lightstep for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Lightstep Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-direct). /// @@ -18,8 +19,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -48,12 +50,8 @@ namespace Pulumi.Nobl9 /// }, /// LightstepOrganization = "acme", /// LightstepProject = "project1", + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -87,7 +85,7 @@ public partial class DirectLightstep : global::Pulumi.CustomResource /// [Replay configuration documentation](https://docs.nobl9.com/replay) /// [Output("historicalDataRetrieval")] - public Output HistoricalDataRetrieval { get; private set; } = null!; + public Output HistoricalDataRetrieval { get; private set; } = null!; /// /// Organization name registered in Lightstep. @@ -101,6 +99,12 @@ public partial class DirectLightstep : global::Pulumi.CustomResource [Output("lightstepProject")] public Output LightstepProject { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -117,10 +121,16 @@ public partial class DirectLightstep : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -131,6 +141,12 @@ public partial class DirectLightstep : global::Pulumi.CustomResource [Output("status")] public Output Status { get; private set; } = null!; + /// + /// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + /// + [Output("url")] + public Output Url { get; private set; } = null!; + /// /// Create a DirectLightstep resource with the given unique name, arguments, and options. @@ -154,7 +170,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "appToken", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -178,11 +198,21 @@ public static DirectLightstep Get(string name, Input id, DirectLightstep public sealed class DirectLightstepArgs : global::Pulumi.ResourceArgs { + [Input("appToken")] + private Input? _appToken; + /// /// [required] | Lightstep App Token. /// - [Input("appToken")] - public Input? AppToken { get; set; } + public Input? AppToken + { + get => _appToken; + set + { + var emptySecret = Output.CreateSecret(0); + _appToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -214,6 +244,12 @@ public sealed class DirectLightstepArgs : global::Pulumi.ResourceArgs [Input("lightstepProject", required: true)] public Input LightstepProject { get; set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -232,18 +268,31 @@ public sealed class DirectLightstepArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); set => _sourceOfs = value; } + /// + /// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + /// + [Input("url")] + public Input? Url { get; set; } + public DirectLightstepArgs() { } @@ -252,11 +301,21 @@ public DirectLightstepArgs() public sealed class DirectLightstepState : global::Pulumi.ResourceArgs { + [Input("appToken")] + private Input? _appToken; + /// /// [required] | Lightstep App Token. /// - [Input("appToken")] - public Input? AppToken { get; set; } + public Input? AppToken + { + get => _appToken; + set + { + var emptySecret = Output.CreateSecret(0); + _appToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -288,6 +347,12 @@ public sealed class DirectLightstepState : global::Pulumi.ResourceArgs [Input("lightstepProject")] public Input? LightstepProject { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -306,12 +371,19 @@ public sealed class DirectLightstepState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -324,6 +396,12 @@ public InputList SourceOfs [Input("status")] public Input? Status { get; set; } + /// + /// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + /// + [Input("url")] + public Input? Url { get; set; } + public DirectLightstepState() { } diff --git a/sdk/dotnet/DirectNewrelic.cs b/sdk/dotnet/DirectNewrelic.cs index d3d9c5d..0e99bd7 100644 --- a/sdk/dotnet/DirectNewrelic.cs +++ b/sdk/dotnet/DirectNewrelic.cs @@ -6,20 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects with New Relic to collect SLI measurements and compare them to SLO targets. - /// + /// New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects to New Relic for SLI measurement collection and comparison with SLO targets. /// For more information, refer to [New Relic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-direct). /// /// ## Example Usage /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -47,12 +48,8 @@ namespace Pulumi.Nobl9 /// }, /// }, /// InsightsQueryKey = "secret", + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -86,7 +83,7 @@ public partial class DirectNewrelic : global::Pulumi.CustomResource /// [Replay configuration documentation](https://docs.nobl9.com/replay) /// [Output("historicalDataRetrieval")] - public Output HistoricalDataRetrieval { get; private set; } = null!; + public Output HistoricalDataRetrieval { get; private set; } = null!; /// /// [required] | New Relic Insights Query Key. @@ -94,6 +91,12 @@ public partial class DirectNewrelic : global::Pulumi.CustomResource [Output("insightsQueryKey")] public Output InsightsQueryKey { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -110,10 +113,16 @@ public partial class DirectNewrelic : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -147,7 +156,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "insightsQueryKey", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -195,11 +208,27 @@ public sealed class DirectNewrelicArgs : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + [Input("insightsQueryKey")] + private Input? _insightsQueryKey; + /// /// [required] | New Relic Insights Query Key. /// - [Input("insightsQueryKey")] - public Input? InsightsQueryKey { get; set; } + public Input? InsightsQueryKey + { + get => _insightsQueryKey; + set + { + var emptySecret = Output.CreateSecret(0); + _insightsQueryKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -219,12 +248,19 @@ public sealed class DirectNewrelicArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -263,11 +299,27 @@ public sealed class DirectNewrelicState : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + [Input("insightsQueryKey")] + private Input? _insightsQueryKey; + /// /// [required] | New Relic Insights Query Key. /// - [Input("insightsQueryKey")] - public Input? InsightsQueryKey { get; set; } + public Input? InsightsQueryKey + { + get => _insightsQueryKey; + set + { + var emptySecret = Output.CreateSecret(0); + _insightsQueryKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -287,12 +339,19 @@ public sealed class DirectNewrelicState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectPingdom.cs b/sdk/dotnet/DirectPingdom.cs index 0709b95..bf30714 100644 --- a/sdk/dotnet/DirectPingdom.cs +++ b/sdk/dotnet/DirectPingdom.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects with Pingdom to collect SLI measurements and compare them to SLO targets. + /// Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects to Pingdom for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Pingdom Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-direct). /// @@ -18,8 +19,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -27,12 +29,8 @@ namespace Pulumi.Nobl9 /// { /// ApiToken = "secret", /// Description = "desc", + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -62,6 +60,12 @@ public partial class DirectPingdom : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -78,10 +82,16 @@ public partial class DirectPingdom : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -115,7 +125,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "apiToken", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -139,11 +153,21 @@ public static DirectPingdom Get(string name, Input id, DirectPingdomStat public sealed class DirectPingdomArgs : global::Pulumi.ResourceArgs { + [Input("apiToken")] + private Input? _apiToken; + /// /// [required] | Pingdom API token. /// - [Input("apiToken")] - public Input? ApiToken { get; set; } + public Input? ApiToken + { + get => _apiToken; + set + { + var emptySecret = Output.CreateSecret(0); + _apiToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -157,6 +181,12 @@ public sealed class DirectPingdomArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -175,12 +205,19 @@ public sealed class DirectPingdomArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -195,11 +232,21 @@ public DirectPingdomArgs() public sealed class DirectPingdomState : global::Pulumi.ResourceArgs { + [Input("apiToken")] + private Input? _apiToken; + /// /// [required] | Pingdom API token. /// - [Input("apiToken")] - public Input? ApiToken { get; set; } + public Input? ApiToken + { + get => _apiToken; + set + { + var emptySecret = Output.CreateSecret(0); + _apiToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -213,6 +260,12 @@ public sealed class DirectPingdomState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -231,12 +284,19 @@ public sealed class DirectPingdomState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectRedshift.cs b/sdk/dotnet/DirectRedshift.cs index 8660422..3a84808 100644 --- a/sdk/dotnet/DirectRedshift.cs +++ b/sdk/dotnet/DirectRedshift.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects with Amazon Redshift to collect SLI measurements and compare them to SLO targets. + /// Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects to Amazon Redshift for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Amazon Redshift Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-direct). /// @@ -18,23 +19,19 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { /// var test_redshift = new Nobl9.DirectRedshift("test-redshift", new() /// { - /// AccessKeyId = "secret", /// Description = "desc", + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SecretAccessKey = "secret", + /// RoleArn = "secret", /// SecretArn = "aws:arn", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -46,12 +43,6 @@ namespace Pulumi.Nobl9 [Nobl9ResourceType("nobl9:index/directRedshift:DirectRedshift")] public partial class DirectRedshift : global::Pulumi.CustomResource { - /// - /// [required] | AWS Access Key ID. - /// - [Output("accessKeyId")] - public Output AccessKeyId { get; private set; } = null!; - /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -64,6 +55,12 @@ public partial class DirectRedshift : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -80,13 +77,19 @@ public partial class DirectRedshift : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; /// - /// [required] | AWS Secret Access Key. + /// Release channel of the created datasource [stable/beta] /// - [Output("secretAccessKey")] - public Output SecretAccessKey { get; private set; } = null!; + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; + + /// + /// [required] | ARN of the AWS IAM Role to assume. + /// + [Output("roleArn")] + public Output RoleArn { get; private set; } = null!; /// /// AWS Secret ARN. @@ -95,7 +98,7 @@ public partial class DirectRedshift : global::Pulumi.CustomResource public Output SecretArn { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -129,7 +132,12 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "roleArn", + "secretArn", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -153,12 +161,6 @@ public static DirectRedshift Get(string name, Input id, DirectRedshiftSt public sealed class DirectRedshiftArgs : global::Pulumi.ResourceArgs { - /// - /// [required] | AWS Access Key ID. - /// - [Input("accessKeyId")] - public Input? AccessKeyId { get; set; } - /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -171,6 +173,12 @@ public sealed class DirectRedshiftArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -190,23 +198,50 @@ public sealed class DirectRedshiftArgs : global::Pulumi.ResourceArgs public Input? QueryDelay { get; set; } /// - /// [required] | AWS Secret Access Key. + /// Release channel of the created datasource [stable/beta] /// - [Input("secretAccessKey")] - public Input? SecretAccessKey { get; set; } + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("roleArn")] + private Input? _roleArn; /// - /// AWS Secret ARN. + /// [required] | ARN of the AWS IAM Role to assume. /// + public Input? RoleArn + { + get => _roleArn; + set + { + var emptySecret = Output.CreateSecret(0); + _roleArn = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + [Input("secretArn")] - public Input? SecretArn { get; set; } + private Input? _secretArn; + + /// + /// AWS Secret ARN. + /// + public Input? SecretArn + { + get => _secretArn; + set + { + var emptySecret = Output.CreateSecret(0); + _secretArn = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } - [Input("sourceOfs", required: true)] + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -221,12 +256,6 @@ public DirectRedshiftArgs() public sealed class DirectRedshiftState : global::Pulumi.ResourceArgs { - /// - /// [required] | AWS Access Key ID. - /// - [Input("accessKeyId")] - public Input? AccessKeyId { get; set; } - /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. /// @@ -239,6 +268,12 @@ public sealed class DirectRedshiftState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -258,23 +293,50 @@ public sealed class DirectRedshiftState : global::Pulumi.ResourceArgs public Input? QueryDelay { get; set; } /// - /// [required] | AWS Secret Access Key. + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("roleArn")] + private Input? _roleArn; + + /// + /// [required] | ARN of the AWS IAM Role to assume. /// - [Input("secretAccessKey")] - public Input? SecretAccessKey { get; set; } + public Input? RoleArn + { + get => _roleArn; + set + { + var emptySecret = Output.CreateSecret(0); + _roleArn = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("secretArn")] + private Input? _secretArn; /// /// AWS Secret ARN. /// - [Input("secretArn")] - public Input? SecretArn { get; set; } + public Input? SecretArn + { + get => _secretArn; + set + { + var emptySecret = Output.CreateSecret(0); + _secretArn = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectSplunk.cs b/sdk/dotnet/DirectSplunk.cs index 84012f4..8d076f1 100644 --- a/sdk/dotnet/DirectSplunk.cs +++ b/sdk/dotnet/DirectSplunk.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects with Splunk to collect SLI measurements and compare them to SLO targets. + /// Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects to Splunk for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Splunk Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk#splunk-direct). /// @@ -18,8 +19,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -46,12 +48,8 @@ namespace Pulumi.Nobl9 /// }, /// }, /// }, + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// Url = "https://web.net", /// }); /// @@ -86,7 +84,13 @@ public partial class DirectSplunk : global::Pulumi.CustomResource /// [Replay configuration documentation](https://docs.nobl9.com/replay) /// [Output("historicalDataRetrieval")] - public Output HistoricalDataRetrieval { get; private set; } = null!; + public Output HistoricalDataRetrieval { get; private set; } = null!; + + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -104,10 +108,16 @@ public partial class DirectSplunk : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -147,7 +157,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "accessToken", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -171,11 +185,21 @@ public static DirectSplunk Get(string name, Input id, DirectSplunkState? public sealed class DirectSplunkArgs : global::Pulumi.ResourceArgs { + [Input("accessToken")] + private Input? _accessToken; + /// /// [required] | Splunk API Access Token. /// - [Input("accessToken")] - public Input? AccessToken { get; set; } + public Input? AccessToken + { + get => _accessToken; + set + { + var emptySecret = Output.CreateSecret(0); + _accessToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -195,6 +219,12 @@ public sealed class DirectSplunkArgs : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -213,12 +243,19 @@ public sealed class DirectSplunkArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -239,11 +276,21 @@ public DirectSplunkArgs() public sealed class DirectSplunkState : global::Pulumi.ResourceArgs { + [Input("accessToken")] + private Input? _accessToken; + /// /// [required] | Splunk API Access Token. /// - [Input("accessToken")] - public Input? AccessToken { get; set; } + public Input? AccessToken + { + get => _accessToken; + set + { + var emptySecret = Output.CreateSecret(0); + _accessToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -263,6 +310,12 @@ public sealed class DirectSplunkState : global::Pulumi.ResourceArgs [Input("historicalDataRetrieval")] public Input? HistoricalDataRetrieval { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -281,12 +334,19 @@ public sealed class DirectSplunkState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectSplunkObservability.cs b/sdk/dotnet/DirectSplunkObservability.cs index ae7e029..4cc6e4e 100644 --- a/sdk/dotnet/DirectSplunkObservability.cs +++ b/sdk/dotnet/DirectSplunkObservability.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects with Splunk Observability to collect SLI measurements and compare them to SLO targets. + /// Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects to Splunk Observability for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Splunk Observability Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-direct). /// @@ -18,22 +19,18 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { - /// var test_splunkobservability = new Nobl9.DirectSplunkObservability("test-splunkobservability", new() + /// var test_splunk_observability = new Nobl9.DirectSplunkObservability("test-splunk-observability", new() /// { /// AccessToken = "secret", /// Description = "desc", /// Project = "terraform", /// Realm = "eu", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -79,7 +76,7 @@ public partial class DirectSplunkObservability : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; /// /// SplunkObservability Realm. @@ -88,7 +85,13 @@ public partial class DirectSplunkObservability : global::Pulumi.CustomResource public Output Realm { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; + + /// + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -122,7 +125,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "accessToken", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -146,11 +153,21 @@ public static DirectSplunkObservability Get(string name, Input id, Direc public sealed class DirectSplunkObservabilityArgs : global::Pulumi.ResourceArgs { + [Input("accessToken")] + private Input? _accessToken; + /// /// [required] | Splunk API Access Token. /// - [Input("accessToken")] - public Input? AccessToken { get; set; } + public Input? AccessToken + { + get => _accessToken; + set + { + var emptySecret = Output.CreateSecret(0); + _accessToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -188,12 +205,19 @@ public sealed class DirectSplunkObservabilityArgs : global::Pulumi.ResourceArgs [Input("realm", required: true)] public Input Realm { get; set; } = null!; - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -208,11 +232,21 @@ public DirectSplunkObservabilityArgs() public sealed class DirectSplunkObservabilityState : global::Pulumi.ResourceArgs { + [Input("accessToken")] + private Input? _accessToken; + /// /// [required] | Splunk API Access Token. /// - [Input("accessToken")] - public Input? AccessToken { get; set; } + public Input? AccessToken + { + get => _accessToken; + set + { + var emptySecret = Output.CreateSecret(0); + _accessToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -250,12 +284,19 @@ public sealed class DirectSplunkObservabilityState : global::Pulumi.ResourceArgs [Input("realm")] public Input? Realm { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectSumologic.cs b/sdk/dotnet/DirectSumologic.cs index a0ef3f4..ac34de4 100644 --- a/sdk/dotnet/DirectSumologic.cs +++ b/sdk/dotnet/DirectSumologic.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects with Sumo Logic to collect SLI measurements and compare them to SLO targets. + /// Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects to Sumo Logic for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [Sumo Logic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-direct). /// @@ -18,8 +19,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -28,11 +30,8 @@ namespace Pulumi.Nobl9 /// AccessId = "secret", /// AccessKey = "secret", /// Description = "desc", + /// LogCollectionEnabled = true, /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// }, /// Url = "http://web.net", /// }); /// @@ -69,6 +68,12 @@ public partial class DirectSumologic : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -85,10 +90,16 @@ public partial class DirectSumologic : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -128,7 +139,12 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "accessId", + "accessKey", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -152,17 +168,37 @@ public static DirectSumologic Get(string name, Input id, DirectSumologic public sealed class DirectSumologicArgs : global::Pulumi.ResourceArgs { + [Input("accessId")] + private Input? _accessId; + /// /// [required] | Sumo Logic API Access ID. /// - [Input("accessId")] - public Input? AccessId { get; set; } + public Input? AccessId + { + get => _accessId; + set + { + var emptySecret = Output.CreateSecret(0); + _accessId = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("accessKey")] + private Input? _accessKey; /// /// [required] | Sumo Logic API Access Key. /// - [Input("accessKey")] - public Input? AccessKey { get; set; } + public Input? AccessKey + { + get => _accessKey; + set + { + var emptySecret = Output.CreateSecret(0); + _accessKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -176,6 +212,12 @@ public sealed class DirectSumologicArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -194,12 +236,19 @@ public sealed class DirectSumologicArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -220,17 +269,37 @@ public DirectSumologicArgs() public sealed class DirectSumologicState : global::Pulumi.ResourceArgs { + [Input("accessId")] + private Input? _accessId; + /// /// [required] | Sumo Logic API Access ID. /// - [Input("accessId")] - public Input? AccessId { get; set; } + public Input? AccessId + { + get => _accessId; + set + { + var emptySecret = Output.CreateSecret(0); + _accessId = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } + + [Input("accessKey")] + private Input? _accessKey; /// /// [required] | Sumo Logic API Access Key. /// - [Input("accessKey")] - public Input? AccessKey { get; set; } + public Input? AccessKey + { + get => _accessKey; + set + { + var emptySecret = Output.CreateSecret(0); + _accessKey = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -244,6 +313,12 @@ public sealed class DirectSumologicState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -262,12 +337,19 @@ public sealed class DirectSumologicState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/DirectThousandeyes.cs b/sdk/dotnet/DirectThousandeyes.cs index 59d53a5..13954e7 100644 --- a/sdk/dotnet/DirectThousandeyes.cs +++ b/sdk/dotnet/DirectThousandeyes.cs @@ -6,11 +6,12 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// - /// ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects with ThousandEyes to collect SLI measurements and compare them to SLO targets. + /// ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects to ThousandEyes for SLI measurement collection and comparison with SLO targets. /// /// For more information, refer to [ThousandEyes Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/thousandeyes#thousandeyes-direct). /// @@ -18,21 +19,18 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { /// var test_thousandeyes = new Nobl9.DirectThousandeyes("test-thousandeyes", new() /// { /// Description = "desc", + /// LogCollectionEnabled = true, /// OauthBearerToken = "secret", /// Project = "terraform", - /// SourceOfs = new[] - /// { - /// "Metrics", - /// "Services", - /// }, /// }); /// /// }); @@ -56,6 +54,12 @@ public partial class DirectThousandeyes : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Output("logCollectionEnabled")] + public Output LogCollectionEnabled { get; private set; } = null!; + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -78,10 +82,16 @@ public partial class DirectThousandeyes : global::Pulumi.CustomResource /// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. /// [Output("queryDelay")] - public Output QueryDelay { get; private set; } = null!; + public Output QueryDelay { get; private set; } = null!; + + /// + /// Release channel of the created datasource [stable/beta] + /// + [Output("releaseChannel")] + public Output ReleaseChannel { get; private set; } = null!; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// [Output("sourceOfs")] public Output> SourceOfs { get; private set; } = null!; @@ -115,7 +125,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "oauthBearerToken", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -151,17 +165,33 @@ public sealed class DirectThousandeyesArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// [Input("name")] public Input? Name { get; set; } + [Input("oauthBearerToken")] + private Input? _oauthBearerToken; + /// /// [required] | ThousandEyes OAuth Bearer Token. /// - [Input("oauthBearerToken")] - public Input? OauthBearerToken { get; set; } + public Input? OauthBearerToken + { + get => _oauthBearerToken; + set + { + var emptySecret = Output.CreateSecret(0); + _oauthBearerToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -175,12 +205,19 @@ public sealed class DirectThousandeyesArgs : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } - [Input("sourceOfs", required: true)] + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); @@ -207,17 +244,33 @@ public sealed class DirectThousandeyesState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + /// + [Input("logCollectionEnabled")] + public Input? LogCollectionEnabled { get; set; } + /// /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// [Input("name")] public Input? Name { get; set; } + [Input("oauthBearerToken")] + private Input? _oauthBearerToken; + /// /// [required] | ThousandEyes OAuth Bearer Token. /// - [Input("oauthBearerToken")] - public Input? OauthBearerToken { get; set; } + public Input? OauthBearerToken + { + get => _oauthBearerToken; + set + { + var emptySecret = Output.CreateSecret(0); + _oauthBearerToken = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -231,12 +284,19 @@ public sealed class DirectThousandeyesState : global::Pulumi.ResourceArgs [Input("queryDelay")] public Input? QueryDelay { get; set; } + /// + /// Release channel of the created datasource [stable/beta] + /// + [Input("releaseChannel")] + public Input? ReleaseChannel { get; set; } + [Input("sourceOfs")] private InputList? _sourceOfs; /// - /// Source of Metrics and/or Services. + /// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. /// + [Obsolete(@"'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.")] public InputList SourceOfs { get => _sourceOfs ?? (_sourceOfs = new InputList()); diff --git a/sdk/dotnet/GetAwsIamRoleExternalId.cs b/sdk/dotnet/GetAwsIamRoleExternalId.cs new file mode 100644 index 0000000..3c2e06f --- /dev/null +++ b/sdk/dotnet/GetAwsIamRoleExternalId.cs @@ -0,0 +1,138 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9 +{ + public static class GetAwsIamRoleExternalId + { + /// + /// Returns external ID and AWS account ID that can be used to create [cross-account IAM roles in AWS](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cross-account-iam-roles-new). + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Nobl9 = Pulumi.Nobl9; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var @this = Nobl9.GetAwsIamRoleExternalId.Invoke(new() + /// { + /// Name = "my-datasource-name", + /// }); + /// + /// }); + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Task InvokeAsync(GetAwsIamRoleExternalIdArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("nobl9:index/getAwsIamRoleExternalId:getAwsIamRoleExternalId", args ?? new GetAwsIamRoleExternalIdArgs(), options.WithDefaults()); + + /// + /// Returns external ID and AWS account ID that can be used to create [cross-account IAM roles in AWS](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cross-account-iam-roles-new). + /// + /// {{% examples %}} + /// ## Example Usage + /// {{% example %}} + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Nobl9 = Pulumi.Nobl9; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var @this = Nobl9.GetAwsIamRoleExternalId.Invoke(new() + /// { + /// Name = "my-datasource-name", + /// }); + /// + /// }); + /// ``` + /// {{% /example %}} + /// {{% /examples %}} + /// + public static Output Invoke(GetAwsIamRoleExternalIdInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("nobl9:index/getAwsIamRoleExternalId:getAwsIamRoleExternalId", args ?? new GetAwsIamRoleExternalIdInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetAwsIamRoleExternalIdArgs : global::Pulumi.InvokeArgs + { + /// + /// Data source name + /// + [Input("name", required: true)] + public string Name { get; set; } = null!; + + public GetAwsIamRoleExternalIdArgs() + { + } + public static new GetAwsIamRoleExternalIdArgs Empty => new GetAwsIamRoleExternalIdArgs(); + } + + public sealed class GetAwsIamRoleExternalIdInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// Data source name + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + public GetAwsIamRoleExternalIdInvokeArgs() + { + } + public static new GetAwsIamRoleExternalIdInvokeArgs Empty => new GetAwsIamRoleExternalIdInvokeArgs(); + } + + + [OutputType] + public sealed class GetAwsIamRoleExternalIdResult + { + /// + /// External ID + /// + public readonly string AccountId; + /// + /// Nobl9 AWS Account ID + /// + public readonly string ExternalId; + /// + /// The provider-assigned unique ID for this managed resource. + /// + public readonly string Id; + /// + /// Data source name + /// + public readonly string Name; + + [OutputConstructor] + private GetAwsIamRoleExternalIdResult( + string accountId, + + string externalId, + + string id, + + string name) + { + AccountId = accountId; + ExternalId = externalId; + Id = id; + Name = name; + } + } +} diff --git a/sdk/dotnet/Inputs/AgentAmazonPrometheusConfigArgs.cs b/sdk/dotnet/Inputs/AgentAmazonPrometheusConfigArgs.cs index e6c0685..6e85be7 100644 --- a/sdk/dotnet/Inputs/AgentAmazonPrometheusConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentAmazonPrometheusConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentAmazonPrometheusConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentAmazonPrometheusConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentAmazonPrometheusConfigGetArgs.cs index 82b55e5..25d3263 100644 --- a/sdk/dotnet/Inputs/AgentAmazonPrometheusConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentAmazonPrometheusConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentAmazonPrometheusConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentAppdynamicsConfigArgs.cs b/sdk/dotnet/Inputs/AgentAppdynamicsConfigArgs.cs index d26f366..2671eac 100644 --- a/sdk/dotnet/Inputs/AgentAppdynamicsConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentAppdynamicsConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentAppdynamicsConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentAppdynamicsConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentAppdynamicsConfigGetArgs.cs index 5a1303b..9697f52 100644 --- a/sdk/dotnet/Inputs/AgentAppdynamicsConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentAppdynamicsConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentAppdynamicsConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentAzureMonitorConfigArgs.cs b/sdk/dotnet/Inputs/AgentAzureMonitorConfigArgs.cs new file mode 100644 index 0000000..e8fcb57 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentAzureMonitorConfigArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentAzureMonitorConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// Azure Tenant Id. + /// + [Input("tenantId", required: true)] + public Input TenantId { get; set; } = null!; + + public AgentAzureMonitorConfigArgs() + { + } + public static new AgentAzureMonitorConfigArgs Empty => new AgentAzureMonitorConfigArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentAzureMonitorConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentAzureMonitorConfigGetArgs.cs new file mode 100644 index 0000000..90e89b1 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentAzureMonitorConfigGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentAzureMonitorConfigGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Azure Tenant Id. + /// + [Input("tenantId", required: true)] + public Input TenantId { get; set; } = null!; + + public AgentAzureMonitorConfigGetArgs() + { + } + public static new AgentAzureMonitorConfigGetArgs Empty => new AgentAzureMonitorConfigGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentBigqueryConfigArgs.cs b/sdk/dotnet/Inputs/AgentBigqueryConfigArgs.cs index 398398f..dfca5da 100644 --- a/sdk/dotnet/Inputs/AgentBigqueryConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentBigqueryConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentBigqueryConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentBigqueryConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentBigqueryConfigGetArgs.cs index cc94aec..5a0f520 100644 --- a/sdk/dotnet/Inputs/AgentBigqueryConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentBigqueryConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentBigqueryConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentCloudwatchConfigArgs.cs b/sdk/dotnet/Inputs/AgentCloudwatchConfigArgs.cs index 42173d2..5cbf285 100644 --- a/sdk/dotnet/Inputs/AgentCloudwatchConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentCloudwatchConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentCloudwatchConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentCloudwatchConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentCloudwatchConfigGetArgs.cs index 4e74a31..86b9cd7 100644 --- a/sdk/dotnet/Inputs/AgentCloudwatchConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentCloudwatchConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentCloudwatchConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentDatadogConfigArgs.cs b/sdk/dotnet/Inputs/AgentDatadogConfigArgs.cs index bfbeb13..1209eab 100644 --- a/sdk/dotnet/Inputs/AgentDatadogConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentDatadogConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentDatadogConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentDatadogConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentDatadogConfigGetArgs.cs index 7086d90..1b78b9e 100644 --- a/sdk/dotnet/Inputs/AgentDatadogConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentDatadogConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentDatadogConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentDynatraceConfigArgs.cs b/sdk/dotnet/Inputs/AgentDynatraceConfigArgs.cs index 68fe9ea..0805380 100644 --- a/sdk/dotnet/Inputs/AgentDynatraceConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentDynatraceConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentDynatraceConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentDynatraceConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentDynatraceConfigGetArgs.cs index 394f81c..2a28fda 100644 --- a/sdk/dotnet/Inputs/AgentDynatraceConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentDynatraceConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentDynatraceConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentElasticsearchConfigArgs.cs b/sdk/dotnet/Inputs/AgentElasticsearchConfigArgs.cs index 5997991..494dd5a 100644 --- a/sdk/dotnet/Inputs/AgentElasticsearchConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentElasticsearchConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentElasticsearchConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentElasticsearchConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentElasticsearchConfigGetArgs.cs index dcddb11..667739c 100644 --- a/sdk/dotnet/Inputs/AgentElasticsearchConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentElasticsearchConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentElasticsearchConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentGcmConfigArgs.cs b/sdk/dotnet/Inputs/AgentGcmConfigArgs.cs index 4d26f9e..42576d4 100644 --- a/sdk/dotnet/Inputs/AgentGcmConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentGcmConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentGcmConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentGcmConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentGcmConfigGetArgs.cs index 5037ad1..f5e83af 100644 --- a/sdk/dotnet/Inputs/AgentGcmConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentGcmConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentGcmConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentGrafanaLokiConfigArgs.cs b/sdk/dotnet/Inputs/AgentGrafanaLokiConfigArgs.cs index 7c2c69e..b58cb36 100644 --- a/sdk/dotnet/Inputs/AgentGrafanaLokiConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentGrafanaLokiConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentGrafanaLokiConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentGrafanaLokiConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentGrafanaLokiConfigGetArgs.cs index a8953bb..745ebba 100644 --- a/sdk/dotnet/Inputs/AgentGrafanaLokiConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentGrafanaLokiConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentGrafanaLokiConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentGraphiteConfigArgs.cs b/sdk/dotnet/Inputs/AgentGraphiteConfigArgs.cs index b754fb2..6cecba1 100644 --- a/sdk/dotnet/Inputs/AgentGraphiteConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentGraphiteConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentGraphiteConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentGraphiteConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentGraphiteConfigGetArgs.cs index 83d2474..1d09158 100644 --- a/sdk/dotnet/Inputs/AgentGraphiteConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentGraphiteConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentGraphiteConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalArgs.cs new file mode 100644 index 0000000..eddb2c4 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs + { + [Input("defaultDurations", required: true)] + private InputList? _defaultDurations; + + /// + /// Used by default for any SLOs connected to this data source. + /// + public InputList DefaultDurations + { + get => _defaultDurations ?? (_defaultDurations = new InputList()); + set => _defaultDurations = value; + } + + [Input("maxDurations", required: true)] + private InputList? _maxDurations; + + /// + /// Defines the maximum period for which data can be retrieved. + /// + public InputList MaxDurations + { + get => _maxDurations ?? (_maxDurations = new InputList()); + set => _maxDurations = value; + } + + public AgentHistoricalDataRetrievalArgs() + { + } + public static new AgentHistoricalDataRetrievalArgs Empty => new AgentHistoricalDataRetrievalArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalDefaultDurationArgs.cs new file mode 100644 index 0000000..3a4f0da --- /dev/null +++ b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalDefaultDurationArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public AgentHistoricalDataRetrievalDefaultDurationArgs() + { + } + public static new AgentHistoricalDataRetrievalDefaultDurationArgs Empty => new AgentHistoricalDataRetrievalDefaultDurationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalDefaultDurationGetArgs.cs new file mode 100644 index 0000000..d539bc8 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public AgentHistoricalDataRetrievalDefaultDurationGetArgs() + { + } + public static new AgentHistoricalDataRetrievalDefaultDurationGetArgs Empty => new AgentHistoricalDataRetrievalDefaultDurationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalGetArgs.cs new file mode 100644 index 0000000..93ec818 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalGetArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs + { + [Input("defaultDurations", required: true)] + private InputList? _defaultDurations; + + /// + /// Used by default for any SLOs connected to this data source. + /// + public InputList DefaultDurations + { + get => _defaultDurations ?? (_defaultDurations = new InputList()); + set => _defaultDurations = value; + } + + [Input("maxDurations", required: true)] + private InputList? _maxDurations; + + /// + /// Defines the maximum period for which data can be retrieved. + /// + public InputList MaxDurations + { + get => _maxDurations ?? (_maxDurations = new InputList()); + set => _maxDurations = value; + } + + public AgentHistoricalDataRetrievalGetArgs() + { + } + public static new AgentHistoricalDataRetrievalGetArgs Empty => new AgentHistoricalDataRetrievalGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalMaxDurationArgs.cs new file mode 100644 index 0000000..6ae59c1 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalMaxDurationArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public AgentHistoricalDataRetrievalMaxDurationArgs() + { + } + public static new AgentHistoricalDataRetrievalMaxDurationArgs Empty => new AgentHistoricalDataRetrievalMaxDurationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalMaxDurationGetArgs.cs new file mode 100644 index 0000000..a909962 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public AgentHistoricalDataRetrievalMaxDurationGetArgs() + { + } + public static new AgentHistoricalDataRetrievalMaxDurationGetArgs Empty => new AgentHistoricalDataRetrievalMaxDurationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentHoneycombConfigArgs.cs b/sdk/dotnet/Inputs/AgentHoneycombConfigArgs.cs new file mode 100644 index 0000000..5ae20e5 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentHoneycombConfigArgs.cs @@ -0,0 +1,21 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentHoneycombConfigArgs : global::Pulumi.ResourceArgs + { + public AgentHoneycombConfigArgs() + { + } + public static new AgentHoneycombConfigArgs Empty => new AgentHoneycombConfigArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentHoneycombConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentHoneycombConfigGetArgs.cs new file mode 100644 index 0000000..3361088 --- /dev/null +++ b/sdk/dotnet/Inputs/AgentHoneycombConfigGetArgs.cs @@ -0,0 +1,21 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AgentHoneycombConfigGetArgs : global::Pulumi.ResourceArgs + { + public AgentHoneycombConfigGetArgs() + { + } + public static new AgentHoneycombConfigGetArgs Empty => new AgentHoneycombConfigGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AgentInfluxdbConfigArgs.cs b/sdk/dotnet/Inputs/AgentInfluxdbConfigArgs.cs index 42f068e..75d2996 100644 --- a/sdk/dotnet/Inputs/AgentInfluxdbConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentInfluxdbConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentInfluxdbConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentInfluxdbConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentInfluxdbConfigGetArgs.cs index d7e3714..8d35f51 100644 --- a/sdk/dotnet/Inputs/AgentInfluxdbConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentInfluxdbConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentInfluxdbConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentInstanaConfigArgs.cs b/sdk/dotnet/Inputs/AgentInstanaConfigArgs.cs index 166bbb5..4d734f0 100644 --- a/sdk/dotnet/Inputs/AgentInstanaConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentInstanaConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentInstanaConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentInstanaConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentInstanaConfigGetArgs.cs index 00a7efc..6cdd2d6 100644 --- a/sdk/dotnet/Inputs/AgentInstanaConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentInstanaConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentInstanaConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentLightstepConfigArgs.cs b/sdk/dotnet/Inputs/AgentLightstepConfigArgs.cs index e9972a4..0f7a82f 100644 --- a/sdk/dotnet/Inputs/AgentLightstepConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentLightstepConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentLightstepConfigArgs : global::Pulumi.ResourceArgs @@ -24,6 +25,12 @@ public sealed class AgentLightstepConfigArgs : global::Pulumi.ResourceArgs [Input("project", required: true)] public Input Project { get; set; } = null!; + /// + /// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + /// + [Input("url")] + public Input? Url { get; set; } + public AgentLightstepConfigArgs() { } diff --git a/sdk/dotnet/Inputs/AgentLightstepConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentLightstepConfigGetArgs.cs index 48d2cd3..9e94da8 100644 --- a/sdk/dotnet/Inputs/AgentLightstepConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentLightstepConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentLightstepConfigGetArgs : global::Pulumi.ResourceArgs @@ -24,6 +25,12 @@ public sealed class AgentLightstepConfigGetArgs : global::Pulumi.ResourceArgs [Input("project", required: true)] public Input Project { get; set; } = null!; + /// + /// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + /// + [Input("url")] + public Input? Url { get; set; } + public AgentLightstepConfigGetArgs() { } diff --git a/sdk/dotnet/Inputs/AgentNewrelicConfigArgs.cs b/sdk/dotnet/Inputs/AgentNewrelicConfigArgs.cs index ce75d9e..73d8a49 100644 --- a/sdk/dotnet/Inputs/AgentNewrelicConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentNewrelicConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentNewrelicConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentNewrelicConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentNewrelicConfigGetArgs.cs index 8b6dcff..e2c66b9 100644 --- a/sdk/dotnet/Inputs/AgentNewrelicConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentNewrelicConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentNewrelicConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentOpentsdbConfigArgs.cs b/sdk/dotnet/Inputs/AgentOpentsdbConfigArgs.cs index 8827374..9970241 100644 --- a/sdk/dotnet/Inputs/AgentOpentsdbConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentOpentsdbConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentOpentsdbConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentOpentsdbConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentOpentsdbConfigGetArgs.cs index fd1a20b..dd0062f 100644 --- a/sdk/dotnet/Inputs/AgentOpentsdbConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentOpentsdbConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentOpentsdbConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentPingdomConfigArgs.cs b/sdk/dotnet/Inputs/AgentPingdomConfigArgs.cs index b8c9036..83a4ea4 100644 --- a/sdk/dotnet/Inputs/AgentPingdomConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentPingdomConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentPingdomConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentPingdomConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentPingdomConfigGetArgs.cs index d3d7c2c..dfb93a4 100644 --- a/sdk/dotnet/Inputs/AgentPingdomConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentPingdomConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentPingdomConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentPrometheusConfigArgs.cs b/sdk/dotnet/Inputs/AgentPrometheusConfigArgs.cs index e20e7c5..bd22b7e 100644 --- a/sdk/dotnet/Inputs/AgentPrometheusConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentPrometheusConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentPrometheusConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentPrometheusConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentPrometheusConfigGetArgs.cs index 91b7173..e963e75 100644 --- a/sdk/dotnet/Inputs/AgentPrometheusConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentPrometheusConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentPrometheusConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentQueryDelayArgs.cs b/sdk/dotnet/Inputs/AgentQueryDelayArgs.cs index a60a67c..2dfedf6 100644 --- a/sdk/dotnet/Inputs/AgentQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/AgentQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/AgentQueryDelayGetArgs.cs index e1b28e6..a91530e 100644 --- a/sdk/dotnet/Inputs/AgentQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentRedshiftConfigArgs.cs b/sdk/dotnet/Inputs/AgentRedshiftConfigArgs.cs index ba526f2..f9fd378 100644 --- a/sdk/dotnet/Inputs/AgentRedshiftConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentRedshiftConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentRedshiftConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentRedshiftConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentRedshiftConfigGetArgs.cs index 23f43b4..dccf8e4 100644 --- a/sdk/dotnet/Inputs/AgentRedshiftConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentRedshiftConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentRedshiftConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentSplunkConfigArgs.cs b/sdk/dotnet/Inputs/AgentSplunkConfigArgs.cs index fbf9cd2..a9ae614 100644 --- a/sdk/dotnet/Inputs/AgentSplunkConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentSplunkConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentSplunkConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentSplunkConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentSplunkConfigGetArgs.cs index ed99226..dfc4b43 100644 --- a/sdk/dotnet/Inputs/AgentSplunkConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentSplunkConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentSplunkConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentSplunkObservabilityConfigArgs.cs b/sdk/dotnet/Inputs/AgentSplunkObservabilityConfigArgs.cs index 8a66950..e6707c8 100644 --- a/sdk/dotnet/Inputs/AgentSplunkObservabilityConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentSplunkObservabilityConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentSplunkObservabilityConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentSplunkObservabilityConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentSplunkObservabilityConfigGetArgs.cs index f99f6cf..5ed9aa7 100644 --- a/sdk/dotnet/Inputs/AgentSplunkObservabilityConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentSplunkObservabilityConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentSplunkObservabilityConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentSumologicConfigArgs.cs b/sdk/dotnet/Inputs/AgentSumologicConfigArgs.cs index 85609ed..9a24249 100644 --- a/sdk/dotnet/Inputs/AgentSumologicConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentSumologicConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentSumologicConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentSumologicConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentSumologicConfigGetArgs.cs index 4bac0ae..bb4b496 100644 --- a/sdk/dotnet/Inputs/AgentSumologicConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentSumologicConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentSumologicConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentThousandeyesConfigArgs.cs b/sdk/dotnet/Inputs/AgentThousandeyesConfigArgs.cs index 5c3b4f1..4edf8ac 100644 --- a/sdk/dotnet/Inputs/AgentThousandeyesConfigArgs.cs +++ b/sdk/dotnet/Inputs/AgentThousandeyesConfigArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentThousandeyesConfigArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AgentThousandeyesConfigGetArgs.cs b/sdk/dotnet/Inputs/AgentThousandeyesConfigGetArgs.cs index 49b5d42..4a7f38b 100644 --- a/sdk/dotnet/Inputs/AgentThousandeyesConfigGetArgs.cs +++ b/sdk/dotnet/Inputs/AgentThousandeyesConfigGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AgentThousandeyesConfigGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AlertMethodPagerdutySendResolutionArgs.cs b/sdk/dotnet/Inputs/AlertMethodPagerdutySendResolutionArgs.cs new file mode 100644 index 0000000..677639d --- /dev/null +++ b/sdk/dotnet/Inputs/AlertMethodPagerdutySendResolutionArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AlertMethodPagerdutySendResolutionArgs : global::Pulumi.ResourceArgs + { + /// + /// A message that will be attached to your 'all clear' notification. + /// + [Input("message")] + public Input? Message { get; set; } + + public AlertMethodPagerdutySendResolutionArgs() + { + } + public static new AlertMethodPagerdutySendResolutionArgs Empty => new AlertMethodPagerdutySendResolutionArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AlertMethodPagerdutySendResolutionGetArgs.cs b/sdk/dotnet/Inputs/AlertMethodPagerdutySendResolutionGetArgs.cs new file mode 100644 index 0000000..a2611fc --- /dev/null +++ b/sdk/dotnet/Inputs/AlertMethodPagerdutySendResolutionGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class AlertMethodPagerdutySendResolutionGetArgs : global::Pulumi.ResourceArgs + { + /// + /// A message that will be attached to your 'all clear' notification. + /// + [Input("message")] + public Input? Message { get; set; } + + public AlertMethodPagerdutySendResolutionGetArgs() + { + } + public static new AlertMethodPagerdutySendResolutionGetArgs Empty => new AlertMethodPagerdutySendResolutionGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/AlertPolicyAlertMethodArgs.cs b/sdk/dotnet/Inputs/AlertPolicyAlertMethodArgs.cs index 463ff55..c3acf60 100644 --- a/sdk/dotnet/Inputs/AlertPolicyAlertMethodArgs.cs +++ b/sdk/dotnet/Inputs/AlertPolicyAlertMethodArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AlertPolicyAlertMethodArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AlertPolicyAlertMethodGetArgs.cs b/sdk/dotnet/Inputs/AlertPolicyAlertMethodGetArgs.cs index 2af4c8a..72f638f 100644 --- a/sdk/dotnet/Inputs/AlertPolicyAlertMethodGetArgs.cs +++ b/sdk/dotnet/Inputs/AlertPolicyAlertMethodGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AlertPolicyAlertMethodGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/AlertPolicyConditionArgs.cs b/sdk/dotnet/Inputs/AlertPolicyConditionArgs.cs index 6cb060d..70f70d8 100644 --- a/sdk/dotnet/Inputs/AlertPolicyConditionArgs.cs +++ b/sdk/dotnet/Inputs/AlertPolicyConditionArgs.cs @@ -6,12 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AlertPolicyConditionArgs : global::Pulumi.ResourceArgs { + /// + /// Duration over which the burn rate is evaluated. + /// + [Input("alertingWindow")] + public Input? AlertingWindow { get; set; } + /// /// Indicates how long a given condition needs to be valid to mark the condition as true. /// @@ -19,7 +26,7 @@ public sealed class AlertPolicyConditionArgs : global::Pulumi.ResourceArgs public Input? LastsFor { get; set; } /// - /// One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + /// One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. /// [Input("measurement", required: true)] public Input Measurement { get; set; } = null!; @@ -31,7 +38,7 @@ public sealed class AlertPolicyConditionArgs : global::Pulumi.ResourceArgs public Input? Value { get; set; } /// - /// Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + /// Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. /// [Input("valueString")] public Input? ValueString { get; set; } diff --git a/sdk/dotnet/Inputs/AlertPolicyConditionGetArgs.cs b/sdk/dotnet/Inputs/AlertPolicyConditionGetArgs.cs index 6208147..55efc0d 100644 --- a/sdk/dotnet/Inputs/AlertPolicyConditionGetArgs.cs +++ b/sdk/dotnet/Inputs/AlertPolicyConditionGetArgs.cs @@ -6,12 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class AlertPolicyConditionGetArgs : global::Pulumi.ResourceArgs { + /// + /// Duration over which the burn rate is evaluated. + /// + [Input("alertingWindow")] + public Input? AlertingWindow { get; set; } + /// /// Indicates how long a given condition needs to be valid to mark the condition as true. /// @@ -19,7 +26,7 @@ public sealed class AlertPolicyConditionGetArgs : global::Pulumi.ResourceArgs public Input? LastsFor { get; set; } /// - /// One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + /// One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. /// [Input("measurement", required: true)] public Input Measurement { get; set; } = null!; @@ -31,7 +38,7 @@ public sealed class AlertPolicyConditionGetArgs : global::Pulumi.ResourceArgs public Input? Value { get; set; } /// - /// Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + /// Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. /// [Input("valueString")] public Input? ValueString { get; set; } diff --git a/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalArgs.cs new file mode 100644 index 0000000..23190df --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAppdynamicsHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs + { + [Input("defaultDurations", required: true)] + private InputList? _defaultDurations; + + /// + /// Used by default for any SLOs connected to this data source. + /// + public InputList DefaultDurations + { + get => _defaultDurations ?? (_defaultDurations = new InputList()); + set => _defaultDurations = value; + } + + [Input("maxDurations", required: true)] + private InputList? _maxDurations; + + /// + /// Defines the maximum period for which data can be retrieved. + /// + public InputList MaxDurations + { + get => _maxDurations ?? (_maxDurations = new InputList()); + set => _maxDurations = value; + } + + public DirectAppdynamicsHistoricalDataRetrievalArgs() + { + } + public static new DirectAppdynamicsHistoricalDataRetrievalArgs Empty => new DirectAppdynamicsHistoricalDataRetrievalArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs.cs new file mode 100644 index 0000000..576245a --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs() + { + } + public static new DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs Empty => new DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDurationGetArgs.cs new file mode 100644 index 0000000..c4c060a --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAppdynamicsHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAppdynamicsHistoricalDataRetrievalDefaultDurationGetArgs() + { + } + public static new DirectAppdynamicsHistoricalDataRetrievalDefaultDurationGetArgs Empty => new DirectAppdynamicsHistoricalDataRetrievalDefaultDurationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalGetArgs.cs new file mode 100644 index 0000000..7f10d96 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalGetArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAppdynamicsHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs + { + [Input("defaultDurations", required: true)] + private InputList? _defaultDurations; + + /// + /// Used by default for any SLOs connected to this data source. + /// + public InputList DefaultDurations + { + get => _defaultDurations ?? (_defaultDurations = new InputList()); + set => _defaultDurations = value; + } + + [Input("maxDurations", required: true)] + private InputList? _maxDurations; + + /// + /// Defines the maximum period for which data can be retrieved. + /// + public InputList MaxDurations + { + get => _maxDurations ?? (_maxDurations = new InputList()); + set => _maxDurations = value; + } + + public DirectAppdynamicsHistoricalDataRetrievalGetArgs() + { + } + public static new DirectAppdynamicsHistoricalDataRetrievalGetArgs Empty => new DirectAppdynamicsHistoricalDataRetrievalGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs.cs new file mode 100644 index 0000000..229dde1 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs() + { + } + public static new DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs Empty => new DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalMaxDurationGetArgs.cs new file mode 100644 index 0000000..b496b32 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAppdynamicsHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAppdynamicsHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAppdynamicsHistoricalDataRetrievalMaxDurationGetArgs() + { + } + public static new DirectAppdynamicsHistoricalDataRetrievalMaxDurationGetArgs Empty => new DirectAppdynamicsHistoricalDataRetrievalMaxDurationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAppdynamicsQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectAppdynamicsQueryDelayArgs.cs index dd5d80a..bf845e6 100644 --- a/sdk/dotnet/Inputs/DirectAppdynamicsQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectAppdynamicsQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectAppdynamicsQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectAppdynamicsQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectAppdynamicsQueryDelayGetArgs.cs index d6f3f16..4a873fa 100644 --- a/sdk/dotnet/Inputs/DirectAppdynamicsQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectAppdynamicsQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectAppdynamicsQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalArgs.cs new file mode 100644 index 0000000..9aedc2c --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAzureMonitorHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs + { + [Input("defaultDurations", required: true)] + private InputList? _defaultDurations; + + /// + /// Used by default for any SLOs connected to this data source. + /// + public InputList DefaultDurations + { + get => _defaultDurations ?? (_defaultDurations = new InputList()); + set => _defaultDurations = value; + } + + [Input("maxDurations", required: true)] + private InputList? _maxDurations; + + /// + /// Defines the maximum period for which data can be retrieved. + /// + public InputList MaxDurations + { + get => _maxDurations ?? (_maxDurations = new InputList()); + set => _maxDurations = value; + } + + public DirectAzureMonitorHistoricalDataRetrievalArgs() + { + } + public static new DirectAzureMonitorHistoricalDataRetrievalArgs Empty => new DirectAzureMonitorHistoricalDataRetrievalArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs.cs new file mode 100644 index 0000000..6e5678f --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs() + { + } + public static new DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs Empty => new DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDurationGetArgs.cs new file mode 100644 index 0000000..455c82d --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAzureMonitorHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAzureMonitorHistoricalDataRetrievalDefaultDurationGetArgs() + { + } + public static new DirectAzureMonitorHistoricalDataRetrievalDefaultDurationGetArgs Empty => new DirectAzureMonitorHistoricalDataRetrievalDefaultDurationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalGetArgs.cs new file mode 100644 index 0000000..7ec1839 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalGetArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAzureMonitorHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs + { + [Input("defaultDurations", required: true)] + private InputList? _defaultDurations; + + /// + /// Used by default for any SLOs connected to this data source. + /// + public InputList DefaultDurations + { + get => _defaultDurations ?? (_defaultDurations = new InputList()); + set => _defaultDurations = value; + } + + [Input("maxDurations", required: true)] + private InputList? _maxDurations; + + /// + /// Defines the maximum period for which data can be retrieved. + /// + public InputList MaxDurations + { + get => _maxDurations ?? (_maxDurations = new InputList()); + set => _maxDurations = value; + } + + public DirectAzureMonitorHistoricalDataRetrievalGetArgs() + { + } + public static new DirectAzureMonitorHistoricalDataRetrievalGetArgs Empty => new DirectAzureMonitorHistoricalDataRetrievalGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs.cs new file mode 100644 index 0000000..ba4ca27 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs() + { + } + public static new DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs Empty => new DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalMaxDurationGetArgs.cs new file mode 100644 index 0000000..86f3c19 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAzureMonitorHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAzureMonitorHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAzureMonitorHistoricalDataRetrievalMaxDurationGetArgs() + { + } + public static new DirectAzureMonitorHistoricalDataRetrievalMaxDurationGetArgs Empty => new DirectAzureMonitorHistoricalDataRetrievalMaxDurationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAzureMonitorQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectAzureMonitorQueryDelayArgs.cs new file mode 100644 index 0000000..d2c6145 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAzureMonitorQueryDelayArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAzureMonitorQueryDelayArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute or Second. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAzureMonitorQueryDelayArgs() + { + } + public static new DirectAzureMonitorQueryDelayArgs Empty => new DirectAzureMonitorQueryDelayArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectAzureMonitorQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectAzureMonitorQueryDelayGetArgs.cs new file mode 100644 index 0000000..369229f --- /dev/null +++ b/sdk/dotnet/Inputs/DirectAzureMonitorQueryDelayGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectAzureMonitorQueryDelayGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute or Second. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectAzureMonitorQueryDelayGetArgs() + { + } + public static new DirectAzureMonitorQueryDelayGetArgs Empty => new DirectAzureMonitorQueryDelayGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectBigqueryQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectBigqueryQueryDelayArgs.cs index e4da199..ef6b20d 100644 --- a/sdk/dotnet/Inputs/DirectBigqueryQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectBigqueryQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectBigqueryQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectBigqueryQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectBigqueryQueryDelayGetArgs.cs index e6f9fc7..ead01b1 100644 --- a/sdk/dotnet/Inputs/DirectBigqueryQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectBigqueryQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectBigqueryQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalArgs.cs index 7c5d73d..6143600 100644 --- a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalArgs.cs +++ b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectCloudwatchHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs.cs index b5230c5..dfca2ae 100644 --- a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalDefaultDurationGetArgs.cs index cd87daa..63508b8 100644 --- a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalDefaultDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectCloudwatchHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalGetArgs.cs index a333ef3..4020725 100644 --- a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectCloudwatchHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs.cs index 53119a2..b46c43a 100644 --- a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalMaxDurationGetArgs.cs index 57efd80..fda1b44 100644 --- a/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalMaxDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectCloudwatchHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectCloudwatchHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectCloudwatchQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectCloudwatchQueryDelayArgs.cs index 7171c2b..732e9e8 100644 --- a/sdk/dotnet/Inputs/DirectCloudwatchQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectCloudwatchQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectCloudwatchQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectCloudwatchQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectCloudwatchQueryDelayGetArgs.cs index 42e458a..5e6e7c8 100644 --- a/sdk/dotnet/Inputs/DirectCloudwatchQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectCloudwatchQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectCloudwatchQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalArgs.cs index 9e6b02c..bb1d835 100644 --- a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalArgs.cs +++ b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDatadogHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalDefaultDurationArgs.cs index e731973..c8c9ae4 100644 --- a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalDefaultDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalDefaultDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDatadogHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalDefaultDurationGetArgs.cs index aa09ce0..587fc1b 100644 --- a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalDefaultDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDatadogHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalGetArgs.cs index b4dc9b2..6657025 100644 --- a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDatadogHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalMaxDurationArgs.cs index 30a9712..6696e31 100644 --- a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalMaxDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalMaxDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDatadogHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalMaxDurationGetArgs.cs index 015bee0..786d417 100644 --- a/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalMaxDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectDatadogHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDatadogHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectDatadogQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectDatadogQueryDelayArgs.cs index 01cecbd..214ee18 100644 --- a/sdk/dotnet/Inputs/DirectDatadogQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectDatadogQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDatadogQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectDatadogQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectDatadogQueryDelayGetArgs.cs index 9dce413..4a3be9a 100644 --- a/sdk/dotnet/Inputs/DirectDatadogQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectDatadogQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDatadogQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalArgs.cs index 640659c..3c2f41c 100644 --- a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalArgs.cs +++ b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDynatraceHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs.cs index e8517c9..c141b31 100644 --- a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalDefaultDurationGetArgs.cs index 6ecdce3..4420014 100644 --- a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalDefaultDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDynatraceHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalGetArgs.cs index 201dc28..cb6d9e3 100644 --- a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDynatraceHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalMaxDurationArgs.cs index 5bd3280..89973ed 100644 --- a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalMaxDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalMaxDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDynatraceHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalMaxDurationGetArgs.cs index 8025380..a7c6384 100644 --- a/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalMaxDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectDynatraceHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDynatraceHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectDynatraceQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectDynatraceQueryDelayArgs.cs index 6e25cc5..ec01c26 100644 --- a/sdk/dotnet/Inputs/DirectDynatraceQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectDynatraceQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDynatraceQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectDynatraceQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectDynatraceQueryDelayGetArgs.cs index 9370fbd..3eb126a 100644 --- a/sdk/dotnet/Inputs/DirectDynatraceQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectDynatraceQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectDynatraceQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectGcmQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectGcmQueryDelayArgs.cs index b43a371..b4d9817 100644 --- a/sdk/dotnet/Inputs/DirectGcmQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectGcmQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectGcmQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectGcmQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectGcmQueryDelayGetArgs.cs index 31c6d38..3df3b0c 100644 --- a/sdk/dotnet/Inputs/DirectGcmQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectGcmQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectGcmQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalArgs.cs new file mode 100644 index 0000000..11ce0ac --- /dev/null +++ b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectHoneycombHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs + { + [Input("defaultDurations", required: true)] + private InputList? _defaultDurations; + + /// + /// Used by default for any SLOs connected to this data source. + /// + public InputList DefaultDurations + { + get => _defaultDurations ?? (_defaultDurations = new InputList()); + set => _defaultDurations = value; + } + + [Input("maxDurations", required: true)] + private InputList? _maxDurations; + + /// + /// Defines the maximum period for which data can be retrieved. + /// + public InputList MaxDurations + { + get => _maxDurations ?? (_maxDurations = new InputList()); + set => _maxDurations = value; + } + + public DirectHoneycombHistoricalDataRetrievalArgs() + { + } + public static new DirectHoneycombHistoricalDataRetrievalArgs Empty => new DirectHoneycombHistoricalDataRetrievalArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs.cs new file mode 100644 index 0000000..14dfe1f --- /dev/null +++ b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs() + { + } + public static new DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs Empty => new DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalDefaultDurationGetArgs.cs new file mode 100644 index 0000000..5f3d833 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectHoneycombHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectHoneycombHistoricalDataRetrievalDefaultDurationGetArgs() + { + } + public static new DirectHoneycombHistoricalDataRetrievalDefaultDurationGetArgs Empty => new DirectHoneycombHistoricalDataRetrievalDefaultDurationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalGetArgs.cs new file mode 100644 index 0000000..25ac781 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalGetArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectHoneycombHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs + { + [Input("defaultDurations", required: true)] + private InputList? _defaultDurations; + + /// + /// Used by default for any SLOs connected to this data source. + /// + public InputList DefaultDurations + { + get => _defaultDurations ?? (_defaultDurations = new InputList()); + set => _defaultDurations = value; + } + + [Input("maxDurations", required: true)] + private InputList? _maxDurations; + + /// + /// Defines the maximum period for which data can be retrieved. + /// + public InputList MaxDurations + { + get => _maxDurations ?? (_maxDurations = new InputList()); + set => _maxDurations = value; + } + + public DirectHoneycombHistoricalDataRetrievalGetArgs() + { + } + public static new DirectHoneycombHistoricalDataRetrievalGetArgs Empty => new DirectHoneycombHistoricalDataRetrievalGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalMaxDurationArgs.cs new file mode 100644 index 0000000..460c24d --- /dev/null +++ b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalMaxDurationArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectHoneycombHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectHoneycombHistoricalDataRetrievalMaxDurationArgs() + { + } + public static new DirectHoneycombHistoricalDataRetrievalMaxDurationArgs Empty => new DirectHoneycombHistoricalDataRetrievalMaxDurationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalMaxDurationGetArgs.cs new file mode 100644 index 0000000..9d4d0e9 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectHoneycombHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectHoneycombHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute, Hour, or Day. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectHoneycombHistoricalDataRetrievalMaxDurationGetArgs() + { + } + public static new DirectHoneycombHistoricalDataRetrievalMaxDurationGetArgs Empty => new DirectHoneycombHistoricalDataRetrievalMaxDurationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectHoneycombQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectHoneycombQueryDelayArgs.cs new file mode 100644 index 0000000..8e2b272 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectHoneycombQueryDelayArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectHoneycombQueryDelayArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute or Second. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectHoneycombQueryDelayArgs() + { + } + public static new DirectHoneycombQueryDelayArgs Empty => new DirectHoneycombQueryDelayArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectHoneycombQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectHoneycombQueryDelayGetArgs.cs new file mode 100644 index 0000000..97f9059 --- /dev/null +++ b/sdk/dotnet/Inputs/DirectHoneycombQueryDelayGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class DirectHoneycombQueryDelayGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Must be one of Minute or Second. + /// + [Input("unit", required: true)] + public Input Unit { get; set; } = null!; + + /// + /// Must be an integer greater than or equal to 0. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DirectHoneycombQueryDelayGetArgs() + { + } + public static new DirectHoneycombQueryDelayGetArgs Empty => new DirectHoneycombQueryDelayGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/DirectInfluxdbQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectInfluxdbQueryDelayArgs.cs index f1162e2..ee36672 100644 --- a/sdk/dotnet/Inputs/DirectInfluxdbQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectInfluxdbQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectInfluxdbQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectInfluxdbQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectInfluxdbQueryDelayGetArgs.cs index a8a77c3..06f0e74 100644 --- a/sdk/dotnet/Inputs/DirectInfluxdbQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectInfluxdbQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectInfluxdbQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectInstanaQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectInstanaQueryDelayArgs.cs index 8e5cc1e..390a18e 100644 --- a/sdk/dotnet/Inputs/DirectInstanaQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectInstanaQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectInstanaQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectInstanaQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectInstanaQueryDelayGetArgs.cs index afd5066..7e6e175 100644 --- a/sdk/dotnet/Inputs/DirectInstanaQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectInstanaQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectInstanaQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalArgs.cs index 6d8e28f..56f7a8b 100644 --- a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalArgs.cs +++ b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectLightstepHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalDefaultDurationArgs.cs index 1e964df..8a6b8a2 100644 --- a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalDefaultDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalDefaultDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectLightstepHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalDefaultDurationGetArgs.cs index 2937a4d..59afdc2 100644 --- a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalDefaultDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectLightstepHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalGetArgs.cs index c96e697..8635ba9 100644 --- a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectLightstepHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalMaxDurationArgs.cs index f263692..923e492 100644 --- a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalMaxDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalMaxDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectLightstepHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalMaxDurationGetArgs.cs index 1e264e2..18f9146 100644 --- a/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalMaxDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectLightstepHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectLightstepHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectLightstepQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectLightstepQueryDelayArgs.cs index 8d27ec0..0f80136 100644 --- a/sdk/dotnet/Inputs/DirectLightstepQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectLightstepQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectLightstepQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectLightstepQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectLightstepQueryDelayGetArgs.cs index 8ffe5e1..d7d54e9 100644 --- a/sdk/dotnet/Inputs/DirectLightstepQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectLightstepQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectLightstepQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalArgs.cs index 48a8682..a2a9c21 100644 --- a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalArgs.cs +++ b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectNewrelicHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs.cs index 97d8a0a..88509b2 100644 --- a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalDefaultDurationGetArgs.cs index 604db3b..1127af7 100644 --- a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalDefaultDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectNewrelicHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalGetArgs.cs index 9553709..31bf63f 100644 --- a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectNewrelicHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalMaxDurationArgs.cs index a73b3b1..55c61b9 100644 --- a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalMaxDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalMaxDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectNewrelicHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalMaxDurationGetArgs.cs index 33d01de..0795729 100644 --- a/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalMaxDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectNewrelicHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectNewrelicHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectNewrelicQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectNewrelicQueryDelayArgs.cs index 4ead140..08ad7f3 100644 --- a/sdk/dotnet/Inputs/DirectNewrelicQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectNewrelicQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectNewrelicQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectNewrelicQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectNewrelicQueryDelayGetArgs.cs index df39a6d..fef617e 100644 --- a/sdk/dotnet/Inputs/DirectNewrelicQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectNewrelicQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectNewrelicQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectPingdomQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectPingdomQueryDelayArgs.cs index 824f1c2..87ba4e0 100644 --- a/sdk/dotnet/Inputs/DirectPingdomQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectPingdomQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectPingdomQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectPingdomQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectPingdomQueryDelayGetArgs.cs index f70de1a..60d0e04 100644 --- a/sdk/dotnet/Inputs/DirectPingdomQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectPingdomQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectPingdomQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectRedshiftQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectRedshiftQueryDelayArgs.cs index 000f4dd..5ddf413 100644 --- a/sdk/dotnet/Inputs/DirectRedshiftQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectRedshiftQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectRedshiftQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectRedshiftQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectRedshiftQueryDelayGetArgs.cs index 3ead03a..1c5ce95 100644 --- a/sdk/dotnet/Inputs/DirectRedshiftQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectRedshiftQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectRedshiftQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalArgs.cs b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalArgs.cs index b82f87e..2147054 100644 --- a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkHistoricalDataRetrievalArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalDefaultDurationArgs.cs b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalDefaultDurationArgs.cs index 61a0e8e..c1b6dd6 100644 --- a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalDefaultDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalDefaultDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkHistoricalDataRetrievalDefaultDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalDefaultDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalDefaultDurationGetArgs.cs index f9aeaf6..e7f4fad 100644 --- a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalDefaultDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalDefaultDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkHistoricalDataRetrievalDefaultDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalGetArgs.cs b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalGetArgs.cs index 99d573b..53a5b7d 100644 --- a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkHistoricalDataRetrievalGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalMaxDurationArgs.cs b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalMaxDurationArgs.cs index ed1239e..dab5358 100644 --- a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalMaxDurationArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalMaxDurationArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkHistoricalDataRetrievalMaxDurationArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalMaxDurationGetArgs.cs b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalMaxDurationGetArgs.cs index 25ad4f0..ec23045 100644 --- a/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalMaxDurationGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkHistoricalDataRetrievalMaxDurationGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkHistoricalDataRetrievalMaxDurationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Must be one of Minute, Hour, or Day. + /// [Input("unit", required: true)] public Input Unit { get; set; } = null!; + /// + /// Must be an integer greater than or equal to 0. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/DirectSplunkObservabilityQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectSplunkObservabilityQueryDelayArgs.cs index d5b2904..cd9f042 100644 --- a/sdk/dotnet/Inputs/DirectSplunkObservabilityQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkObservabilityQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkObservabilityQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectSplunkObservabilityQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectSplunkObservabilityQueryDelayGetArgs.cs index 7b0ecc5..4ffc257 100644 --- a/sdk/dotnet/Inputs/DirectSplunkObservabilityQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkObservabilityQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkObservabilityQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectSplunkQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectSplunkQueryDelayArgs.cs index 718529e..33b1150 100644 --- a/sdk/dotnet/Inputs/DirectSplunkQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectSplunkQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectSplunkQueryDelayGetArgs.cs index 7727127..6bdc855 100644 --- a/sdk/dotnet/Inputs/DirectSplunkQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectSplunkQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSplunkQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectSumologicQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectSumologicQueryDelayArgs.cs index ef8edfb..7eba8d0 100644 --- a/sdk/dotnet/Inputs/DirectSumologicQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectSumologicQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSumologicQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectSumologicQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectSumologicQueryDelayGetArgs.cs index 13f883f..37f3d4d 100644 --- a/sdk/dotnet/Inputs/DirectSumologicQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectSumologicQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectSumologicQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectThousandeyesQueryDelayArgs.cs b/sdk/dotnet/Inputs/DirectThousandeyesQueryDelayArgs.cs index c8426a2..1441401 100644 --- a/sdk/dotnet/Inputs/DirectThousandeyesQueryDelayArgs.cs +++ b/sdk/dotnet/Inputs/DirectThousandeyesQueryDelayArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectThousandeyesQueryDelayArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/DirectThousandeyesQueryDelayGetArgs.cs b/sdk/dotnet/Inputs/DirectThousandeyesQueryDelayGetArgs.cs index 9105c8b..3bf0c14 100644 --- a/sdk/dotnet/Inputs/DirectThousandeyesQueryDelayGetArgs.cs +++ b/sdk/dotnet/Inputs/DirectThousandeyesQueryDelayGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class DirectThousandeyesQueryDelayGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/ProjectLabelArgs.cs b/sdk/dotnet/Inputs/ProjectLabelArgs.cs index b47784d..6f83163 100644 --- a/sdk/dotnet/Inputs/ProjectLabelArgs.cs +++ b/sdk/dotnet/Inputs/ProjectLabelArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class ProjectLabelArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/ProjectLabelGetArgs.cs b/sdk/dotnet/Inputs/ProjectLabelGetArgs.cs index 020b657..2ba2a27 100644 --- a/sdk/dotnet/Inputs/ProjectLabelGetArgs.cs +++ b/sdk/dotnet/Inputs/ProjectLabelGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class ProjectLabelGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/ServiceLabelArgs.cs b/sdk/dotnet/Inputs/ServiceLabelArgs.cs index 71cff59..09a243e 100644 --- a/sdk/dotnet/Inputs/ServiceLabelArgs.cs +++ b/sdk/dotnet/Inputs/ServiceLabelArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class ServiceLabelArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/ServiceLabelGetArgs.cs b/sdk/dotnet/Inputs/ServiceLabelGetArgs.cs index ea41dd2..65f60aa 100644 --- a/sdk/dotnet/Inputs/ServiceLabelGetArgs.cs +++ b/sdk/dotnet/Inputs/ServiceLabelGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class ServiceLabelGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloAnomalyConfigArgs.cs b/sdk/dotnet/Inputs/SloAnomalyConfigArgs.cs new file mode 100644 index 0000000..4ffe068 --- /dev/null +++ b/sdk/dotnet/Inputs/SloAnomalyConfigArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloAnomalyConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// Alert Policies attached to SLO + /// + [Input("noData", required: true)] + public Input NoData { get; set; } = null!; + + public SloAnomalyConfigArgs() + { + } + public static new SloAnomalyConfigArgs Empty => new SloAnomalyConfigArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloAnomalyConfigGetArgs.cs b/sdk/dotnet/Inputs/SloAnomalyConfigGetArgs.cs new file mode 100644 index 0000000..2b49835 --- /dev/null +++ b/sdk/dotnet/Inputs/SloAnomalyConfigGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloAnomalyConfigGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Alert Policies attached to SLO + /// + [Input("noData", required: true)] + public Input NoData { get; set; } = null!; + + public SloAnomalyConfigGetArgs() + { + } + public static new SloAnomalyConfigGetArgs Empty => new SloAnomalyConfigGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloAnomalyConfigNoDataAlertMethodArgs.cs b/sdk/dotnet/Inputs/SloAnomalyConfigNoDataAlertMethodArgs.cs new file mode 100644 index 0000000..15acaee --- /dev/null +++ b/sdk/dotnet/Inputs/SloAnomalyConfigNoDataAlertMethodArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloAnomalyConfigNoDataAlertMethodArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + /// + [Input("project", required: true)] + public Input Project { get; set; } = null!; + + public SloAnomalyConfigNoDataAlertMethodArgs() + { + } + public static new SloAnomalyConfigNoDataAlertMethodArgs Empty => new SloAnomalyConfigNoDataAlertMethodArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloAnomalyConfigNoDataAlertMethodGetArgs.cs b/sdk/dotnet/Inputs/SloAnomalyConfigNoDataAlertMethodGetArgs.cs new file mode 100644 index 0000000..c74c836 --- /dev/null +++ b/sdk/dotnet/Inputs/SloAnomalyConfigNoDataAlertMethodGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloAnomalyConfigNoDataAlertMethodGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + /// + [Input("project", required: true)] + public Input Project { get; set; } = null!; + + public SloAnomalyConfigNoDataAlertMethodGetArgs() + { + } + public static new SloAnomalyConfigNoDataAlertMethodGetArgs Empty => new SloAnomalyConfigNoDataAlertMethodGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloAnomalyConfigNoDataArgs.cs b/sdk/dotnet/Inputs/SloAnomalyConfigNoDataArgs.cs new file mode 100644 index 0000000..5fbfe3a --- /dev/null +++ b/sdk/dotnet/Inputs/SloAnomalyConfigNoDataArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloAnomalyConfigNoDataArgs : global::Pulumi.ResourceArgs + { + [Input("alertMethods", required: true)] + private InputList? _alertMethods; + + /// + /// Alert methods attached to Anomaly Config + /// + public InputList AlertMethods + { + get => _alertMethods ?? (_alertMethods = new InputList()); + set => _alertMethods = value; + } + + public SloAnomalyConfigNoDataArgs() + { + } + public static new SloAnomalyConfigNoDataArgs Empty => new SloAnomalyConfigNoDataArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloAnomalyConfigNoDataGetArgs.cs b/sdk/dotnet/Inputs/SloAnomalyConfigNoDataGetArgs.cs new file mode 100644 index 0000000..0deb99c --- /dev/null +++ b/sdk/dotnet/Inputs/SloAnomalyConfigNoDataGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloAnomalyConfigNoDataGetArgs : global::Pulumi.ResourceArgs + { + [Input("alertMethods", required: true)] + private InputList? _alertMethods; + + /// + /// Alert methods attached to Anomaly Config + /// + public InputList AlertMethods + { + get => _alertMethods ?? (_alertMethods = new InputList()); + set => _alertMethods = value; + } + + public SloAnomalyConfigNoDataGetArgs() + { + } + public static new SloAnomalyConfigNoDataGetArgs Empty => new SloAnomalyConfigNoDataGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloAttachmentArgs.cs b/sdk/dotnet/Inputs/SloAttachmentArgs.cs index 4e46d47..4c092f9 100644 --- a/sdk/dotnet/Inputs/SloAttachmentArgs.cs +++ b/sdk/dotnet/Inputs/SloAttachmentArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloAttachmentArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloAttachmentGetArgs.cs b/sdk/dotnet/Inputs/SloAttachmentGetArgs.cs index 30f7b66..c6e7f6e 100644 --- a/sdk/dotnet/Inputs/SloAttachmentGetArgs.cs +++ b/sdk/dotnet/Inputs/SloAttachmentGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloAttachmentGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloCompositeArgs.cs b/sdk/dotnet/Inputs/SloCompositeArgs.cs index 4ac21f0..3c11c11 100644 --- a/sdk/dotnet/Inputs/SloCompositeArgs.cs +++ b/sdk/dotnet/Inputs/SloCompositeArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloCompositeArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloCompositeBurnRateConditionArgs.cs b/sdk/dotnet/Inputs/SloCompositeBurnRateConditionArgs.cs index 95676d6..f396ffe 100644 --- a/sdk/dotnet/Inputs/SloCompositeBurnRateConditionArgs.cs +++ b/sdk/dotnet/Inputs/SloCompositeBurnRateConditionArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloCompositeBurnRateConditionArgs : global::Pulumi.ResourceArgs { + /// + /// Type of logical operation + /// [Input("op", required: true)] public Input Op { get; set; } = null!; + /// + /// Burn rate value. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloCompositeBurnRateConditionGetArgs.cs b/sdk/dotnet/Inputs/SloCompositeBurnRateConditionGetArgs.cs index f92d1dc..20960aa 100644 --- a/sdk/dotnet/Inputs/SloCompositeBurnRateConditionGetArgs.cs +++ b/sdk/dotnet/Inputs/SloCompositeBurnRateConditionGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloCompositeBurnRateConditionGetArgs : global::Pulumi.ResourceArgs { + /// + /// Type of logical operation + /// [Input("op", required: true)] public Input Op { get; set; } = null!; + /// + /// Burn rate value. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloCompositeGetArgs.cs b/sdk/dotnet/Inputs/SloCompositeGetArgs.cs index 8efd985..0562990 100644 --- a/sdk/dotnet/Inputs/SloCompositeGetArgs.cs +++ b/sdk/dotnet/Inputs/SloCompositeGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloCompositeGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloIndicatorArgs.cs b/sdk/dotnet/Inputs/SloIndicatorArgs.cs index ec42e70..9ac2a41 100644 --- a/sdk/dotnet/Inputs/SloIndicatorArgs.cs +++ b/sdk/dotnet/Inputs/SloIndicatorArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloIndicatorArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloIndicatorGetArgs.cs b/sdk/dotnet/Inputs/SloIndicatorGetArgs.cs index 64c18fa..c71dae3 100644 --- a/sdk/dotnet/Inputs/SloIndicatorGetArgs.cs +++ b/sdk/dotnet/Inputs/SloIndicatorGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloIndicatorGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloLabelArgs.cs b/sdk/dotnet/Inputs/SloLabelArgs.cs index eadf1af..57503d8 100644 --- a/sdk/dotnet/Inputs/SloLabelArgs.cs +++ b/sdk/dotnet/Inputs/SloLabelArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloLabelArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloLabelGetArgs.cs b/sdk/dotnet/Inputs/SloLabelGetArgs.cs index 3027703..c9bace3 100644 --- a/sdk/dotnet/Inputs/SloLabelGetArgs.cs +++ b/sdk/dotnet/Inputs/SloLabelGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloLabelGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloObjectiveArgs.cs b/sdk/dotnet/Inputs/SloObjectiveArgs.cs index f10504b..33a9992 100644 --- a/sdk/dotnet/Inputs/SloObjectiveArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveArgs : global::Pulumi.ResourceArgs @@ -16,7 +17,7 @@ public sealed class SloObjectiveArgs : global::Pulumi.ResourceArgs private InputList? _countMetrics; /// - /// Compares two time series, indicating the ratio of the count of good values to total values. + /// Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. /// public InputList CountMetrics { diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricArgs.cs index 8a964d0..77d0411 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricArgs.cs @@ -6,25 +6,49 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricArgs : global::Pulumi.ResourceArgs { + [Input("bads")] + private InputList? _bads; + + /// + /// Configuration for bad time series metrics. + /// + public InputList Bads + { + get => _bads ?? (_bads = new InputList()); + set => _bads = value; + } + [Input("goods")] private InputList? _goods; + + /// + /// Configuration for good time series metrics. + /// public InputList Goods { get => _goods ?? (_goods = new InputList()); set => _goods = value; } + /// + /// Should the metrics be incrementing or not + /// [Input("incremental", required: true)] public Input Incremental { get; set; } = null!; - [Input("totals")] + [Input("totals", required: true)] private InputList? _totals; + + /// + /// Configuration for metric source + /// public InputList Totals { get => _totals ?? (_totals = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAmazonPrometheusArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAmazonPrometheusArgs.cs new file mode 100644 index 0000000..f54028b --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAmazonPrometheusArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAmazonPrometheusArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("promql", required: true)] + public Input Promql { get; set; } = null!; + + public SloObjectiveCountMetricBadAmazonPrometheusArgs() + { + } + public static new SloObjectiveCountMetricBadAmazonPrometheusArgs Empty => new SloObjectiveCountMetricBadAmazonPrometheusArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAmazonPrometheusGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAmazonPrometheusGetArgs.cs new file mode 100644 index 0000000..513e3b0 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAmazonPrometheusGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAmazonPrometheusGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("promql", required: true)] + public Input Promql { get; set; } = null!; + + public SloObjectiveCountMetricBadAmazonPrometheusGetArgs() + { + } + public static new SloObjectiveCountMetricBadAmazonPrometheusGetArgs Empty => new SloObjectiveCountMetricBadAmazonPrometheusGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAppdynamicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAppdynamicArgs.cs new file mode 100644 index 0000000..9f1ba27 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAppdynamicArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAppdynamicArgs : global::Pulumi.ResourceArgs + { + /// + /// Name of the added application + /// + [Input("applicationName", required: true)] + public Input ApplicationName { get; set; } = null!; + + /// + /// Path to the metrics + /// + [Input("metricPath", required: true)] + public Input MetricPath { get; set; } = null!; + + public SloObjectiveCountMetricBadAppdynamicArgs() + { + } + public static new SloObjectiveCountMetricBadAppdynamicArgs Empty => new SloObjectiveCountMetricBadAppdynamicArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAppdynamicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAppdynamicGetArgs.cs new file mode 100644 index 0000000..9170eb8 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAppdynamicGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAppdynamicGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Name of the added application + /// + [Input("applicationName", required: true)] + public Input ApplicationName { get; set; } = null!; + + /// + /// Path to the metrics + /// + [Input("metricPath", required: true)] + public Input MetricPath { get; set; } = null!; + + public SloObjectiveCountMetricBadAppdynamicGetArgs() + { + } + public static new SloObjectiveCountMetricBadAppdynamicGetArgs Empty => new SloObjectiveCountMetricBadAppdynamicGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadArgs.cs new file mode 100644 index 0000000..6adc58f --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadArgs.cs @@ -0,0 +1,309 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadArgs : global::Pulumi.ResourceArgs + { + [Input("amazonPrometheuses")] + private InputList? _amazonPrometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// + public InputList AmazonPrometheuses + { + get => _amazonPrometheuses ?? (_amazonPrometheuses = new InputList()); + set => _amazonPrometheuses = value; + } + + [Input("appdynamics")] + private InputList? _appdynamics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// + public InputList Appdynamics + { + get => _appdynamics ?? (_appdynamics = new InputList()); + set => _appdynamics = value; + } + + [Input("azureMonitors")] + private InputList? _azureMonitors; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public InputList AzureMonitors + { + get => _azureMonitors ?? (_azureMonitors = new InputList()); + set => _azureMonitors = value; + } + + [Input("bigqueries")] + private InputList? _bigqueries; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// + public InputList Bigqueries + { + get => _bigqueries ?? (_bigqueries = new InputList()); + set => _bigqueries = value; + } + + [Input("cloudwatches")] + private InputList? _cloudwatches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// + public InputList Cloudwatches + { + get => _cloudwatches ?? (_cloudwatches = new InputList()); + set => _cloudwatches = value; + } + + [Input("datadogs")] + private InputList? _datadogs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// + public InputList Datadogs + { + get => _datadogs ?? (_datadogs = new InputList()); + set => _datadogs = value; + } + + [Input("dynatraces")] + private InputList? _dynatraces; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// + public InputList Dynatraces + { + get => _dynatraces ?? (_dynatraces = new InputList()); + set => _dynatraces = value; + } + + [Input("elasticsearches")] + private InputList? _elasticsearches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// + public InputList Elasticsearches + { + get => _elasticsearches ?? (_elasticsearches = new InputList()); + set => _elasticsearches = value; + } + + [Input("gcms")] + private InputList? _gcms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// + public InputList Gcms + { + get => _gcms ?? (_gcms = new InputList()); + set => _gcms = value; + } + + [Input("grafanaLokis")] + private InputList? _grafanaLokis; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// + public InputList GrafanaLokis + { + get => _grafanaLokis ?? (_grafanaLokis = new InputList()); + set => _grafanaLokis = value; + } + + [Input("graphites")] + private InputList? _graphites; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// + public InputList Graphites + { + get => _graphites ?? (_graphites = new InputList()); + set => _graphites = value; + } + + [Input("honeycombs")] + private InputList? _honeycombs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public InputList Honeycombs + { + get => _honeycombs ?? (_honeycombs = new InputList()); + set => _honeycombs = value; + } + + [Input("influxdbs")] + private InputList? _influxdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// + public InputList Influxdbs + { + get => _influxdbs ?? (_influxdbs = new InputList()); + set => _influxdbs = value; + } + + [Input("instanas")] + private InputList? _instanas; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// + public InputList Instanas + { + get => _instanas ?? (_instanas = new InputList()); + set => _instanas = value; + } + + [Input("lightsteps")] + private InputList? _lightsteps; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// + public InputList Lightsteps + { + get => _lightsteps ?? (_lightsteps = new InputList()); + set => _lightsteps = value; + } + + [Input("newrelics")] + private InputList? _newrelics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// + public InputList Newrelics + { + get => _newrelics ?? (_newrelics = new InputList()); + set => _newrelics = value; + } + + [Input("opentsdbs")] + private InputList? _opentsdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// + public InputList Opentsdbs + { + get => _opentsdbs ?? (_opentsdbs = new InputList()); + set => _opentsdbs = value; + } + + [Input("pingdoms")] + private InputList? _pingdoms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// + public InputList Pingdoms + { + get => _pingdoms ?? (_pingdoms = new InputList()); + set => _pingdoms = value; + } + + [Input("prometheuses")] + private InputList? _prometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// + public InputList Prometheuses + { + get => _prometheuses ?? (_prometheuses = new InputList()); + set => _prometheuses = value; + } + + [Input("redshifts")] + private InputList? _redshifts; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// + public InputList Redshifts + { + get => _redshifts ?? (_redshifts = new InputList()); + set => _redshifts = value; + } + + [Input("splunkObservabilities")] + private InputList? _splunkObservabilities; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// + public InputList SplunkObservabilities + { + get => _splunkObservabilities ?? (_splunkObservabilities = new InputList()); + set => _splunkObservabilities = value; + } + + [Input("splunks")] + private InputList? _splunks; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// + public InputList Splunks + { + get => _splunks ?? (_splunks = new InputList()); + set => _splunks = value; + } + + [Input("sumologics")] + private InputList? _sumologics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// + public InputList Sumologics + { + get => _sumologics ?? (_sumologics = new InputList()); + set => _sumologics = value; + } + + [Input("thousandeyes")] + private InputList? _thousandeyes; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// + public InputList Thousandeyes + { + get => _thousandeyes ?? (_thousandeyes = new InputList()); + set => _thousandeyes = value; + } + + public SloObjectiveCountMetricBadArgs() + { + } + public static new SloObjectiveCountMetricBadArgs Empty => new SloObjectiveCountMetricBadArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorArgs.cs new file mode 100644 index 0000000..b09dd5a --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorArgs.cs @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAzureMonitorArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation")] + public Input? Aggregation { get; set; } + + /// + /// Specifies source: 'metrics' or 'logs' + /// + [Input("dataType", required: true)] + public Input DataType { get; set; } = null!; + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + [Input("kqlQuery")] + public Input? KqlQuery { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric [Optional for metrics] + /// + [Input("metricNamespace")] + public Input? MetricNamespace { get; set; } + + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + [Input("workspaces")] + private InputList? _workspaces; + + /// + /// Log analytics workspace [Required for logs] + /// + public InputList Workspaces + { + get => _workspaces ?? (_workspaces = new InputList()); + set => _workspaces = value; + } + + public SloObjectiveCountMetricBadAzureMonitorArgs() + { + } + public static new SloObjectiveCountMetricBadAzureMonitorArgs Empty => new SloObjectiveCountMetricBadAzureMonitorArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorDimensionArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorDimensionArgs.cs new file mode 100644 index 0000000..6c89a01 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorDimensionArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAzureMonitorDimensionArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveCountMetricBadAzureMonitorDimensionArgs() + { + } + public static new SloObjectiveCountMetricBadAzureMonitorDimensionArgs Empty => new SloObjectiveCountMetricBadAzureMonitorDimensionArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorDimensionGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorDimensionGetArgs.cs new file mode 100644 index 0000000..f0290d0 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorDimensionGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAzureMonitorDimensionGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveCountMetricBadAzureMonitorDimensionGetArgs() + { + } + public static new SloObjectiveCountMetricBadAzureMonitorDimensionGetArgs Empty => new SloObjectiveCountMetricBadAzureMonitorDimensionGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorGetArgs.cs new file mode 100644 index 0000000..de8f8fd --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorGetArgs.cs @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAzureMonitorGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation")] + public Input? Aggregation { get; set; } + + /// + /// Specifies source: 'metrics' or 'logs' + /// + [Input("dataType", required: true)] + public Input DataType { get; set; } = null!; + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + [Input("kqlQuery")] + public Input? KqlQuery { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric [Optional for metrics] + /// + [Input("metricNamespace")] + public Input? MetricNamespace { get; set; } + + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + [Input("workspaces")] + private InputList? _workspaces; + + /// + /// Log analytics workspace [Required for logs] + /// + public InputList Workspaces + { + get => _workspaces ?? (_workspaces = new InputList()); + set => _workspaces = value; + } + + public SloObjectiveCountMetricBadAzureMonitorGetArgs() + { + } + public static new SloObjectiveCountMetricBadAzureMonitorGetArgs Empty => new SloObjectiveCountMetricBadAzureMonitorGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs.cs new file mode 100644 index 0000000..c990f9d --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs : global::Pulumi.ResourceArgs + { + /// + /// Resource group of the workspace + /// + [Input("resourceGroup", required: true)] + public Input ResourceGroup { get; set; } = null!; + + /// + /// Subscription ID of the workspace + /// + [Input("subscriptionId", required: true)] + public Input SubscriptionId { get; set; } = null!; + + /// + /// ID of the workspace + /// + [Input("workspaceId", required: true)] + public Input WorkspaceId { get; set; } = null!; + + public SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs() + { + } + public static new SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs Empty => new SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorWorkspaceGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorWorkspaceGetArgs.cs new file mode 100644 index 0000000..bcc41d4 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadAzureMonitorWorkspaceGetArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadAzureMonitorWorkspaceGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Resource group of the workspace + /// + [Input("resourceGroup", required: true)] + public Input ResourceGroup { get; set; } = null!; + + /// + /// Subscription ID of the workspace + /// + [Input("subscriptionId", required: true)] + public Input SubscriptionId { get; set; } = null!; + + /// + /// ID of the workspace + /// + [Input("workspaceId", required: true)] + public Input WorkspaceId { get; set; } = null!; + + public SloObjectiveCountMetricBadAzureMonitorWorkspaceGetArgs() + { + } + public static new SloObjectiveCountMetricBadAzureMonitorWorkspaceGetArgs Empty => new SloObjectiveCountMetricBadAzureMonitorWorkspaceGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadBigqueryArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadBigqueryArgs.cs new file mode 100644 index 0000000..e75415d --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadBigqueryArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadBigqueryArgs : global::Pulumi.ResourceArgs + { + /// + /// Location of you BigQuery + /// + [Input("location", required: true)] + public Input Location { get; set; } = null!; + + /// + /// Project ID + /// + [Input("projectId", required: true)] + public Input ProjectId { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadBigqueryArgs() + { + } + public static new SloObjectiveCountMetricBadBigqueryArgs Empty => new SloObjectiveCountMetricBadBigqueryArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadBigqueryGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadBigqueryGetArgs.cs new file mode 100644 index 0000000..3d655a5 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadBigqueryGetArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadBigqueryGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Location of you BigQuery + /// + [Input("location", required: true)] + public Input Location { get; set; } = null!; + + /// + /// Project ID + /// + [Input("projectId", required: true)] + public Input ProjectId { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadBigqueryGetArgs() + { + } + public static new SloObjectiveCountMetricBadBigqueryGetArgs Empty => new SloObjectiveCountMetricBadBigqueryGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchArgs.cs new file mode 100644 index 0000000..6dcb14d --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchArgs.cs @@ -0,0 +1,75 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadCloudwatchArgs : global::Pulumi.ResourceArgs + { + /// + /// AccountID used with cross-account observability feature + /// + [Input("accountId")] + public Input? AccountId { get; set; } + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// JSON query + /// + [Input("json")] + public Input? Json { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric + /// + [Input("namespace")] + public Input? Namespace { get; set; } + + /// + /// Region of the CloudWatch instance + /// + [Input("region", required: true)] + public Input Region { get; set; } = null!; + + /// + /// SQL query + /// + [Input("sql")] + public Input? Sql { get; set; } + + /// + /// Metric data aggregations + /// + [Input("stat")] + public Input? Stat { get; set; } + + public SloObjectiveCountMetricBadCloudwatchArgs() + { + } + public static new SloObjectiveCountMetricBadCloudwatchArgs Empty => new SloObjectiveCountMetricBadCloudwatchArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchDimensionArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchDimensionArgs.cs new file mode 100644 index 0000000..00adf97 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchDimensionArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadCloudwatchDimensionArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveCountMetricBadCloudwatchDimensionArgs() + { + } + public static new SloObjectiveCountMetricBadCloudwatchDimensionArgs Empty => new SloObjectiveCountMetricBadCloudwatchDimensionArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchDimensionGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchDimensionGetArgs.cs new file mode 100644 index 0000000..4544a8c --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchDimensionGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadCloudwatchDimensionGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveCountMetricBadCloudwatchDimensionGetArgs() + { + } + public static new SloObjectiveCountMetricBadCloudwatchDimensionGetArgs Empty => new SloObjectiveCountMetricBadCloudwatchDimensionGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchGetArgs.cs new file mode 100644 index 0000000..138ee68 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadCloudwatchGetArgs.cs @@ -0,0 +1,75 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadCloudwatchGetArgs : global::Pulumi.ResourceArgs + { + /// + /// AccountID used with cross-account observability feature + /// + [Input("accountId")] + public Input? AccountId { get; set; } + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// JSON query + /// + [Input("json")] + public Input? Json { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric + /// + [Input("namespace")] + public Input? Namespace { get; set; } + + /// + /// Region of the CloudWatch instance + /// + [Input("region", required: true)] + public Input Region { get; set; } = null!; + + /// + /// SQL query + /// + [Input("sql")] + public Input? Sql { get; set; } + + /// + /// Metric data aggregations + /// + [Input("stat")] + public Input? Stat { get; set; } + + public SloObjectiveCountMetricBadCloudwatchGetArgs() + { + } + public static new SloObjectiveCountMetricBadCloudwatchGetArgs Empty => new SloObjectiveCountMetricBadCloudwatchGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDatadogArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDatadogArgs.cs new file mode 100644 index 0000000..34836ce --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDatadogArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadDatadogArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadDatadogArgs() + { + } + public static new SloObjectiveCountMetricBadDatadogArgs Empty => new SloObjectiveCountMetricBadDatadogArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDatadogGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDatadogGetArgs.cs new file mode 100644 index 0000000..366a8f6 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDatadogGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadDatadogGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadDatadogGetArgs() + { + } + public static new SloObjectiveCountMetricBadDatadogGetArgs Empty => new SloObjectiveCountMetricBadDatadogGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDynatraceArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDynatraceArgs.cs new file mode 100644 index 0000000..abf2907 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDynatraceArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadDynatraceArgs : global::Pulumi.ResourceArgs + { + /// + /// Selector for the metrics + /// + [Input("metricSelector", required: true)] + public Input MetricSelector { get; set; } = null!; + + public SloObjectiveCountMetricBadDynatraceArgs() + { + } + public static new SloObjectiveCountMetricBadDynatraceArgs Empty => new SloObjectiveCountMetricBadDynatraceArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDynatraceGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDynatraceGetArgs.cs new file mode 100644 index 0000000..81f17ac --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadDynatraceGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadDynatraceGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Selector for the metrics + /// + [Input("metricSelector", required: true)] + public Input MetricSelector { get; set; } = null!; + + public SloObjectiveCountMetricBadDynatraceGetArgs() + { + } + public static new SloObjectiveCountMetricBadDynatraceGetArgs Empty => new SloObjectiveCountMetricBadDynatraceGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadElasticsearchArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadElasticsearchArgs.cs new file mode 100644 index 0000000..fc3ba5a --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadElasticsearchArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadElasticsearchArgs : global::Pulumi.ResourceArgs + { + /// + /// Index of metrics we want to query + /// + [Input("index", required: true)] + public Input Index { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadElasticsearchArgs() + { + } + public static new SloObjectiveCountMetricBadElasticsearchArgs Empty => new SloObjectiveCountMetricBadElasticsearchArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadElasticsearchGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadElasticsearchGetArgs.cs new file mode 100644 index 0000000..a617090 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadElasticsearchGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadElasticsearchGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Index of metrics we want to query + /// + [Input("index", required: true)] + public Input Index { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadElasticsearchGetArgs() + { + } + public static new SloObjectiveCountMetricBadElasticsearchGetArgs Empty => new SloObjectiveCountMetricBadElasticsearchGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGcmArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGcmArgs.cs new file mode 100644 index 0000000..2d96ee7 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGcmArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadGcmArgs : global::Pulumi.ResourceArgs + { + /// + /// Project ID + /// + [Input("projectId", required: true)] + public Input ProjectId { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadGcmArgs() + { + } + public static new SloObjectiveCountMetricBadGcmArgs Empty => new SloObjectiveCountMetricBadGcmArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGcmGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGcmGetArgs.cs new file mode 100644 index 0000000..f5f9b13 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGcmGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadGcmGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Project ID + /// + [Input("projectId", required: true)] + public Input ProjectId { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadGcmGetArgs() + { + } + public static new SloObjectiveCountMetricBadGcmGetArgs Empty => new SloObjectiveCountMetricBadGcmGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGetArgs.cs new file mode 100644 index 0000000..1b276c7 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGetArgs.cs @@ -0,0 +1,309 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadGetArgs : global::Pulumi.ResourceArgs + { + [Input("amazonPrometheuses")] + private InputList? _amazonPrometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// + public InputList AmazonPrometheuses + { + get => _amazonPrometheuses ?? (_amazonPrometheuses = new InputList()); + set => _amazonPrometheuses = value; + } + + [Input("appdynamics")] + private InputList? _appdynamics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// + public InputList Appdynamics + { + get => _appdynamics ?? (_appdynamics = new InputList()); + set => _appdynamics = value; + } + + [Input("azureMonitors")] + private InputList? _azureMonitors; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public InputList AzureMonitors + { + get => _azureMonitors ?? (_azureMonitors = new InputList()); + set => _azureMonitors = value; + } + + [Input("bigqueries")] + private InputList? _bigqueries; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// + public InputList Bigqueries + { + get => _bigqueries ?? (_bigqueries = new InputList()); + set => _bigqueries = value; + } + + [Input("cloudwatches")] + private InputList? _cloudwatches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// + public InputList Cloudwatches + { + get => _cloudwatches ?? (_cloudwatches = new InputList()); + set => _cloudwatches = value; + } + + [Input("datadogs")] + private InputList? _datadogs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// + public InputList Datadogs + { + get => _datadogs ?? (_datadogs = new InputList()); + set => _datadogs = value; + } + + [Input("dynatraces")] + private InputList? _dynatraces; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// + public InputList Dynatraces + { + get => _dynatraces ?? (_dynatraces = new InputList()); + set => _dynatraces = value; + } + + [Input("elasticsearches")] + private InputList? _elasticsearches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// + public InputList Elasticsearches + { + get => _elasticsearches ?? (_elasticsearches = new InputList()); + set => _elasticsearches = value; + } + + [Input("gcms")] + private InputList? _gcms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// + public InputList Gcms + { + get => _gcms ?? (_gcms = new InputList()); + set => _gcms = value; + } + + [Input("grafanaLokis")] + private InputList? _grafanaLokis; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// + public InputList GrafanaLokis + { + get => _grafanaLokis ?? (_grafanaLokis = new InputList()); + set => _grafanaLokis = value; + } + + [Input("graphites")] + private InputList? _graphites; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// + public InputList Graphites + { + get => _graphites ?? (_graphites = new InputList()); + set => _graphites = value; + } + + [Input("honeycombs")] + private InputList? _honeycombs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public InputList Honeycombs + { + get => _honeycombs ?? (_honeycombs = new InputList()); + set => _honeycombs = value; + } + + [Input("influxdbs")] + private InputList? _influxdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// + public InputList Influxdbs + { + get => _influxdbs ?? (_influxdbs = new InputList()); + set => _influxdbs = value; + } + + [Input("instanas")] + private InputList? _instanas; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// + public InputList Instanas + { + get => _instanas ?? (_instanas = new InputList()); + set => _instanas = value; + } + + [Input("lightsteps")] + private InputList? _lightsteps; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// + public InputList Lightsteps + { + get => _lightsteps ?? (_lightsteps = new InputList()); + set => _lightsteps = value; + } + + [Input("newrelics")] + private InputList? _newrelics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// + public InputList Newrelics + { + get => _newrelics ?? (_newrelics = new InputList()); + set => _newrelics = value; + } + + [Input("opentsdbs")] + private InputList? _opentsdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// + public InputList Opentsdbs + { + get => _opentsdbs ?? (_opentsdbs = new InputList()); + set => _opentsdbs = value; + } + + [Input("pingdoms")] + private InputList? _pingdoms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// + public InputList Pingdoms + { + get => _pingdoms ?? (_pingdoms = new InputList()); + set => _pingdoms = value; + } + + [Input("prometheuses")] + private InputList? _prometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// + public InputList Prometheuses + { + get => _prometheuses ?? (_prometheuses = new InputList()); + set => _prometheuses = value; + } + + [Input("redshifts")] + private InputList? _redshifts; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// + public InputList Redshifts + { + get => _redshifts ?? (_redshifts = new InputList()); + set => _redshifts = value; + } + + [Input("splunkObservabilities")] + private InputList? _splunkObservabilities; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// + public InputList SplunkObservabilities + { + get => _splunkObservabilities ?? (_splunkObservabilities = new InputList()); + set => _splunkObservabilities = value; + } + + [Input("splunks")] + private InputList? _splunks; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// + public InputList Splunks + { + get => _splunks ?? (_splunks = new InputList()); + set => _splunks = value; + } + + [Input("sumologics")] + private InputList? _sumologics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// + public InputList Sumologics + { + get => _sumologics ?? (_sumologics = new InputList()); + set => _sumologics = value; + } + + [Input("thousandeyes")] + private InputList? _thousandeyes; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// + public InputList Thousandeyes + { + get => _thousandeyes ?? (_thousandeyes = new InputList()); + set => _thousandeyes = value; + } + + public SloObjectiveCountMetricBadGetArgs() + { + } + public static new SloObjectiveCountMetricBadGetArgs Empty => new SloObjectiveCountMetricBadGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGrafanaLokiArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGrafanaLokiArgs.cs new file mode 100644 index 0000000..3085faa --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGrafanaLokiArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadGrafanaLokiArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the logs + /// + [Input("logql", required: true)] + public Input Logql { get; set; } = null!; + + public SloObjectiveCountMetricBadGrafanaLokiArgs() + { + } + public static new SloObjectiveCountMetricBadGrafanaLokiArgs Empty => new SloObjectiveCountMetricBadGrafanaLokiArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGrafanaLokiGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGrafanaLokiGetArgs.cs new file mode 100644 index 0000000..7b6995d --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGrafanaLokiGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadGrafanaLokiGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the logs + /// + [Input("logql", required: true)] + public Input Logql { get; set; } = null!; + + public SloObjectiveCountMetricBadGrafanaLokiGetArgs() + { + } + public static new SloObjectiveCountMetricBadGrafanaLokiGetArgs Empty => new SloObjectiveCountMetricBadGrafanaLokiGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGraphiteArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGraphiteArgs.cs new file mode 100644 index 0000000..54dc118 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGraphiteArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadGraphiteArgs : global::Pulumi.ResourceArgs + { + /// + /// Path to the metrics + /// + [Input("metricPath", required: true)] + public Input MetricPath { get; set; } = null!; + + public SloObjectiveCountMetricBadGraphiteArgs() + { + } + public static new SloObjectiveCountMetricBadGraphiteArgs Empty => new SloObjectiveCountMetricBadGraphiteArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGraphiteGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGraphiteGetArgs.cs new file mode 100644 index 0000000..60e48fb --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadGraphiteGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadGraphiteGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Path to the metrics + /// + [Input("metricPath", required: true)] + public Input MetricPath { get; set; } = null!; + + public SloObjectiveCountMetricBadGraphiteGetArgs() + { + } + public static new SloObjectiveCountMetricBadGraphiteGetArgs Empty => new SloObjectiveCountMetricBadGraphiteGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadHoneycombArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadHoneycombArgs.cs new file mode 100644 index 0000000..a282ad5 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadHoneycombArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadHoneycombArgs : global::Pulumi.ResourceArgs + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + [Input("attribute")] + public Input? Attribute { get; set; } + + /// + /// Calculation type + /// + [Input("calculation", required: true)] + public Input Calculation { get; set; } = null!; + + public SloObjectiveCountMetricBadHoneycombArgs() + { + } + public static new SloObjectiveCountMetricBadHoneycombArgs Empty => new SloObjectiveCountMetricBadHoneycombArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadHoneycombGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadHoneycombGetArgs.cs new file mode 100644 index 0000000..3ef990b --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadHoneycombGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadHoneycombGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + [Input("attribute")] + public Input? Attribute { get; set; } + + /// + /// Calculation type + /// + [Input("calculation", required: true)] + public Input Calculation { get; set; } = null!; + + public SloObjectiveCountMetricBadHoneycombGetArgs() + { + } + public static new SloObjectiveCountMetricBadHoneycombGetArgs Empty => new SloObjectiveCountMetricBadHoneycombGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInfluxdbArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInfluxdbArgs.cs new file mode 100644 index 0000000..c78c052 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInfluxdbArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInfluxdbArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadInfluxdbArgs() + { + } + public static new SloObjectiveCountMetricBadInfluxdbArgs Empty => new SloObjectiveCountMetricBadInfluxdbArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInfluxdbGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInfluxdbGetArgs.cs new file mode 100644 index 0000000..5ad3e3a --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInfluxdbGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInfluxdbGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadInfluxdbGetArgs() + { + } + public static new SloObjectiveCountMetricBadInfluxdbGetArgs Empty => new SloObjectiveCountMetricBadInfluxdbGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationArgs.cs new file mode 100644 index 0000000..615d1da --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationArgs.cs @@ -0,0 +1,63 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInstanaApplicationArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation", required: true)] + public Input Aggregation { get; set; } = null!; + + /// + /// API query user passes in a JSON format + /// + [Input("apiQuery", required: true)] + public Input ApiQuery { get; set; } = null!; + + [Input("groupBies", required: true)] + private InputList? _groupBies; + + /// + /// Group by method + /// + public InputList GroupBies + { + get => _groupBies ?? (_groupBies = new InputList()); + set => _groupBies = value; + } + + /// + /// Include internal + /// + [Input("includeInternal")] + public Input? IncludeInternal { get; set; } + + /// + /// Include synthetic + /// + [Input("includeSynthetic")] + public Input? IncludeSynthetic { get; set; } + + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// + [Input("metricId", required: true)] + public Input MetricId { get; set; } = null!; + + public SloObjectiveCountMetricBadInstanaApplicationArgs() + { + } + public static new SloObjectiveCountMetricBadInstanaApplicationArgs Empty => new SloObjectiveCountMetricBadInstanaApplicationArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGetArgs.cs new file mode 100644 index 0000000..b5349c7 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGetArgs.cs @@ -0,0 +1,63 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInstanaApplicationGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation", required: true)] + public Input Aggregation { get; set; } = null!; + + /// + /// API query user passes in a JSON format + /// + [Input("apiQuery", required: true)] + public Input ApiQuery { get; set; } = null!; + + [Input("groupBies", required: true)] + private InputList? _groupBies; + + /// + /// Group by method + /// + public InputList GroupBies + { + get => _groupBies ?? (_groupBies = new InputList()); + set => _groupBies = value; + } + + /// + /// Include internal + /// + [Input("includeInternal")] + public Input? IncludeInternal { get; set; } + + /// + /// Include synthetic + /// + [Input("includeSynthetic")] + public Input? IncludeSynthetic { get; set; } + + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// + [Input("metricId", required: true)] + public Input MetricId { get; set; } = null!; + + public SloObjectiveCountMetricBadInstanaApplicationGetArgs() + { + } + public static new SloObjectiveCountMetricBadInstanaApplicationGetArgs Empty => new SloObjectiveCountMetricBadInstanaApplicationGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGroupByArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGroupByArgs.cs new file mode 100644 index 0000000..0c6704d --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGroupByArgs.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInstanaApplicationGroupByArgs : global::Pulumi.ResourceArgs + { + /// + /// Group by tag + /// + [Input("tag", required: true)] + public Input Tag { get; set; } = null!; + + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// + [Input("tagEntity", required: true)] + public Input TagEntity { get; set; } = null!; + + [Input("tagSecondLevelKey")] + public Input? TagSecondLevelKey { get; set; } + + public SloObjectiveCountMetricBadInstanaApplicationGroupByArgs() + { + } + public static new SloObjectiveCountMetricBadInstanaApplicationGroupByArgs Empty => new SloObjectiveCountMetricBadInstanaApplicationGroupByArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGroupByGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGroupByGetArgs.cs new file mode 100644 index 0000000..246084a --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaApplicationGroupByGetArgs.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInstanaApplicationGroupByGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Group by tag + /// + [Input("tag", required: true)] + public Input Tag { get; set; } = null!; + + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// + [Input("tagEntity", required: true)] + public Input TagEntity { get; set; } = null!; + + [Input("tagSecondLevelKey")] + public Input? TagSecondLevelKey { get; set; } + + public SloObjectiveCountMetricBadInstanaApplicationGroupByGetArgs() + { + } + public static new SloObjectiveCountMetricBadInstanaApplicationGroupByGetArgs Empty => new SloObjectiveCountMetricBadInstanaApplicationGroupByGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaArgs.cs new file mode 100644 index 0000000..47fd7b1 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaArgs.cs @@ -0,0 +1,51 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInstanaArgs : global::Pulumi.ResourceArgs + { + [Input("applications")] + private InputList? _applications; + + /// + /// Infrastructure metric type + /// + public InputList Applications + { + get => _applications ?? (_applications = new InputList()); + set => _applications = value; + } + + [Input("infrastructures")] + private InputList? _infrastructures; + + /// + /// Infrastructure metric type + /// + public InputList Infrastructures + { + get => _infrastructures ?? (_infrastructures = new InputList()); + set => _infrastructures = value; + } + + /// + /// Instana metric type 'application' or 'infrastructure' + /// + [Input("metricType", required: true)] + public Input MetricType { get; set; } = null!; + + public SloObjectiveCountMetricBadInstanaArgs() + { + } + public static new SloObjectiveCountMetricBadInstanaArgs Empty => new SloObjectiveCountMetricBadInstanaArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaGetArgs.cs new file mode 100644 index 0000000..52dd03e --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaGetArgs.cs @@ -0,0 +1,51 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInstanaGetArgs : global::Pulumi.ResourceArgs + { + [Input("applications")] + private InputList? _applications; + + /// + /// Infrastructure metric type + /// + public InputList Applications + { + get => _applications ?? (_applications = new InputList()); + set => _applications = value; + } + + [Input("infrastructures")] + private InputList? _infrastructures; + + /// + /// Infrastructure metric type + /// + public InputList Infrastructures + { + get => _infrastructures ?? (_infrastructures = new InputList()); + set => _infrastructures = value; + } + + /// + /// Instana metric type 'application' or 'infrastructure' + /// + [Input("metricType", required: true)] + public Input MetricType { get; set; } = null!; + + public SloObjectiveCountMetricBadInstanaGetArgs() + { + } + public static new SloObjectiveCountMetricBadInstanaGetArgs Empty => new SloObjectiveCountMetricBadInstanaGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaInfrastructureArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaInfrastructureArgs.cs new file mode 100644 index 0000000..1caf4ab --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaInfrastructureArgs.cs @@ -0,0 +1,51 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInstanaInfrastructureArgs : global::Pulumi.ResourceArgs + { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// + [Input("metricId", required: true)] + public Input MetricId { get; set; } = null!; + + /// + /// Metric retrieval method 'query' or 'snapshot' + /// + [Input("metricRetrievalMethod", required: true)] + public Input MetricRetrievalMethod { get; set; } = null!; + + /// + /// Plugin ID + /// + [Input("pluginId", required: true)] + public Input PluginId { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query")] + public Input? Query { get; set; } + + /// + /// Snapshot ID + /// + [Input("snapshotId")] + public Input? SnapshotId { get; set; } + + public SloObjectiveCountMetricBadInstanaInfrastructureArgs() + { + } + public static new SloObjectiveCountMetricBadInstanaInfrastructureArgs Empty => new SloObjectiveCountMetricBadInstanaInfrastructureArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaInfrastructureGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaInfrastructureGetArgs.cs new file mode 100644 index 0000000..21f2609 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadInstanaInfrastructureGetArgs.cs @@ -0,0 +1,51 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadInstanaInfrastructureGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// + [Input("metricId", required: true)] + public Input MetricId { get; set; } = null!; + + /// + /// Metric retrieval method 'query' or 'snapshot' + /// + [Input("metricRetrievalMethod", required: true)] + public Input MetricRetrievalMethod { get; set; } = null!; + + /// + /// Plugin ID + /// + [Input("pluginId", required: true)] + public Input PluginId { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query")] + public Input? Query { get; set; } + + /// + /// Snapshot ID + /// + [Input("snapshotId")] + public Input? SnapshotId { get; set; } + + public SloObjectiveCountMetricBadInstanaInfrastructureGetArgs() + { + } + public static new SloObjectiveCountMetricBadInstanaInfrastructureGetArgs Empty => new SloObjectiveCountMetricBadInstanaInfrastructureGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadLightstepArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadLightstepArgs.cs new file mode 100644 index 0000000..a0deabb --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadLightstepArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadLightstepArgs : global::Pulumi.ResourceArgs + { + /// + /// Optional value to filter by percentiles + /// + [Input("percentile")] + public Input? Percentile { get; set; } + + /// + /// ID of the metrics stream + /// + [Input("streamId")] + public Input? StreamId { get; set; } + + /// + /// Type of data to filter by + /// + [Input("typeOfData", required: true)] + public Input TypeOfData { get; set; } = null!; + + /// + /// UQL query + /// + [Input("uql")] + public Input? Uql { get; set; } + + public SloObjectiveCountMetricBadLightstepArgs() + { + } + public static new SloObjectiveCountMetricBadLightstepArgs Empty => new SloObjectiveCountMetricBadLightstepArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadLightstepGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadLightstepGetArgs.cs new file mode 100644 index 0000000..0677206 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadLightstepGetArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadLightstepGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Optional value to filter by percentiles + /// + [Input("percentile")] + public Input? Percentile { get; set; } + + /// + /// ID of the metrics stream + /// + [Input("streamId")] + public Input? StreamId { get; set; } + + /// + /// Type of data to filter by + /// + [Input("typeOfData", required: true)] + public Input TypeOfData { get; set; } = null!; + + /// + /// UQL query + /// + [Input("uql")] + public Input? Uql { get; set; } + + public SloObjectiveCountMetricBadLightstepGetArgs() + { + } + public static new SloObjectiveCountMetricBadLightstepGetArgs Empty => new SloObjectiveCountMetricBadLightstepGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadNewrelicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadNewrelicArgs.cs new file mode 100644 index 0000000..8e6d2a0 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadNewrelicArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadNewrelicArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("nrql", required: true)] + public Input Nrql { get; set; } = null!; + + public SloObjectiveCountMetricBadNewrelicArgs() + { + } + public static new SloObjectiveCountMetricBadNewrelicArgs Empty => new SloObjectiveCountMetricBadNewrelicArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadNewrelicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadNewrelicGetArgs.cs new file mode 100644 index 0000000..a3bc901 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadNewrelicGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadNewrelicGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("nrql", required: true)] + public Input Nrql { get; set; } = null!; + + public SloObjectiveCountMetricBadNewrelicGetArgs() + { + } + public static new SloObjectiveCountMetricBadNewrelicGetArgs Empty => new SloObjectiveCountMetricBadNewrelicGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadOpentsdbArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadOpentsdbArgs.cs new file mode 100644 index 0000000..78313eb --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadOpentsdbArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadOpentsdbArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadOpentsdbArgs() + { + } + public static new SloObjectiveCountMetricBadOpentsdbArgs Empty => new SloObjectiveCountMetricBadOpentsdbArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadOpentsdbGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadOpentsdbGetArgs.cs new file mode 100644 index 0000000..8b9a564 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadOpentsdbGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadOpentsdbGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadOpentsdbGetArgs() + { + } + public static new SloObjectiveCountMetricBadOpentsdbGetArgs Empty => new SloObjectiveCountMetricBadOpentsdbGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPingdomArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPingdomArgs.cs new file mode 100644 index 0000000..9b5641f --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPingdomArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadPingdomArgs : global::Pulumi.ResourceArgs + { + /// + /// Pingdom uptime or transaction check's ID + /// + [Input("checkId", required: true)] + public Input CheckId { get; set; } = null!; + + /// + /// Pingdom check type - uptime or transaction + /// + [Input("checkType")] + public Input? CheckType { get; set; } + + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// + [Input("status")] + public Input? Status { get; set; } + + public SloObjectiveCountMetricBadPingdomArgs() + { + } + public static new SloObjectiveCountMetricBadPingdomArgs Empty => new SloObjectiveCountMetricBadPingdomArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPingdomGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPingdomGetArgs.cs new file mode 100644 index 0000000..ef884b3 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPingdomGetArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadPingdomGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Pingdom uptime or transaction check's ID + /// + [Input("checkId", required: true)] + public Input CheckId { get; set; } = null!; + + /// + /// Pingdom check type - uptime or transaction + /// + [Input("checkType")] + public Input? CheckType { get; set; } + + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// + [Input("status")] + public Input? Status { get; set; } + + public SloObjectiveCountMetricBadPingdomGetArgs() + { + } + public static new SloObjectiveCountMetricBadPingdomGetArgs Empty => new SloObjectiveCountMetricBadPingdomGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPrometheusArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPrometheusArgs.cs new file mode 100644 index 0000000..eaed2b8 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPrometheusArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadPrometheusArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("promql", required: true)] + public Input Promql { get; set; } = null!; + + public SloObjectiveCountMetricBadPrometheusArgs() + { + } + public static new SloObjectiveCountMetricBadPrometheusArgs Empty => new SloObjectiveCountMetricBadPrometheusArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPrometheusGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPrometheusGetArgs.cs new file mode 100644 index 0000000..d551ec1 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadPrometheusGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadPrometheusGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("promql", required: true)] + public Input Promql { get; set; } = null!; + + public SloObjectiveCountMetricBadPrometheusGetArgs() + { + } + public static new SloObjectiveCountMetricBadPrometheusGetArgs Empty => new SloObjectiveCountMetricBadPrometheusGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadRedshiftArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadRedshiftArgs.cs new file mode 100644 index 0000000..3b3aa6e --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadRedshiftArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadRedshiftArgs : global::Pulumi.ResourceArgs + { + /// + /// Redshift custer ID + /// + [Input("clusterId", required: true)] + public Input ClusterId { get; set; } = null!; + + /// + /// Database name + /// + [Input("databaseName", required: true)] + public Input DatabaseName { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + /// + /// Region of the CloudWatch instance + /// + [Input("region", required: true)] + public Input Region { get; set; } = null!; + + public SloObjectiveCountMetricBadRedshiftArgs() + { + } + public static new SloObjectiveCountMetricBadRedshiftArgs Empty => new SloObjectiveCountMetricBadRedshiftArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadRedshiftGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadRedshiftGetArgs.cs new file mode 100644 index 0000000..1171ae1 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadRedshiftGetArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadRedshiftGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Redshift custer ID + /// + [Input("clusterId", required: true)] + public Input ClusterId { get; set; } = null!; + + /// + /// Database name + /// + [Input("databaseName", required: true)] + public Input DatabaseName { get; set; } = null!; + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + /// + /// Region of the CloudWatch instance + /// + [Input("region", required: true)] + public Input Region { get; set; } = null!; + + public SloObjectiveCountMetricBadRedshiftGetArgs() + { + } + public static new SloObjectiveCountMetricBadRedshiftGetArgs Empty => new SloObjectiveCountMetricBadRedshiftGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkArgs.cs new file mode 100644 index 0000000..4069ca3 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadSplunkArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadSplunkArgs() + { + } + public static new SloObjectiveCountMetricBadSplunkArgs Empty => new SloObjectiveCountMetricBadSplunkArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkGetArgs.cs new file mode 100644 index 0000000..9468886 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadSplunkGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + public SloObjectiveCountMetricBadSplunkGetArgs() + { + } + public static new SloObjectiveCountMetricBadSplunkGetArgs Empty => new SloObjectiveCountMetricBadSplunkGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkObservabilityArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkObservabilityArgs.cs new file mode 100644 index 0000000..acb7432 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkObservabilityArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadSplunkObservabilityArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("program", required: true)] + public Input Program { get; set; } = null!; + + public SloObjectiveCountMetricBadSplunkObservabilityArgs() + { + } + public static new SloObjectiveCountMetricBadSplunkObservabilityArgs Empty => new SloObjectiveCountMetricBadSplunkObservabilityArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkObservabilityGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkObservabilityGetArgs.cs new file mode 100644 index 0000000..7bbbe7a --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSplunkObservabilityGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadSplunkObservabilityGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Query for the metrics + /// + [Input("program", required: true)] + public Input Program { get; set; } = null!; + + public SloObjectiveCountMetricBadSplunkObservabilityGetArgs() + { + } + public static new SloObjectiveCountMetricBadSplunkObservabilityGetArgs Empty => new SloObjectiveCountMetricBadSplunkObservabilityGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSumologicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSumologicArgs.cs new file mode 100644 index 0000000..083cbd0 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSumologicArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadSumologicArgs : global::Pulumi.ResourceArgs + { + /// + /// Period of data aggregation + /// + [Input("quantization")] + public Input? Quantization { get; set; } + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + /// + /// Aggregation function - avg, sum, min, max, count, none + /// + [Input("rollup")] + public Input? Rollup { get; set; } + + /// + /// Sumologic source - metrics or logs + /// + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public SloObjectiveCountMetricBadSumologicArgs() + { + } + public static new SloObjectiveCountMetricBadSumologicArgs Empty => new SloObjectiveCountMetricBadSumologicArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSumologicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSumologicGetArgs.cs new file mode 100644 index 0000000..ccf3e19 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadSumologicGetArgs.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadSumologicGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Period of data aggregation + /// + [Input("quantization")] + public Input? Quantization { get; set; } + + /// + /// Query for the metrics + /// + [Input("query", required: true)] + public Input Query { get; set; } = null!; + + /// + /// Aggregation function - avg, sum, min, max, count, none + /// + [Input("rollup")] + public Input? Rollup { get; set; } + + /// + /// Sumologic source - metrics or logs + /// + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public SloObjectiveCountMetricBadSumologicGetArgs() + { + } + public static new SloObjectiveCountMetricBadSumologicGetArgs Empty => new SloObjectiveCountMetricBadSumologicGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadThousandeyeArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadThousandeyeArgs.cs new file mode 100644 index 0000000..fd142c1 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadThousandeyeArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadThousandeyeArgs : global::Pulumi.ResourceArgs + { + /// + /// ID of the test + /// + [Input("testId", required: true)] + public Input TestId { get; set; } = null!; + + public SloObjectiveCountMetricBadThousandeyeArgs() + { + } + public static new SloObjectiveCountMetricBadThousandeyeArgs Empty => new SloObjectiveCountMetricBadThousandeyeArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricBadThousandeyeGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadThousandeyeGetArgs.cs new file mode 100644 index 0000000..c53077e --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricBadThousandeyeGetArgs.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricBadThousandeyeGetArgs : global::Pulumi.ResourceArgs + { + /// + /// ID of the test + /// + [Input("testId", required: true)] + public Input TestId { get; set; } = null!; + + public SloObjectiveCountMetricBadThousandeyeGetArgs() + { + } + public static new SloObjectiveCountMetricBadThousandeyeGetArgs Empty => new SloObjectiveCountMetricBadThousandeyeGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGetArgs.cs index 2745897..f35f18e 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGetArgs.cs @@ -6,25 +6,49 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGetArgs : global::Pulumi.ResourceArgs { + [Input("bads")] + private InputList? _bads; + + /// + /// Configuration for bad time series metrics. + /// + public InputList Bads + { + get => _bads ?? (_bads = new InputList()); + set => _bads = value; + } + [Input("goods")] private InputList? _goods; + + /// + /// Configuration for good time series metrics. + /// public InputList Goods { get => _goods ?? (_goods = new InputList()); set => _goods = value; } + /// + /// Should the metrics be incrementing or not + /// [Input("incremental", required: true)] public Input Incremental { get; set; } = null!; - [Input("totals")] + [Input("totals", required: true)] private InputList? _totals; + + /// + /// Configuration for metric source + /// public InputList Totals { get => _totals ?? (_totals = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAmazonPrometheusArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAmazonPrometheusArgs.cs index d5fc0db..4791891 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAmazonPrometheusArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAmazonPrometheusArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodAmazonPrometheusArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAmazonPrometheusGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAmazonPrometheusGetArgs.cs index d92c071..75a0b1a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAmazonPrometheusGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAmazonPrometheusGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodAmazonPrometheusGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAppdynamicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAppdynamicArgs.cs index fc9b1b6..9169091 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAppdynamicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAppdynamicArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodAppdynamicArgs : global::Pulumi.ResourceArgs { + /// + /// Name of the added application + /// [Input("applicationName", required: true)] public Input ApplicationName { get; set; } = null!; + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAppdynamicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAppdynamicGetArgs.cs index 8f9758b..7c496c7 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAppdynamicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAppdynamicGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodAppdynamicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Name of the added application + /// [Input("applicationName", required: true)] public Input ApplicationName { get; set; } = null!; + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodArgs.cs index b5250d2..e24dac8 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodArgs : global::Pulumi.ResourceArgs { [Input("amazonPrometheuses")] private InputList? _amazonPrometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public InputList AmazonPrometheuses { get => _amazonPrometheuses ?? (_amazonPrometheuses = new InputList()); @@ -22,14 +27,34 @@ public InputList AmazonP [Input("appdynamics")] private InputList? _appdynamics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public InputList Appdynamics { get => _appdynamics ?? (_appdynamics = new InputList()); set => _appdynamics = value; } + [Input("azureMonitors")] + private InputList? _azureMonitors; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public InputList AzureMonitors + { + get => _azureMonitors ?? (_azureMonitors = new InputList()); + set => _azureMonitors = value; + } + [Input("bigqueries")] private InputList? _bigqueries; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public InputList Bigqueries { get => _bigqueries ?? (_bigqueries = new InputList()); @@ -38,6 +63,10 @@ public InputList Bigqueries [Input("cloudwatches")] private InputList? _cloudwatches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public InputList Cloudwatches { get => _cloudwatches ?? (_cloudwatches = new InputList()); @@ -46,6 +75,10 @@ public InputList Cloudwatches [Input("datadogs")] private InputList? _datadogs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public InputList Datadogs { get => _datadogs ?? (_datadogs = new InputList()); @@ -54,6 +87,10 @@ public InputList Datadogs [Input("dynatraces")] private InputList? _dynatraces; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public InputList Dynatraces { get => _dynatraces ?? (_dynatraces = new InputList()); @@ -62,6 +99,10 @@ public InputList Dynatraces [Input("elasticsearches")] private InputList? _elasticsearches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public InputList Elasticsearches { get => _elasticsearches ?? (_elasticsearches = new InputList()); @@ -70,6 +111,10 @@ public InputList Elasticsea [Input("gcms")] private InputList? _gcms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public InputList Gcms { get => _gcms ?? (_gcms = new InputList()); @@ -78,6 +123,10 @@ public InputList Gcms [Input("grafanaLokis")] private InputList? _grafanaLokis; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public InputList GrafanaLokis { get => _grafanaLokis ?? (_grafanaLokis = new InputList()); @@ -86,14 +135,34 @@ public InputList GrafanaLokis [Input("graphites")] private InputList? _graphites; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public InputList Graphites { get => _graphites ?? (_graphites = new InputList()); set => _graphites = value; } + [Input("honeycombs")] + private InputList? _honeycombs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public InputList Honeycombs + { + get => _honeycombs ?? (_honeycombs = new InputList()); + set => _honeycombs = value; + } + [Input("influxdbs")] private InputList? _influxdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public InputList Influxdbs { get => _influxdbs ?? (_influxdbs = new InputList()); @@ -102,6 +171,10 @@ public InputList Influxdbs [Input("instanas")] private InputList? _instanas; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public InputList Instanas { get => _instanas ?? (_instanas = new InputList()); @@ -110,6 +183,10 @@ public InputList Instanas [Input("lightsteps")] private InputList? _lightsteps; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public InputList Lightsteps { get => _lightsteps ?? (_lightsteps = new InputList()); @@ -118,6 +195,10 @@ public InputList Lightsteps [Input("newrelics")] private InputList? _newrelics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public InputList Newrelics { get => _newrelics ?? (_newrelics = new InputList()); @@ -126,6 +207,10 @@ public InputList Newrelics [Input("opentsdbs")] private InputList? _opentsdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public InputList Opentsdbs { get => _opentsdbs ?? (_opentsdbs = new InputList()); @@ -134,6 +219,10 @@ public InputList Opentsdbs [Input("pingdoms")] private InputList? _pingdoms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public InputList Pingdoms { get => _pingdoms ?? (_pingdoms = new InputList()); @@ -142,6 +231,10 @@ public InputList Pingdoms [Input("prometheuses")] private InputList? _prometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public InputList Prometheuses { get => _prometheuses ?? (_prometheuses = new InputList()); @@ -150,6 +243,10 @@ public InputList Prometheuses [Input("redshifts")] private InputList? _redshifts; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public InputList Redshifts { get => _redshifts ?? (_redshifts = new InputList()); @@ -158,6 +255,10 @@ public InputList Redshifts [Input("splunkObservabilities")] private InputList? _splunkObservabilities; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public InputList SplunkObservabilities { get => _splunkObservabilities ?? (_splunkObservabilities = new InputList()); @@ -166,6 +267,10 @@ public InputList Splu [Input("splunks")] private InputList? _splunks; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public InputList Splunks { get => _splunks ?? (_splunks = new InputList()); @@ -174,6 +279,10 @@ public InputList Splunks [Input("sumologics")] private InputList? _sumologics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public InputList Sumologics { get => _sumologics ?? (_sumologics = new InputList()); @@ -182,6 +291,10 @@ public InputList Sumologics [Input("thousandeyes")] private InputList? _thousandeyes; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public InputList Thousandeyes { get => _thousandeyes ?? (_thousandeyes = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorArgs.cs new file mode 100644 index 0000000..4a78cee --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorArgs.cs @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricGoodAzureMonitorArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation")] + public Input? Aggregation { get; set; } + + /// + /// Specifies source: 'metrics' or 'logs' + /// + [Input("dataType", required: true)] + public Input DataType { get; set; } = null!; + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + [Input("kqlQuery")] + public Input? KqlQuery { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric [Optional for metrics] + /// + [Input("metricNamespace")] + public Input? MetricNamespace { get; set; } + + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + [Input("workspaces")] + private InputList? _workspaces; + + /// + /// Log analytics workspace [Required for logs] + /// + public InputList Workspaces + { + get => _workspaces ?? (_workspaces = new InputList()); + set => _workspaces = value; + } + + public SloObjectiveCountMetricGoodAzureMonitorArgs() + { + } + public static new SloObjectiveCountMetricGoodAzureMonitorArgs Empty => new SloObjectiveCountMetricGoodAzureMonitorArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorDimensionArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorDimensionArgs.cs new file mode 100644 index 0000000..9c97a40 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorDimensionArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricGoodAzureMonitorDimensionArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveCountMetricGoodAzureMonitorDimensionArgs() + { + } + public static new SloObjectiveCountMetricGoodAzureMonitorDimensionArgs Empty => new SloObjectiveCountMetricGoodAzureMonitorDimensionArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorDimensionGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorDimensionGetArgs.cs new file mode 100644 index 0000000..a4bd45c --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorDimensionGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricGoodAzureMonitorDimensionGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveCountMetricGoodAzureMonitorDimensionGetArgs() + { + } + public static new SloObjectiveCountMetricGoodAzureMonitorDimensionGetArgs Empty => new SloObjectiveCountMetricGoodAzureMonitorDimensionGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorGetArgs.cs new file mode 100644 index 0000000..d3e6dff --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorGetArgs.cs @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricGoodAzureMonitorGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation")] + public Input? Aggregation { get; set; } + + /// + /// Specifies source: 'metrics' or 'logs' + /// + [Input("dataType", required: true)] + public Input DataType { get; set; } = null!; + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + [Input("kqlQuery")] + public Input? KqlQuery { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric [Optional for metrics] + /// + [Input("metricNamespace")] + public Input? MetricNamespace { get; set; } + + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + [Input("workspaces")] + private InputList? _workspaces; + + /// + /// Log analytics workspace [Required for logs] + /// + public InputList Workspaces + { + get => _workspaces ?? (_workspaces = new InputList()); + set => _workspaces = value; + } + + public SloObjectiveCountMetricGoodAzureMonitorGetArgs() + { + } + public static new SloObjectiveCountMetricGoodAzureMonitorGetArgs Empty => new SloObjectiveCountMetricGoodAzureMonitorGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs.cs new file mode 100644 index 0000000..eaf91d6 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs : global::Pulumi.ResourceArgs + { + /// + /// Resource group of the workspace + /// + [Input("resourceGroup", required: true)] + public Input ResourceGroup { get; set; } = null!; + + /// + /// Subscription ID of the workspace + /// + [Input("subscriptionId", required: true)] + public Input SubscriptionId { get; set; } = null!; + + /// + /// ID of the workspace + /// + [Input("workspaceId", required: true)] + public Input WorkspaceId { get; set; } = null!; + + public SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs() + { + } + public static new SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs Empty => new SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorWorkspaceGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorWorkspaceGetArgs.cs new file mode 100644 index 0000000..2116ef5 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodAzureMonitorWorkspaceGetArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricGoodAzureMonitorWorkspaceGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Resource group of the workspace + /// + [Input("resourceGroup", required: true)] + public Input ResourceGroup { get; set; } = null!; + + /// + /// Subscription ID of the workspace + /// + [Input("subscriptionId", required: true)] + public Input SubscriptionId { get; set; } = null!; + + /// + /// ID of the workspace + /// + [Input("workspaceId", required: true)] + public Input WorkspaceId { get; set; } = null!; + + public SloObjectiveCountMetricGoodAzureMonitorWorkspaceGetArgs() + { + } + public static new SloObjectiveCountMetricGoodAzureMonitorWorkspaceGetArgs Empty => new SloObjectiveCountMetricGoodAzureMonitorWorkspaceGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodBigqueryArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodBigqueryArgs.cs index 56e60b4..7a17917 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodBigqueryArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodBigqueryArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodBigqueryArgs : global::Pulumi.ResourceArgs { + /// + /// Location of you BigQuery + /// [Input("location", required: true)] public Input Location { get; set; } = null!; + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodBigqueryGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodBigqueryGetArgs.cs index 4568714..4253229 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodBigqueryGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodBigqueryGetArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodBigqueryGetArgs : global::Pulumi.ResourceArgs { + /// + /// Location of you BigQuery + /// [Input("location", required: true)] public Input Location { get; set; } = null!; + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchArgs.cs index ad52887..420c151 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchArgs.cs @@ -6,35 +6,64 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodCloudwatchArgs : global::Pulumi.ResourceArgs { + /// + /// AccountID used with cross-account observability feature + /// + [Input("accountId")] + public Input? AccountId { get; set; } + [Input("dimensions")] private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// public InputList Dimensions { get => _dimensions ?? (_dimensions = new InputList()); set => _dimensions = value; } + /// + /// JSON query + /// [Input("json")] public Input? Json { get; set; } + /// + /// Name of the metric [Required for metrics] + /// [Input("metricName")] public Input? MetricName { get; set; } + /// + /// Namespace of the metric + /// [Input("namespace")] public Input? Namespace { get; set; } + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; + /// + /// SQL query + /// [Input("sql")] public Input? Sql { get; set; } + /// + /// Metric data aggregations + /// [Input("stat")] public Input? Stat { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchDimensionArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchDimensionArgs.cs index 93cddbd..bfc2487 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchDimensionArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchDimensionArgs.cs @@ -6,18 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodCloudwatchDimensionArgs : global::Pulumi.ResourceArgs { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// Burn rate value. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchDimensionGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchDimensionGetArgs.cs index 18e7077..fb9f34a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchDimensionGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchDimensionGetArgs.cs @@ -6,18 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodCloudwatchDimensionGetArgs : global::Pulumi.ResourceArgs { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// Burn rate value. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchGetArgs.cs index 27c30fe..f31ea16 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodCloudwatchGetArgs.cs @@ -6,35 +6,64 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodCloudwatchGetArgs : global::Pulumi.ResourceArgs { + /// + /// AccountID used with cross-account observability feature + /// + [Input("accountId")] + public Input? AccountId { get; set; } + [Input("dimensions")] private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// public InputList Dimensions { get => _dimensions ?? (_dimensions = new InputList()); set => _dimensions = value; } + /// + /// JSON query + /// [Input("json")] public Input? Json { get; set; } + /// + /// Name of the metric [Required for metrics] + /// [Input("metricName")] public Input? MetricName { get; set; } + /// + /// Namespace of the metric + /// [Input("namespace")] public Input? Namespace { get; set; } + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; + /// + /// SQL query + /// [Input("sql")] public Input? Sql { get; set; } + /// + /// Metric data aggregations + /// [Input("stat")] public Input? Stat { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDatadogArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDatadogArgs.cs index f8c9bca..2c44921 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDatadogArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDatadogArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodDatadogArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDatadogGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDatadogGetArgs.cs index c5f88ba..ed92723 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDatadogGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDatadogGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodDatadogGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDynatraceArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDynatraceArgs.cs index 56e51d3..c3347c2 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDynatraceArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDynatraceArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodDynatraceArgs : global::Pulumi.ResourceArgs { + /// + /// Selector for the metrics + /// [Input("metricSelector", required: true)] public Input MetricSelector { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDynatraceGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDynatraceGetArgs.cs index d9c58f5..886b57e 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDynatraceGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodDynatraceGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodDynatraceGetArgs : global::Pulumi.ResourceArgs { + /// + /// Selector for the metrics + /// [Input("metricSelector", required: true)] public Input MetricSelector { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodElasticsearchArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodElasticsearchArgs.cs index 8e0f7ee..c7db022 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodElasticsearchArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodElasticsearchArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodElasticsearchArgs : global::Pulumi.ResourceArgs { + /// + /// Index of metrics we want to query + /// [Input("index", required: true)] public Input Index { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodElasticsearchGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodElasticsearchGetArgs.cs index 055287a..47e76be 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodElasticsearchGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodElasticsearchGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodElasticsearchGetArgs : global::Pulumi.ResourceArgs { + /// + /// Index of metrics we want to query + /// [Input("index", required: true)] public Input Index { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGcmArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGcmArgs.cs index da41e0a..0ab7b88 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGcmArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGcmArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodGcmArgs : global::Pulumi.ResourceArgs { + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGcmGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGcmGetArgs.cs index afebce0..e39a63f 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGcmGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGcmGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodGcmGetArgs : global::Pulumi.ResourceArgs { + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGetArgs.cs index ce340ca..c192d78 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGetArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodGetArgs : global::Pulumi.ResourceArgs { [Input("amazonPrometheuses")] private InputList? _amazonPrometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public InputList AmazonPrometheuses { get => _amazonPrometheuses ?? (_amazonPrometheuses = new InputList()); @@ -22,14 +27,34 @@ public InputList Amaz [Input("appdynamics")] private InputList? _appdynamics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public InputList Appdynamics { get => _appdynamics ?? (_appdynamics = new InputList()); set => _appdynamics = value; } + [Input("azureMonitors")] + private InputList? _azureMonitors; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public InputList AzureMonitors + { + get => _azureMonitors ?? (_azureMonitors = new InputList()); + set => _azureMonitors = value; + } + [Input("bigqueries")] private InputList? _bigqueries; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public InputList Bigqueries { get => _bigqueries ?? (_bigqueries = new InputList()); @@ -38,6 +63,10 @@ public InputList Bigqueries [Input("cloudwatches")] private InputList? _cloudwatches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public InputList Cloudwatches { get => _cloudwatches ?? (_cloudwatches = new InputList()); @@ -46,6 +75,10 @@ public InputList Cloudwatch [Input("datadogs")] private InputList? _datadogs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public InputList Datadogs { get => _datadogs ?? (_datadogs = new InputList()); @@ -54,6 +87,10 @@ public InputList Datadogs [Input("dynatraces")] private InputList? _dynatraces; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public InputList Dynatraces { get => _dynatraces ?? (_dynatraces = new InputList()); @@ -62,6 +99,10 @@ public InputList Dynatraces [Input("elasticsearches")] private InputList? _elasticsearches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public InputList Elasticsearches { get => _elasticsearches ?? (_elasticsearches = new InputList()); @@ -70,6 +111,10 @@ public InputList Elastic [Input("gcms")] private InputList? _gcms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public InputList Gcms { get => _gcms ?? (_gcms = new InputList()); @@ -78,6 +123,10 @@ public InputList Gcms [Input("grafanaLokis")] private InputList? _grafanaLokis; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public InputList GrafanaLokis { get => _grafanaLokis ?? (_grafanaLokis = new InputList()); @@ -86,14 +135,34 @@ public InputList GrafanaLo [Input("graphites")] private InputList? _graphites; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public InputList Graphites { get => _graphites ?? (_graphites = new InputList()); set => _graphites = value; } + [Input("honeycombs")] + private InputList? _honeycombs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public InputList Honeycombs + { + get => _honeycombs ?? (_honeycombs = new InputList()); + set => _honeycombs = value; + } + [Input("influxdbs")] private InputList? _influxdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public InputList Influxdbs { get => _influxdbs ?? (_influxdbs = new InputList()); @@ -102,6 +171,10 @@ public InputList Influxdbs [Input("instanas")] private InputList? _instanas; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public InputList Instanas { get => _instanas ?? (_instanas = new InputList()); @@ -110,6 +183,10 @@ public InputList Instanas [Input("lightsteps")] private InputList? _lightsteps; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public InputList Lightsteps { get => _lightsteps ?? (_lightsteps = new InputList()); @@ -118,6 +195,10 @@ public InputList Lightsteps [Input("newrelics")] private InputList? _newrelics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public InputList Newrelics { get => _newrelics ?? (_newrelics = new InputList()); @@ -126,6 +207,10 @@ public InputList Newrelics [Input("opentsdbs")] private InputList? _opentsdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public InputList Opentsdbs { get => _opentsdbs ?? (_opentsdbs = new InputList()); @@ -134,6 +219,10 @@ public InputList Opentsdbs [Input("pingdoms")] private InputList? _pingdoms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public InputList Pingdoms { get => _pingdoms ?? (_pingdoms = new InputList()); @@ -142,6 +231,10 @@ public InputList Pingdoms [Input("prometheuses")] private InputList? _prometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public InputList Prometheuses { get => _prometheuses ?? (_prometheuses = new InputList()); @@ -150,6 +243,10 @@ public InputList Prometheus [Input("redshifts")] private InputList? _redshifts; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public InputList Redshifts { get => _redshifts ?? (_redshifts = new InputList()); @@ -158,6 +255,10 @@ public InputList Redshifts [Input("splunkObservabilities")] private InputList? _splunkObservabilities; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public InputList SplunkObservabilities { get => _splunkObservabilities ?? (_splunkObservabilities = new InputList()); @@ -166,6 +267,10 @@ public InputList S [Input("splunks")] private InputList? _splunks; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public InputList Splunks { get => _splunks ?? (_splunks = new InputList()); @@ -174,6 +279,10 @@ public InputList Splunks [Input("sumologics")] private InputList? _sumologics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public InputList Sumologics { get => _sumologics ?? (_sumologics = new InputList()); @@ -182,6 +291,10 @@ public InputList Sumologics [Input("thousandeyes")] private InputList? _thousandeyes; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public InputList Thousandeyes { get => _thousandeyes ?? (_thousandeyes = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGrafanaLokiArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGrafanaLokiArgs.cs index 4f602a2..7742b90 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGrafanaLokiArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGrafanaLokiArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodGrafanaLokiArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the logs + /// [Input("logql", required: true)] public Input Logql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGrafanaLokiGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGrafanaLokiGetArgs.cs index 8d6114b..172dbae 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGrafanaLokiGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGrafanaLokiGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodGrafanaLokiGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the logs + /// [Input("logql", required: true)] public Input Logql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGraphiteArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGraphiteArgs.cs index 97d3226..dd58bcb 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGraphiteArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGraphiteArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodGraphiteArgs : global::Pulumi.ResourceArgs { + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGraphiteGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGraphiteGetArgs.cs index bd86448..431a323 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGraphiteGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodGraphiteGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodGraphiteGetArgs : global::Pulumi.ResourceArgs { + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodHoneycombArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodHoneycombArgs.cs new file mode 100644 index 0000000..ef7a338 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodHoneycombArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricGoodHoneycombArgs : global::Pulumi.ResourceArgs + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + [Input("attribute")] + public Input? Attribute { get; set; } + + /// + /// Calculation type + /// + [Input("calculation", required: true)] + public Input Calculation { get; set; } = null!; + + public SloObjectiveCountMetricGoodHoneycombArgs() + { + } + public static new SloObjectiveCountMetricGoodHoneycombArgs Empty => new SloObjectiveCountMetricGoodHoneycombArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodHoneycombGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodHoneycombGetArgs.cs new file mode 100644 index 0000000..7de4710 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodHoneycombGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricGoodHoneycombGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + [Input("attribute")] + public Input? Attribute { get; set; } + + /// + /// Calculation type + /// + [Input("calculation", required: true)] + public Input Calculation { get; set; } = null!; + + public SloObjectiveCountMetricGoodHoneycombGetArgs() + { + } + public static new SloObjectiveCountMetricGoodHoneycombGetArgs Empty => new SloObjectiveCountMetricGoodHoneycombGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInfluxdbArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInfluxdbArgs.cs index f4d1349..83639bc 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInfluxdbArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInfluxdbArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInfluxdbArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInfluxdbGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInfluxdbGetArgs.cs index f6b917a..864d896 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInfluxdbGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInfluxdbGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInfluxdbGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationArgs.cs index 5611902..c7ff01e 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationArgs.cs @@ -6,32 +6,52 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInstanaApplicationArgs : global::Pulumi.ResourceArgs { + /// + /// Aggregation type [Required for metrics] + /// [Input("aggregation", required: true)] public Input Aggregation { get; set; } = null!; + /// + /// API query user passes in a JSON format + /// [Input("apiQuery", required: true)] public Input ApiQuery { get; set; } = null!; [Input("groupBies", required: true)] private InputList? _groupBies; + + /// + /// Group by method + /// public InputList GroupBies { get => _groupBies ?? (_groupBies = new InputList()); set => _groupBies = value; } + /// + /// Include internal + /// [Input("includeInternal")] public Input? IncludeInternal { get; set; } + /// + /// Include synthetic + /// [Input("includeSynthetic")] public Input? IncludeSynthetic { get; set; } + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGetArgs.cs index 4c2d2be..58a5748 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGetArgs.cs @@ -6,32 +6,52 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInstanaApplicationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Aggregation type [Required for metrics] + /// [Input("aggregation", required: true)] public Input Aggregation { get; set; } = null!; + /// + /// API query user passes in a JSON format + /// [Input("apiQuery", required: true)] public Input ApiQuery { get; set; } = null!; [Input("groupBies", required: true)] private InputList? _groupBies; + + /// + /// Group by method + /// public InputList GroupBies { get => _groupBies ?? (_groupBies = new InputList()); set => _groupBies = value; } + /// + /// Include internal + /// [Input("includeInternal")] public Input? IncludeInternal { get; set; } + /// + /// Include synthetic + /// [Input("includeSynthetic")] public Input? IncludeSynthetic { get; set; } + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs.cs index 5e94a7f..5b1265c 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs : global::Pulumi.ResourceArgs { + /// + /// Group by tag + /// [Input("tag", required: true)] public Input Tag { get; set; } = null!; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// [Input("tagEntity", required: true)] public Input TagEntity { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGroupByGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGroupByGetArgs.cs index 6e2550d..8e67a8d 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGroupByGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaApplicationGroupByGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInstanaApplicationGroupByGetArgs : global::Pulumi.ResourceArgs { + /// + /// Group by tag + /// [Input("tag", required: true)] public Input Tag { get; set; } = null!; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// [Input("tagEntity", required: true)] public Input TagEntity { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaArgs.cs index 84a8778..46ce9a5 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInstanaArgs : global::Pulumi.ResourceArgs { [Input("applications")] private InputList? _applications; + + /// + /// Infrastructure metric type + /// public InputList Applications { get => _applications ?? (_applications = new InputList()); @@ -22,12 +27,19 @@ public InputList Appli [Input("infrastructures")] private InputList? _infrastructures; + + /// + /// Infrastructure metric type + /// public InputList Infrastructures { get => _infrastructures ?? (_infrastructures = new InputList()); set => _infrastructures = value; } + /// + /// Instana metric type 'application' or 'infrastructure' + /// [Input("metricType", required: true)] public Input MetricType { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaGetArgs.cs index 5c38d4b..e9466bf 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaGetArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInstanaGetArgs : global::Pulumi.ResourceArgs { [Input("applications")] private InputList? _applications; + + /// + /// Infrastructure metric type + /// public InputList Applications { get => _applications ?? (_applications = new InputList()); @@ -22,12 +27,19 @@ public InputList Ap [Input("infrastructures")] private InputList? _infrastructures; + + /// + /// Infrastructure metric type + /// public InputList Infrastructures { get => _infrastructures ?? (_infrastructures = new InputList()); set => _infrastructures = value; } + /// + /// Instana metric type 'application' or 'infrastructure' + /// [Input("metricType", required: true)] public Input MetricType { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaInfrastructureArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaInfrastructureArgs.cs index 18edaf3..4c20913 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaInfrastructureArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaInfrastructureArgs.cs @@ -6,24 +6,40 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInstanaInfrastructureArgs : global::Pulumi.ResourceArgs { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// [Input("metricRetrievalMethod", required: true)] public Input MetricRetrievalMethod { get; set; } = null!; + /// + /// Plugin ID + /// [Input("pluginId", required: true)] public Input PluginId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query")] public Input? Query { get; set; } + /// + /// Snapshot ID + /// [Input("snapshotId")] public Input? SnapshotId { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaInfrastructureGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaInfrastructureGetArgs.cs index 3a59006..3c794d7 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaInfrastructureGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodInstanaInfrastructureGetArgs.cs @@ -6,24 +6,40 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodInstanaInfrastructureGetArgs : global::Pulumi.ResourceArgs { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// [Input("metricRetrievalMethod", required: true)] public Input MetricRetrievalMethod { get; set; } = null!; + /// + /// Plugin ID + /// [Input("pluginId", required: true)] public Input PluginId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query")] public Input? Query { get; set; } + /// + /// Snapshot ID + /// [Input("snapshotId")] public Input? SnapshotId { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodLightstepArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodLightstepArgs.cs index c2686b2..08576d2 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodLightstepArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodLightstepArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodLightstepArgs : global::Pulumi.ResourceArgs { + /// + /// Optional value to filter by percentiles + /// [Input("percentile")] public Input? Percentile { get; set; } + /// + /// ID of the metrics stream + /// [Input("streamId")] public Input? StreamId { get; set; } + /// + /// Type of data to filter by + /// [Input("typeOfData", required: true)] public Input TypeOfData { get; set; } = null!; + /// + /// UQL query + /// [Input("uql")] public Input? Uql { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodLightstepGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodLightstepGetArgs.cs index cfb2b78..ba7dd89 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodLightstepGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodLightstepGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodLightstepGetArgs : global::Pulumi.ResourceArgs { + /// + /// Optional value to filter by percentiles + /// [Input("percentile")] public Input? Percentile { get; set; } + /// + /// ID of the metrics stream + /// [Input("streamId")] public Input? StreamId { get; set; } + /// + /// Type of data to filter by + /// [Input("typeOfData", required: true)] public Input TypeOfData { get; set; } = null!; + /// + /// UQL query + /// [Input("uql")] public Input? Uql { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodNewrelicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodNewrelicArgs.cs index 6716ca4..2821432 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodNewrelicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodNewrelicArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodNewrelicArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("nrql", required: true)] public Input Nrql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodNewrelicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodNewrelicGetArgs.cs index 8b3a030..31c821b 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodNewrelicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodNewrelicGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodNewrelicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("nrql", required: true)] public Input Nrql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodOpentsdbArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodOpentsdbArgs.cs index 1fc7570..7ec23c0 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodOpentsdbArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodOpentsdbArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodOpentsdbArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodOpentsdbGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodOpentsdbGetArgs.cs index 158ce02..1af77f1 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodOpentsdbGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodOpentsdbGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodOpentsdbGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPingdomArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPingdomArgs.cs index a054da1..c95d6eb 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPingdomArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPingdomArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodPingdomArgs : global::Pulumi.ResourceArgs { + /// + /// Pingdom uptime or transaction check's ID + /// [Input("checkId", required: true)] public Input CheckId { get; set; } = null!; + /// + /// Pingdom check type - uptime or transaction + /// [Input("checkType")] public Input? CheckType { get; set; } + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// [Input("status")] public Input? Status { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPingdomGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPingdomGetArgs.cs index db9ee5e..273085d 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPingdomGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPingdomGetArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodPingdomGetArgs : global::Pulumi.ResourceArgs { + /// + /// Pingdom uptime or transaction check's ID + /// [Input("checkId", required: true)] public Input CheckId { get; set; } = null!; + /// + /// Pingdom check type - uptime or transaction + /// [Input("checkType")] public Input? CheckType { get; set; } + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// [Input("status")] public Input? Status { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPrometheusArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPrometheusArgs.cs index 147760e..0896c82 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPrometheusArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPrometheusArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodPrometheusArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPrometheusGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPrometheusGetArgs.cs index 25ed1a4..c5a0754 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPrometheusGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodPrometheusGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodPrometheusGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodRedshiftArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodRedshiftArgs.cs index ceec2c0..ceda4c8 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodRedshiftArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodRedshiftArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodRedshiftArgs : global::Pulumi.ResourceArgs { + /// + /// Redshift custer ID + /// [Input("clusterId", required: true)] public Input ClusterId { get; set; } = null!; + /// + /// Database name + /// [Input("databaseName", required: true)] public Input DatabaseName { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodRedshiftGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodRedshiftGetArgs.cs index 5ae6396..4d855a6 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodRedshiftGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodRedshiftGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodRedshiftGetArgs : global::Pulumi.ResourceArgs { + /// + /// Redshift custer ID + /// [Input("clusterId", required: true)] public Input ClusterId { get; set; } = null!; + /// + /// Database name + /// [Input("databaseName", required: true)] public Input DatabaseName { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkArgs.cs index a9cb75e..c1ffe46 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodSplunkArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkGetArgs.cs index 65dcc8d..4e82a5f 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodSplunkGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkObservabilityArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkObservabilityArgs.cs index 99837a4..5ac7005 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkObservabilityArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkObservabilityArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodSplunkObservabilityArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("program", required: true)] public Input Program { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkObservabilityGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkObservabilityGetArgs.cs index a7b6049..1d6eb33 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkObservabilityGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSplunkObservabilityGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodSplunkObservabilityGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("program", required: true)] public Input Program { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSumologicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSumologicArgs.cs index 6b2c221..8ebe450 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSumologicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSumologicArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodSumologicArgs : global::Pulumi.ResourceArgs { + /// + /// Period of data aggregation + /// [Input("quantization")] public Input? Quantization { get; set; } + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// [Input("rollup")] public Input? Rollup { get; set; } + /// + /// Sumologic source - metrics or logs + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSumologicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSumologicGetArgs.cs index a76fd90..35c0220 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSumologicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodSumologicGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodSumologicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Period of data aggregation + /// [Input("quantization")] public Input? Quantization { get; set; } + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// [Input("rollup")] public Input? Rollup { get; set; } + /// + /// Sumologic source - metrics or logs + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodThousandeyeArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodThousandeyeArgs.cs index bfe5065..ab24ddd 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodThousandeyeArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodThousandeyeArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodThousandeyeArgs : global::Pulumi.ResourceArgs { + /// + /// ID of the test + /// [Input("testId", required: true)] public Input TestId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodThousandeyeGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodThousandeyeGetArgs.cs index 9390bf3..1b8c892 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodThousandeyeGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricGoodThousandeyeGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricGoodThousandeyeGetArgs : global::Pulumi.ResourceArgs { + /// + /// ID of the test + /// [Input("testId", required: true)] public Input TestId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAmazonPrometheusArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAmazonPrometheusArgs.cs index ea57066..3bb20a7 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAmazonPrometheusArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAmazonPrometheusArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalAmazonPrometheusArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAmazonPrometheusGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAmazonPrometheusGetArgs.cs index 35199a0..76f61bf 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAmazonPrometheusGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAmazonPrometheusGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalAmazonPrometheusGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAppdynamicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAppdynamicArgs.cs index bab0830..978d851 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAppdynamicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAppdynamicArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalAppdynamicArgs : global::Pulumi.ResourceArgs { + /// + /// Name of the added application + /// [Input("applicationName", required: true)] public Input ApplicationName { get; set; } = null!; + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAppdynamicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAppdynamicGetArgs.cs index 708e93a..0c48293 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAppdynamicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAppdynamicGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalAppdynamicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Name of the added application + /// [Input("applicationName", required: true)] public Input ApplicationName { get; set; } = null!; + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalArgs.cs index a794a65..6441b2c 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalArgs : global::Pulumi.ResourceArgs { [Input("amazonPrometheuses")] private InputList? _amazonPrometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public InputList AmazonPrometheuses { get => _amazonPrometheuses ?? (_amazonPrometheuses = new InputList()); @@ -22,14 +27,34 @@ public InputList Amazon [Input("appdynamics")] private InputList? _appdynamics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public InputList Appdynamics { get => _appdynamics ?? (_appdynamics = new InputList()); set => _appdynamics = value; } + [Input("azureMonitors")] + private InputList? _azureMonitors; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public InputList AzureMonitors + { + get => _azureMonitors ?? (_azureMonitors = new InputList()); + set => _azureMonitors = value; + } + [Input("bigqueries")] private InputList? _bigqueries; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public InputList Bigqueries { get => _bigqueries ?? (_bigqueries = new InputList()); @@ -38,6 +63,10 @@ public InputList Bigqueries [Input("cloudwatches")] private InputList? _cloudwatches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public InputList Cloudwatches { get => _cloudwatches ?? (_cloudwatches = new InputList()); @@ -46,6 +75,10 @@ public InputList Cloudwatches [Input("datadogs")] private InputList? _datadogs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public InputList Datadogs { get => _datadogs ?? (_datadogs = new InputList()); @@ -54,6 +87,10 @@ public InputList Datadogs [Input("dynatraces")] private InputList? _dynatraces; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public InputList Dynatraces { get => _dynatraces ?? (_dynatraces = new InputList()); @@ -62,6 +99,10 @@ public InputList Dynatraces [Input("elasticsearches")] private InputList? _elasticsearches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public InputList Elasticsearches { get => _elasticsearches ?? (_elasticsearches = new InputList()); @@ -70,6 +111,10 @@ public InputList Elasticse [Input("gcms")] private InputList? _gcms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public InputList Gcms { get => _gcms ?? (_gcms = new InputList()); @@ -78,6 +123,10 @@ public InputList Gcms [Input("grafanaLokis")] private InputList? _grafanaLokis; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public InputList GrafanaLokis { get => _grafanaLokis ?? (_grafanaLokis = new InputList()); @@ -86,14 +135,34 @@ public InputList GrafanaLoki [Input("graphites")] private InputList? _graphites; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public InputList Graphites { get => _graphites ?? (_graphites = new InputList()); set => _graphites = value; } + [Input("honeycombs")] + private InputList? _honeycombs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public InputList Honeycombs + { + get => _honeycombs ?? (_honeycombs = new InputList()); + set => _honeycombs = value; + } + [Input("influxdbs")] private InputList? _influxdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public InputList Influxdbs { get => _influxdbs ?? (_influxdbs = new InputList()); @@ -102,6 +171,10 @@ public InputList Influxdbs [Input("instanas")] private InputList? _instanas; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public InputList Instanas { get => _instanas ?? (_instanas = new InputList()); @@ -110,6 +183,10 @@ public InputList Instanas [Input("lightsteps")] private InputList? _lightsteps; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public InputList Lightsteps { get => _lightsteps ?? (_lightsteps = new InputList()); @@ -118,6 +195,10 @@ public InputList Lightsteps [Input("newrelics")] private InputList? _newrelics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public InputList Newrelics { get => _newrelics ?? (_newrelics = new InputList()); @@ -126,6 +207,10 @@ public InputList Newrelics [Input("opentsdbs")] private InputList? _opentsdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public InputList Opentsdbs { get => _opentsdbs ?? (_opentsdbs = new InputList()); @@ -134,6 +219,10 @@ public InputList Opentsdbs [Input("pingdoms")] private InputList? _pingdoms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public InputList Pingdoms { get => _pingdoms ?? (_pingdoms = new InputList()); @@ -142,6 +231,10 @@ public InputList Pingdoms [Input("prometheuses")] private InputList? _prometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public InputList Prometheuses { get => _prometheuses ?? (_prometheuses = new InputList()); @@ -150,6 +243,10 @@ public InputList Prometheuses [Input("redshifts")] private InputList? _redshifts; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public InputList Redshifts { get => _redshifts ?? (_redshifts = new InputList()); @@ -158,6 +255,10 @@ public InputList Redshifts [Input("splunkObservabilities")] private InputList? _splunkObservabilities; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public InputList SplunkObservabilities { get => _splunkObservabilities ?? (_splunkObservabilities = new InputList()); @@ -166,6 +267,10 @@ public InputList Spl [Input("splunks")] private InputList? _splunks; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public InputList Splunks { get => _splunks ?? (_splunks = new InputList()); @@ -174,6 +279,10 @@ public InputList Splunks [Input("sumologics")] private InputList? _sumologics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public InputList Sumologics { get => _sumologics ?? (_sumologics = new InputList()); @@ -182,6 +291,10 @@ public InputList Sumologics [Input("thousandeyes")] private InputList? _thousandeyes; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public InputList Thousandeyes { get => _thousandeyes ?? (_thousandeyes = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorArgs.cs new file mode 100644 index 0000000..0826351 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorArgs.cs @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricTotalAzureMonitorArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation")] + public Input? Aggregation { get; set; } + + /// + /// Specifies source: 'metrics' or 'logs' + /// + [Input("dataType", required: true)] + public Input DataType { get; set; } = null!; + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + [Input("kqlQuery")] + public Input? KqlQuery { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric [Optional for metrics] + /// + [Input("metricNamespace")] + public Input? MetricNamespace { get; set; } + + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + [Input("workspaces")] + private InputList? _workspaces; + + /// + /// Log analytics workspace [Required for logs] + /// + public InputList Workspaces + { + get => _workspaces ?? (_workspaces = new InputList()); + set => _workspaces = value; + } + + public SloObjectiveCountMetricTotalAzureMonitorArgs() + { + } + public static new SloObjectiveCountMetricTotalAzureMonitorArgs Empty => new SloObjectiveCountMetricTotalAzureMonitorArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorDimensionArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorDimensionArgs.cs new file mode 100644 index 0000000..b0a6017 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorDimensionArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricTotalAzureMonitorDimensionArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveCountMetricTotalAzureMonitorDimensionArgs() + { + } + public static new SloObjectiveCountMetricTotalAzureMonitorDimensionArgs Empty => new SloObjectiveCountMetricTotalAzureMonitorDimensionArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorDimensionGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorDimensionGetArgs.cs new file mode 100644 index 0000000..5d3dbec --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorDimensionGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricTotalAzureMonitorDimensionGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveCountMetricTotalAzureMonitorDimensionGetArgs() + { + } + public static new SloObjectiveCountMetricTotalAzureMonitorDimensionGetArgs Empty => new SloObjectiveCountMetricTotalAzureMonitorDimensionGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorGetArgs.cs new file mode 100644 index 0000000..435f77a --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorGetArgs.cs @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricTotalAzureMonitorGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation")] + public Input? Aggregation { get; set; } + + /// + /// Specifies source: 'metrics' or 'logs' + /// + [Input("dataType", required: true)] + public Input DataType { get; set; } = null!; + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + [Input("kqlQuery")] + public Input? KqlQuery { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric [Optional for metrics] + /// + [Input("metricNamespace")] + public Input? MetricNamespace { get; set; } + + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + [Input("workspaces")] + private InputList? _workspaces; + + /// + /// Log analytics workspace [Required for logs] + /// + public InputList Workspaces + { + get => _workspaces ?? (_workspaces = new InputList()); + set => _workspaces = value; + } + + public SloObjectiveCountMetricTotalAzureMonitorGetArgs() + { + } + public static new SloObjectiveCountMetricTotalAzureMonitorGetArgs Empty => new SloObjectiveCountMetricTotalAzureMonitorGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs.cs new file mode 100644 index 0000000..0de69a4 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs : global::Pulumi.ResourceArgs + { + /// + /// Resource group of the workspace + /// + [Input("resourceGroup", required: true)] + public Input ResourceGroup { get; set; } = null!; + + /// + /// Subscription ID of the workspace + /// + [Input("subscriptionId", required: true)] + public Input SubscriptionId { get; set; } = null!; + + /// + /// ID of the workspace + /// + [Input("workspaceId", required: true)] + public Input WorkspaceId { get; set; } = null!; + + public SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs() + { + } + public static new SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs Empty => new SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorWorkspaceGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorWorkspaceGetArgs.cs new file mode 100644 index 0000000..009fdb4 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalAzureMonitorWorkspaceGetArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricTotalAzureMonitorWorkspaceGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Resource group of the workspace + /// + [Input("resourceGroup", required: true)] + public Input ResourceGroup { get; set; } = null!; + + /// + /// Subscription ID of the workspace + /// + [Input("subscriptionId", required: true)] + public Input SubscriptionId { get; set; } = null!; + + /// + /// ID of the workspace + /// + [Input("workspaceId", required: true)] + public Input WorkspaceId { get; set; } = null!; + + public SloObjectiveCountMetricTotalAzureMonitorWorkspaceGetArgs() + { + } + public static new SloObjectiveCountMetricTotalAzureMonitorWorkspaceGetArgs Empty => new SloObjectiveCountMetricTotalAzureMonitorWorkspaceGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalBigqueryArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalBigqueryArgs.cs index 46044ce..c9fe0ba 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalBigqueryArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalBigqueryArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalBigqueryArgs : global::Pulumi.ResourceArgs { + /// + /// Location of you BigQuery + /// [Input("location", required: true)] public Input Location { get; set; } = null!; + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalBigqueryGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalBigqueryGetArgs.cs index fe9776e..d8e727a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalBigqueryGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalBigqueryGetArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalBigqueryGetArgs : global::Pulumi.ResourceArgs { + /// + /// Location of you BigQuery + /// [Input("location", required: true)] public Input Location { get; set; } = null!; + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchArgs.cs index 12c1e0a..95b8bbd 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchArgs.cs @@ -6,35 +6,64 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalCloudwatchArgs : global::Pulumi.ResourceArgs { + /// + /// AccountID used with cross-account observability feature + /// + [Input("accountId")] + public Input? AccountId { get; set; } + [Input("dimensions")] private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// public InputList Dimensions { get => _dimensions ?? (_dimensions = new InputList()); set => _dimensions = value; } + /// + /// JSON query + /// [Input("json")] public Input? Json { get; set; } + /// + /// Name of the metric [Required for metrics] + /// [Input("metricName")] public Input? MetricName { get; set; } + /// + /// Namespace of the metric + /// [Input("namespace")] public Input? Namespace { get; set; } + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; + /// + /// SQL query + /// [Input("sql")] public Input? Sql { get; set; } + /// + /// Metric data aggregations + /// [Input("stat")] public Input? Stat { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchDimensionArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchDimensionArgs.cs index 6a8c9d3..3f84248 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchDimensionArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchDimensionArgs.cs @@ -6,18 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalCloudwatchDimensionArgs : global::Pulumi.ResourceArgs { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// Burn rate value. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchDimensionGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchDimensionGetArgs.cs index 40637cd..5e7a338 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchDimensionGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchDimensionGetArgs.cs @@ -6,18 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalCloudwatchDimensionGetArgs : global::Pulumi.ResourceArgs { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// Burn rate value. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchGetArgs.cs index c4a714f..583169f 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalCloudwatchGetArgs.cs @@ -6,35 +6,64 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalCloudwatchGetArgs : global::Pulumi.ResourceArgs { + /// + /// AccountID used with cross-account observability feature + /// + [Input("accountId")] + public Input? AccountId { get; set; } + [Input("dimensions")] private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// public InputList Dimensions { get => _dimensions ?? (_dimensions = new InputList()); set => _dimensions = value; } + /// + /// JSON query + /// [Input("json")] public Input? Json { get; set; } + /// + /// Name of the metric [Required for metrics] + /// [Input("metricName")] public Input? MetricName { get; set; } + /// + /// Namespace of the metric + /// [Input("namespace")] public Input? Namespace { get; set; } + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; + /// + /// SQL query + /// [Input("sql")] public Input? Sql { get; set; } + /// + /// Metric data aggregations + /// [Input("stat")] public Input? Stat { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDatadogArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDatadogArgs.cs index ff69f6c..7489b7a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDatadogArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDatadogArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalDatadogArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDatadogGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDatadogGetArgs.cs index 4e26dbb..56aa37a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDatadogGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDatadogGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalDatadogGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDynatraceArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDynatraceArgs.cs index 1c12a8f..366bffa 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDynatraceArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDynatraceArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalDynatraceArgs : global::Pulumi.ResourceArgs { + /// + /// Selector for the metrics + /// [Input("metricSelector", required: true)] public Input MetricSelector { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDynatraceGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDynatraceGetArgs.cs index 185e603..2b550bf 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDynatraceGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalDynatraceGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalDynatraceGetArgs : global::Pulumi.ResourceArgs { + /// + /// Selector for the metrics + /// [Input("metricSelector", required: true)] public Input MetricSelector { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalElasticsearchArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalElasticsearchArgs.cs index 84b88f3..dac6e09 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalElasticsearchArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalElasticsearchArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalElasticsearchArgs : global::Pulumi.ResourceArgs { + /// + /// Index of metrics we want to query + /// [Input("index", required: true)] public Input Index { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalElasticsearchGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalElasticsearchGetArgs.cs index 428841c..8c9c6ad 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalElasticsearchGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalElasticsearchGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalElasticsearchGetArgs : global::Pulumi.ResourceArgs { + /// + /// Index of metrics we want to query + /// [Input("index", required: true)] public Input Index { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGcmArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGcmArgs.cs index 0b96fe5..36d793c 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGcmArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGcmArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalGcmArgs : global::Pulumi.ResourceArgs { + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGcmGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGcmGetArgs.cs index 3aed7ff..35ce0f5 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGcmGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGcmGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalGcmGetArgs : global::Pulumi.ResourceArgs { + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGetArgs.cs index 7a952bc..d34d83e 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGetArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalGetArgs : global::Pulumi.ResourceArgs { [Input("amazonPrometheuses")] private InputList? _amazonPrometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public InputList AmazonPrometheuses { get => _amazonPrometheuses ?? (_amazonPrometheuses = new InputList()); @@ -22,14 +27,34 @@ public InputList Ama [Input("appdynamics")] private InputList? _appdynamics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public InputList Appdynamics { get => _appdynamics ?? (_appdynamics = new InputList()); set => _appdynamics = value; } + [Input("azureMonitors")] + private InputList? _azureMonitors; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public InputList AzureMonitors + { + get => _azureMonitors ?? (_azureMonitors = new InputList()); + set => _azureMonitors = value; + } + [Input("bigqueries")] private InputList? _bigqueries; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public InputList Bigqueries { get => _bigqueries ?? (_bigqueries = new InputList()); @@ -38,6 +63,10 @@ public InputList Bigqueries [Input("cloudwatches")] private InputList? _cloudwatches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public InputList Cloudwatches { get => _cloudwatches ?? (_cloudwatches = new InputList()); @@ -46,6 +75,10 @@ public InputList Cloudwatc [Input("datadogs")] private InputList? _datadogs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public InputList Datadogs { get => _datadogs ?? (_datadogs = new InputList()); @@ -54,6 +87,10 @@ public InputList Datadogs [Input("dynatraces")] private InputList? _dynatraces; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public InputList Dynatraces { get => _dynatraces ?? (_dynatraces = new InputList()); @@ -62,6 +99,10 @@ public InputList Dynatraces [Input("elasticsearches")] private InputList? _elasticsearches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public InputList Elasticsearches { get => _elasticsearches ?? (_elasticsearches = new InputList()); @@ -70,6 +111,10 @@ public InputList Elasti [Input("gcms")] private InputList? _gcms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public InputList Gcms { get => _gcms ?? (_gcms = new InputList()); @@ -78,6 +123,10 @@ public InputList Gcms [Input("grafanaLokis")] private InputList? _grafanaLokis; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public InputList GrafanaLokis { get => _grafanaLokis ?? (_grafanaLokis = new InputList()); @@ -86,14 +135,34 @@ public InputList GrafanaL [Input("graphites")] private InputList? _graphites; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public InputList Graphites { get => _graphites ?? (_graphites = new InputList()); set => _graphites = value; } + [Input("honeycombs")] + private InputList? _honeycombs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public InputList Honeycombs + { + get => _honeycombs ?? (_honeycombs = new InputList()); + set => _honeycombs = value; + } + [Input("influxdbs")] private InputList? _influxdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public InputList Influxdbs { get => _influxdbs ?? (_influxdbs = new InputList()); @@ -102,6 +171,10 @@ public InputList Influxdbs [Input("instanas")] private InputList? _instanas; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public InputList Instanas { get => _instanas ?? (_instanas = new InputList()); @@ -110,6 +183,10 @@ public InputList Instanas [Input("lightsteps")] private InputList? _lightsteps; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public InputList Lightsteps { get => _lightsteps ?? (_lightsteps = new InputList()); @@ -118,6 +195,10 @@ public InputList Lightsteps [Input("newrelics")] private InputList? _newrelics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public InputList Newrelics { get => _newrelics ?? (_newrelics = new InputList()); @@ -126,6 +207,10 @@ public InputList Newrelics [Input("opentsdbs")] private InputList? _opentsdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public InputList Opentsdbs { get => _opentsdbs ?? (_opentsdbs = new InputList()); @@ -134,6 +219,10 @@ public InputList Opentsdbs [Input("pingdoms")] private InputList? _pingdoms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public InputList Pingdoms { get => _pingdoms ?? (_pingdoms = new InputList()); @@ -142,6 +231,10 @@ public InputList Pingdoms [Input("prometheuses")] private InputList? _prometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public InputList Prometheuses { get => _prometheuses ?? (_prometheuses = new InputList()); @@ -150,6 +243,10 @@ public InputList Prometheu [Input("redshifts")] private InputList? _redshifts; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public InputList Redshifts { get => _redshifts ?? (_redshifts = new InputList()); @@ -158,6 +255,10 @@ public InputList Redshifts [Input("splunkObservabilities")] private InputList? _splunkObservabilities; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public InputList SplunkObservabilities { get => _splunkObservabilities ?? (_splunkObservabilities = new InputList()); @@ -166,6 +267,10 @@ public InputList [Input("splunks")] private InputList? _splunks; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public InputList Splunks { get => _splunks ?? (_splunks = new InputList()); @@ -174,6 +279,10 @@ public InputList Splunks [Input("sumologics")] private InputList? _sumologics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public InputList Sumologics { get => _sumologics ?? (_sumologics = new InputList()); @@ -182,6 +291,10 @@ public InputList Sumologics [Input("thousandeyes")] private InputList? _thousandeyes; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public InputList Thousandeyes { get => _thousandeyes ?? (_thousandeyes = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGrafanaLokiArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGrafanaLokiArgs.cs index c849b21..d42e8cf 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGrafanaLokiArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGrafanaLokiArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalGrafanaLokiArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the logs + /// [Input("logql", required: true)] public Input Logql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGrafanaLokiGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGrafanaLokiGetArgs.cs index 2fb58f1..7d064cb 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGrafanaLokiGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGrafanaLokiGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalGrafanaLokiGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the logs + /// [Input("logql", required: true)] public Input Logql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGraphiteArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGraphiteArgs.cs index a10944a..75bbae6 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGraphiteArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGraphiteArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalGraphiteArgs : global::Pulumi.ResourceArgs { + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGraphiteGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGraphiteGetArgs.cs index ec5826b..0415e5a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGraphiteGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalGraphiteGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalGraphiteGetArgs : global::Pulumi.ResourceArgs { + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalHoneycombArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalHoneycombArgs.cs new file mode 100644 index 0000000..c2a9212 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalHoneycombArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricTotalHoneycombArgs : global::Pulumi.ResourceArgs + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + [Input("attribute")] + public Input? Attribute { get; set; } + + /// + /// Calculation type + /// + [Input("calculation", required: true)] + public Input Calculation { get; set; } = null!; + + public SloObjectiveCountMetricTotalHoneycombArgs() + { + } + public static new SloObjectiveCountMetricTotalHoneycombArgs Empty => new SloObjectiveCountMetricTotalHoneycombArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalHoneycombGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalHoneycombGetArgs.cs new file mode 100644 index 0000000..84bbcf8 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalHoneycombGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveCountMetricTotalHoneycombGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + [Input("attribute")] + public Input? Attribute { get; set; } + + /// + /// Calculation type + /// + [Input("calculation", required: true)] + public Input Calculation { get; set; } = null!; + + public SloObjectiveCountMetricTotalHoneycombGetArgs() + { + } + public static new SloObjectiveCountMetricTotalHoneycombGetArgs Empty => new SloObjectiveCountMetricTotalHoneycombGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInfluxdbArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInfluxdbArgs.cs index 6154730..a9695a8 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInfluxdbArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInfluxdbArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInfluxdbArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInfluxdbGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInfluxdbGetArgs.cs index 4350581..d950521 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInfluxdbGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInfluxdbGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInfluxdbGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationArgs.cs index 24f3d3a..824b3a7 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationArgs.cs @@ -6,32 +6,52 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInstanaApplicationArgs : global::Pulumi.ResourceArgs { + /// + /// Aggregation type [Required for metrics] + /// [Input("aggregation", required: true)] public Input Aggregation { get; set; } = null!; + /// + /// API query user passes in a JSON format + /// [Input("apiQuery", required: true)] public Input ApiQuery { get; set; } = null!; [Input("groupBies", required: true)] private InputList? _groupBies; + + /// + /// Group by method + /// public InputList GroupBies { get => _groupBies ?? (_groupBies = new InputList()); set => _groupBies = value; } + /// + /// Include internal + /// [Input("includeInternal")] public Input? IncludeInternal { get; set; } + /// + /// Include synthetic + /// [Input("includeSynthetic")] public Input? IncludeSynthetic { get; set; } + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGetArgs.cs index dbc3ff5..0dd355a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGetArgs.cs @@ -6,32 +6,52 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInstanaApplicationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Aggregation type [Required for metrics] + /// [Input("aggregation", required: true)] public Input Aggregation { get; set; } = null!; + /// + /// API query user passes in a JSON format + /// [Input("apiQuery", required: true)] public Input ApiQuery { get; set; } = null!; [Input("groupBies", required: true)] private InputList? _groupBies; + + /// + /// Group by method + /// public InputList GroupBies { get => _groupBies ?? (_groupBies = new InputList()); set => _groupBies = value; } + /// + /// Include internal + /// [Input("includeInternal")] public Input? IncludeInternal { get; set; } + /// + /// Include synthetic + /// [Input("includeSynthetic")] public Input? IncludeSynthetic { get; set; } + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs.cs index da0b90e..8d4d893 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs : global::Pulumi.ResourceArgs { + /// + /// Group by tag + /// [Input("tag", required: true)] public Input Tag { get; set; } = null!; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// [Input("tagEntity", required: true)] public Input TagEntity { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGroupByGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGroupByGetArgs.cs index f564773..0ac349e 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGroupByGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaApplicationGroupByGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInstanaApplicationGroupByGetArgs : global::Pulumi.ResourceArgs { + /// + /// Group by tag + /// [Input("tag", required: true)] public Input Tag { get; set; } = null!; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// [Input("tagEntity", required: true)] public Input TagEntity { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaArgs.cs index 96eaaad..f63f3bc 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInstanaArgs : global::Pulumi.ResourceArgs { [Input("applications")] private InputList? _applications; + + /// + /// Infrastructure metric type + /// public InputList Applications { get => _applications ?? (_applications = new InputList()); @@ -22,12 +27,19 @@ public InputList Appl [Input("infrastructures")] private InputList? _infrastructures; + + /// + /// Infrastructure metric type + /// public InputList Infrastructures { get => _infrastructures ?? (_infrastructures = new InputList()); set => _infrastructures = value; } + /// + /// Instana metric type 'application' or 'infrastructure' + /// [Input("metricType", required: true)] public Input MetricType { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaGetArgs.cs index e2d064d..c3fb566 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaGetArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInstanaGetArgs : global::Pulumi.ResourceArgs { [Input("applications")] private InputList? _applications; + + /// + /// Infrastructure metric type + /// public InputList Applications { get => _applications ?? (_applications = new InputList()); @@ -22,12 +27,19 @@ public InputList A [Input("infrastructures")] private InputList? _infrastructures; + + /// + /// Infrastructure metric type + /// public InputList Infrastructures { get => _infrastructures ?? (_infrastructures = new InputList()); set => _infrastructures = value; } + /// + /// Instana metric type 'application' or 'infrastructure' + /// [Input("metricType", required: true)] public Input MetricType { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaInfrastructureArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaInfrastructureArgs.cs index cd92221..ea634f3 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaInfrastructureArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaInfrastructureArgs.cs @@ -6,24 +6,40 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInstanaInfrastructureArgs : global::Pulumi.ResourceArgs { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// [Input("metricRetrievalMethod", required: true)] public Input MetricRetrievalMethod { get; set; } = null!; + /// + /// Plugin ID + /// [Input("pluginId", required: true)] public Input PluginId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query")] public Input? Query { get; set; } + /// + /// Snapshot ID + /// [Input("snapshotId")] public Input? SnapshotId { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaInfrastructureGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaInfrastructureGetArgs.cs index e5c878d..9e890a5 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaInfrastructureGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalInstanaInfrastructureGetArgs.cs @@ -6,24 +6,40 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalInstanaInfrastructureGetArgs : global::Pulumi.ResourceArgs { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// [Input("metricRetrievalMethod", required: true)] public Input MetricRetrievalMethod { get; set; } = null!; + /// + /// Plugin ID + /// [Input("pluginId", required: true)] public Input PluginId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query")] public Input? Query { get; set; } + /// + /// Snapshot ID + /// [Input("snapshotId")] public Input? SnapshotId { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalLightstepArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalLightstepArgs.cs index 3849fe7..ad30c54 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalLightstepArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalLightstepArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalLightstepArgs : global::Pulumi.ResourceArgs { + /// + /// Optional value to filter by percentiles + /// [Input("percentile")] public Input? Percentile { get; set; } + /// + /// ID of the metrics stream + /// [Input("streamId")] public Input? StreamId { get; set; } + /// + /// Type of data to filter by + /// [Input("typeOfData", required: true)] public Input TypeOfData { get; set; } = null!; + /// + /// UQL query + /// [Input("uql")] public Input? Uql { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalLightstepGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalLightstepGetArgs.cs index a492fbb..34485b2 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalLightstepGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalLightstepGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalLightstepGetArgs : global::Pulumi.ResourceArgs { + /// + /// Optional value to filter by percentiles + /// [Input("percentile")] public Input? Percentile { get; set; } + /// + /// ID of the metrics stream + /// [Input("streamId")] public Input? StreamId { get; set; } + /// + /// Type of data to filter by + /// [Input("typeOfData", required: true)] public Input TypeOfData { get; set; } = null!; + /// + /// UQL query + /// [Input("uql")] public Input? Uql { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalNewrelicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalNewrelicArgs.cs index 0d13a08..1381fc9 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalNewrelicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalNewrelicArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalNewrelicArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("nrql", required: true)] public Input Nrql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalNewrelicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalNewrelicGetArgs.cs index f8a67ab..6d807dd 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalNewrelicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalNewrelicGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalNewrelicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("nrql", required: true)] public Input Nrql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalOpentsdbArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalOpentsdbArgs.cs index 704662e..0053c83 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalOpentsdbArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalOpentsdbArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalOpentsdbArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalOpentsdbGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalOpentsdbGetArgs.cs index 13da630..ec2d388 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalOpentsdbGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalOpentsdbGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalOpentsdbGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPingdomArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPingdomArgs.cs index 062d2ea..7be64b0 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPingdomArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPingdomArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalPingdomArgs : global::Pulumi.ResourceArgs { + /// + /// Pingdom uptime or transaction check's ID + /// [Input("checkId", required: true)] public Input CheckId { get; set; } = null!; + /// + /// Pingdom check type - uptime or transaction + /// [Input("checkType")] public Input? CheckType { get; set; } + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// [Input("status")] public Input? Status { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPingdomGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPingdomGetArgs.cs index 1aaf1c5..5a26775 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPingdomGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPingdomGetArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalPingdomGetArgs : global::Pulumi.ResourceArgs { + /// + /// Pingdom uptime or transaction check's ID + /// [Input("checkId", required: true)] public Input CheckId { get; set; } = null!; + /// + /// Pingdom check type - uptime or transaction + /// [Input("checkType")] public Input? CheckType { get; set; } + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// [Input("status")] public Input? Status { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPrometheusArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPrometheusArgs.cs index 70591a7..a5606f1 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPrometheusArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPrometheusArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalPrometheusArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPrometheusGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPrometheusGetArgs.cs index 5920cd3..8dedae1 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPrometheusGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalPrometheusGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalPrometheusGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalRedshiftArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalRedshiftArgs.cs index 81a53b5..7dc67c2 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalRedshiftArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalRedshiftArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalRedshiftArgs : global::Pulumi.ResourceArgs { + /// + /// Redshift custer ID + /// [Input("clusterId", required: true)] public Input ClusterId { get; set; } = null!; + /// + /// Database name + /// [Input("databaseName", required: true)] public Input DatabaseName { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalRedshiftGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalRedshiftGetArgs.cs index 1a5a284..f40117d 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalRedshiftGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalRedshiftGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalRedshiftGetArgs : global::Pulumi.ResourceArgs { + /// + /// Redshift custer ID + /// [Input("clusterId", required: true)] public Input ClusterId { get; set; } = null!; + /// + /// Database name + /// [Input("databaseName", required: true)] public Input DatabaseName { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkArgs.cs index 324a1bf..9b07550 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalSplunkArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkGetArgs.cs index 70ed581..f3c08f9 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalSplunkGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkObservabilityArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkObservabilityArgs.cs index 4d681cc..5dda53f 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkObservabilityArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkObservabilityArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalSplunkObservabilityArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("program", required: true)] public Input Program { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkObservabilityGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkObservabilityGetArgs.cs index 32d0a4d..09907c4 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkObservabilityGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSplunkObservabilityGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalSplunkObservabilityGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("program", required: true)] public Input Program { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSumologicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSumologicArgs.cs index 55e2e91..5280218 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSumologicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSumologicArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalSumologicArgs : global::Pulumi.ResourceArgs { + /// + /// Period of data aggregation + /// [Input("quantization")] public Input? Quantization { get; set; } + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// [Input("rollup")] public Input? Rollup { get; set; } + /// + /// Sumologic source - metrics or logs + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSumologicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSumologicGetArgs.cs index cf765ba..3b43c9f 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSumologicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalSumologicGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalSumologicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Period of data aggregation + /// [Input("quantization")] public Input? Quantization { get; set; } + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// [Input("rollup")] public Input? Rollup { get; set; } + /// + /// Sumologic source - metrics or logs + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalThousandeyeArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalThousandeyeArgs.cs index abdffba..099a53d 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalThousandeyeArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalThousandeyeArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalThousandeyeArgs : global::Pulumi.ResourceArgs { + /// + /// ID of the test + /// [Input("testId", required: true)] public Input TestId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalThousandeyeGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalThousandeyeGetArgs.cs index 9dd56dc..197e1f2 100644 --- a/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalThousandeyeGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveCountMetricTotalThousandeyeGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveCountMetricTotalThousandeyeGetArgs : global::Pulumi.ResourceArgs { + /// + /// ID of the test + /// [Input("testId", required: true)] public Input TestId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveGetArgs.cs index cb71da5..977bc9f 100644 --- a/sdk/dotnet/Inputs/SloObjectiveGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveGetArgs : global::Pulumi.ResourceArgs @@ -16,7 +17,7 @@ public sealed class SloObjectiveGetArgs : global::Pulumi.ResourceArgs private InputList? _countMetrics; /// - /// Compares two time series, indicating the ratio of the count of good values to total values. + /// Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. /// public InputList CountMetrics { diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricArgs.cs index 0871e71..57cecee 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricArgs : global::Pulumi.ResourceArgs { - [Input("queries")] + [Input("queries", required: true)] private InputList? _queries; + + /// + /// Query for the metrics + /// public InputList Queries { get => _queries ?? (_queries = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricGetArgs.cs index 8b8a32c..1ca4906 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricGetArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricGetArgs : global::Pulumi.ResourceArgs { - [Input("queries")] + [Input("queries", required: true)] private InputList? _queries; + + /// + /// Query for the metrics + /// public InputList Queries { get => _queries ?? (_queries = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAmazonPrometheusArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAmazonPrometheusArgs.cs index 5afbffe..eab0eb7 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAmazonPrometheusArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAmazonPrometheusArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryAmazonPrometheusArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAmazonPrometheusGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAmazonPrometheusGetArgs.cs index 21970ee..b6ee7ec 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAmazonPrometheusGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAmazonPrometheusGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryAmazonPrometheusGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAppdynamicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAppdynamicArgs.cs index f17cbec..1aaecbf 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAppdynamicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAppdynamicArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryAppdynamicArgs : global::Pulumi.ResourceArgs { + /// + /// Name of the added application + /// [Input("applicationName", required: true)] public Input ApplicationName { get; set; } = null!; + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAppdynamicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAppdynamicGetArgs.cs index e470f65..02f0da1 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAppdynamicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAppdynamicGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryAppdynamicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Name of the added application + /// [Input("applicationName", required: true)] public Input ApplicationName { get; set; } = null!; + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryArgs.cs index 7b1dd58..1914d4b 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryArgs : global::Pulumi.ResourceArgs { [Input("amazonPrometheuses")] private InputList? _amazonPrometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public InputList AmazonPrometheuses { get => _amazonPrometheuses ?? (_amazonPrometheuses = new InputList()); @@ -22,14 +27,34 @@ public InputList AmazonPr [Input("appdynamics")] private InputList? _appdynamics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public InputList Appdynamics { get => _appdynamics ?? (_appdynamics = new InputList()); set => _appdynamics = value; } + [Input("azureMonitors")] + private InputList? _azureMonitors; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public InputList AzureMonitors + { + get => _azureMonitors ?? (_azureMonitors = new InputList()); + set => _azureMonitors = value; + } + [Input("bigqueries")] private InputList? _bigqueries; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public InputList Bigqueries { get => _bigqueries ?? (_bigqueries = new InputList()); @@ -38,6 +63,10 @@ public InputList Bigqueries [Input("cloudwatches")] private InputList? _cloudwatches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public InputList Cloudwatches { get => _cloudwatches ?? (_cloudwatches = new InputList()); @@ -46,6 +75,10 @@ public InputList Cloudwatches [Input("datadogs")] private InputList? _datadogs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public InputList Datadogs { get => _datadogs ?? (_datadogs = new InputList()); @@ -54,6 +87,10 @@ public InputList Datadogs [Input("dynatraces")] private InputList? _dynatraces; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public InputList Dynatraces { get => _dynatraces ?? (_dynatraces = new InputList()); @@ -62,6 +99,10 @@ public InputList Dynatraces [Input("elasticsearches")] private InputList? _elasticsearches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public InputList Elasticsearches { get => _elasticsearches ?? (_elasticsearches = new InputList()); @@ -70,6 +111,10 @@ public InputList Elasticsear [Input("gcms")] private InputList? _gcms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public InputList Gcms { get => _gcms ?? (_gcms = new InputList()); @@ -78,6 +123,10 @@ public InputList Gcms [Input("grafanaLokis")] private InputList? _grafanaLokis; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public InputList GrafanaLokis { get => _grafanaLokis ?? (_grafanaLokis = new InputList()); @@ -86,14 +135,34 @@ public InputList GrafanaLokis [Input("graphites")] private InputList? _graphites; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public InputList Graphites { get => _graphites ?? (_graphites = new InputList()); set => _graphites = value; } + [Input("honeycombs")] + private InputList? _honeycombs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public InputList Honeycombs + { + get => _honeycombs ?? (_honeycombs = new InputList()); + set => _honeycombs = value; + } + [Input("influxdbs")] private InputList? _influxdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public InputList Influxdbs { get => _influxdbs ?? (_influxdbs = new InputList()); @@ -102,6 +171,10 @@ public InputList Influxdbs [Input("instanas")] private InputList? _instanas; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public InputList Instanas { get => _instanas ?? (_instanas = new InputList()); @@ -110,6 +183,10 @@ public InputList Instanas [Input("lightsteps")] private InputList? _lightsteps; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public InputList Lightsteps { get => _lightsteps ?? (_lightsteps = new InputList()); @@ -118,6 +195,10 @@ public InputList Lightsteps [Input("newrelics")] private InputList? _newrelics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public InputList Newrelics { get => _newrelics ?? (_newrelics = new InputList()); @@ -126,6 +207,10 @@ public InputList Newrelics [Input("opentsdbs")] private InputList? _opentsdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public InputList Opentsdbs { get => _opentsdbs ?? (_opentsdbs = new InputList()); @@ -134,6 +219,10 @@ public InputList Opentsdbs [Input("pingdoms")] private InputList? _pingdoms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public InputList Pingdoms { get => _pingdoms ?? (_pingdoms = new InputList()); @@ -142,6 +231,10 @@ public InputList Pingdoms [Input("prometheuses")] private InputList? _prometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public InputList Prometheuses { get => _prometheuses ?? (_prometheuses = new InputList()); @@ -150,6 +243,10 @@ public InputList Prometheuses [Input("redshifts")] private InputList? _redshifts; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public InputList Redshifts { get => _redshifts ?? (_redshifts = new InputList()); @@ -158,6 +255,10 @@ public InputList Redshifts [Input("splunkObservabilities")] private InputList? _splunkObservabilities; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public InputList SplunkObservabilities { get => _splunkObservabilities ?? (_splunkObservabilities = new InputList()); @@ -166,6 +267,10 @@ public InputList Splun [Input("splunks")] private InputList? _splunks; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public InputList Splunks { get => _splunks ?? (_splunks = new InputList()); @@ -174,6 +279,10 @@ public InputList Splunks [Input("sumologics")] private InputList? _sumologics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public InputList Sumologics { get => _sumologics ?? (_sumologics = new InputList()); @@ -182,6 +291,10 @@ public InputList Sumologics [Input("thousandeyes")] private InputList? _thousandeyes; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public InputList Thousandeyes { get => _thousandeyes ?? (_thousandeyes = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorArgs.cs new file mode 100644 index 0000000..c564ae0 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorArgs.cs @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveRawMetricQueryAzureMonitorArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation")] + public Input? Aggregation { get; set; } + + /// + /// Specifies source: 'metrics' or 'logs' + /// + [Input("dataType", required: true)] + public Input DataType { get; set; } = null!; + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + [Input("kqlQuery")] + public Input? KqlQuery { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric [Optional for metrics] + /// + [Input("metricNamespace")] + public Input? MetricNamespace { get; set; } + + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + [Input("workspaces")] + private InputList? _workspaces; + + /// + /// Log analytics workspace [Required for logs] + /// + public InputList Workspaces + { + get => _workspaces ?? (_workspaces = new InputList()); + set => _workspaces = value; + } + + public SloObjectiveRawMetricQueryAzureMonitorArgs() + { + } + public static new SloObjectiveRawMetricQueryAzureMonitorArgs Empty => new SloObjectiveRawMetricQueryAzureMonitorArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorDimensionArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorDimensionArgs.cs new file mode 100644 index 0000000..e9b07ae --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorDimensionArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveRawMetricQueryAzureMonitorDimensionArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveRawMetricQueryAzureMonitorDimensionArgs() + { + } + public static new SloObjectiveRawMetricQueryAzureMonitorDimensionArgs Empty => new SloObjectiveRawMetricQueryAzureMonitorDimensionArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorDimensionGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorDimensionGetArgs.cs new file mode 100644 index 0000000..4c9ce4b --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorDimensionGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveRawMetricQueryAzureMonitorDimensionGetArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the previously defined alert method. + /// + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + /// + /// Burn rate value. + /// + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public SloObjectiveRawMetricQueryAzureMonitorDimensionGetArgs() + { + } + public static new SloObjectiveRawMetricQueryAzureMonitorDimensionGetArgs Empty => new SloObjectiveRawMetricQueryAzureMonitorDimensionGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorGetArgs.cs new file mode 100644 index 0000000..e622592 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorGetArgs.cs @@ -0,0 +1,81 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveRawMetricQueryAzureMonitorGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Aggregation type [Required for metrics] + /// + [Input("aggregation")] + public Input? Aggregation { get; set; } + + /// + /// Specifies source: 'metrics' or 'logs' + /// + [Input("dataType", required: true)] + public Input DataType { get; set; } = null!; + + [Input("dimensions")] + private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// + public InputList Dimensions + { + get => _dimensions ?? (_dimensions = new InputList()); + set => _dimensions = value; + } + + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + [Input("kqlQuery")] + public Input? KqlQuery { get; set; } + + /// + /// Name of the metric [Required for metrics] + /// + [Input("metricName")] + public Input? MetricName { get; set; } + + /// + /// Namespace of the metric [Optional for metrics] + /// + [Input("metricNamespace")] + public Input? MetricNamespace { get; set; } + + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + [Input("resourceId")] + public Input? ResourceId { get; set; } + + [Input("workspaces")] + private InputList? _workspaces; + + /// + /// Log analytics workspace [Required for logs] + /// + public InputList Workspaces + { + get => _workspaces ?? (_workspaces = new InputList()); + set => _workspaces = value; + } + + public SloObjectiveRawMetricQueryAzureMonitorGetArgs() + { + } + public static new SloObjectiveRawMetricQueryAzureMonitorGetArgs Empty => new SloObjectiveRawMetricQueryAzureMonitorGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs.cs new file mode 100644 index 0000000..bbe636b --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs : global::Pulumi.ResourceArgs + { + /// + /// Resource group of the workspace + /// + [Input("resourceGroup", required: true)] + public Input ResourceGroup { get; set; } = null!; + + /// + /// Subscription ID of the workspace + /// + [Input("subscriptionId", required: true)] + public Input SubscriptionId { get; set; } = null!; + + /// + /// ID of the workspace + /// + [Input("workspaceId", required: true)] + public Input WorkspaceId { get; set; } = null!; + + public SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs() + { + } + public static new SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs Empty => new SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorWorkspaceGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorWorkspaceGetArgs.cs new file mode 100644 index 0000000..f554396 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryAzureMonitorWorkspaceGetArgs.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveRawMetricQueryAzureMonitorWorkspaceGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Resource group of the workspace + /// + [Input("resourceGroup", required: true)] + public Input ResourceGroup { get; set; } = null!; + + /// + /// Subscription ID of the workspace + /// + [Input("subscriptionId", required: true)] + public Input SubscriptionId { get; set; } = null!; + + /// + /// ID of the workspace + /// + [Input("workspaceId", required: true)] + public Input WorkspaceId { get; set; } = null!; + + public SloObjectiveRawMetricQueryAzureMonitorWorkspaceGetArgs() + { + } + public static new SloObjectiveRawMetricQueryAzureMonitorWorkspaceGetArgs Empty => new SloObjectiveRawMetricQueryAzureMonitorWorkspaceGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryBigqueryArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryBigqueryArgs.cs index be98a0e..3fa5e1b 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryBigqueryArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryBigqueryArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryBigqueryArgs : global::Pulumi.ResourceArgs { + /// + /// Location of you BigQuery + /// [Input("location", required: true)] public Input Location { get; set; } = null!; + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryBigqueryGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryBigqueryGetArgs.cs index e344c52..5d0742a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryBigqueryGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryBigqueryGetArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryBigqueryGetArgs : global::Pulumi.ResourceArgs { + /// + /// Location of you BigQuery + /// [Input("location", required: true)] public Input Location { get; set; } = null!; + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchArgs.cs index caf35f8..5edb224 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchArgs.cs @@ -6,35 +6,64 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryCloudwatchArgs : global::Pulumi.ResourceArgs { + /// + /// AccountID used with cross-account observability feature + /// + [Input("accountId")] + public Input? AccountId { get; set; } + [Input("dimensions")] private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// public InputList Dimensions { get => _dimensions ?? (_dimensions = new InputList()); set => _dimensions = value; } + /// + /// JSON query + /// [Input("json")] public Input? Json { get; set; } + /// + /// Name of the metric [Required for metrics] + /// [Input("metricName")] public Input? MetricName { get; set; } + /// + /// Namespace of the metric + /// [Input("namespace")] public Input? Namespace { get; set; } + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; + /// + /// SQL query + /// [Input("sql")] public Input? Sql { get; set; } + /// + /// Metric data aggregations + /// [Input("stat")] public Input? Stat { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchDimensionArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchDimensionArgs.cs index e4a0713..6fdb328 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchDimensionArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchDimensionArgs.cs @@ -6,18 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryCloudwatchDimensionArgs : global::Pulumi.ResourceArgs { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// Burn rate value. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchDimensionGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchDimensionGetArgs.cs index 0a39f55..2bde1bc 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchDimensionGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchDimensionGetArgs.cs @@ -6,18 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryCloudwatchDimensionGetArgs : global::Pulumi.ResourceArgs { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name", required: true)] public Input Name { get; set; } = null!; + /// + /// Burn rate value. + /// [Input("value", required: true)] public Input Value { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchGetArgs.cs index c1d041a..a93ee9b 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryCloudwatchGetArgs.cs @@ -6,35 +6,64 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryCloudwatchGetArgs : global::Pulumi.ResourceArgs { + /// + /// AccountID used with cross-account observability feature + /// + [Input("accountId")] + public Input? AccountId { get; set; } + [Input("dimensions")] private InputList? _dimensions; + + /// + /// Dimensions of the metric [Optional for metrics] + /// public InputList Dimensions { get => _dimensions ?? (_dimensions = new InputList()); set => _dimensions = value; } + /// + /// JSON query + /// [Input("json")] public Input? Json { get; set; } + /// + /// Name of the metric [Required for metrics] + /// [Input("metricName")] public Input? MetricName { get; set; } + /// + /// Namespace of the metric + /// [Input("namespace")] public Input? Namespace { get; set; } + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; + /// + /// SQL query + /// [Input("sql")] public Input? Sql { get; set; } + /// + /// Metric data aggregations + /// [Input("stat")] public Input? Stat { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDatadogArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDatadogArgs.cs index 137df78..6b6bbc5 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDatadogArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDatadogArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryDatadogArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDatadogGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDatadogGetArgs.cs index c0ddbef..653dc79 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDatadogGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDatadogGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryDatadogGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDynatraceArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDynatraceArgs.cs index 575fc73..f9539db 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDynatraceArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDynatraceArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryDynatraceArgs : global::Pulumi.ResourceArgs { + /// + /// Selector for the metrics + /// [Input("metricSelector", required: true)] public Input MetricSelector { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDynatraceGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDynatraceGetArgs.cs index 208b945..5d85f11 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDynatraceGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryDynatraceGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryDynatraceGetArgs : global::Pulumi.ResourceArgs { + /// + /// Selector for the metrics + /// [Input("metricSelector", required: true)] public Input MetricSelector { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryElasticsearchArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryElasticsearchArgs.cs index 06c0cb7..ffd1ed6 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryElasticsearchArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryElasticsearchArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryElasticsearchArgs : global::Pulumi.ResourceArgs { + /// + /// Index of metrics we want to query + /// [Input("index", required: true)] public Input Index { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryElasticsearchGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryElasticsearchGetArgs.cs index 032d1c5..c1357ac 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryElasticsearchGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryElasticsearchGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryElasticsearchGetArgs : global::Pulumi.ResourceArgs { + /// + /// Index of metrics we want to query + /// [Input("index", required: true)] public Input Index { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGcmArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGcmArgs.cs index 4ff42dc..95ff3b6 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGcmArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGcmArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryGcmArgs : global::Pulumi.ResourceArgs { + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGcmGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGcmGetArgs.cs index 95ca50b..ada66bf 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGcmGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGcmGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryGcmGetArgs : global::Pulumi.ResourceArgs { + /// + /// Project ID + /// [Input("projectId", required: true)] public Input ProjectId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGetArgs.cs index 080d6c1..a16068e 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGetArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryGetArgs : global::Pulumi.ResourceArgs { [Input("amazonPrometheuses")] private InputList? _amazonPrometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public InputList AmazonPrometheuses { get => _amazonPrometheuses ?? (_amazonPrometheuses = new InputList()); @@ -22,14 +27,34 @@ public InputList Amazo [Input("appdynamics")] private InputList? _appdynamics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public InputList Appdynamics { get => _appdynamics ?? (_appdynamics = new InputList()); set => _appdynamics = value; } + [Input("azureMonitors")] + private InputList? _azureMonitors; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public InputList AzureMonitors + { + get => _azureMonitors ?? (_azureMonitors = new InputList()); + set => _azureMonitors = value; + } + [Input("bigqueries")] private InputList? _bigqueries; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public InputList Bigqueries { get => _bigqueries ?? (_bigqueries = new InputList()); @@ -38,6 +63,10 @@ public InputList Bigqueries [Input("cloudwatches")] private InputList? _cloudwatches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public InputList Cloudwatches { get => _cloudwatches ?? (_cloudwatches = new InputList()); @@ -46,6 +75,10 @@ public InputList Cloudwatche [Input("datadogs")] private InputList? _datadogs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public InputList Datadogs { get => _datadogs ?? (_datadogs = new InputList()); @@ -54,6 +87,10 @@ public InputList Datadogs [Input("dynatraces")] private InputList? _dynatraces; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public InputList Dynatraces { get => _dynatraces ?? (_dynatraces = new InputList()); @@ -62,6 +99,10 @@ public InputList Dynatraces [Input("elasticsearches")] private InputList? _elasticsearches; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public InputList Elasticsearches { get => _elasticsearches ?? (_elasticsearches = new InputList()); @@ -70,6 +111,10 @@ public InputList Elastics [Input("gcms")] private InputList? _gcms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public InputList Gcms { get => _gcms ?? (_gcms = new InputList()); @@ -78,6 +123,10 @@ public InputList Gcms [Input("grafanaLokis")] private InputList? _grafanaLokis; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public InputList GrafanaLokis { get => _grafanaLokis ?? (_grafanaLokis = new InputList()); @@ -86,14 +135,34 @@ public InputList GrafanaLok [Input("graphites")] private InputList? _graphites; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public InputList Graphites { get => _graphites ?? (_graphites = new InputList()); set => _graphites = value; } + [Input("honeycombs")] + private InputList? _honeycombs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public InputList Honeycombs + { + get => _honeycombs ?? (_honeycombs = new InputList()); + set => _honeycombs = value; + } + [Input("influxdbs")] private InputList? _influxdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public InputList Influxdbs { get => _influxdbs ?? (_influxdbs = new InputList()); @@ -102,6 +171,10 @@ public InputList Influxdbs [Input("instanas")] private InputList? _instanas; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public InputList Instanas { get => _instanas ?? (_instanas = new InputList()); @@ -110,6 +183,10 @@ public InputList Instanas [Input("lightsteps")] private InputList? _lightsteps; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public InputList Lightsteps { get => _lightsteps ?? (_lightsteps = new InputList()); @@ -118,6 +195,10 @@ public InputList Lightsteps [Input("newrelics")] private InputList? _newrelics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public InputList Newrelics { get => _newrelics ?? (_newrelics = new InputList()); @@ -126,6 +207,10 @@ public InputList Newrelics [Input("opentsdbs")] private InputList? _opentsdbs; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public InputList Opentsdbs { get => _opentsdbs ?? (_opentsdbs = new InputList()); @@ -134,6 +219,10 @@ public InputList Opentsdbs [Input("pingdoms")] private InputList? _pingdoms; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public InputList Pingdoms { get => _pingdoms ?? (_pingdoms = new InputList()); @@ -142,6 +231,10 @@ public InputList Pingdoms [Input("prometheuses")] private InputList? _prometheuses; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public InputList Prometheuses { get => _prometheuses ?? (_prometheuses = new InputList()); @@ -150,6 +243,10 @@ public InputList Prometheuse [Input("redshifts")] private InputList? _redshifts; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public InputList Redshifts { get => _redshifts ?? (_redshifts = new InputList()); @@ -158,6 +255,10 @@ public InputList Redshifts [Input("splunkObservabilities")] private InputList? _splunkObservabilities; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public InputList SplunkObservabilities { get => _splunkObservabilities ?? (_splunkObservabilities = new InputList()); @@ -166,6 +267,10 @@ public InputList Sp [Input("splunks")] private InputList? _splunks; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public InputList Splunks { get => _splunks ?? (_splunks = new InputList()); @@ -174,6 +279,10 @@ public InputList Splunks [Input("sumologics")] private InputList? _sumologics; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public InputList Sumologics { get => _sumologics ?? (_sumologics = new InputList()); @@ -182,6 +291,10 @@ public InputList Sumologics [Input("thousandeyes")] private InputList? _thousandeyes; + + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public InputList Thousandeyes { get => _thousandeyes ?? (_thousandeyes = new InputList()); diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGrafanaLokiArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGrafanaLokiArgs.cs index 1ffe272..f695599 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGrafanaLokiArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGrafanaLokiArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryGrafanaLokiArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the logs + /// [Input("logql", required: true)] public Input Logql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGrafanaLokiGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGrafanaLokiGetArgs.cs index faa9e68..631c215 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGrafanaLokiGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGrafanaLokiGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryGrafanaLokiGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the logs + /// [Input("logql", required: true)] public Input Logql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGraphiteArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGraphiteArgs.cs index aaad81b..f2f1b7c 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGraphiteArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGraphiteArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryGraphiteArgs : global::Pulumi.ResourceArgs { + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGraphiteGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGraphiteGetArgs.cs index 1c493a6..3b1b90a 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGraphiteGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryGraphiteGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryGraphiteGetArgs : global::Pulumi.ResourceArgs { + /// + /// Path to the metrics + /// [Input("metricPath", required: true)] public Input MetricPath { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryHoneycombArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryHoneycombArgs.cs new file mode 100644 index 0000000..feb6246 --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryHoneycombArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveRawMetricQueryHoneycombArgs : global::Pulumi.ResourceArgs + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + [Input("attribute")] + public Input? Attribute { get; set; } + + /// + /// Calculation type + /// + [Input("calculation", required: true)] + public Input Calculation { get; set; } = null!; + + public SloObjectiveRawMetricQueryHoneycombArgs() + { + } + public static new SloObjectiveRawMetricQueryHoneycombArgs Empty => new SloObjectiveRawMetricQueryHoneycombArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryHoneycombGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryHoneycombGetArgs.cs new file mode 100644 index 0000000..9cd421c --- /dev/null +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryHoneycombGetArgs.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Inputs +{ + + public sealed class SloObjectiveRawMetricQueryHoneycombGetArgs : global::Pulumi.ResourceArgs + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + [Input("attribute")] + public Input? Attribute { get; set; } + + /// + /// Calculation type + /// + [Input("calculation", required: true)] + public Input Calculation { get; set; } = null!; + + public SloObjectiveRawMetricQueryHoneycombGetArgs() + { + } + public static new SloObjectiveRawMetricQueryHoneycombGetArgs Empty => new SloObjectiveRawMetricQueryHoneycombGetArgs(); + } +} diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInfluxdbArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInfluxdbArgs.cs index 934c19e..464e394 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInfluxdbArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInfluxdbArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInfluxdbArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInfluxdbGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInfluxdbGetArgs.cs index 88b2a22..ab27993 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInfluxdbGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInfluxdbGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInfluxdbGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationArgs.cs index 2d1d70c..8474903 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationArgs.cs @@ -6,32 +6,52 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInstanaApplicationArgs : global::Pulumi.ResourceArgs { + /// + /// Aggregation type [Required for metrics] + /// [Input("aggregation", required: true)] public Input Aggregation { get; set; } = null!; + /// + /// API query user passes in a JSON format + /// [Input("apiQuery", required: true)] public Input ApiQuery { get; set; } = null!; [Input("groupBies", required: true)] private InputList? _groupBies; + + /// + /// Group by method + /// public InputList GroupBies { get => _groupBies ?? (_groupBies = new InputList()); set => _groupBies = value; } + /// + /// Include internal + /// [Input("includeInternal")] public Input? IncludeInternal { get; set; } + /// + /// Include synthetic + /// [Input("includeSynthetic")] public Input? IncludeSynthetic { get; set; } + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGetArgs.cs index 20efc21..9e7b31e 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGetArgs.cs @@ -6,32 +6,52 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInstanaApplicationGetArgs : global::Pulumi.ResourceArgs { + /// + /// Aggregation type [Required for metrics] + /// [Input("aggregation", required: true)] public Input Aggregation { get; set; } = null!; + /// + /// API query user passes in a JSON format + /// [Input("apiQuery", required: true)] public Input ApiQuery { get; set; } = null!; [Input("groupBies", required: true)] private InputList? _groupBies; + + /// + /// Group by method + /// public InputList GroupBies { get => _groupBies ?? (_groupBies = new InputList()); set => _groupBies = value; } + /// + /// Include internal + /// [Input("includeInternal")] public Input? IncludeInternal { get; set; } + /// + /// Include synthetic + /// [Input("includeSynthetic")] public Input? IncludeSynthetic { get; set; } + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs.cs index 34f913b..9964d6d 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs : global::Pulumi.ResourceArgs { + /// + /// Group by tag + /// [Input("tag", required: true)] public Input Tag { get; set; } = null!; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// [Input("tagEntity", required: true)] public Input TagEntity { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGroupByGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGroupByGetArgs.cs index c6c9f66..25b5989 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGroupByGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaApplicationGroupByGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInstanaApplicationGroupByGetArgs : global::Pulumi.ResourceArgs { + /// + /// Group by tag + /// [Input("tag", required: true)] public Input Tag { get; set; } = null!; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// [Input("tagEntity", required: true)] public Input TagEntity { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaArgs.cs index 449d17b..51f1228 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInstanaArgs : global::Pulumi.ResourceArgs { [Input("applications")] private InputList? _applications; + + /// + /// Infrastructure metric type + /// public InputList Applications { get => _applications ?? (_applications = new InputList()); @@ -22,12 +27,19 @@ public InputList Applic [Input("infrastructures")] private InputList? _infrastructures; + + /// + /// Infrastructure metric type + /// public InputList Infrastructures { get => _infrastructures ?? (_infrastructures = new InputList()); set => _infrastructures = value; } + /// + /// Instana metric type 'application' or 'infrastructure' + /// [Input("metricType", required: true)] public Input MetricType { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaGetArgs.cs index 5400046..bf0abb9 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaGetArgs.cs @@ -6,14 +6,19 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInstanaGetArgs : global::Pulumi.ResourceArgs { [Input("applications")] private InputList? _applications; + + /// + /// Infrastructure metric type + /// public InputList Applications { get => _applications ?? (_applications = new InputList()); @@ -22,12 +27,19 @@ public InputList App [Input("infrastructures")] private InputList? _infrastructures; + + /// + /// Infrastructure metric type + /// public InputList Infrastructures { get => _infrastructures ?? (_infrastructures = new InputList()); set => _infrastructures = value; } + /// + /// Instana metric type 'application' or 'infrastructure' + /// [Input("metricType", required: true)] public Input MetricType { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaInfrastructureArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaInfrastructureArgs.cs index 7f8f29e..47aa8ba 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaInfrastructureArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaInfrastructureArgs.cs @@ -6,24 +6,40 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInstanaInfrastructureArgs : global::Pulumi.ResourceArgs { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// [Input("metricRetrievalMethod", required: true)] public Input MetricRetrievalMethod { get; set; } = null!; + /// + /// Plugin ID + /// [Input("pluginId", required: true)] public Input PluginId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query")] public Input? Query { get; set; } + /// + /// Snapshot ID + /// [Input("snapshotId")] public Input? SnapshotId { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaInfrastructureGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaInfrastructureGetArgs.cs index b277c1a..b02a866 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaInfrastructureGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryInstanaInfrastructureGetArgs.cs @@ -6,24 +6,40 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryInstanaInfrastructureGetArgs : global::Pulumi.ResourceArgs { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// [Input("metricId", required: true)] public Input MetricId { get; set; } = null!; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// [Input("metricRetrievalMethod", required: true)] public Input MetricRetrievalMethod { get; set; } = null!; + /// + /// Plugin ID + /// [Input("pluginId", required: true)] public Input PluginId { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query")] public Input? Query { get; set; } + /// + /// Snapshot ID + /// [Input("snapshotId")] public Input? SnapshotId { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryLightstepArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryLightstepArgs.cs index 84d77ee..af6b3ce 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryLightstepArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryLightstepArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryLightstepArgs : global::Pulumi.ResourceArgs { + /// + /// Optional value to filter by percentiles + /// [Input("percentile")] public Input? Percentile { get; set; } + /// + /// ID of the metrics stream + /// [Input("streamId")] public Input? StreamId { get; set; } + /// + /// Type of data to filter by + /// [Input("typeOfData", required: true)] public Input TypeOfData { get; set; } = null!; + /// + /// UQL query + /// [Input("uql")] public Input? Uql { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryLightstepGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryLightstepGetArgs.cs index 6135709..d4209a0 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryLightstepGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryLightstepGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryLightstepGetArgs : global::Pulumi.ResourceArgs { + /// + /// Optional value to filter by percentiles + /// [Input("percentile")] public Input? Percentile { get; set; } + /// + /// ID of the metrics stream + /// [Input("streamId")] public Input? StreamId { get; set; } + /// + /// Type of data to filter by + /// [Input("typeOfData", required: true)] public Input TypeOfData { get; set; } = null!; + /// + /// UQL query + /// [Input("uql")] public Input? Uql { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryNewrelicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryNewrelicArgs.cs index 4f8f412..1fcc93c 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryNewrelicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryNewrelicArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryNewrelicArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("nrql", required: true)] public Input Nrql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryNewrelicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryNewrelicGetArgs.cs index 850ccf9..653389c 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryNewrelicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryNewrelicGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryNewrelicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("nrql", required: true)] public Input Nrql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryOpentsdbArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryOpentsdbArgs.cs index d8a3eec..70d3e80 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryOpentsdbArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryOpentsdbArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryOpentsdbArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryOpentsdbGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryOpentsdbGetArgs.cs index 76c56d3..9cb0c25 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryOpentsdbGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryOpentsdbGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryOpentsdbGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPingdomArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPingdomArgs.cs index dffbb54..077494d 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPingdomArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPingdomArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryPingdomArgs : global::Pulumi.ResourceArgs { + /// + /// Pingdom uptime or transaction check's ID + /// [Input("checkId", required: true)] public Input CheckId { get; set; } = null!; + /// + /// Pingdom check type - uptime or transaction + /// [Input("checkType")] public Input? CheckType { get; set; } + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// [Input("status")] public Input? Status { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPingdomGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPingdomGetArgs.cs index 6680ca1..0b17fdf 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPingdomGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPingdomGetArgs.cs @@ -6,18 +6,28 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryPingdomGetArgs : global::Pulumi.ResourceArgs { + /// + /// Pingdom uptime or transaction check's ID + /// [Input("checkId", required: true)] public Input CheckId { get; set; } = null!; + /// + /// Pingdom check type - uptime or transaction + /// [Input("checkType")] public Input? CheckType { get; set; } + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// [Input("status")] public Input? Status { get; set; } diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPrometheusArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPrometheusArgs.cs index 3cf9f85..a1ef08c 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPrometheusArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPrometheusArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryPrometheusArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPrometheusGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPrometheusGetArgs.cs index 480e646..7d5e673 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPrometheusGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryPrometheusGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryPrometheusGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("promql", required: true)] public Input Promql { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryRedshiftArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryRedshiftArgs.cs index 12157f9..02425c3 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryRedshiftArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryRedshiftArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryRedshiftArgs : global::Pulumi.ResourceArgs { + /// + /// Redshift custer ID + /// [Input("clusterId", required: true)] public Input ClusterId { get; set; } = null!; + /// + /// Database name + /// [Input("databaseName", required: true)] public Input DatabaseName { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryRedshiftGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryRedshiftGetArgs.cs index 5a27070..382345e 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryRedshiftGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryRedshiftGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryRedshiftGetArgs : global::Pulumi.ResourceArgs { + /// + /// Redshift custer ID + /// [Input("clusterId", required: true)] public Input ClusterId { get; set; } = null!; + /// + /// Database name + /// [Input("databaseName", required: true)] public Input DatabaseName { get; set; } = null!; + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Region of the CloudWatch instance + /// [Input("region", required: true)] public Input Region { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkArgs.cs index 1d05b1a..1acc846 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQuerySplunkArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkGetArgs.cs index 8c15a3b..24d77d6 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQuerySplunkGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkObservabilityArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkObservabilityArgs.cs index d248a0e..7f8c2a5 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkObservabilityArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkObservabilityArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQuerySplunkObservabilityArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("program", required: true)] public Input Program { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkObservabilityGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkObservabilityGetArgs.cs index 9975b0e..c1b9a84 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkObservabilityGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySplunkObservabilityGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQuerySplunkObservabilityGetArgs : global::Pulumi.ResourceArgs { + /// + /// Query for the metrics + /// [Input("program", required: true)] public Input Program { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySumologicArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySumologicArgs.cs index 8cb50f6..076d1ac 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySumologicArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySumologicArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQuerySumologicArgs : global::Pulumi.ResourceArgs { + /// + /// Period of data aggregation + /// [Input("quantization")] public Input? Quantization { get; set; } + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// [Input("rollup")] public Input? Rollup { get; set; } + /// + /// Sumologic source - metrics or logs + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySumologicGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySumologicGetArgs.cs index 131382d..4e7d5fd 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySumologicGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQuerySumologicGetArgs.cs @@ -6,21 +6,34 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQuerySumologicGetArgs : global::Pulumi.ResourceArgs { + /// + /// Period of data aggregation + /// [Input("quantization")] public Input? Quantization { get; set; } + /// + /// Query for the metrics + /// [Input("query", required: true)] public Input Query { get; set; } = null!; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// [Input("rollup")] public Input? Rollup { get; set; } + /// + /// Sumologic source - metrics or logs + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryThousandeyeArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryThousandeyeArgs.cs index 698b856..f23fe74 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryThousandeyeArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryThousandeyeArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryThousandeyeArgs : global::Pulumi.ResourceArgs { + /// + /// ID of the test + /// [Input("testId", required: true)] public Input TestId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryThousandeyeGetArgs.cs b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryThousandeyeGetArgs.cs index b7afd1a..04eb0d4 100644 --- a/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryThousandeyeGetArgs.cs +++ b/sdk/dotnet/Inputs/SloObjectiveRawMetricQueryThousandeyeGetArgs.cs @@ -6,12 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloObjectiveRawMetricQueryThousandeyeGetArgs : global::Pulumi.ResourceArgs { + /// + /// ID of the test + /// [Input("testId", required: true)] public Input TestId { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloTimeWindowArgs.cs b/sdk/dotnet/Inputs/SloTimeWindowArgs.cs index c51d39a..b717868 100644 --- a/sdk/dotnet/Inputs/SloTimeWindowArgs.cs +++ b/sdk/dotnet/Inputs/SloTimeWindowArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloTimeWindowArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Inputs/SloTimeWindowCalendarArgs.cs b/sdk/dotnet/Inputs/SloTimeWindowCalendarArgs.cs index 902fbef..8fb3e8f 100644 --- a/sdk/dotnet/Inputs/SloTimeWindowCalendarArgs.cs +++ b/sdk/dotnet/Inputs/SloTimeWindowCalendarArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloTimeWindowCalendarArgs : global::Pulumi.ResourceArgs { + /// + /// Date of the start + /// [Input("startTime", required: true)] public Input StartTime { get; set; } = null!; + /// + /// Timezone name in IANA Time Zone Database + /// [Input("timeZone", required: true)] public Input TimeZone { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloTimeWindowCalendarGetArgs.cs b/sdk/dotnet/Inputs/SloTimeWindowCalendarGetArgs.cs index b9c875f..b699499 100644 --- a/sdk/dotnet/Inputs/SloTimeWindowCalendarGetArgs.cs +++ b/sdk/dotnet/Inputs/SloTimeWindowCalendarGetArgs.cs @@ -6,15 +6,22 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloTimeWindowCalendarGetArgs : global::Pulumi.ResourceArgs { + /// + /// Date of the start + /// [Input("startTime", required: true)] public Input StartTime { get; set; } = null!; + /// + /// Timezone name in IANA Time Zone Database + /// [Input("timeZone", required: true)] public Input TimeZone { get; set; } = null!; diff --git a/sdk/dotnet/Inputs/SloTimeWindowGetArgs.cs b/sdk/dotnet/Inputs/SloTimeWindowGetArgs.cs index 282e5ca..ff5ed34 100644 --- a/sdk/dotnet/Inputs/SloTimeWindowGetArgs.cs +++ b/sdk/dotnet/Inputs/SloTimeWindowGetArgs.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Inputs +namespace Piclemx.Nobl9.Inputs { public sealed class SloTimeWindowGetArgs : global::Pulumi.ResourceArgs diff --git a/sdk/dotnet/Outputs/AgentAmazonPrometheusConfig.cs b/sdk/dotnet/Outputs/AgentAmazonPrometheusConfig.cs index b4c04a1..7067b59 100644 --- a/sdk/dotnet/Outputs/AgentAmazonPrometheusConfig.cs +++ b/sdk/dotnet/Outputs/AgentAmazonPrometheusConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentAppdynamicsConfig.cs b/sdk/dotnet/Outputs/AgentAppdynamicsConfig.cs index 3db0319..12ee418 100644 --- a/sdk/dotnet/Outputs/AgentAppdynamicsConfig.cs +++ b/sdk/dotnet/Outputs/AgentAppdynamicsConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentAzureMonitorConfig.cs b/sdk/dotnet/Outputs/AgentAzureMonitorConfig.cs new file mode 100644 index 0000000..1121377 --- /dev/null +++ b/sdk/dotnet/Outputs/AgentAzureMonitorConfig.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class AgentAzureMonitorConfig + { + /// + /// Azure Tenant Id. + /// + public readonly string TenantId; + + [OutputConstructor] + private AgentAzureMonitorConfig(string tenantId) + { + TenantId = tenantId; + } + } +} diff --git a/sdk/dotnet/Outputs/AgentBigqueryConfig.cs b/sdk/dotnet/Outputs/AgentBigqueryConfig.cs index 5b751f8..9d46f55 100644 --- a/sdk/dotnet/Outputs/AgentBigqueryConfig.cs +++ b/sdk/dotnet/Outputs/AgentBigqueryConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentCloudwatchConfig.cs b/sdk/dotnet/Outputs/AgentCloudwatchConfig.cs index 33f5027..6a25c93 100644 --- a/sdk/dotnet/Outputs/AgentCloudwatchConfig.cs +++ b/sdk/dotnet/Outputs/AgentCloudwatchConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentDatadogConfig.cs b/sdk/dotnet/Outputs/AgentDatadogConfig.cs index 393f61e..158a0a7 100644 --- a/sdk/dotnet/Outputs/AgentDatadogConfig.cs +++ b/sdk/dotnet/Outputs/AgentDatadogConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentDynatraceConfig.cs b/sdk/dotnet/Outputs/AgentDynatraceConfig.cs index 90b0cfe..619e090 100644 --- a/sdk/dotnet/Outputs/AgentDynatraceConfig.cs +++ b/sdk/dotnet/Outputs/AgentDynatraceConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentElasticsearchConfig.cs b/sdk/dotnet/Outputs/AgentElasticsearchConfig.cs index 75f135e..9e886bf 100644 --- a/sdk/dotnet/Outputs/AgentElasticsearchConfig.cs +++ b/sdk/dotnet/Outputs/AgentElasticsearchConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentGcmConfig.cs b/sdk/dotnet/Outputs/AgentGcmConfig.cs index 634d1c3..8d4f814 100644 --- a/sdk/dotnet/Outputs/AgentGcmConfig.cs +++ b/sdk/dotnet/Outputs/AgentGcmConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentGrafanaLokiConfig.cs b/sdk/dotnet/Outputs/AgentGrafanaLokiConfig.cs index 6aab699..a844cc1 100644 --- a/sdk/dotnet/Outputs/AgentGrafanaLokiConfig.cs +++ b/sdk/dotnet/Outputs/AgentGrafanaLokiConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentGraphiteConfig.cs b/sdk/dotnet/Outputs/AgentGraphiteConfig.cs index e805775..042920f 100644 --- a/sdk/dotnet/Outputs/AgentGraphiteConfig.cs +++ b/sdk/dotnet/Outputs/AgentGraphiteConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/AgentHistoricalDataRetrieval.cs new file mode 100644 index 0000000..654466c --- /dev/null +++ b/sdk/dotnet/Outputs/AgentHistoricalDataRetrieval.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class AgentHistoricalDataRetrieval + { + /// + /// Used by default for any SLOs connected to this data source. + /// + public readonly ImmutableArray DefaultDurations; + /// + /// Defines the maximum period for which data can be retrieved. + /// + public readonly ImmutableArray MaxDurations; + + [OutputConstructor] + private AgentHistoricalDataRetrieval( + ImmutableArray defaultDurations, + + ImmutableArray maxDurations) + { + DefaultDurations = defaultDurations; + MaxDurations = maxDurations; + } + } +} diff --git a/sdk/dotnet/Outputs/AgentHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/AgentHistoricalDataRetrievalDefaultDuration.cs new file mode 100644 index 0000000..afb7cdf --- /dev/null +++ b/sdk/dotnet/Outputs/AgentHistoricalDataRetrievalDefaultDuration.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class AgentHistoricalDataRetrievalDefaultDuration + { + /// + /// Must be one of Minute, Hour, or Day. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private AgentHistoricalDataRetrievalDefaultDuration( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/AgentHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/AgentHistoricalDataRetrievalMaxDuration.cs new file mode 100644 index 0000000..7700551 --- /dev/null +++ b/sdk/dotnet/Outputs/AgentHistoricalDataRetrievalMaxDuration.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class AgentHistoricalDataRetrievalMaxDuration + { + /// + /// Must be one of Minute, Hour, or Day. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private AgentHistoricalDataRetrievalMaxDuration( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/AgentHoneycombConfig.cs b/sdk/dotnet/Outputs/AgentHoneycombConfig.cs new file mode 100644 index 0000000..1d6a85f --- /dev/null +++ b/sdk/dotnet/Outputs/AgentHoneycombConfig.cs @@ -0,0 +1,22 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class AgentHoneycombConfig + { + [OutputConstructor] + private AgentHoneycombConfig() + { + } + } +} diff --git a/sdk/dotnet/Outputs/AgentInfluxdbConfig.cs b/sdk/dotnet/Outputs/AgentInfluxdbConfig.cs index f01f504..e94dd9a 100644 --- a/sdk/dotnet/Outputs/AgentInfluxdbConfig.cs +++ b/sdk/dotnet/Outputs/AgentInfluxdbConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentInstanaConfig.cs b/sdk/dotnet/Outputs/AgentInstanaConfig.cs index e579110..149d34d 100644 --- a/sdk/dotnet/Outputs/AgentInstanaConfig.cs +++ b/sdk/dotnet/Outputs/AgentInstanaConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentLightstepConfig.cs b/sdk/dotnet/Outputs/AgentLightstepConfig.cs index a54f1c3..64d9b20 100644 --- a/sdk/dotnet/Outputs/AgentLightstepConfig.cs +++ b/sdk/dotnet/Outputs/AgentLightstepConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] @@ -21,15 +22,22 @@ public sealed class AgentLightstepConfig /// Name of the Lightstep project. /// public readonly string Project; + /// + /// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + /// + public readonly string? Url; [OutputConstructor] private AgentLightstepConfig( string organization, - string project) + string project, + + string? url) { Organization = organization; Project = project; + Url = url; } } } diff --git a/sdk/dotnet/Outputs/AgentNewrelicConfig.cs b/sdk/dotnet/Outputs/AgentNewrelicConfig.cs index bcbbc57..338e523 100644 --- a/sdk/dotnet/Outputs/AgentNewrelicConfig.cs +++ b/sdk/dotnet/Outputs/AgentNewrelicConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentOpentsdbConfig.cs b/sdk/dotnet/Outputs/AgentOpentsdbConfig.cs index dba6262..ef34a03 100644 --- a/sdk/dotnet/Outputs/AgentOpentsdbConfig.cs +++ b/sdk/dotnet/Outputs/AgentOpentsdbConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentPingdomConfig.cs b/sdk/dotnet/Outputs/AgentPingdomConfig.cs index c3f49a4..e39b2ae 100644 --- a/sdk/dotnet/Outputs/AgentPingdomConfig.cs +++ b/sdk/dotnet/Outputs/AgentPingdomConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentPrometheusConfig.cs b/sdk/dotnet/Outputs/AgentPrometheusConfig.cs index cc16fca..5d9bb25 100644 --- a/sdk/dotnet/Outputs/AgentPrometheusConfig.cs +++ b/sdk/dotnet/Outputs/AgentPrometheusConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentQueryDelay.cs b/sdk/dotnet/Outputs/AgentQueryDelay.cs index 484cc6e..f8fb1e1 100644 --- a/sdk/dotnet/Outputs/AgentQueryDelay.cs +++ b/sdk/dotnet/Outputs/AgentQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentRedshiftConfig.cs b/sdk/dotnet/Outputs/AgentRedshiftConfig.cs index f504bcf..757a004 100644 --- a/sdk/dotnet/Outputs/AgentRedshiftConfig.cs +++ b/sdk/dotnet/Outputs/AgentRedshiftConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentSplunkConfig.cs b/sdk/dotnet/Outputs/AgentSplunkConfig.cs index b6f97a0..c916046 100644 --- a/sdk/dotnet/Outputs/AgentSplunkConfig.cs +++ b/sdk/dotnet/Outputs/AgentSplunkConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentSplunkObservabilityConfig.cs b/sdk/dotnet/Outputs/AgentSplunkObservabilityConfig.cs index 02fb6a5..2fcc474 100644 --- a/sdk/dotnet/Outputs/AgentSplunkObservabilityConfig.cs +++ b/sdk/dotnet/Outputs/AgentSplunkObservabilityConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentSumologicConfig.cs b/sdk/dotnet/Outputs/AgentSumologicConfig.cs index 691ebf7..297e92a 100644 --- a/sdk/dotnet/Outputs/AgentSumologicConfig.cs +++ b/sdk/dotnet/Outputs/AgentSumologicConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AgentThousandeyesConfig.cs b/sdk/dotnet/Outputs/AgentThousandeyesConfig.cs index 84a318f..255ced8 100644 --- a/sdk/dotnet/Outputs/AgentThousandeyesConfig.cs +++ b/sdk/dotnet/Outputs/AgentThousandeyesConfig.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AlertMethodPagerdutySendResolution.cs b/sdk/dotnet/Outputs/AlertMethodPagerdutySendResolution.cs new file mode 100644 index 0000000..e86b9b1 --- /dev/null +++ b/sdk/dotnet/Outputs/AlertMethodPagerdutySendResolution.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class AlertMethodPagerdutySendResolution + { + /// + /// A message that will be attached to your 'all clear' notification. + /// + public readonly string? Message; + + [OutputConstructor] + private AlertMethodPagerdutySendResolution(string? message) + { + Message = message; + } + } +} diff --git a/sdk/dotnet/Outputs/AlertPolicyAlertMethod.cs b/sdk/dotnet/Outputs/AlertPolicyAlertMethod.cs index b5c0da8..6e8152e 100644 --- a/sdk/dotnet/Outputs/AlertPolicyAlertMethod.cs +++ b/sdk/dotnet/Outputs/AlertPolicyAlertMethod.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/AlertPolicyCondition.cs b/sdk/dotnet/Outputs/AlertPolicyCondition.cs index 0a53fe7..88698d3 100644 --- a/sdk/dotnet/Outputs/AlertPolicyCondition.cs +++ b/sdk/dotnet/Outputs/AlertPolicyCondition.cs @@ -6,19 +6,24 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class AlertPolicyCondition { + /// + /// Duration over which the burn rate is evaluated. + /// + public readonly string? AlertingWindow; /// /// Indicates how long a given condition needs to be valid to mark the condition as true. /// public readonly string? LastsFor; /// - /// One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + /// One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. /// public readonly string Measurement; /// @@ -26,12 +31,14 @@ public sealed class AlertPolicyCondition /// public readonly double? Value; /// - /// Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + /// Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. /// public readonly string? ValueString; [OutputConstructor] private AlertPolicyCondition( + string? alertingWindow, + string? lastsFor, string measurement, @@ -40,6 +47,7 @@ public sealed class AlertPolicyCondition string? valueString) { + AlertingWindow = alertingWindow; LastsFor = lastsFor; Measurement = measurement; Value = value; diff --git a/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrieval.cs new file mode 100644 index 0000000..757a3ae --- /dev/null +++ b/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrieval.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectAppdynamicsHistoricalDataRetrieval + { + /// + /// Used by default for any SLOs connected to this data source. + /// + public readonly ImmutableArray DefaultDurations; + /// + /// Defines the maximum period for which data can be retrieved. + /// + public readonly ImmutableArray MaxDurations; + + [OutputConstructor] + private DirectAppdynamicsHistoricalDataRetrieval( + ImmutableArray defaultDurations, + + ImmutableArray maxDurations) + { + DefaultDurations = defaultDurations; + MaxDurations = maxDurations; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDuration.cs new file mode 100644 index 0000000..bd64f96 --- /dev/null +++ b/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrievalDefaultDuration.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectAppdynamicsHistoricalDataRetrievalDefaultDuration + { + /// + /// Must be one of Minute, Hour, or Day. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private DirectAppdynamicsHistoricalDataRetrievalDefaultDuration( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrievalMaxDuration.cs new file mode 100644 index 0000000..8e4a920 --- /dev/null +++ b/sdk/dotnet/Outputs/DirectAppdynamicsHistoricalDataRetrievalMaxDuration.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectAppdynamicsHistoricalDataRetrievalMaxDuration + { + /// + /// Must be one of Minute, Hour, or Day. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private DirectAppdynamicsHistoricalDataRetrievalMaxDuration( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectAppdynamicsQueryDelay.cs b/sdk/dotnet/Outputs/DirectAppdynamicsQueryDelay.cs index 48b611c..6ee9c1c 100644 --- a/sdk/dotnet/Outputs/DirectAppdynamicsQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectAppdynamicsQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrieval.cs new file mode 100644 index 0000000..63fd72a --- /dev/null +++ b/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrieval.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectAzureMonitorHistoricalDataRetrieval + { + /// + /// Used by default for any SLOs connected to this data source. + /// + public readonly ImmutableArray DefaultDurations; + /// + /// Defines the maximum period for which data can be retrieved. + /// + public readonly ImmutableArray MaxDurations; + + [OutputConstructor] + private DirectAzureMonitorHistoricalDataRetrieval( + ImmutableArray defaultDurations, + + ImmutableArray maxDurations) + { + DefaultDurations = defaultDurations; + MaxDurations = maxDurations; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDuration.cs new file mode 100644 index 0000000..433042c --- /dev/null +++ b/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrievalDefaultDuration.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectAzureMonitorHistoricalDataRetrievalDefaultDuration + { + /// + /// Must be one of Minute, Hour, or Day. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private DirectAzureMonitorHistoricalDataRetrievalDefaultDuration( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrievalMaxDuration.cs new file mode 100644 index 0000000..ced80bf --- /dev/null +++ b/sdk/dotnet/Outputs/DirectAzureMonitorHistoricalDataRetrievalMaxDuration.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectAzureMonitorHistoricalDataRetrievalMaxDuration + { + /// + /// Must be one of Minute, Hour, or Day. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private DirectAzureMonitorHistoricalDataRetrievalMaxDuration( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectAzureMonitorQueryDelay.cs b/sdk/dotnet/Outputs/DirectAzureMonitorQueryDelay.cs new file mode 100644 index 0000000..aa3dfb7 --- /dev/null +++ b/sdk/dotnet/Outputs/DirectAzureMonitorQueryDelay.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectAzureMonitorQueryDelay + { + /// + /// Must be one of Minute or Second. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private DirectAzureMonitorQueryDelay( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectBigqueryQueryDelay.cs b/sdk/dotnet/Outputs/DirectBigqueryQueryDelay.cs index af36b62..56c5876 100644 --- a/sdk/dotnet/Outputs/DirectBigqueryQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectBigqueryQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrieval.cs index 55ce275..3423310 100644 --- a/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrieval.cs +++ b/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrieval.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrievalDefaultDuration.cs index be56201..6837fab 100644 --- a/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrievalDefaultDuration.cs +++ b/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrievalDefaultDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectCloudwatchHistoricalDataRetrievalDefaultDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrievalMaxDuration.cs index e1aed3d..82045f8 100644 --- a/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrievalMaxDuration.cs +++ b/sdk/dotnet/Outputs/DirectCloudwatchHistoricalDataRetrievalMaxDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectCloudwatchHistoricalDataRetrievalMaxDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectCloudwatchQueryDelay.cs b/sdk/dotnet/Outputs/DirectCloudwatchQueryDelay.cs index a131ccd..c215e8b 100644 --- a/sdk/dotnet/Outputs/DirectCloudwatchQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectCloudwatchQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrieval.cs index d9cf5e3..c6ab45d 100644 --- a/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrieval.cs +++ b/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrieval.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrievalDefaultDuration.cs index 08480cd..dd7eca6 100644 --- a/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrievalDefaultDuration.cs +++ b/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrievalDefaultDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectDatadogHistoricalDataRetrievalDefaultDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrievalMaxDuration.cs index 19b352f..59aba78 100644 --- a/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrievalMaxDuration.cs +++ b/sdk/dotnet/Outputs/DirectDatadogHistoricalDataRetrievalMaxDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectDatadogHistoricalDataRetrievalMaxDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectDatadogQueryDelay.cs b/sdk/dotnet/Outputs/DirectDatadogQueryDelay.cs index 68aef80..3132e65 100644 --- a/sdk/dotnet/Outputs/DirectDatadogQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectDatadogQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrieval.cs index 9f5ccc9..d3708a0 100644 --- a/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrieval.cs +++ b/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrieval.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrievalDefaultDuration.cs index de4cafc..e7d2423 100644 --- a/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrievalDefaultDuration.cs +++ b/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrievalDefaultDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectDynatraceHistoricalDataRetrievalDefaultDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrievalMaxDuration.cs index e4fd60b..3fa2948 100644 --- a/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrievalMaxDuration.cs +++ b/sdk/dotnet/Outputs/DirectDynatraceHistoricalDataRetrievalMaxDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectDynatraceHistoricalDataRetrievalMaxDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectDynatraceQueryDelay.cs b/sdk/dotnet/Outputs/DirectDynatraceQueryDelay.cs index 00f35f3..3d36330 100644 --- a/sdk/dotnet/Outputs/DirectDynatraceQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectDynatraceQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectGcmQueryDelay.cs b/sdk/dotnet/Outputs/DirectGcmQueryDelay.cs index 5f10f13..f172659 100644 --- a/sdk/dotnet/Outputs/DirectGcmQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectGcmQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrieval.cs new file mode 100644 index 0000000..dfa6524 --- /dev/null +++ b/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrieval.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectHoneycombHistoricalDataRetrieval + { + /// + /// Used by default for any SLOs connected to this data source. + /// + public readonly ImmutableArray DefaultDurations; + /// + /// Defines the maximum period for which data can be retrieved. + /// + public readonly ImmutableArray MaxDurations; + + [OutputConstructor] + private DirectHoneycombHistoricalDataRetrieval( + ImmutableArray defaultDurations, + + ImmutableArray maxDurations) + { + DefaultDurations = defaultDurations; + MaxDurations = maxDurations; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrievalDefaultDuration.cs new file mode 100644 index 0000000..0500f14 --- /dev/null +++ b/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrievalDefaultDuration.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectHoneycombHistoricalDataRetrievalDefaultDuration + { + /// + /// Must be one of Minute, Hour, or Day. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private DirectHoneycombHistoricalDataRetrievalDefaultDuration( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrievalMaxDuration.cs new file mode 100644 index 0000000..63ae7de --- /dev/null +++ b/sdk/dotnet/Outputs/DirectHoneycombHistoricalDataRetrievalMaxDuration.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectHoneycombHistoricalDataRetrievalMaxDuration + { + /// + /// Must be one of Minute, Hour, or Day. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private DirectHoneycombHistoricalDataRetrievalMaxDuration( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectHoneycombQueryDelay.cs b/sdk/dotnet/Outputs/DirectHoneycombQueryDelay.cs new file mode 100644 index 0000000..15bcf1b --- /dev/null +++ b/sdk/dotnet/Outputs/DirectHoneycombQueryDelay.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class DirectHoneycombQueryDelay + { + /// + /// Must be one of Minute or Second. + /// + public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// + public readonly int Value; + + [OutputConstructor] + private DirectHoneycombQueryDelay( + string unit, + + int value) + { + Unit = unit; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/DirectInfluxdbQueryDelay.cs b/sdk/dotnet/Outputs/DirectInfluxdbQueryDelay.cs index 46d592c..f2895e1 100644 --- a/sdk/dotnet/Outputs/DirectInfluxdbQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectInfluxdbQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectInstanaQueryDelay.cs b/sdk/dotnet/Outputs/DirectInstanaQueryDelay.cs index a72491d..d970eed 100644 --- a/sdk/dotnet/Outputs/DirectInstanaQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectInstanaQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrieval.cs index 3cb76e0..09cc3f9 100644 --- a/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrieval.cs +++ b/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrieval.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrievalDefaultDuration.cs index 102d438..6e6e470 100644 --- a/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrievalDefaultDuration.cs +++ b/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrievalDefaultDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectLightstepHistoricalDataRetrievalDefaultDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrievalMaxDuration.cs index 43fcc2c..4d4e31c 100644 --- a/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrievalMaxDuration.cs +++ b/sdk/dotnet/Outputs/DirectLightstepHistoricalDataRetrievalMaxDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectLightstepHistoricalDataRetrievalMaxDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectLightstepQueryDelay.cs b/sdk/dotnet/Outputs/DirectLightstepQueryDelay.cs index 9c2dfce..4ac5972 100644 --- a/sdk/dotnet/Outputs/DirectLightstepQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectLightstepQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrieval.cs index 8881119..fcc96ed 100644 --- a/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrieval.cs +++ b/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrieval.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrievalDefaultDuration.cs index 1ed7faf..51e3ccf 100644 --- a/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrievalDefaultDuration.cs +++ b/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrievalDefaultDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectNewrelicHistoricalDataRetrievalDefaultDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrievalMaxDuration.cs index c47f969..a22873f 100644 --- a/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrievalMaxDuration.cs +++ b/sdk/dotnet/Outputs/DirectNewrelicHistoricalDataRetrievalMaxDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectNewrelicHistoricalDataRetrievalMaxDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectNewrelicQueryDelay.cs b/sdk/dotnet/Outputs/DirectNewrelicQueryDelay.cs index 5ec10a4..2182294 100644 --- a/sdk/dotnet/Outputs/DirectNewrelicQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectNewrelicQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectPingdomQueryDelay.cs b/sdk/dotnet/Outputs/DirectPingdomQueryDelay.cs index c2c948b..6cf5a51 100644 --- a/sdk/dotnet/Outputs/DirectPingdomQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectPingdomQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectRedshiftQueryDelay.cs b/sdk/dotnet/Outputs/DirectRedshiftQueryDelay.cs index 802e37f..6bb953a 100644 --- a/sdk/dotnet/Outputs/DirectRedshiftQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectRedshiftQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrieval.cs b/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrieval.cs index 83eec83..fb6bdce 100644 --- a/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrieval.cs +++ b/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrieval.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrievalDefaultDuration.cs b/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrievalDefaultDuration.cs index 3005daf..c90185f 100644 --- a/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrievalDefaultDuration.cs +++ b/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrievalDefaultDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectSplunkHistoricalDataRetrievalDefaultDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrievalMaxDuration.cs b/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrievalMaxDuration.cs index 572f552..1ebef4d 100644 --- a/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrievalMaxDuration.cs +++ b/sdk/dotnet/Outputs/DirectSplunkHistoricalDataRetrievalMaxDuration.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class DirectSplunkHistoricalDataRetrievalMaxDuration { + /// + /// Must be one of Minute, Hour, or Day. + /// public readonly string Unit; + /// + /// Must be an integer greater than or equal to 0. + /// public readonly int Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/DirectSplunkObservabilityQueryDelay.cs b/sdk/dotnet/Outputs/DirectSplunkObservabilityQueryDelay.cs index 02949e5..72ac402 100644 --- a/sdk/dotnet/Outputs/DirectSplunkObservabilityQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectSplunkObservabilityQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectSplunkQueryDelay.cs b/sdk/dotnet/Outputs/DirectSplunkQueryDelay.cs index 718a592..3de3ac3 100644 --- a/sdk/dotnet/Outputs/DirectSplunkQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectSplunkQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectSumologicQueryDelay.cs b/sdk/dotnet/Outputs/DirectSumologicQueryDelay.cs index 693fda6..b58e80c 100644 --- a/sdk/dotnet/Outputs/DirectSumologicQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectSumologicQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/DirectThousandeyesQueryDelay.cs b/sdk/dotnet/Outputs/DirectThousandeyesQueryDelay.cs index 117c158..d4b2475 100644 --- a/sdk/dotnet/Outputs/DirectThousandeyesQueryDelay.cs +++ b/sdk/dotnet/Outputs/DirectThousandeyesQueryDelay.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/ProjectLabel.cs b/sdk/dotnet/Outputs/ProjectLabel.cs index 90f5f0a..460bffe 100644 --- a/sdk/dotnet/Outputs/ProjectLabel.cs +++ b/sdk/dotnet/Outputs/ProjectLabel.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/ServiceLabel.cs b/sdk/dotnet/Outputs/ServiceLabel.cs index 78596f7..0a182bf 100644 --- a/sdk/dotnet/Outputs/ServiceLabel.cs +++ b/sdk/dotnet/Outputs/ServiceLabel.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/SloAnomalyConfig.cs b/sdk/dotnet/Outputs/SloAnomalyConfig.cs new file mode 100644 index 0000000..f7c1fcf --- /dev/null +++ b/sdk/dotnet/Outputs/SloAnomalyConfig.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloAnomalyConfig + { + /// + /// Alert Policies attached to SLO + /// + public readonly Outputs.SloAnomalyConfigNoData NoData; + + [OutputConstructor] + private SloAnomalyConfig(Outputs.SloAnomalyConfigNoData noData) + { + NoData = noData; + } + } +} diff --git a/sdk/dotnet/Outputs/SloAnomalyConfigNoData.cs b/sdk/dotnet/Outputs/SloAnomalyConfigNoData.cs new file mode 100644 index 0000000..f3a2972 --- /dev/null +++ b/sdk/dotnet/Outputs/SloAnomalyConfigNoData.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloAnomalyConfigNoData + { + /// + /// Alert methods attached to Anomaly Config + /// + public readonly ImmutableArray AlertMethods; + + [OutputConstructor] + private SloAnomalyConfigNoData(ImmutableArray alertMethods) + { + AlertMethods = alertMethods; + } + } +} diff --git a/sdk/dotnet/Outputs/SloAnomalyConfigNoDataAlertMethod.cs b/sdk/dotnet/Outputs/SloAnomalyConfigNoDataAlertMethod.cs new file mode 100644 index 0000000..b0fb659 --- /dev/null +++ b/sdk/dotnet/Outputs/SloAnomalyConfigNoDataAlertMethod.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloAnomalyConfigNoDataAlertMethod + { + /// + /// The name of the previously defined alert method. + /// + public readonly string Name; + /// + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + /// + public readonly string Project; + + [OutputConstructor] + private SloAnomalyConfigNoDataAlertMethod( + string name, + + string project) + { + Name = name; + Project = project; + } + } +} diff --git a/sdk/dotnet/Outputs/SloAttachment.cs b/sdk/dotnet/Outputs/SloAttachment.cs index 37d2ea1..cf12964 100644 --- a/sdk/dotnet/Outputs/SloAttachment.cs +++ b/sdk/dotnet/Outputs/SloAttachment.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/SloComposite.cs b/sdk/dotnet/Outputs/SloComposite.cs index 6bcbf80..865f4be 100644 --- a/sdk/dotnet/Outputs/SloComposite.cs +++ b/sdk/dotnet/Outputs/SloComposite.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/SloCompositeBurnRateCondition.cs b/sdk/dotnet/Outputs/SloCompositeBurnRateCondition.cs index 58a62ad..bae5a37 100644 --- a/sdk/dotnet/Outputs/SloCompositeBurnRateCondition.cs +++ b/sdk/dotnet/Outputs/SloCompositeBurnRateCondition.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloCompositeBurnRateCondition { + /// + /// Type of logical operation + /// public readonly string Op; + /// + /// Burn rate value. + /// public readonly double Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloIndicator.cs b/sdk/dotnet/Outputs/SloIndicator.cs index 197d89f..6bfb78e 100644 --- a/sdk/dotnet/Outputs/SloIndicator.cs +++ b/sdk/dotnet/Outputs/SloIndicator.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/SloLabel.cs b/sdk/dotnet/Outputs/SloLabel.cs index 44db5e9..09ea4e4 100644 --- a/sdk/dotnet/Outputs/SloLabel.cs +++ b/sdk/dotnet/Outputs/SloLabel.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/SloObjective.cs b/sdk/dotnet/Outputs/SloObjective.cs index ac0592c..2b3f961 100644 --- a/sdk/dotnet/Outputs/SloObjective.cs +++ b/sdk/dotnet/Outputs/SloObjective.cs @@ -6,15 +6,16 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjective { /// - /// Compares two time series, indicating the ratio of the count of good values to total values. + /// Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. /// public readonly ImmutableArray CountMetrics; /// diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetric.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetric.cs index be822b1..5a70b1e 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetric.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetric.cs @@ -6,25 +6,42 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetric { + /// + /// Configuration for bad time series metrics. + /// + public readonly ImmutableArray Bads; + /// + /// Configuration for good time series metrics. + /// public readonly ImmutableArray Goods; + /// + /// Should the metrics be incrementing or not + /// public readonly bool Incremental; + /// + /// Configuration for metric source + /// public readonly ImmutableArray Totals; [OutputConstructor] private SloObjectiveCountMetric( + ImmutableArray bads, + ImmutableArray goods, bool incremental, ImmutableArray totals) { + Bads = bads; Goods = goods; Incremental = incremental; Totals = totals; diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBad.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBad.cs new file mode 100644 index 0000000..fb7495b --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBad.cs @@ -0,0 +1,190 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBad + { + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// + public readonly ImmutableArray AmazonPrometheuses; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// + public readonly ImmutableArray Appdynamics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public readonly ImmutableArray AzureMonitors; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// + public readonly ImmutableArray Bigqueries; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// + public readonly ImmutableArray Cloudwatches; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// + public readonly ImmutableArray Datadogs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// + public readonly ImmutableArray Dynatraces; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// + public readonly ImmutableArray Elasticsearches; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// + public readonly ImmutableArray Gcms; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// + public readonly ImmutableArray GrafanaLokis; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// + public readonly ImmutableArray Graphites; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public readonly ImmutableArray Honeycombs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// + public readonly ImmutableArray Influxdbs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// + public readonly ImmutableArray Instanas; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// + public readonly ImmutableArray Lightsteps; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// + public readonly ImmutableArray Newrelics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// + public readonly ImmutableArray Opentsdbs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// + public readonly ImmutableArray Pingdoms; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// + public readonly ImmutableArray Prometheuses; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// + public readonly ImmutableArray Redshifts; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// + public readonly ImmutableArray SplunkObservabilities; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// + public readonly ImmutableArray Splunks; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// + public readonly ImmutableArray Sumologics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// + public readonly ImmutableArray Thousandeyes; + + [OutputConstructor] + private SloObjectiveCountMetricBad( + ImmutableArray amazonPrometheuses, + + ImmutableArray appdynamics, + + ImmutableArray azureMonitors, + + ImmutableArray bigqueries, + + ImmutableArray cloudwatches, + + ImmutableArray datadogs, + + ImmutableArray dynatraces, + + ImmutableArray elasticsearches, + + ImmutableArray gcms, + + ImmutableArray grafanaLokis, + + ImmutableArray graphites, + + ImmutableArray honeycombs, + + ImmutableArray influxdbs, + + ImmutableArray instanas, + + ImmutableArray lightsteps, + + ImmutableArray newrelics, + + ImmutableArray opentsdbs, + + ImmutableArray pingdoms, + + ImmutableArray prometheuses, + + ImmutableArray redshifts, + + ImmutableArray splunkObservabilities, + + ImmutableArray splunks, + + ImmutableArray sumologics, + + ImmutableArray thousandeyes) + { + AmazonPrometheuses = amazonPrometheuses; + Appdynamics = appdynamics; + AzureMonitors = azureMonitors; + Bigqueries = bigqueries; + Cloudwatches = cloudwatches; + Datadogs = datadogs; + Dynatraces = dynatraces; + Elasticsearches = elasticsearches; + Gcms = gcms; + GrafanaLokis = grafanaLokis; + Graphites = graphites; + Honeycombs = honeycombs; + Influxdbs = influxdbs; + Instanas = instanas; + Lightsteps = lightsteps; + Newrelics = newrelics; + Opentsdbs = opentsdbs; + Pingdoms = pingdoms; + Prometheuses = prometheuses; + Redshifts = redshifts; + SplunkObservabilities = splunkObservabilities; + Splunks = splunks; + Sumologics = sumologics; + Thousandeyes = thousandeyes; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAmazonPrometheus.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAmazonPrometheus.cs new file mode 100644 index 0000000..2a4fa5e --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAmazonPrometheus.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadAmazonPrometheus + { + /// + /// Query for the metrics + /// + public readonly string Promql; + + [OutputConstructor] + private SloObjectiveCountMetricBadAmazonPrometheus(string promql) + { + Promql = promql; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAppdynamic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAppdynamic.cs new file mode 100644 index 0000000..6330418 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAppdynamic.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadAppdynamic + { + /// + /// Name of the added application + /// + public readonly string ApplicationName; + /// + /// Path to the metrics + /// + public readonly string MetricPath; + + [OutputConstructor] + private SloObjectiveCountMetricBadAppdynamic( + string applicationName, + + string metricPath) + { + ApplicationName = applicationName; + MetricPath = metricPath; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitor.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitor.cs new file mode 100644 index 0000000..e0438af --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitor.cs @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadAzureMonitor + { + /// + /// Aggregation type [Required for metrics] + /// + public readonly string? Aggregation; + /// + /// Specifies source: 'metrics' or 'logs' + /// + public readonly string DataType; + /// + /// Dimensions of the metric [Optional for metrics] + /// + public readonly ImmutableArray Dimensions; + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + public readonly string? KqlQuery; + /// + /// Name of the metric [Required for metrics] + /// + public readonly string? MetricName; + /// + /// Namespace of the metric [Optional for metrics] + /// + public readonly string? MetricNamespace; + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + public readonly string? ResourceId; + /// + /// Log analytics workspace [Required for logs] + /// + public readonly ImmutableArray Workspaces; + + [OutputConstructor] + private SloObjectiveCountMetricBadAzureMonitor( + string? aggregation, + + string dataType, + + ImmutableArray dimensions, + + string? kqlQuery, + + string? metricName, + + string? metricNamespace, + + string? resourceId, + + ImmutableArray workspaces) + { + Aggregation = aggregation; + DataType = dataType; + Dimensions = dimensions; + KqlQuery = kqlQuery; + MetricName = metricName; + MetricNamespace = metricNamespace; + ResourceId = resourceId; + Workspaces = workspaces; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitorDimension.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitorDimension.cs new file mode 100644 index 0000000..1d49d44 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitorDimension.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadAzureMonitorDimension + { + /// + /// The name of the previously defined alert method. + /// + public readonly string Name; + /// + /// Burn rate value. + /// + public readonly string Value; + + [OutputConstructor] + private SloObjectiveCountMetricBadAzureMonitorDimension( + string name, + + string value) + { + Name = name; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitorWorkspace.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitorWorkspace.cs new file mode 100644 index 0000000..7e3528f --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadAzureMonitorWorkspace.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadAzureMonitorWorkspace + { + /// + /// Resource group of the workspace + /// + public readonly string ResourceGroup; + /// + /// Subscription ID of the workspace + /// + public readonly string SubscriptionId; + /// + /// ID of the workspace + /// + public readonly string WorkspaceId; + + [OutputConstructor] + private SloObjectiveCountMetricBadAzureMonitorWorkspace( + string resourceGroup, + + string subscriptionId, + + string workspaceId) + { + ResourceGroup = resourceGroup; + SubscriptionId = subscriptionId; + WorkspaceId = workspaceId; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadBigquery.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadBigquery.cs new file mode 100644 index 0000000..f7934e6 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadBigquery.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadBigquery + { + /// + /// Location of you BigQuery + /// + public readonly string Location; + /// + /// Project ID + /// + public readonly string ProjectId; + /// + /// Query for the metrics + /// + public readonly string Query; + + [OutputConstructor] + private SloObjectiveCountMetricBadBigquery( + string location, + + string projectId, + + string query) + { + Location = location; + ProjectId = projectId; + Query = query; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadCloudwatch.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadCloudwatch.cs new file mode 100644 index 0000000..ff102c7 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadCloudwatch.cs @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadCloudwatch + { + /// + /// AccountID used with cross-account observability feature + /// + public readonly string? AccountId; + /// + /// Dimensions of the metric [Optional for metrics] + /// + public readonly ImmutableArray Dimensions; + /// + /// JSON query + /// + public readonly string? Json; + /// + /// Name of the metric [Required for metrics] + /// + public readonly string? MetricName; + /// + /// Namespace of the metric + /// + public readonly string? Namespace; + /// + /// Region of the CloudWatch instance + /// + public readonly string Region; + /// + /// SQL query + /// + public readonly string? Sql; + /// + /// Metric data aggregations + /// + public readonly string? Stat; + + [OutputConstructor] + private SloObjectiveCountMetricBadCloudwatch( + string? accountId, + + ImmutableArray dimensions, + + string? json, + + string? metricName, + + string? @namespace, + + string region, + + string? sql, + + string? stat) + { + AccountId = accountId; + Dimensions = dimensions; + Json = json; + MetricName = metricName; + Namespace = @namespace; + Region = region; + Sql = sql; + Stat = stat; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadCloudwatchDimension.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadCloudwatchDimension.cs new file mode 100644 index 0000000..512258e --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadCloudwatchDimension.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadCloudwatchDimension + { + /// + /// The name of the previously defined alert method. + /// + public readonly string Name; + /// + /// Burn rate value. + /// + public readonly string Value; + + [OutputConstructor] + private SloObjectiveCountMetricBadCloudwatchDimension( + string name, + + string value) + { + Name = name; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadDatadog.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadDatadog.cs new file mode 100644 index 0000000..a61afb4 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadDatadog.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadDatadog + { + /// + /// Query for the metrics + /// + public readonly string Query; + + [OutputConstructor] + private SloObjectiveCountMetricBadDatadog(string query) + { + Query = query; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadDynatrace.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadDynatrace.cs new file mode 100644 index 0000000..b15a1ec --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadDynatrace.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadDynatrace + { + /// + /// Selector for the metrics + /// + public readonly string MetricSelector; + + [OutputConstructor] + private SloObjectiveCountMetricBadDynatrace(string metricSelector) + { + MetricSelector = metricSelector; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadElasticsearch.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadElasticsearch.cs new file mode 100644 index 0000000..6bf2469 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadElasticsearch.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadElasticsearch + { + /// + /// Index of metrics we want to query + /// + public readonly string Index; + /// + /// Query for the metrics + /// + public readonly string Query; + + [OutputConstructor] + private SloObjectiveCountMetricBadElasticsearch( + string index, + + string query) + { + Index = index; + Query = query; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGcm.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGcm.cs new file mode 100644 index 0000000..0e8ebcb --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGcm.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadGcm + { + /// + /// Project ID + /// + public readonly string ProjectId; + /// + /// Query for the metrics + /// + public readonly string Query; + + [OutputConstructor] + private SloObjectiveCountMetricBadGcm( + string projectId, + + string query) + { + ProjectId = projectId; + Query = query; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGrafanaLoki.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGrafanaLoki.cs new file mode 100644 index 0000000..c771e3a --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGrafanaLoki.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadGrafanaLoki + { + /// + /// Query for the logs + /// + public readonly string Logql; + + [OutputConstructor] + private SloObjectiveCountMetricBadGrafanaLoki(string logql) + { + Logql = logql; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGraphite.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGraphite.cs new file mode 100644 index 0000000..dce3cf4 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadGraphite.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadGraphite + { + /// + /// Path to the metrics + /// + public readonly string MetricPath; + + [OutputConstructor] + private SloObjectiveCountMetricBadGraphite(string metricPath) + { + MetricPath = metricPath; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadHoneycomb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadHoneycomb.cs new file mode 100644 index 0000000..5063e20 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadHoneycomb.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadHoneycomb + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + public readonly string? Attribute; + /// + /// Calculation type + /// + public readonly string Calculation; + + [OutputConstructor] + private SloObjectiveCountMetricBadHoneycomb( + string? attribute, + + string calculation) + { + Attribute = attribute; + Calculation = calculation; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInfluxdb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInfluxdb.cs new file mode 100644 index 0000000..4593361 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInfluxdb.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadInfluxdb + { + /// + /// Query for the metrics + /// + public readonly string Query; + + [OutputConstructor] + private SloObjectiveCountMetricBadInfluxdb(string query) + { + Query = query; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstana.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstana.cs new file mode 100644 index 0000000..0e16e57 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstana.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadInstana + { + /// + /// Infrastructure metric type + /// + public readonly ImmutableArray Applications; + /// + /// Infrastructure metric type + /// + public readonly ImmutableArray Infrastructures; + /// + /// Instana metric type 'application' or 'infrastructure' + /// + public readonly string MetricType; + + [OutputConstructor] + private SloObjectiveCountMetricBadInstana( + ImmutableArray applications, + + ImmutableArray infrastructures, + + string metricType) + { + Applications = applications; + Infrastructures = infrastructures; + MetricType = metricType; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaApplication.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaApplication.cs new file mode 100644 index 0000000..4d2a26c --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaApplication.cs @@ -0,0 +1,64 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadInstanaApplication + { + /// + /// Aggregation type [Required for metrics] + /// + public readonly string Aggregation; + /// + /// API query user passes in a JSON format + /// + public readonly string ApiQuery; + /// + /// Group by method + /// + public readonly ImmutableArray GroupBies; + /// + /// Include internal + /// + public readonly bool? IncludeInternal; + /// + /// Include synthetic + /// + public readonly bool? IncludeSynthetic; + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// + public readonly string MetricId; + + [OutputConstructor] + private SloObjectiveCountMetricBadInstanaApplication( + string aggregation, + + string apiQuery, + + ImmutableArray groupBies, + + bool? includeInternal, + + bool? includeSynthetic, + + string metricId) + { + Aggregation = aggregation; + ApiQuery = apiQuery; + GroupBies = groupBies; + IncludeInternal = includeInternal; + IncludeSynthetic = includeSynthetic; + MetricId = metricId; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaApplicationGroupBy.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaApplicationGroupBy.cs new file mode 100644 index 0000000..03adc86 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaApplicationGroupBy.cs @@ -0,0 +1,40 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadInstanaApplicationGroupBy + { + /// + /// Group by tag + /// + public readonly string Tag; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// + public readonly string TagEntity; + public readonly string? TagSecondLevelKey; + + [OutputConstructor] + private SloObjectiveCountMetricBadInstanaApplicationGroupBy( + string tag, + + string tagEntity, + + string? tagSecondLevelKey) + { + Tag = tag; + TagEntity = tagEntity; + TagSecondLevelKey = tagSecondLevelKey; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaInfrastructure.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaInfrastructure.cs new file mode 100644 index 0000000..8d6a0a7 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadInstanaInfrastructure.cs @@ -0,0 +1,57 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadInstanaInfrastructure + { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// + public readonly string MetricId; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// + public readonly string MetricRetrievalMethod; + /// + /// Plugin ID + /// + public readonly string PluginId; + /// + /// Query for the metrics + /// + public readonly string? Query; + /// + /// Snapshot ID + /// + public readonly string? SnapshotId; + + [OutputConstructor] + private SloObjectiveCountMetricBadInstanaInfrastructure( + string metricId, + + string metricRetrievalMethod, + + string pluginId, + + string? query, + + string? snapshotId) + { + MetricId = metricId; + MetricRetrievalMethod = metricRetrievalMethod; + PluginId = pluginId; + Query = query; + SnapshotId = snapshotId; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadLightstep.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadLightstep.cs new file mode 100644 index 0000000..b561687 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadLightstep.cs @@ -0,0 +1,50 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadLightstep + { + /// + /// Optional value to filter by percentiles + /// + public readonly double? Percentile; + /// + /// ID of the metrics stream + /// + public readonly string? StreamId; + /// + /// Type of data to filter by + /// + public readonly string TypeOfData; + /// + /// UQL query + /// + public readonly string? Uql; + + [OutputConstructor] + private SloObjectiveCountMetricBadLightstep( + double? percentile, + + string? streamId, + + string typeOfData, + + string? uql) + { + Percentile = percentile; + StreamId = streamId; + TypeOfData = typeOfData; + Uql = uql; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadNewrelic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadNewrelic.cs new file mode 100644 index 0000000..0b72129 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadNewrelic.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadNewrelic + { + /// + /// Query for the metrics + /// + public readonly string Nrql; + + [OutputConstructor] + private SloObjectiveCountMetricBadNewrelic(string nrql) + { + Nrql = nrql; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadOpentsdb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadOpentsdb.cs new file mode 100644 index 0000000..031bea4 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadOpentsdb.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadOpentsdb + { + /// + /// Query for the metrics + /// + public readonly string Query; + + [OutputConstructor] + private SloObjectiveCountMetricBadOpentsdb(string query) + { + Query = query; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadPingdom.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadPingdom.cs new file mode 100644 index 0000000..c429d88 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadPingdom.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadPingdom + { + /// + /// Pingdom uptime or transaction check's ID + /// + public readonly string CheckId; + /// + /// Pingdom check type - uptime or transaction + /// + public readonly string? CheckType; + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// + public readonly string? Status; + + [OutputConstructor] + private SloObjectiveCountMetricBadPingdom( + string checkId, + + string? checkType, + + string? status) + { + CheckId = checkId; + CheckType = checkType; + Status = status; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadPrometheus.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadPrometheus.cs new file mode 100644 index 0000000..83c7122 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadPrometheus.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadPrometheus + { + /// + /// Query for the metrics + /// + public readonly string Promql; + + [OutputConstructor] + private SloObjectiveCountMetricBadPrometheus(string promql) + { + Promql = promql; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadRedshift.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadRedshift.cs new file mode 100644 index 0000000..5625f39 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadRedshift.cs @@ -0,0 +1,50 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadRedshift + { + /// + /// Redshift custer ID + /// + public readonly string ClusterId; + /// + /// Database name + /// + public readonly string DatabaseName; + /// + /// Query for the metrics + /// + public readonly string Query; + /// + /// Region of the CloudWatch instance + /// + public readonly string Region; + + [OutputConstructor] + private SloObjectiveCountMetricBadRedshift( + string clusterId, + + string databaseName, + + string query, + + string region) + { + ClusterId = clusterId; + DatabaseName = databaseName; + Query = query; + Region = region; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSplunk.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSplunk.cs new file mode 100644 index 0000000..27fe219 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSplunk.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadSplunk + { + /// + /// Query for the metrics + /// + public readonly string Query; + + [OutputConstructor] + private SloObjectiveCountMetricBadSplunk(string query) + { + Query = query; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSplunkObservability.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSplunkObservability.cs new file mode 100644 index 0000000..e15844f --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSplunkObservability.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadSplunkObservability + { + /// + /// Query for the metrics + /// + public readonly string Program; + + [OutputConstructor] + private SloObjectiveCountMetricBadSplunkObservability(string program) + { + Program = program; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSumologic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSumologic.cs new file mode 100644 index 0000000..11c1ba6 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadSumologic.cs @@ -0,0 +1,50 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadSumologic + { + /// + /// Period of data aggregation + /// + public readonly string? Quantization; + /// + /// Query for the metrics + /// + public readonly string Query; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// + public readonly string? Rollup; + /// + /// Sumologic source - metrics or logs + /// + public readonly string Type; + + [OutputConstructor] + private SloObjectiveCountMetricBadSumologic( + string? quantization, + + string query, + + string? rollup, + + string type) + { + Quantization = quantization; + Query = query; + Rollup = rollup; + Type = type; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricBadThousandeye.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadThousandeye.cs new file mode 100644 index 0000000..946ceb0 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricBadThousandeye.cs @@ -0,0 +1,28 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricBadThousandeye + { + /// + /// ID of the test + /// + public readonly int TestId; + + [OutputConstructor] + private SloObjectiveCountMetricBadThousandeye(int testId) + { + TestId = testId; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGood.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGood.cs index fa0fbeb..0d4969c 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGood.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGood.cs @@ -6,34 +6,109 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGood { + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public readonly ImmutableArray AmazonPrometheuses; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public readonly ImmutableArray Appdynamics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public readonly ImmutableArray AzureMonitors; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public readonly ImmutableArray Bigqueries; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public readonly ImmutableArray Cloudwatches; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public readonly ImmutableArray Datadogs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public readonly ImmutableArray Dynatraces; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public readonly ImmutableArray Elasticsearches; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public readonly ImmutableArray Gcms; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public readonly ImmutableArray GrafanaLokis; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public readonly ImmutableArray Graphites; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public readonly ImmutableArray Honeycombs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public readonly ImmutableArray Influxdbs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public readonly ImmutableArray Instanas; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public readonly ImmutableArray Lightsteps; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public readonly ImmutableArray Newrelics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public readonly ImmutableArray Opentsdbs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public readonly ImmutableArray Pingdoms; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public readonly ImmutableArray Prometheuses; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public readonly ImmutableArray Redshifts; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public readonly ImmutableArray SplunkObservabilities; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public readonly ImmutableArray Splunks; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public readonly ImmutableArray Sumologics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public readonly ImmutableArray Thousandeyes; [OutputConstructor] @@ -42,6 +117,8 @@ public sealed class SloObjectiveCountMetricGood ImmutableArray appdynamics, + ImmutableArray azureMonitors, + ImmutableArray bigqueries, ImmutableArray cloudwatches, @@ -58,6 +135,8 @@ public sealed class SloObjectiveCountMetricGood ImmutableArray graphites, + ImmutableArray honeycombs, + ImmutableArray influxdbs, ImmutableArray instanas, @@ -84,6 +163,7 @@ public sealed class SloObjectiveCountMetricGood { AmazonPrometheuses = amazonPrometheuses; Appdynamics = appdynamics; + AzureMonitors = azureMonitors; Bigqueries = bigqueries; Cloudwatches = cloudwatches; Datadogs = datadogs; @@ -92,6 +172,7 @@ public sealed class SloObjectiveCountMetricGood Gcms = gcms; GrafanaLokis = grafanaLokis; Graphites = graphites; + Honeycombs = honeycombs; Influxdbs = influxdbs; Instanas = instanas; Lightsteps = lightsteps; diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAmazonPrometheus.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAmazonPrometheus.cs index d6ee3cd..7886b58 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAmazonPrometheus.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAmazonPrometheus.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodAmazonPrometheus { + /// + /// Query for the metrics + /// public readonly string Promql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAppdynamic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAppdynamic.cs index 0d99603..deebfcd 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAppdynamic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAppdynamic.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodAppdynamic { + /// + /// Name of the added application + /// public readonly string ApplicationName; + /// + /// Path to the metrics + /// public readonly string MetricPath; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitor.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitor.cs new file mode 100644 index 0000000..bc05c09 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitor.cs @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricGoodAzureMonitor + { + /// + /// Aggregation type [Required for metrics] + /// + public readonly string? Aggregation; + /// + /// Specifies source: 'metrics' or 'logs' + /// + public readonly string DataType; + /// + /// Dimensions of the metric [Optional for metrics] + /// + public readonly ImmutableArray Dimensions; + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + public readonly string? KqlQuery; + /// + /// Name of the metric [Required for metrics] + /// + public readonly string? MetricName; + /// + /// Namespace of the metric [Optional for metrics] + /// + public readonly string? MetricNamespace; + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + public readonly string? ResourceId; + /// + /// Log analytics workspace [Required for logs] + /// + public readonly ImmutableArray Workspaces; + + [OutputConstructor] + private SloObjectiveCountMetricGoodAzureMonitor( + string? aggregation, + + string dataType, + + ImmutableArray dimensions, + + string? kqlQuery, + + string? metricName, + + string? metricNamespace, + + string? resourceId, + + ImmutableArray workspaces) + { + Aggregation = aggregation; + DataType = dataType; + Dimensions = dimensions; + KqlQuery = kqlQuery; + MetricName = metricName; + MetricNamespace = metricNamespace; + ResourceId = resourceId; + Workspaces = workspaces; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitorDimension.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitorDimension.cs new file mode 100644 index 0000000..a1594c9 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitorDimension.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricGoodAzureMonitorDimension + { + /// + /// The name of the previously defined alert method. + /// + public readonly string Name; + /// + /// Burn rate value. + /// + public readonly string Value; + + [OutputConstructor] + private SloObjectiveCountMetricGoodAzureMonitorDimension( + string name, + + string value) + { + Name = name; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitorWorkspace.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitorWorkspace.cs new file mode 100644 index 0000000..9a50736 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodAzureMonitorWorkspace.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricGoodAzureMonitorWorkspace + { + /// + /// Resource group of the workspace + /// + public readonly string ResourceGroup; + /// + /// Subscription ID of the workspace + /// + public readonly string SubscriptionId; + /// + /// ID of the workspace + /// + public readonly string WorkspaceId; + + [OutputConstructor] + private SloObjectiveCountMetricGoodAzureMonitorWorkspace( + string resourceGroup, + + string subscriptionId, + + string workspaceId) + { + ResourceGroup = resourceGroup; + SubscriptionId = subscriptionId; + WorkspaceId = workspaceId; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodBigquery.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodBigquery.cs index b9577f0..5db0559 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodBigquery.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodBigquery.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodBigquery { + /// + /// Location of you BigQuery + /// public readonly string Location; + /// + /// Project ID + /// public readonly string ProjectId; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodCloudwatch.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodCloudwatch.cs index b98a50e..66a4895 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodCloudwatch.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodCloudwatch.cs @@ -6,23 +6,51 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodCloudwatch { + /// + /// AccountID used with cross-account observability feature + /// + public readonly string? AccountId; + /// + /// Dimensions of the metric [Optional for metrics] + /// public readonly ImmutableArray Dimensions; + /// + /// JSON query + /// public readonly string? Json; + /// + /// Name of the metric [Required for metrics] + /// public readonly string? MetricName; + /// + /// Namespace of the metric + /// public readonly string? Namespace; + /// + /// Region of the CloudWatch instance + /// public readonly string Region; + /// + /// SQL query + /// public readonly string? Sql; + /// + /// Metric data aggregations + /// public readonly string? Stat; [OutputConstructor] private SloObjectiveCountMetricGoodCloudwatch( + string? accountId, + ImmutableArray dimensions, string? json, @@ -37,6 +65,7 @@ public sealed class SloObjectiveCountMetricGoodCloudwatch string? stat) { + AccountId = accountId; Dimensions = dimensions; Json = json; MetricName = metricName; diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodCloudwatchDimension.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodCloudwatchDimension.cs index 3948d3e..229e82f 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodCloudwatchDimension.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodCloudwatchDimension.cs @@ -6,17 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodCloudwatchDimension { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// public readonly string Name; + /// + /// Burn rate value. + /// public readonly string Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodDatadog.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodDatadog.cs index 8d9a6dd..c0a447a 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodDatadog.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodDatadog.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodDatadog { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodDynatrace.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodDynatrace.cs index 61a5e48..45f4025 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodDynatrace.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodDynatrace.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodDynatrace { + /// + /// Selector for the metrics + /// public readonly string MetricSelector; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodElasticsearch.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodElasticsearch.cs index bd48e79..0820c72 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodElasticsearch.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodElasticsearch.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodElasticsearch { + /// + /// Index of metrics we want to query + /// public readonly string Index; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGcm.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGcm.cs index 49b6a8e..2cb512c 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGcm.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGcm.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodGcm { + /// + /// Project ID + /// public readonly string ProjectId; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGrafanaLoki.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGrafanaLoki.cs index 168385c..f4d1e07 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGrafanaLoki.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGrafanaLoki.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodGrafanaLoki { + /// + /// Query for the logs + /// public readonly string Logql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGraphite.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGraphite.cs index 7cd22bc..ea90157 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGraphite.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodGraphite.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodGraphite { + /// + /// Path to the metrics + /// public readonly string MetricPath; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodHoneycomb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodHoneycomb.cs new file mode 100644 index 0000000..d4c92ee --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodHoneycomb.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricGoodHoneycomb + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + public readonly string? Attribute; + /// + /// Calculation type + /// + public readonly string Calculation; + + [OutputConstructor] + private SloObjectiveCountMetricGoodHoneycomb( + string? attribute, + + string calculation) + { + Attribute = attribute; + Calculation = calculation; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInfluxdb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInfluxdb.cs index 2d28e3d..08793f9 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInfluxdb.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInfluxdb.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodInfluxdb { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstana.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstana.cs index 19fae7d..465d50d 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstana.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstana.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodInstana { + /// + /// Infrastructure metric type + /// public readonly ImmutableArray Applications; + /// + /// Infrastructure metric type + /// public readonly ImmutableArray Infrastructures; + /// + /// Instana metric type 'application' or 'infrastructure' + /// public readonly string MetricType; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaApplication.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaApplication.cs index a15ef45..4f15785 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaApplication.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaApplication.cs @@ -6,18 +6,37 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodInstanaApplication { + /// + /// Aggregation type [Required for metrics] + /// public readonly string Aggregation; + /// + /// API query user passes in a JSON format + /// public readonly string ApiQuery; + /// + /// Group by method + /// public readonly ImmutableArray GroupBies; + /// + /// Include internal + /// public readonly bool? IncludeInternal; + /// + /// Include synthetic + /// public readonly bool? IncludeSynthetic; + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// public readonly string MetricId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaApplicationGroupBy.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaApplicationGroupBy.cs index feaf30e..f0891fe 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaApplicationGroupBy.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaApplicationGroupBy.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodInstanaApplicationGroupBy { + /// + /// Group by tag + /// public readonly string Tag; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// public readonly string TagEntity; public readonly string? TagSecondLevelKey; diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaInfrastructure.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaInfrastructure.cs index 36d4c27..b10673b 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaInfrastructure.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodInstanaInfrastructure.cs @@ -6,17 +6,33 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodInstanaInfrastructure { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// public readonly string MetricId; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// public readonly string MetricRetrievalMethod; + /// + /// Plugin ID + /// public readonly string PluginId; + /// + /// Query for the metrics + /// public readonly string? Query; + /// + /// Snapshot ID + /// public readonly string? SnapshotId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodLightstep.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodLightstep.cs index 2022948..9ccd9f2 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodLightstep.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodLightstep.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodLightstep { + /// + /// Optional value to filter by percentiles + /// public readonly double? Percentile; + /// + /// ID of the metrics stream + /// public readonly string? StreamId; + /// + /// Type of data to filter by + /// public readonly string TypeOfData; + /// + /// UQL query + /// public readonly string? Uql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodNewrelic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodNewrelic.cs index 8968e6c..f4a2764 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodNewrelic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodNewrelic.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodNewrelic { + /// + /// Query for the metrics + /// public readonly string Nrql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodOpentsdb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodOpentsdb.cs index 945cf92..eca20da 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodOpentsdb.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodOpentsdb.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodOpentsdb { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodPingdom.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodPingdom.cs index 75a269a..ccdfb63 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodPingdom.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodPingdom.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodPingdom { + /// + /// Pingdom uptime or transaction check's ID + /// public readonly string CheckId; + /// + /// Pingdom check type - uptime or transaction + /// public readonly string? CheckType; + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// public readonly string? Status; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodPrometheus.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodPrometheus.cs index b0d916c..e242f28 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodPrometheus.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodPrometheus.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodPrometheus { + /// + /// Query for the metrics + /// public readonly string Promql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodRedshift.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodRedshift.cs index 232fcd2..fe764b9 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodRedshift.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodRedshift.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodRedshift { + /// + /// Redshift custer ID + /// public readonly string ClusterId; + /// + /// Database name + /// public readonly string DatabaseName; + /// + /// Query for the metrics + /// public readonly string Query; + /// + /// Region of the CloudWatch instance + /// public readonly string Region; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSplunk.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSplunk.cs index cea0553..214e390 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSplunk.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSplunk.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodSplunk { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSplunkObservability.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSplunkObservability.cs index 48cd877..a649160 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSplunkObservability.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSplunkObservability.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodSplunkObservability { + /// + /// Query for the metrics + /// public readonly string Program; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSumologic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSumologic.cs index 9f3b73d..f584f04 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSumologic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodSumologic.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodSumologic { + /// + /// Period of data aggregation + /// public readonly string? Quantization; + /// + /// Query for the metrics + /// public readonly string Query; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// public readonly string? Rollup; + /// + /// Sumologic source - metrics or logs + /// public readonly string Type; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodThousandeye.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodThousandeye.cs index 9408eb8..a1b06d9 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodThousandeye.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricGoodThousandeye.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricGoodThousandeye { + /// + /// ID of the test + /// public readonly int TestId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotal.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotal.cs index e541e10..5d88905 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotal.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotal.cs @@ -6,34 +6,109 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotal { + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public readonly ImmutableArray AmazonPrometheuses; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public readonly ImmutableArray Appdynamics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public readonly ImmutableArray AzureMonitors; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public readonly ImmutableArray Bigqueries; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public readonly ImmutableArray Cloudwatches; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public readonly ImmutableArray Datadogs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public readonly ImmutableArray Dynatraces; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public readonly ImmutableArray Elasticsearches; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public readonly ImmutableArray Gcms; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public readonly ImmutableArray GrafanaLokis; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public readonly ImmutableArray Graphites; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public readonly ImmutableArray Honeycombs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public readonly ImmutableArray Influxdbs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public readonly ImmutableArray Instanas; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public readonly ImmutableArray Lightsteps; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public readonly ImmutableArray Newrelics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public readonly ImmutableArray Opentsdbs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public readonly ImmutableArray Pingdoms; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public readonly ImmutableArray Prometheuses; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public readonly ImmutableArray Redshifts; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public readonly ImmutableArray SplunkObservabilities; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public readonly ImmutableArray Splunks; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public readonly ImmutableArray Sumologics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public readonly ImmutableArray Thousandeyes; [OutputConstructor] @@ -42,6 +117,8 @@ public sealed class SloObjectiveCountMetricTotal ImmutableArray appdynamics, + ImmutableArray azureMonitors, + ImmutableArray bigqueries, ImmutableArray cloudwatches, @@ -58,6 +135,8 @@ public sealed class SloObjectiveCountMetricTotal ImmutableArray graphites, + ImmutableArray honeycombs, + ImmutableArray influxdbs, ImmutableArray instanas, @@ -84,6 +163,7 @@ public sealed class SloObjectiveCountMetricTotal { AmazonPrometheuses = amazonPrometheuses; Appdynamics = appdynamics; + AzureMonitors = azureMonitors; Bigqueries = bigqueries; Cloudwatches = cloudwatches; Datadogs = datadogs; @@ -92,6 +172,7 @@ public sealed class SloObjectiveCountMetricTotal Gcms = gcms; GrafanaLokis = grafanaLokis; Graphites = graphites; + Honeycombs = honeycombs; Influxdbs = influxdbs; Instanas = instanas; Lightsteps = lightsteps; diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAmazonPrometheus.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAmazonPrometheus.cs index 6c3c338..a0e1536 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAmazonPrometheus.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAmazonPrometheus.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalAmazonPrometheus { + /// + /// Query for the metrics + /// public readonly string Promql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAppdynamic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAppdynamic.cs index c8470e2..0061d10 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAppdynamic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAppdynamic.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalAppdynamic { + /// + /// Name of the added application + /// public readonly string ApplicationName; + /// + /// Path to the metrics + /// public readonly string MetricPath; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitor.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitor.cs new file mode 100644 index 0000000..1a76b9a --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitor.cs @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricTotalAzureMonitor + { + /// + /// Aggregation type [Required for metrics] + /// + public readonly string? Aggregation; + /// + /// Specifies source: 'metrics' or 'logs' + /// + public readonly string DataType; + /// + /// Dimensions of the metric [Optional for metrics] + /// + public readonly ImmutableArray Dimensions; + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + public readonly string? KqlQuery; + /// + /// Name of the metric [Required for metrics] + /// + public readonly string? MetricName; + /// + /// Namespace of the metric [Optional for metrics] + /// + public readonly string? MetricNamespace; + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + public readonly string? ResourceId; + /// + /// Log analytics workspace [Required for logs] + /// + public readonly ImmutableArray Workspaces; + + [OutputConstructor] + private SloObjectiveCountMetricTotalAzureMonitor( + string? aggregation, + + string dataType, + + ImmutableArray dimensions, + + string? kqlQuery, + + string? metricName, + + string? metricNamespace, + + string? resourceId, + + ImmutableArray workspaces) + { + Aggregation = aggregation; + DataType = dataType; + Dimensions = dimensions; + KqlQuery = kqlQuery; + MetricName = metricName; + MetricNamespace = metricNamespace; + ResourceId = resourceId; + Workspaces = workspaces; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitorDimension.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitorDimension.cs new file mode 100644 index 0000000..35480be --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitorDimension.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricTotalAzureMonitorDimension + { + /// + /// The name of the previously defined alert method. + /// + public readonly string Name; + /// + /// Burn rate value. + /// + public readonly string Value; + + [OutputConstructor] + private SloObjectiveCountMetricTotalAzureMonitorDimension( + string name, + + string value) + { + Name = name; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitorWorkspace.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitorWorkspace.cs new file mode 100644 index 0000000..4d66e52 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalAzureMonitorWorkspace.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricTotalAzureMonitorWorkspace + { + /// + /// Resource group of the workspace + /// + public readonly string ResourceGroup; + /// + /// Subscription ID of the workspace + /// + public readonly string SubscriptionId; + /// + /// ID of the workspace + /// + public readonly string WorkspaceId; + + [OutputConstructor] + private SloObjectiveCountMetricTotalAzureMonitorWorkspace( + string resourceGroup, + + string subscriptionId, + + string workspaceId) + { + ResourceGroup = resourceGroup; + SubscriptionId = subscriptionId; + WorkspaceId = workspaceId; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalBigquery.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalBigquery.cs index 54ca097..a1eec87 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalBigquery.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalBigquery.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalBigquery { + /// + /// Location of you BigQuery + /// public readonly string Location; + /// + /// Project ID + /// public readonly string ProjectId; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalCloudwatch.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalCloudwatch.cs index 7c7d5a4..bb26a91 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalCloudwatch.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalCloudwatch.cs @@ -6,23 +6,51 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalCloudwatch { + /// + /// AccountID used with cross-account observability feature + /// + public readonly string? AccountId; + /// + /// Dimensions of the metric [Optional for metrics] + /// public readonly ImmutableArray Dimensions; + /// + /// JSON query + /// public readonly string? Json; + /// + /// Name of the metric [Required for metrics] + /// public readonly string? MetricName; + /// + /// Namespace of the metric + /// public readonly string? Namespace; + /// + /// Region of the CloudWatch instance + /// public readonly string Region; + /// + /// SQL query + /// public readonly string? Sql; + /// + /// Metric data aggregations + /// public readonly string? Stat; [OutputConstructor] private SloObjectiveCountMetricTotalCloudwatch( + string? accountId, + ImmutableArray dimensions, string? json, @@ -37,6 +65,7 @@ public sealed class SloObjectiveCountMetricTotalCloudwatch string? stat) { + AccountId = accountId; Dimensions = dimensions; Json = json; MetricName = metricName; diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalCloudwatchDimension.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalCloudwatchDimension.cs index 9cf486f..be999a2 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalCloudwatchDimension.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalCloudwatchDimension.cs @@ -6,17 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalCloudwatchDimension { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// public readonly string Name; + /// + /// Burn rate value. + /// public readonly string Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalDatadog.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalDatadog.cs index d58ad8d..83e1067 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalDatadog.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalDatadog.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalDatadog { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalDynatrace.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalDynatrace.cs index a76b1b4..706e150 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalDynatrace.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalDynatrace.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalDynatrace { + /// + /// Selector for the metrics + /// public readonly string MetricSelector; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalElasticsearch.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalElasticsearch.cs index 399582a..c32a83e 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalElasticsearch.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalElasticsearch.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalElasticsearch { + /// + /// Index of metrics we want to query + /// public readonly string Index; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGcm.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGcm.cs index ffe53cb..27d5af8 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGcm.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGcm.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalGcm { + /// + /// Project ID + /// public readonly string ProjectId; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGrafanaLoki.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGrafanaLoki.cs index 6c77855..0d1dd3e 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGrafanaLoki.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGrafanaLoki.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalGrafanaLoki { + /// + /// Query for the logs + /// public readonly string Logql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGraphite.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGraphite.cs index ebbc60d..1ee5ab8 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGraphite.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalGraphite.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalGraphite { + /// + /// Path to the metrics + /// public readonly string MetricPath; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalHoneycomb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalHoneycomb.cs new file mode 100644 index 0000000..78210ac --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalHoneycomb.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveCountMetricTotalHoneycomb + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + public readonly string? Attribute; + /// + /// Calculation type + /// + public readonly string Calculation; + + [OutputConstructor] + private SloObjectiveCountMetricTotalHoneycomb( + string? attribute, + + string calculation) + { + Attribute = attribute; + Calculation = calculation; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInfluxdb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInfluxdb.cs index ee5cf77..3150eba 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInfluxdb.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInfluxdb.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalInfluxdb { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstana.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstana.cs index 4649ddd..099745e 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstana.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstana.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalInstana { + /// + /// Infrastructure metric type + /// public readonly ImmutableArray Applications; + /// + /// Infrastructure metric type + /// public readonly ImmutableArray Infrastructures; + /// + /// Instana metric type 'application' or 'infrastructure' + /// public readonly string MetricType; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaApplication.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaApplication.cs index 03449fd..793c6af 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaApplication.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaApplication.cs @@ -6,18 +6,37 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalInstanaApplication { + /// + /// Aggregation type [Required for metrics] + /// public readonly string Aggregation; + /// + /// API query user passes in a JSON format + /// public readonly string ApiQuery; + /// + /// Group by method + /// public readonly ImmutableArray GroupBies; + /// + /// Include internal + /// public readonly bool? IncludeInternal; + /// + /// Include synthetic + /// public readonly bool? IncludeSynthetic; + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// public readonly string MetricId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaApplicationGroupBy.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaApplicationGroupBy.cs index 6491121..9f4b16d 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaApplicationGroupBy.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaApplicationGroupBy.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalInstanaApplicationGroupBy { + /// + /// Group by tag + /// public readonly string Tag; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// public readonly string TagEntity; public readonly string? TagSecondLevelKey; diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaInfrastructure.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaInfrastructure.cs index 0ce3366..4ebc8ed 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaInfrastructure.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalInstanaInfrastructure.cs @@ -6,17 +6,33 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalInstanaInfrastructure { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// public readonly string MetricId; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// public readonly string MetricRetrievalMethod; + /// + /// Plugin ID + /// public readonly string PluginId; + /// + /// Query for the metrics + /// public readonly string? Query; + /// + /// Snapshot ID + /// public readonly string? SnapshotId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalLightstep.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalLightstep.cs index 1d4ad65..e45c11a 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalLightstep.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalLightstep.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalLightstep { + /// + /// Optional value to filter by percentiles + /// public readonly double? Percentile; + /// + /// ID of the metrics stream + /// public readonly string? StreamId; + /// + /// Type of data to filter by + /// public readonly string TypeOfData; + /// + /// UQL query + /// public readonly string? Uql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalNewrelic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalNewrelic.cs index dc80029..fe14c9b 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalNewrelic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalNewrelic.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalNewrelic { + /// + /// Query for the metrics + /// public readonly string Nrql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalOpentsdb.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalOpentsdb.cs index f30003d..9ec9ec7 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalOpentsdb.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalOpentsdb.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalOpentsdb { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalPingdom.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalPingdom.cs index a745e35..74a54b8 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalPingdom.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalPingdom.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalPingdom { + /// + /// Pingdom uptime or transaction check's ID + /// public readonly string CheckId; + /// + /// Pingdom check type - uptime or transaction + /// public readonly string? CheckType; + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// public readonly string? Status; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalPrometheus.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalPrometheus.cs index af94114..4a5b845 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalPrometheus.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalPrometheus.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalPrometheus { + /// + /// Query for the metrics + /// public readonly string Promql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalRedshift.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalRedshift.cs index c586334..f75dc2c 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalRedshift.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalRedshift.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalRedshift { + /// + /// Redshift custer ID + /// public readonly string ClusterId; + /// + /// Database name + /// public readonly string DatabaseName; + /// + /// Query for the metrics + /// public readonly string Query; + /// + /// Region of the CloudWatch instance + /// public readonly string Region; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSplunk.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSplunk.cs index 0434361..7991085 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSplunk.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSplunk.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalSplunk { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSplunkObservability.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSplunkObservability.cs index e1c723d..45f0e19 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSplunkObservability.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSplunkObservability.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalSplunkObservability { + /// + /// Query for the metrics + /// public readonly string Program; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSumologic.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSumologic.cs index 7f04be2..7940b96 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSumologic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalSumologic.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalSumologic { + /// + /// Period of data aggregation + /// public readonly string? Quantization; + /// + /// Query for the metrics + /// public readonly string Query; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// public readonly string? Rollup; + /// + /// Sumologic source - metrics or logs + /// public readonly string Type; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalThousandeye.cs b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalThousandeye.cs index 018a08f..83aaff7 100644 --- a/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalThousandeye.cs +++ b/sdk/dotnet/Outputs/SloObjectiveCountMetricTotalThousandeye.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveCountMetricTotalThousandeye { + /// + /// ID of the test + /// public readonly int TestId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetric.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetric.cs index f25e5d0..376ab5b 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetric.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetric.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetric { + /// + /// Query for the metrics + /// public readonly ImmutableArray Queries; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQuery.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQuery.cs index 6d37dc7..443be73 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQuery.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQuery.cs @@ -6,34 +6,109 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQuery { + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + /// public readonly ImmutableArray AmazonPrometheuses; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + /// public readonly ImmutableArray Appdynamics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + /// + public readonly ImmutableArray AzureMonitors; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + /// public readonly ImmutableArray Bigqueries; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + /// public readonly ImmutableArray Cloudwatches; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + /// public readonly ImmutableArray Datadogs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + /// public readonly ImmutableArray Dynatraces; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + /// public readonly ImmutableArray Elasticsearches; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + /// public readonly ImmutableArray Gcms; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + /// public readonly ImmutableArray GrafanaLokis; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + /// public readonly ImmutableArray Graphites; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + /// + public readonly ImmutableArray Honeycombs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + /// public readonly ImmutableArray Influxdbs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + /// public readonly ImmutableArray Instanas; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + /// public readonly ImmutableArray Lightsteps; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + /// public readonly ImmutableArray Newrelics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + /// public readonly ImmutableArray Opentsdbs; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + /// public readonly ImmutableArray Pingdoms; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + /// public readonly ImmutableArray Prometheuses; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + /// public readonly ImmutableArray Redshifts; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + /// public readonly ImmutableArray SplunkObservabilities; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + /// public readonly ImmutableArray Splunks; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + /// public readonly ImmutableArray Sumologics; + /// + /// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + /// public readonly ImmutableArray Thousandeyes; [OutputConstructor] @@ -42,6 +117,8 @@ public sealed class SloObjectiveRawMetricQuery ImmutableArray appdynamics, + ImmutableArray azureMonitors, + ImmutableArray bigqueries, ImmutableArray cloudwatches, @@ -58,6 +135,8 @@ public sealed class SloObjectiveRawMetricQuery ImmutableArray graphites, + ImmutableArray honeycombs, + ImmutableArray influxdbs, ImmutableArray instanas, @@ -84,6 +163,7 @@ public sealed class SloObjectiveRawMetricQuery { AmazonPrometheuses = amazonPrometheuses; Appdynamics = appdynamics; + AzureMonitors = azureMonitors; Bigqueries = bigqueries; Cloudwatches = cloudwatches; Datadogs = datadogs; @@ -92,6 +172,7 @@ public sealed class SloObjectiveRawMetricQuery Gcms = gcms; GrafanaLokis = grafanaLokis; Graphites = graphites; + Honeycombs = honeycombs; Influxdbs = influxdbs; Instanas = instanas; Lightsteps = lightsteps; diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAmazonPrometheus.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAmazonPrometheus.cs index 395d522..1a68341 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAmazonPrometheus.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAmazonPrometheus.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryAmazonPrometheus { + /// + /// Query for the metrics + /// public readonly string Promql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAppdynamic.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAppdynamic.cs index 3ffa998..055dd64 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAppdynamic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAppdynamic.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryAppdynamic { + /// + /// Name of the added application + /// public readonly string ApplicationName; + /// + /// Path to the metrics + /// public readonly string MetricPath; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitor.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitor.cs new file mode 100644 index 0000000..4446d3b --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitor.cs @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveRawMetricQueryAzureMonitor + { + /// + /// Aggregation type [Required for metrics] + /// + public readonly string? Aggregation; + /// + /// Specifies source: 'metrics' or 'logs' + /// + public readonly string DataType; + /// + /// Dimensions of the metric [Optional for metrics] + /// + public readonly ImmutableArray Dimensions; + /// + /// Logs query in Kusto Query Language [Required for logs] + /// + public readonly string? KqlQuery; + /// + /// Name of the metric [Required for metrics] + /// + public readonly string? MetricName; + /// + /// Namespace of the metric [Optional for metrics] + /// + public readonly string? MetricNamespace; + /// + /// Identifier of the Azure Cloud resource [Required for metrics] + /// + public readonly string? ResourceId; + /// + /// Log analytics workspace [Required for logs] + /// + public readonly ImmutableArray Workspaces; + + [OutputConstructor] + private SloObjectiveRawMetricQueryAzureMonitor( + string? aggregation, + + string dataType, + + ImmutableArray dimensions, + + string? kqlQuery, + + string? metricName, + + string? metricNamespace, + + string? resourceId, + + ImmutableArray workspaces) + { + Aggregation = aggregation; + DataType = dataType; + Dimensions = dimensions; + KqlQuery = kqlQuery; + MetricName = metricName; + MetricNamespace = metricNamespace; + ResourceId = resourceId; + Workspaces = workspaces; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitorDimension.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitorDimension.cs new file mode 100644 index 0000000..9f74e00 --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitorDimension.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveRawMetricQueryAzureMonitorDimension + { + /// + /// The name of the previously defined alert method. + /// + public readonly string Name; + /// + /// Burn rate value. + /// + public readonly string Value; + + [OutputConstructor] + private SloObjectiveRawMetricQueryAzureMonitorDimension( + string name, + + string value) + { + Name = name; + Value = value; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitorWorkspace.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitorWorkspace.cs new file mode 100644 index 0000000..99d61bd --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryAzureMonitorWorkspace.cs @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveRawMetricQueryAzureMonitorWorkspace + { + /// + /// Resource group of the workspace + /// + public readonly string ResourceGroup; + /// + /// Subscription ID of the workspace + /// + public readonly string SubscriptionId; + /// + /// ID of the workspace + /// + public readonly string WorkspaceId; + + [OutputConstructor] + private SloObjectiveRawMetricQueryAzureMonitorWorkspace( + string resourceGroup, + + string subscriptionId, + + string workspaceId) + { + ResourceGroup = resourceGroup; + SubscriptionId = subscriptionId; + WorkspaceId = workspaceId; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryBigquery.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryBigquery.cs index cb833fe..d4f6d54 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryBigquery.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryBigquery.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryBigquery { + /// + /// Location of you BigQuery + /// public readonly string Location; + /// + /// Project ID + /// public readonly string ProjectId; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryCloudwatch.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryCloudwatch.cs index 7a73325..7d262b7 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryCloudwatch.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryCloudwatch.cs @@ -6,23 +6,51 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryCloudwatch { + /// + /// AccountID used with cross-account observability feature + /// + public readonly string? AccountId; + /// + /// Dimensions of the metric [Optional for metrics] + /// public readonly ImmutableArray Dimensions; + /// + /// JSON query + /// public readonly string? Json; + /// + /// Name of the metric [Required for metrics] + /// public readonly string? MetricName; + /// + /// Namespace of the metric + /// public readonly string? Namespace; + /// + /// Region of the CloudWatch instance + /// public readonly string Region; + /// + /// SQL query + /// public readonly string? Sql; + /// + /// Metric data aggregations + /// public readonly string? Stat; [OutputConstructor] private SloObjectiveRawMetricQueryCloudwatch( + string? accountId, + ImmutableArray dimensions, string? json, @@ -37,6 +65,7 @@ public sealed class SloObjectiveRawMetricQueryCloudwatch string? stat) { + AccountId = accountId; Dimensions = dimensions; Json = json; MetricName = metricName; diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryCloudwatchDimension.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryCloudwatchDimension.cs index e854e64..9fd52b9 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryCloudwatchDimension.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryCloudwatchDimension.cs @@ -6,17 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryCloudwatchDimension { /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// public readonly string Name; + /// + /// Burn rate value. + /// public readonly string Value; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryDatadog.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryDatadog.cs index 43d39a9..a7d10de 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryDatadog.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryDatadog.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryDatadog { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryDynatrace.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryDynatrace.cs index fd441ae..9408d78 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryDynatrace.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryDynatrace.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryDynatrace { + /// + /// Selector for the metrics + /// public readonly string MetricSelector; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryElasticsearch.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryElasticsearch.cs index a166be8..645546e 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryElasticsearch.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryElasticsearch.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryElasticsearch { + /// + /// Index of metrics we want to query + /// public readonly string Index; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGcm.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGcm.cs index 370b513..b15ce26 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGcm.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGcm.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryGcm { + /// + /// Project ID + /// public readonly string ProjectId; + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGrafanaLoki.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGrafanaLoki.cs index 6c5da22..511c88c 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGrafanaLoki.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGrafanaLoki.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryGrafanaLoki { + /// + /// Query for the logs + /// public readonly string Logql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGraphite.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGraphite.cs index f582090..5ffd782 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGraphite.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryGraphite.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryGraphite { + /// + /// Path to the metrics + /// public readonly string MetricPath; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryHoneycomb.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryHoneycomb.cs new file mode 100644 index 0000000..8032a1e --- /dev/null +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryHoneycomb.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; +using Pulumi; + +namespace Piclemx.Nobl9.Outputs +{ + + [OutputType] + public sealed class SloObjectiveRawMetricQueryHoneycomb + { + /// + /// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + /// + public readonly string? Attribute; + /// + /// Calculation type + /// + public readonly string Calculation; + + [OutputConstructor] + private SloObjectiveRawMetricQueryHoneycomb( + string? attribute, + + string calculation) + { + Attribute = attribute; + Calculation = calculation; + } + } +} diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInfluxdb.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInfluxdb.cs index 14aa48d..b0eee1f 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInfluxdb.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInfluxdb.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryInfluxdb { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstana.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstana.cs index f3724d9..b36a45a 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstana.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstana.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryInstana { + /// + /// Infrastructure metric type + /// public readonly ImmutableArray Applications; + /// + /// Infrastructure metric type + /// public readonly ImmutableArray Infrastructures; + /// + /// Instana metric type 'application' or 'infrastructure' + /// public readonly string MetricType; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaApplication.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaApplication.cs index 6f845a7..8839d72 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaApplication.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaApplication.cs @@ -6,18 +6,37 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryInstanaApplication { + /// + /// Aggregation type [Required for metrics] + /// public readonly string Aggregation; + /// + /// API query user passes in a JSON format + /// public readonly string ApiQuery; + /// + /// Group by method + /// public readonly ImmutableArray GroupBies; + /// + /// Include internal + /// public readonly bool? IncludeInternal; + /// + /// Include synthetic + /// public readonly bool? IncludeSynthetic; + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// public readonly string MetricId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaApplicationGroupBy.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaApplicationGroupBy.cs index dc219e6..b58629c 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaApplicationGroupBy.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaApplicationGroupBy.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryInstanaApplicationGroupBy { + /// + /// Group by tag + /// public readonly string Tag; + /// + /// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + /// public readonly string TagEntity; public readonly string? TagSecondLevelKey; diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaInfrastructure.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaInfrastructure.cs index 0186dd1..b8c48d6 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaInfrastructure.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryInstanaInfrastructure.cs @@ -6,17 +6,33 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryInstanaInfrastructure { + /// + /// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + /// public readonly string MetricId; + /// + /// Metric retrieval method 'query' or 'snapshot' + /// public readonly string MetricRetrievalMethod; + /// + /// Plugin ID + /// public readonly string PluginId; + /// + /// Query for the metrics + /// public readonly string? Query; + /// + /// Snapshot ID + /// public readonly string? SnapshotId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryLightstep.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryLightstep.cs index 2c1097a..bb615c3 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryLightstep.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryLightstep.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryLightstep { + /// + /// Optional value to filter by percentiles + /// public readonly double? Percentile; + /// + /// ID of the metrics stream + /// public readonly string? StreamId; + /// + /// Type of data to filter by + /// public readonly string TypeOfData; + /// + /// UQL query + /// public readonly string? Uql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryNewrelic.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryNewrelic.cs index 633b555..f4d65b0 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryNewrelic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryNewrelic.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryNewrelic { + /// + /// Query for the metrics + /// public readonly string Nrql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryOpentsdb.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryOpentsdb.cs index 4d9510a..895c8f0 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryOpentsdb.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryOpentsdb.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryOpentsdb { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryPingdom.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryPingdom.cs index b0e63c2..58bb3a6 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryPingdom.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryPingdom.cs @@ -6,15 +6,25 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryPingdom { + /// + /// Pingdom uptime or transaction check's ID + /// public readonly string CheckId; + /// + /// Pingdom check type - uptime or transaction + /// public readonly string? CheckType; + /// + /// Optional for the Uptime checks. Use it to filter the Pingdom check results by status + /// public readonly string? Status; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryPrometheus.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryPrometheus.cs index 452ab15..b1a07b0 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryPrometheus.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryPrometheus.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryPrometheus { + /// + /// Query for the metrics + /// public readonly string Promql; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryRedshift.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryRedshift.cs index 576b337..2858741 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryRedshift.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryRedshift.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryRedshift { + /// + /// Redshift custer ID + /// public readonly string ClusterId; + /// + /// Database name + /// public readonly string DatabaseName; + /// + /// Query for the metrics + /// public readonly string Query; + /// + /// Region of the CloudWatch instance + /// public readonly string Region; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySplunk.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySplunk.cs index 15c6e23..9d2b4dc 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySplunk.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySplunk.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQuerySplunk { + /// + /// Query for the metrics + /// public readonly string Query; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySplunkObservability.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySplunkObservability.cs index 49f6004..140e640 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySplunkObservability.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySplunkObservability.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQuerySplunkObservability { + /// + /// Query for the metrics + /// public readonly string Program; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySumologic.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySumologic.cs index 32fc56d..028b03d 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySumologic.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQuerySumologic.cs @@ -6,16 +6,29 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQuerySumologic { + /// + /// Period of data aggregation + /// public readonly string? Quantization; + /// + /// Query for the metrics + /// public readonly string Query; + /// + /// Aggregation function - avg, sum, min, max, count, none + /// public readonly string? Rollup; + /// + /// Sumologic source - metrics or logs + /// public readonly string Type; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryThousandeye.cs b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryThousandeye.cs index 0b5bf60..28b6f97 100644 --- a/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryThousandeye.cs +++ b/sdk/dotnet/Outputs/SloObjectiveRawMetricQueryThousandeye.cs @@ -6,13 +6,17 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloObjectiveRawMetricQueryThousandeye { + /// + /// ID of the test + /// public readonly int TestId; [OutputConstructor] diff --git a/sdk/dotnet/Outputs/SloTimeWindow.cs b/sdk/dotnet/Outputs/SloTimeWindow.cs index b3e18a6..3c8c765 100644 --- a/sdk/dotnet/Outputs/SloTimeWindow.cs +++ b/sdk/dotnet/Outputs/SloTimeWindow.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] diff --git a/sdk/dotnet/Outputs/SloTimeWindowCalendar.cs b/sdk/dotnet/Outputs/SloTimeWindowCalendar.cs index be445d3..06852fa 100644 --- a/sdk/dotnet/Outputs/SloTimeWindowCalendar.cs +++ b/sdk/dotnet/Outputs/SloTimeWindowCalendar.cs @@ -6,14 +6,21 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9.Outputs +namespace Piclemx.Nobl9.Outputs { [OutputType] public sealed class SloTimeWindowCalendar { + /// + /// Date of the start + /// public readonly string StartTime; + /// + /// Timezone name in IANA Time Zone Database + /// public readonly string TimeZone; [OutputConstructor] diff --git a/sdk/dotnet/Pulumi.Nobl9.csproj b/sdk/dotnet/Piclemx.Nobl9.csproj similarity index 89% rename from sdk/dotnet/Pulumi.Nobl9.csproj rename to sdk/dotnet/Piclemx.Nobl9.csproj index 567ebca..bc87a51 100644 --- a/sdk/dotnet/Pulumi.Nobl9.csproj +++ b/sdk/dotnet/Piclemx.Nobl9.csproj @@ -4,15 +4,14 @@ true piclemx piclemx - A Pulumi package for creating and managing Nobl9 cloud resources. + A Pulumi package for creating and managing Nobl9 resources Apache-2.0 - https://www.pulumi.com + https://github.com/piclemx/pulumi-nobl9 https://github.com/piclemx/pulumi-nobl9 logo.png - netcoreapp3.1 + net6.0 enable - false @@ -39,7 +38,7 @@ - + diff --git a/sdk/dotnet/Project.cs b/sdk/dotnet/Project.cs index 957eb20..9ecefd1 100644 --- a/sdk/dotnet/Project.cs +++ b/sdk/dotnet/Project.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// /// **Projects** are the primary logical grouping of resources in the Nobl9 platform. All Nobl9 resources, such as data sources, SLOs, and alerts, are created within a project. @@ -22,8 +23,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -111,7 +113,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. diff --git a/sdk/dotnet/Provider.cs b/sdk/dotnet/Provider.cs index 4ea208c..7c33c8a 100644 --- a/sdk/dotnet/Provider.cs +++ b/sdk/dotnet/Provider.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// /// The provider type for the nobl9 package. By default, resources use package-wide configuration @@ -55,13 +56,13 @@ public partial class Provider : global::Pulumi.ProviderResource /// contains resources managed by the Nobl9 Terraform provider. /// [Output("organization")] - public Output Organization { get; private set; } = null!; + public Output Organization { get; private set; } = null!; /// /// Nobl9 project used when importing resources. /// [Output("project")] - public Output Project { get; private set; } = null!; + public Output Project { get; private set; } = null!; /// @@ -81,7 +82,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", + AdditionalSecretOutputs = + { + "clientSecret", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -99,12 +104,22 @@ public sealed class ProviderArgs : global::Pulumi.ResourceArgs [Input("clientId", required: true)] public Input ClientId { get; set; } = null!; + [Input("clientSecret", required: true)] + private Input? _clientSecret; + /// /// the [Client Secret](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect /// to Nobl9. /// - [Input("clientSecret", required: true)] - public Input ClientSecret { get; set; } = null!; + public Input? ClientSecret + { + get => _clientSecret; + set + { + var emptySecret = Output.CreateSecret(0); + _clientSecret = Output.Tuple?, int>(value, emptySecret).Apply(t => t.Item1); + } + } /// /// Nobl9 API URL. @@ -128,14 +143,14 @@ public sealed class ProviderArgs : global::Pulumi.ResourceArgs /// Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that /// contains resources managed by the Nobl9 Terraform provider. /// - [Input("organization", required: true)] - public Input Organization { get; set; } = null!; + [Input("organization")] + public Input? Organization { get; set; } /// /// Nobl9 project used when importing resources. /// - [Input("project", required: true)] - public Input Project { get; set; } = null!; + [Input("project")] + public Input? Project { get; set; } public ProviderArgs() { diff --git a/sdk/dotnet/README.md b/sdk/dotnet/README.md index 80dd4d7..09a6328 100644 --- a/sdk/dotnet/README.md +++ b/sdk/dotnet/README.md @@ -1 +1 @@ -A Pulumi package for creating and managing Nobl9 cloud resources. +A Pulumi package for creating and managing Nobl9 resources diff --git a/sdk/dotnet/RoleBinding.cs b/sdk/dotnet/RoleBinding.cs index 68f7b91..c5e5105 100644 --- a/sdk/dotnet/RoleBinding.cs +++ b/sdk/dotnet/RoleBinding.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// /// ## Example Usage @@ -16,16 +17,17 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { /// var @this = new Nobl9.RoleBinding("this", new() /// { - /// ProjectRef = "1234567890asdfghjkl", + /// GroupRef = "test", + /// ProjectRef = "default", /// RoleRef = "project-owner", - /// User = "1234567890asdfghjkl", /// }); /// /// }); @@ -45,6 +47,12 @@ public partial class RoleBinding : global::Pulumi.CustomResource [Output("displayName")] public Output DisplayName { get; private set; } = null!; + /// + /// Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + /// + [Output("groupRef")] + public Output GroupRef { get; private set; } = null!; + /// /// Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -52,22 +60,22 @@ public partial class RoleBinding : global::Pulumi.CustomResource public Output Name { get; private set; } = null!; /// - /// Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + /// Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. /// [Output("projectRef")] public Output ProjectRef { get; private set; } = null!; /// - /// Role name; the role that you want the user to assume. + /// Role name; the role that you want the user or group to assume. /// [Output("roleRef")] public Output RoleRef { get; private set; } = null!; /// - /// Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + /// Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). /// [Output("user")] - public Output User { get; private set; } = null!; + public Output User { get; private set; } = null!; /// @@ -92,7 +100,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -122,6 +130,12 @@ public sealed class RoleBindingArgs : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + /// + [Input("groupRef")] + public Input? GroupRef { get; set; } + /// /// Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -129,22 +143,22 @@ public sealed class RoleBindingArgs : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + /// Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. /// [Input("projectRef")] public Input? ProjectRef { get; set; } /// - /// Role name; the role that you want the user to assume. + /// Role name; the role that you want the user or group to assume. /// [Input("roleRef", required: true)] public Input RoleRef { get; set; } = null!; /// - /// Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + /// Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). /// - [Input("user", required: true)] - public Input User { get; set; } = null!; + [Input("user")] + public Input? User { get; set; } public RoleBindingArgs() { @@ -160,6 +174,12 @@ public sealed class RoleBindingState : global::Pulumi.ResourceArgs [Input("displayName")] public Input? DisplayName { get; set; } + /// + /// Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + /// + [Input("groupRef")] + public Input? GroupRef { get; set; } + /// /// Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). /// @@ -167,19 +187,19 @@ public sealed class RoleBindingState : global::Pulumi.ResourceArgs public Input? Name { get; set; } /// - /// Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + /// Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. /// [Input("projectRef")] public Input? ProjectRef { get; set; } /// - /// Role name; the role that you want the user to assume. + /// Role name; the role that you want the user or group to assume. /// [Input("roleRef")] public Input? RoleRef { get; set; } /// - /// Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + /// Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). /// [Input("user")] public Input? User { get; set; } diff --git a/sdk/dotnet/Service.cs b/sdk/dotnet/Service.cs index 77f3be8..4d85de8 100644 --- a/sdk/dotnet/Service.cs +++ b/sdk/dotnet/Service.cs @@ -6,8 +6,9 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// /// A **service** in Nobl9 is a high-level grouping of Service Level Objectives (SLOs). A service can represent a logical service endpoint like an API, a database, an application, or anything else you care about setting an SLO for. Every SLO in Nobl9 is tied to a service, and the service can have one or more SLOs. @@ -20,8 +21,9 @@ namespace Pulumi.Nobl9 /// /// ```csharp /// using System.Collections.Generic; + /// using System.Linq; /// using Pulumi; - /// using Nobl9 = Pulumi.Nobl9; + /// using Nobl9 = Piclemx.Nobl9; /// /// return await Deployment.RunAsync(() => /// { @@ -128,7 +130,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. diff --git a/sdk/dotnet/Slo.cs b/sdk/dotnet/Slo.cs index b09f592..06f8619 100644 --- a/sdk/dotnet/Slo.cs +++ b/sdk/dotnet/Slo.cs @@ -6,14 +6,204 @@ using System.Collections.Immutable; using System.Threading.Tasks; using Pulumi.Serialization; +using Pulumi; -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { /// /// An SLO is a target value or range of values for a service that is measured by a service level indicator (SLI). SLOs allows you to define the reliability of your products and services in terms of customer expectations. You can create SLOs for user journeys, internal services, or even infrastructure. /// /// For more information, refer to [SLO configuration documentation](https://docs.nobl9.com/yaml-guide#slo) /// + /// ## Example Usage + /// + /// ```csharp + /// using System.Collections.Generic; + /// using System.Linq; + /// using Pulumi; + /// using Nobl9 = Piclemx.Nobl9; + /// + /// return await Deployment.RunAsync(() => + /// { + /// var thisProject = new Nobl9.Project("thisProject", new() + /// { + /// DisplayName = "Test N9 Terraform", + /// Description = "An example N9 Terraform project", + /// }); + /// + /// var thisService = new Nobl9.Service("thisService", new() + /// { + /// Project = thisProject.Name, + /// DisplayName = thisProject.DisplayName.Apply(displayName => $"{displayName} Front Page"), + /// Description = "Front page service", + /// }); + /// + /// var thisSlo = new Nobl9.Slo("thisSlo", new() + /// { + /// Service = thisService.Name, + /// BudgetingMethod = "Occurrences", + /// Project = thisProject.Name, + /// Labels = new[] + /// { + /// new Nobl9.Inputs.SloLabelArgs + /// { + /// Key = "env", + /// Values = new[] + /// { + /// "dev", + /// "prod", + /// }, + /// }, + /// new Nobl9.Inputs.SloLabelArgs + /// { + /// Key = "team", + /// Values = new[] + /// { + /// "red", + /// }, + /// }, + /// }, + /// Attachments = new[] + /// { + /// new Nobl9.Inputs.SloAttachmentArgs + /// { + /// Url = "https://www.nobl9.com/", + /// DisplayName = "Nobl9 Reliability Center", + /// }, + /// new Nobl9.Inputs.SloAttachmentArgs + /// { + /// Url = "https://duckduckgo.com/", + /// DisplayName = "Nice search engine", + /// }, + /// }, + /// AlertPolicies = new[] + /// { + /// "foo-front-page-latency", + /// }, + /// TimeWindow = new Nobl9.Inputs.SloTimeWindowArgs + /// { + /// Unit = "Day", + /// Count = 30, + /// IsRolling = true, + /// }, + /// Objectives = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveArgs + /// { + /// Name = "tf-objective-1", + /// Target = 0.99, + /// DisplayName = "OK", + /// Value = 2000, + /// Op = "gte", + /// RawMetrics = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveRawMetricArgs + /// { + /// Queries = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveRawMetricQueryArgs + /// { + /// Prometheuses = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveRawMetricQueryPrometheusArgs + /// { + /// Promql = @" latency_west_c7{code=""ALL"",instance=""localhost:3000"",job=""prometheus"",service=""glob_account""} + /// ", + /// }, + /// }, + /// }, + /// }, + /// }, + /// }, + /// }, + /// }, + /// Indicator = new Nobl9.Inputs.SloIndicatorArgs + /// { + /// Name = "test-terraform-prom-agent", + /// }, + /// }); + /// + /// var thisIndex_sloSlo = new Nobl9.Slo("thisIndex/sloSlo", new() + /// { + /// Service = thisService.Name, + /// BudgetingMethod = "Occurrences", + /// Project = thisProject.Name, + /// TimeWindow = new Nobl9.Inputs.SloTimeWindowArgs + /// { + /// Unit = "Day", + /// Count = 30, + /// IsRolling = true, + /// }, + /// Objectives = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveArgs + /// { + /// Name = "tf-objective-1", + /// Target = 0.99, + /// DisplayName = "OK", + /// Value = 1, + /// CountMetrics = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveCountMetricArgs + /// { + /// Incremental = true, + /// Goods = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveCountMetricGoodArgs + /// { + /// Prometheuses = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveCountMetricGoodPrometheusArgs + /// { + /// Promql = "1.0", + /// }, + /// }, + /// }, + /// }, + /// Totals = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveCountMetricTotalArgs + /// { + /// Prometheuses = new[] + /// { + /// new Nobl9.Inputs.SloObjectiveCountMetricTotalPrometheusArgs + /// { + /// Promql = "1.0", + /// }, + /// }, + /// }, + /// }, + /// }, + /// }, + /// }, + /// }, + /// Indicator = new Nobl9.Inputs.SloIndicatorArgs + /// { + /// Name = "test-terraform-prom-agent", + /// }, + /// AnomalyConfig = new Nobl9.Inputs.SloAnomalyConfigArgs + /// { + /// NoData = new Nobl9.Inputs.SloAnomalyConfigNoDataArgs + /// { + /// AlertMethods = new[] + /// { + /// new Nobl9.Inputs.SloAnomalyConfigNoDataAlertMethodArgs + /// { + /// Name = "foo-method-method", + /// Project = "default", + /// }, + /// new Nobl9.Inputs.SloAnomalyConfigNoDataAlertMethodArgs + /// { + /// Name = "bar-alert-method", + /// Project = "default", + /// }, + /// }, + /// }, + /// }, + /// }); + /// + /// }); + /// ``` /// ## Nobl9 Official Documentation /// /// https://docs.nobl9.com/SLOs_as_code/?_highlight=slo @@ -27,6 +217,15 @@ public partial class Slo : global::Pulumi.CustomResource [Output("alertPolicies")] public Output> AlertPolicies { get; private set; } = null!; + /// + /// Configuration for Anomalies. Currently supported Anomaly Type is NoData + /// + [Output("anomalyConfig")] + public Output AnomalyConfig { get; private set; } = null!; + + [Output("attachment")] + public Output> Attachment { get; private set; } = null!; + [Output("attachments")] public Output> Attachments { get; private set; } = null!; @@ -49,7 +248,7 @@ public partial class Slo : global::Pulumi.CustomResource public Output Description { get; private set; } = null!; /// - /// User-friendly display name of the resource. + /// Name displayed for the attachment. Max. length: 63 characters. /// [Output("displayName")] public Output DisplayName { get; private set; } = null!; @@ -64,7 +263,7 @@ public partial class Slo : global::Pulumi.CustomResource public Output> Labels { get; private set; } = null!; /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Output("name")] public Output Name { get; private set; } = null!; @@ -76,7 +275,7 @@ public partial class Slo : global::Pulumi.CustomResource public Output> Objectives { get; private set; } = null!; /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. /// [Output("project")] public Output Project { get; private set; } = null!; @@ -113,7 +312,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, - PluginDownloadURL = "https://github.com/piclemx/pulumi-nobl9/releases/", + PluginDownloadURL = "github://api.github.com/piclemx/pulumi-nobl9", }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. @@ -149,6 +348,20 @@ public InputList AlertPolicies set => _alertPolicies = value; } + /// + /// Configuration for Anomalies. Currently supported Anomaly Type is NoData + /// + [Input("anomalyConfig")] + public Input? AnomalyConfig { get; set; } + + [Input("attachment")] + private InputList? _attachment; + public InputList Attachment + { + get => _attachment ?? (_attachment = new InputList()); + set => _attachment = value; + } + [Input("attachments")] private InputList? _attachments; [Obsolete(@"""attachments"" argument is deprecated use ""attachment"" instead")] @@ -177,7 +390,7 @@ public InputList Attachments public Input? Description { get; set; } /// - /// User-friendly display name of the resource. + /// Name displayed for the attachment. Max. length: 63 characters. /// [Input("displayName")] public Input? DisplayName { get; set; } @@ -198,7 +411,7 @@ public InputList Labels } /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name")] public Input? Name { get; set; } @@ -216,7 +429,7 @@ public InputList Objectives } /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. /// [Input("project", required: true)] public Input Project { get; set; } = null!; @@ -250,6 +463,20 @@ public InputList AlertPolicies set => _alertPolicies = value; } + /// + /// Configuration for Anomalies. Currently supported Anomaly Type is NoData + /// + [Input("anomalyConfig")] + public Input? AnomalyConfig { get; set; } + + [Input("attachment")] + private InputList? _attachment; + public InputList Attachment + { + get => _attachment ?? (_attachment = new InputList()); + set => _attachment = value; + } + [Input("attachments")] private InputList? _attachments; [Obsolete(@"""attachments"" argument is deprecated use ""attachment"" instead")] @@ -278,7 +505,7 @@ public InputList Attachments public Input? Description { get; set; } /// - /// User-friendly display name of the resource. + /// Name displayed for the attachment. Max. length: 63 characters. /// [Input("displayName")] public Input? DisplayName { get; set; } @@ -299,7 +526,7 @@ public InputList Labels } /// - /// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// The name of the previously defined alert method. /// [Input("name")] public Input? Name { get; set; } @@ -317,7 +544,7 @@ public InputList Objectives } /// - /// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + /// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. /// [Input("project")] public Input? Project { get; set; } diff --git a/sdk/dotnet/Utilities.cs b/sdk/dotnet/Utilities.cs index b512474..bd3eb56 100644 --- a/sdk/dotnet/Utilities.cs +++ b/sdk/dotnet/Utilities.cs @@ -1,7 +1,7 @@ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** -namespace Pulumi.Nobl9 +namespace Piclemx.Nobl9 { static class Utilities { @@ -53,7 +53,7 @@ static class Utilities { var dst = src ?? new global::Pulumi.InvokeOptions{}; dst.Version = src?.Version ?? Version; - dst.PluginDownloadURL = src?.PluginDownloadURL ?? "https://github.com/piclemx/pulumi-nobl9/releases/"; + dst.PluginDownloadURL = src?.PluginDownloadURL ?? "github://api.github.com/piclemx/pulumi-nobl9"; return dst; } @@ -63,7 +63,7 @@ static class Utilities static Utilities() { var assembly = global::System.Reflection.IntrospectionExtensions.GetTypeInfo(typeof(Utilities)).Assembly; - using var stream = assembly.GetManifestResourceStream("Pulumi.Nobl9.version.txt"); + using var stream = assembly.GetManifestResourceStream("Piclemx.Nobl9.version.txt"); using var reader = new global::System.IO.StreamReader(stream ?? throw new global::System.NotSupportedException("Missing embedded version.txt file")); version = reader.ReadToEnd().Trim(); var parts = version.Split("\n"); diff --git a/sdk/dotnet/logo.png b/sdk/dotnet/logo.png index 181f421..1becba2 100644 Binary files a/sdk/dotnet/logo.png and b/sdk/dotnet/logo.png differ diff --git a/sdk/dotnet/pulumi-plugin.json b/sdk/dotnet/pulumi-plugin.json index 44404ee..245a7ef 100644 --- a/sdk/dotnet/pulumi-plugin.json +++ b/sdk/dotnet/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "nobl9", - "server": "https://github.com/piclemx/pulumi-nobl9/releases/" + "server": "github://api.github.com/piclemx/pulumi-nobl9" } diff --git a/sdk/go.mod b/sdk/go.mod index e24ee62..f582f80 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -1,3 +1,91 @@ module github.com/piclemx/pulumi-nobl9/sdk -go 1.17 +go 1.22 + +require ( + github.com/blang/semver v3.5.1+incompatible + github.com/pulumi/pulumi/sdk/v3 v3.104.2 +) + +require ( + dario.cat/mergo v1.0.0 // indirect + github.com/Microsoft/go-winio v0.6.1 // indirect + github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 // indirect + github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect + github.com/agext/levenshtein v1.2.3 // indirect + github.com/apparentlymart/go-textseg/v13 v13.0.0 // indirect + github.com/atotto/clipboard v0.1.4 // indirect + github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect + github.com/charmbracelet/bubbles v0.16.1 // indirect + github.com/charmbracelet/bubbletea v0.24.2 // indirect + github.com/charmbracelet/lipgloss v0.7.1 // indirect + github.com/cheggaaa/pb v1.0.29 // indirect + github.com/cloudflare/circl v1.3.7 // indirect + github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 // indirect + github.com/cyphar/filepath-securejoin v0.2.4 // indirect + github.com/djherbis/times v1.5.0 // indirect + github.com/emirpasic/gods v1.18.1 // indirect + github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect + github.com/go-git/go-billy/v5 v5.5.0 // indirect + github.com/go-git/go-git/v5 v5.11.0 // indirect + github.com/gogo/protobuf v1.3.2 // indirect + github.com/golang/glog v1.1.0 // indirect + github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect + github.com/golang/protobuf v1.5.3 // indirect + github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 // indirect + github.com/hashicorp/errwrap v1.1.0 // indirect + github.com/hashicorp/go-multierror v1.1.1 // indirect + github.com/hashicorp/hcl/v2 v2.17.0 // indirect + github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect + github.com/kevinburke/ssh_config v1.2.0 // indirect + github.com/lucasb-eyer/go-colorful v1.2.0 // indirect + github.com/mattn/go-isatty v0.0.19 // indirect + github.com/mattn/go-localereader v0.0.1 // indirect + github.com/mattn/go-runewidth v0.0.15 // indirect + github.com/mitchellh/go-ps v1.0.0 // indirect + github.com/mitchellh/go-wordwrap v1.0.1 // indirect + github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect + github.com/muesli/cancelreader v0.2.2 // indirect + github.com/muesli/reflow v0.3.0 // indirect + github.com/muesli/termenv v0.15.2 // indirect + github.com/opentracing/basictracer-go v1.1.0 // indirect + github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/pgavlin/fx v0.1.6 // indirect + github.com/pjbgf/sha1cd v0.3.0 // indirect + github.com/pkg/errors v0.9.1 // indirect + github.com/pkg/term v1.1.0 // indirect + github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect + github.com/pulumi/esc v0.6.2 // indirect + github.com/rivo/uniseg v0.4.4 // indirect + github.com/rogpeppe/go-internal v1.11.0 // indirect + github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect + github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect + github.com/sergi/go-diff v1.3.1 // indirect + github.com/skeema/knownhosts v1.2.1 // indirect + github.com/spf13/cast v1.4.1 // indirect + github.com/spf13/cobra v1.7.0 // indirect + github.com/spf13/pflag v1.0.5 // indirect + github.com/texttheater/golang-levenshtein v1.0.1 // indirect + github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect + github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect + github.com/uber/jaeger-lib v2.4.1+incompatible // indirect + github.com/xanzy/ssh-agent v0.3.3 // indirect + github.com/zclconf/go-cty v1.13.2 // indirect + go.uber.org/atomic v1.9.0 // indirect + golang.org/x/crypto v0.17.0 // indirect + golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect + golang.org/x/mod v0.14.0 // indirect + golang.org/x/net v0.19.0 // indirect + golang.org/x/sync v0.5.0 // indirect + golang.org/x/sys v0.15.0 // indirect + golang.org/x/term v0.15.0 // indirect + golang.org/x/text v0.14.0 // indirect + golang.org/x/tools v0.15.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130 // indirect + google.golang.org/grpc v1.57.1 // indirect + google.golang.org/protobuf v1.31.0 // indirect + gopkg.in/warnings.v0 v0.1.2 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect + lukechampine.com/frand v1.4.2 // indirect +) diff --git a/sdk/go.sum b/sdk/go.sum new file mode 100644 index 0000000..2775758 --- /dev/null +++ b/sdk/go.sum @@ -0,0 +1,315 @@ +dario.cat/mergo v1.0.0 h1:AGCNq9Evsj31mOgNPcLyXc+4PNABt905YmuqPYYpBWk= +dario.cat/mergo v1.0.0/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +github.com/HdrHistogram/hdrhistogram-go v1.1.2 h1:5IcZpTvzydCQeHzK4Ef/D5rrSqwxob0t8PQPMybUNFM= +github.com/HdrHistogram/hdrhistogram-go v1.1.2/go.mod h1:yDgFjdqOqDEKOvasDdhWNXYg9BVp4O+o5f6V/ehm6Oo= +github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= +github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= +github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= +github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 h1:kkhsdkhsCvIsutKu5zLMgWtgh9YxGCNAw8Ad8hjwfYg= +github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= +github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da h1:KjTM2ks9d14ZYCvmHS9iAKVt9AyzRSqNU1qabPih5BY= +github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da/go.mod h1:eHEWzANqSiWQsof+nXEI9bUVUyV6F53Fp89EuCh2EAA= +github.com/agext/levenshtein v1.2.3 h1:YB2fHEn0UJagG8T1rrWknE3ZQzWM06O8AMAatNn7lmo= +github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki2W0IB5558= +github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= +github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= +github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw= +github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo= +github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio= +github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= +github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4= +github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn0Yu86PYI= +github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= +github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8= +github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ= +github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/bwesterb/go-ristretto v1.2.3/go.mod h1:fUIoIZaG73pV5biE2Blr2xEzDoMj7NFEuV9ekS419A0= +github.com/charmbracelet/bubbles v0.16.1 h1:6uzpAAaT9ZqKssntbvZMlksWHruQLNxg49H5WdeuYSY= +github.com/charmbracelet/bubbles v0.16.1/go.mod h1:2QCp9LFlEsBQMvIYERr7Ww2H2bA7xen1idUDIzm/+Xc= +github.com/charmbracelet/bubbletea v0.24.2 h1:uaQIKx9Ai6Gdh5zpTbGiWpytMU+CfsPp06RaW2cx/SY= +github.com/charmbracelet/bubbletea v0.24.2/go.mod h1:XdrNrV4J8GiyshTtx3DNuYkR1FDaJmO3l2nejekbsgg= +github.com/charmbracelet/lipgloss v0.7.1 h1:17WMwi7N1b1rVWOjMT+rCh7sQkvDU75B2hbZpc5Kc1E= +github.com/charmbracelet/lipgloss v0.7.1/go.mod h1:yG0k3giv8Qj8edTCbbg6AlQ5e8KNWpFujkNawKNhE2c= +github.com/cheggaaa/pb v1.0.29 h1:FckUN5ngEk2LpvuG0fw1GEFx6LtyY2pWI/Z2QgCnEYo= +github.com/cheggaaa/pb v1.0.29/go.mod h1:W40334L7FMC5JKWldsTWbdGjLo0RxUKK73K+TuPxX30= +github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= +github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= +github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= +github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81 h1:q2hJAaP1k2wIvVRd/hEHD7lacgqrCPS+k8g1MndzfWY= +github.com/containerd/console v1.0.4-0.20230313162750-1ae8d489ac81/go.mod h1:YynlIjWYF8myEu6sdkwKIvGQq+cOckRm6So2avqoYAk= +github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= +github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/djherbis/times v1.5.0 h1:79myA211VwPhFTqUk8xehWrsEO+zcIZj0zT8mXPVARU= +github.com/djherbis/times v1.5.0/go.mod h1:5q7FDLvbNg1L/KaBmPcWlVR9NmoKo3+ucqUA3ijQhA0= +github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a h1:mATvB/9r/3gvcejNsXKSkQ6lcIaNec2nyfOdlTBR2lU= +github.com/elazarl/goproxy v0.0.0-20230808193330-2592e75ae04a/go.mod h1:Ro8st/ElPeALwNFlcTpWmkr6IoMFfkjXAvTHpevnDsM= +github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= +github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= +github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= +github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= +github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= +github.com/gliderlabs/ssh v0.3.5 h1:OcaySEmAQJgyYcArR+gGGTHCyE7nvhEMTlYY+Dp8CpY= +github.com/gliderlabs/ssh v0.3.5/go.mod h1:8XB4KraRrX39qHhT6yxPsHedjA08I/uBVwj4xC+/+z4= +github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= +github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= +github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= +github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= +github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= +github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= +github.com/go-git/go-git/v5 v5.11.0 h1:XIZc1p+8YzypNr34itUfSvYJcv+eYdTnTvOZ2vD3cA4= +github.com/go-git/go-git/v5 v5.11.0/go.mod h1:6GFcX2P3NM7FPBfpePbpLd21XxsgdAt+lKqXmCUiUCY= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/golang/glog v1.1.0 h1:/d3pCKDPWNnvIWe0vVUpNP32qc8U3PDVxySP/y360qE= +github.com/golang/glog v1.1.0/go.mod h1:pfYeQZ3JWZoXTV5sFc986z3HTpwQs9At6P4ImfuP3NQ= +github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= +github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= +github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645 h1:MJG/KsmcqMwFAkh8mTnAwhyKoB+sTAnY4CACC110tbU= +github.com/grpc-ecosystem/grpc-opentracing v0.0.0-20180507213350-8e809c8a8645/go.mod h1:6iZfnjpejD4L/4DwD7NryNaJyCQdzwWwH2MWhCA90Kw= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= +github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= +github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= +github.com/hashicorp/hcl/v2 v2.17.0 h1:z1XvSUyXd1HP10U4lrLg5e0JMVz6CPaJvAgxM0KNZVY= +github.com/hashicorp/hcl/v2 v2.17.0/go.mod h1:gJyW2PTShkJqQBKpAmPO3yxMxIuoXkOF2TpqXzrQyx4= +github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= +github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= +github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= +github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4= +github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= +github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= +github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= +github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= +github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= +github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= +github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= +github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= +github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-localereader v0.0.1 h1:ygSAOl7ZXTx4RdPYinUpg6W99U8jWvWi9Ye2JC/oIi4= +github.com/mattn/go-localereader v0.0.1/go.mod h1:8fBrzywKY7BI3czFoHkuzRoWE9C+EiG4R1k4Cjx5p88= +github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= +github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= +github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/mitchellh/go-ps v1.0.0 h1:i6ampVEEF4wQFF+bkYfwYgY+F/uYJDktmvLPf7qIgjc= +github.com/mitchellh/go-ps v1.0.0/go.mod h1:J4lOc8z8yJs6vUwklHw2XEIiT4z4C40KtWVN3nvg8Pg= +github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= +github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= +github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 h1:ZK8zHtRHOkbHy6Mmr5D264iyp3TiX5OmNcI5cIARiQI= +github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6/go.mod h1:CJlz5H+gyd6CUWT45Oy4q24RdLyn7Md9Vj2/ldJBSIo= +github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= +github.com/muesli/cancelreader v0.2.2/go.mod h1:3XuTXfFS2VjM+HTLZY9Ak0l6eUKfijIfMUZ4EgX0QYo= +github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s= +github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8= +github.com/muesli/termenv v0.15.2 h1:GohcuySI0QmI3wN8Ok9PtKGkgkFIk7y6Vpb5PvrY+Wo= +github.com/muesli/termenv v0.15.2/go.mod h1:Epx+iuz8sNs7mNKhxzH4fWXGNpZwUaJKRS1noLXviQ8= +github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= +github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= +github.com/opentracing/basictracer-go v1.1.0 h1:Oa1fTSBvAl8pa3U+IJYqrKm0NALwH9OsgwOqDv4xJW0= +github.com/opentracing/basictracer-go v1.1.0/go.mod h1:V2HZueSJEp879yv285Aap1BS69fQMD+MNP1mRs6mBQc= +github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= +github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs= +github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= +github.com/pgavlin/fx v0.1.6 h1:r9jEg69DhNoCd3Xh0+5mIbdbS3PqWrVWujkY76MFRTU= +github.com/pgavlin/fx v0.1.6/go.mod h1:KWZJ6fqBBSh8GxHYqwYCf3rYE7Gp2p0N8tJp8xv9u9M= +github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4= +github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/term v1.1.0 h1:xIAAdCMh3QIAy+5FrE8Ad8XoDhEU4ufwbaSozViP9kk= +github.com/pkg/term v1.1.0/go.mod h1:E25nymQcrSllhX42Ok8MRm1+hyBdHY0dCeiKZ9jpNGw= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0= +github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= +github.com/pulumi/esc v0.6.2 h1:+z+l8cuwIauLSwXQS0uoI3rqB+YG4SzsZYtHfNoXBvw= +github.com/pulumi/esc v0.6.2/go.mod h1:jNnYNjzsOgVTjCp0LL24NsCk8ZJxq4IoLQdCT0X7l8k= +github.com/pulumi/pulumi/sdk/v3 v3.104.2 h1:aOwUkrlsyEWrL1jlHqn2/36zMSPQrVUYUyZPqstrmjc= +github.com/pulumi/pulumi/sdk/v3 v3.104.2/go.mod h1:Ml3rpGfyZlI4zQCG7LN2XDSmH4XUNYdyBwJ3yEr/OpI= +github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= +github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= +github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M= +github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA= +github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 h1:OkMGxebDjyw0ULyrTYWeN0UNCCkmCWfjPnIA2W6oviI= +github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06/go.mod h1:+ePHsJ1keEjQtpvf9HHw0f4ZeJ0TLRsxhunSI2hYJSs= +github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 h1:TToq11gyfNlrMFZiYujSekIsPd9AmsA2Bj/iv+s4JHE= +github.com/santhosh-tekuri/jsonschema/v5 v5.0.0/go.mod h1:FKdcjfQW6rpZSnxxUvEA5H/cDPdvJ/SZJQLWWXWGrZ0= +github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= +github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= +github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/skeema/knownhosts v1.2.1 h1:SHWdIUa82uGZz+F+47k8SY4QhhI291cXCpopT1lK2AQ= +github.com/skeema/knownhosts v1.2.1/go.mod h1:xYbVRSPxqBZFrdmDyMmsOs+uX1UZC3nTN3ThzgDxUwo= +github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA= +github.com/spf13/cast v1.4.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= +github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= +github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= +github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/stretchr/objx v0.1.0 h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= +github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= +github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68= +github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE= +github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= +github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= +github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= +github.com/uber/jaeger-lib v2.4.1+incompatible/go.mod h1:ComeNDZlWwrWnDv8aPp0Ba6+uUTzImX/AauajbLI56U= +github.com/xanzy/ssh-agent v0.3.3 h1:+/15pJfg/RsTxqYcX6fHqOXZwwMP+2VyYWJeWM2qQFM= +github.com/xanzy/ssh-agent v0.3.3/go.mod h1:6dzNDKs0J9rVPHPhaGCukekBHKqfl+L3KghI1Bc68Uw= +github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +github.com/zclconf/go-cty v1.13.2 h1:4GvrUxe/QUDYuJKAav4EYqdM47/kZa672LwmXFmEKT0= +github.com/zclconf/go-cty v1.13.2/go.mod h1:YKQzy/7pZ7iq2jNFzy5go57xdxdWoLLpaEp4u238AE0= +go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE= +go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= +golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= +golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k= +golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= +golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa h1:FRnLl4eNAQl8hwxVVC17teOw8kdjVDVAiFMtgUdTSRQ= +golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa/go.mod h1:zk2irFbV9DP96SEBUUAy67IdHUaZuSnrz1n472HUCLE= +golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0= +golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200421231249-e086a090c8fd/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= +golang.org/x/net v0.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c= +golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE= +golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc= +golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= +golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4= +golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/tools v0.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8= +golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130 h1:2FZP5XuJY9zQyGM5N0rtovnoXjiMUEIUMvw0m9wlpLc= +google.golang.org/genproto/googleapis/rpc v0.0.0-20230706204954-ccb25ca9f130/go.mod h1:8mL13HKkDa+IuJ8yruA3ci0q+0vsUz4m//+ottjwS5o= +google.golang.org/grpc v1.57.1 h1:upNTNqv0ES+2ZOOqACwVtS3Il8M12/+Hz41RCPzAjQg= +google.golang.org/grpc v1.57.1/go.mod h1:Sd+9RMTACXwmub0zcNY2c4arhtrbBYD1AUHI/dt16Mo= +google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= +google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8= +google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= +gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +lukechampine.com/frand v1.4.2 h1:RzFIpOvkMXuPMBb9maa4ND4wjBn71E1Jpf8BzJHMaVw= +lukechampine.com/frand v1.4.2/go.mod h1:4S/TM2ZgrKejMcKMbeLjISpJMO+/eZ1zu3vYX9dtj3s= +pgregory.net/rapid v0.5.5 h1:jkgx1TjbQPD/feRoK+S/mXw9e1uj6WilpHrXJowi6oA= +pgregory.net/rapid v0.5.5/go.mod h1:PY5XlDGj0+V1FCq0o192FdRhpKHGTRIWBgqjDBTrq04= diff --git a/sdk/go/nobl9/agent.go b/sdk/go/nobl9/agent.go index 45e616d..7bcf531 100644 --- a/sdk/go/nobl9/agent.go +++ b/sdk/go/nobl9/agent.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -23,37 +24,36 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// thisProject, err := nobl9.NewProject(ctx, "thisProject", &nobl9.ProjectArgs{ -// DisplayName: pulumi.String("Test N9 Terraform"), -// Description: pulumi.String("An example N9 Terraform project"), -// }) -// if err != nil { -// return err -// } -// _, err = nobl9.NewAgent(ctx, "thisAgent", &nobl9.AgentArgs{ -// Project: thisProject.Name, -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// AgentType: pulumi.String("prometheus"), -// PrometheusConfig: &AgentPrometheusConfigArgs{ -// Url: pulumi.String("http://web.net"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// thisProject, err := nobl9.NewProject(ctx, "thisProject", &nobl9.ProjectArgs{ +// DisplayName: pulumi.String("Test N9 Terraform"), +// Description: pulumi.String("An example N9 Terraform project"), +// }) +// if err != nil { +// return err +// } +// _, err = nobl9.NewAgent(ctx, "thisAgent", &nobl9.AgentArgs{ +// Project: thisProject.Name, +// AgentType: pulumi.String("prometheus"), +// ReleaseChannel: pulumi.String("stable"), +// PrometheusConfig: &nobl9.AgentPrometheusConfigArgs{ +// Url: pulumi.String("http://web.net"), +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -67,6 +67,8 @@ type Agent struct { AmazonPrometheusConfig AgentAmazonPrometheusConfigPtrOutput `pulumi:"amazonPrometheusConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) AppdynamicsConfig AgentAppdynamicsConfigPtrOutput `pulumi:"appdynamicsConfig"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + AzureMonitorConfig AgentAzureMonitorConfigPtrOutput `pulumi:"azureMonitorConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) BigqueryConfig AgentBigqueryConfigPtrOutput `pulumi:"bigqueryConfig"` // client_id of created agent. @@ -91,6 +93,10 @@ type Agent struct { GrafanaLokiConfig AgentGrafanaLokiConfigPtrOutput `pulumi:"grafanaLokiConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) GraphiteConfig AgentGraphiteConfigPtrOutput `pulumi:"graphiteConfig"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval AgentHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + HoneycombConfig AgentHoneycombConfigPtrOutput `pulumi:"honeycombConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) InfluxdbConfig AgentInfluxdbConfigPtrOutput `pulumi:"influxdbConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) @@ -105,15 +111,19 @@ type Agent struct { OpentsdbConfig AgentOpentsdbConfigPtrOutput `pulumi:"opentsdbConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-agent) PingdomConfig AgentPingdomConfigPtrOutput `pulumi:"pingdomConfig"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Name of the Lightstep project. Project pulumi.StringOutput `pulumi:"project"` // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) PrometheusConfig AgentPrometheusConfigPtrOutput `pulumi:"prometheusConfig"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay AgentQueryDelayPtrOutput `pulumi:"queryDelay"` + QueryDelay AgentQueryDelayOutput `pulumi:"queryDelay"` // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) RedshiftConfig AgentRedshiftConfigPtrOutput `pulumi:"redshiftConfig"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) SplunkConfig AgentSplunkConfigPtrOutput `pulumi:"splunkConfig"` @@ -140,10 +150,7 @@ func NewAgent(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") - } - opts = pkgResourceDefaultOpts(opts) + opts = internal.PkgResourceDefaultOpts(opts) var resource Agent err := ctx.RegisterResource("nobl9:index/agent:Agent", name, args, &resource, opts...) if err != nil { @@ -172,6 +179,8 @@ type agentState struct { AmazonPrometheusConfig *AgentAmazonPrometheusConfig `pulumi:"amazonPrometheusConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) AppdynamicsConfig *AgentAppdynamicsConfig `pulumi:"appdynamicsConfig"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + AzureMonitorConfig *AgentAzureMonitorConfig `pulumi:"azureMonitorConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) BigqueryConfig *AgentBigqueryConfig `pulumi:"bigqueryConfig"` // client_id of created agent. @@ -196,6 +205,10 @@ type agentState struct { GrafanaLokiConfig *AgentGrafanaLokiConfig `pulumi:"grafanaLokiConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) GraphiteConfig *AgentGraphiteConfig `pulumi:"graphiteConfig"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval *AgentHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + HoneycombConfig *AgentHoneycombConfig `pulumi:"honeycombConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) InfluxdbConfig *AgentInfluxdbConfig `pulumi:"influxdbConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) @@ -210,7 +223,7 @@ type agentState struct { OpentsdbConfig *AgentOpentsdbConfig `pulumi:"opentsdbConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-agent) PingdomConfig *AgentPingdomConfig `pulumi:"pingdomConfig"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Name of the Lightstep project. Project *string `pulumi:"project"` // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) PrometheusConfig *AgentPrometheusConfig `pulumi:"prometheusConfig"` @@ -218,7 +231,11 @@ type agentState struct { QueryDelay *AgentQueryDelay `pulumi:"queryDelay"` // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) RedshiftConfig *AgentRedshiftConfig `pulumi:"redshiftConfig"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) SplunkConfig *AgentSplunkConfig `pulumi:"splunkConfig"` @@ -239,6 +256,8 @@ type AgentState struct { AmazonPrometheusConfig AgentAmazonPrometheusConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) AppdynamicsConfig AgentAppdynamicsConfigPtrInput + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + AzureMonitorConfig AgentAzureMonitorConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) BigqueryConfig AgentBigqueryConfigPtrInput // client_id of created agent. @@ -263,6 +282,10 @@ type AgentState struct { GrafanaLokiConfig AgentGrafanaLokiConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) GraphiteConfig AgentGraphiteConfigPtrInput + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval AgentHistoricalDataRetrievalPtrInput + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + HoneycombConfig AgentHoneycombConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) InfluxdbConfig AgentInfluxdbConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) @@ -277,7 +300,7 @@ type AgentState struct { OpentsdbConfig AgentOpentsdbConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-agent) PingdomConfig AgentPingdomConfigPtrInput - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Name of the Lightstep project. Project pulumi.StringPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) PrometheusConfig AgentPrometheusConfigPtrInput @@ -285,7 +308,11 @@ type AgentState struct { QueryDelay AgentQueryDelayPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) RedshiftConfig AgentRedshiftConfigPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) SplunkConfig AgentSplunkConfigPtrInput @@ -310,6 +337,8 @@ type agentArgs struct { AmazonPrometheusConfig *AgentAmazonPrometheusConfig `pulumi:"amazonPrometheusConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) AppdynamicsConfig *AgentAppdynamicsConfig `pulumi:"appdynamicsConfig"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + AzureMonitorConfig *AgentAzureMonitorConfig `pulumi:"azureMonitorConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) BigqueryConfig *AgentBigqueryConfig `pulumi:"bigqueryConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-agent) @@ -330,6 +359,10 @@ type agentArgs struct { GrafanaLokiConfig *AgentGrafanaLokiConfig `pulumi:"grafanaLokiConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) GraphiteConfig *AgentGraphiteConfig `pulumi:"graphiteConfig"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval *AgentHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + HoneycombConfig *AgentHoneycombConfig `pulumi:"honeycombConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) InfluxdbConfig *AgentInfluxdbConfig `pulumi:"influxdbConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) @@ -344,7 +377,7 @@ type agentArgs struct { OpentsdbConfig *AgentOpentsdbConfig `pulumi:"opentsdbConfig"` // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-agent) PingdomConfig *AgentPingdomConfig `pulumi:"pingdomConfig"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Name of the Lightstep project. Project string `pulumi:"project"` // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) PrometheusConfig *AgentPrometheusConfig `pulumi:"prometheusConfig"` @@ -352,7 +385,11 @@ type agentArgs struct { QueryDelay *AgentQueryDelay `pulumi:"queryDelay"` // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) RedshiftConfig *AgentRedshiftConfig `pulumi:"redshiftConfig"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) SplunkConfig *AgentSplunkConfig `pulumi:"splunkConfig"` @@ -372,6 +409,8 @@ type AgentArgs struct { AmazonPrometheusConfig AgentAmazonPrometheusConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) AppdynamicsConfig AgentAppdynamicsConfigPtrInput + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + AzureMonitorConfig AgentAzureMonitorConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) BigqueryConfig AgentBigqueryConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-agent) @@ -392,6 +431,10 @@ type AgentArgs struct { GrafanaLokiConfig AgentGrafanaLokiConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) GraphiteConfig AgentGraphiteConfigPtrInput + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval AgentHistoricalDataRetrievalPtrInput + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + HoneycombConfig AgentHoneycombConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) InfluxdbConfig AgentInfluxdbConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) @@ -406,7 +449,7 @@ type AgentArgs struct { OpentsdbConfig AgentOpentsdbConfigPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-agent) PingdomConfig AgentPingdomConfigPtrInput - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Name of the Lightstep project. Project pulumi.StringInput // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) PrometheusConfig AgentPrometheusConfigPtrInput @@ -414,7 +457,11 @@ type AgentArgs struct { QueryDelay AgentQueryDelayPtrInput // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) RedshiftConfig AgentRedshiftConfigPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) SplunkConfig AgentSplunkConfigPtrInput @@ -452,7 +499,7 @@ func (i *Agent) ToAgentOutputWithContext(ctx context.Context) AgentOutput { // AgentArrayInput is an input type that accepts AgentArray and AgentArrayOutput values. // You can construct a concrete instance of `AgentArrayInput` via: // -// AgentArray{ AgentArgs{...} } +// AgentArray{ AgentArgs{...} } type AgentArrayInput interface { pulumi.Input @@ -477,7 +524,7 @@ func (i AgentArray) ToAgentArrayOutputWithContext(ctx context.Context) AgentArra // AgentMapInput is an input type that accepts AgentMap and AgentMapOutput values. // You can construct a concrete instance of `AgentMapInput` via: // -// AgentMap{ "key": AgentArgs{...} } +// AgentMap{ "key": AgentArgs{...} } type AgentMapInput interface { pulumi.Input @@ -528,6 +575,11 @@ func (o AgentOutput) AppdynamicsConfig() AgentAppdynamicsConfigPtrOutput { return o.ApplyT(func(v *Agent) AgentAppdynamicsConfigPtrOutput { return v.AppdynamicsConfig }).(AgentAppdynamicsConfigPtrOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) +func (o AgentOutput) AzureMonitorConfig() AgentAzureMonitorConfigPtrOutput { + return o.ApplyT(func(v *Agent) AgentAzureMonitorConfigPtrOutput { return v.AzureMonitorConfig }).(AgentAzureMonitorConfigPtrOutput) +} + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) func (o AgentOutput) BigqueryConfig() AgentBigqueryConfigPtrOutput { return o.ApplyT(func(v *Agent) AgentBigqueryConfigPtrOutput { return v.BigqueryConfig }).(AgentBigqueryConfigPtrOutput) @@ -588,6 +640,16 @@ func (o AgentOutput) GraphiteConfig() AgentGraphiteConfigPtrOutput { return o.ApplyT(func(v *Agent) AgentGraphiteConfigPtrOutput { return v.GraphiteConfig }).(AgentGraphiteConfigPtrOutput) } +// [Replay configuration documentation](https://docs.nobl9.com/replay) +func (o AgentOutput) HistoricalDataRetrieval() AgentHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *Agent) AgentHistoricalDataRetrievalOutput { return v.HistoricalDataRetrieval }).(AgentHistoricalDataRetrievalOutput) +} + +// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) +func (o AgentOutput) HoneycombConfig() AgentHoneycombConfigPtrOutput { + return o.ApplyT(func(v *Agent) AgentHoneycombConfigPtrOutput { return v.HoneycombConfig }).(AgentHoneycombConfigPtrOutput) +} + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) func (o AgentOutput) InfluxdbConfig() AgentInfluxdbConfigPtrOutput { return o.ApplyT(func(v *Agent) AgentInfluxdbConfigPtrOutput { return v.InfluxdbConfig }).(AgentInfluxdbConfigPtrOutput) @@ -623,7 +685,7 @@ func (o AgentOutput) PingdomConfig() AgentPingdomConfigPtrOutput { return o.ApplyT(func(v *Agent) AgentPingdomConfigPtrOutput { return v.PingdomConfig }).(AgentPingdomConfigPtrOutput) } -// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +// Name of the Lightstep project. func (o AgentOutput) Project() pulumi.StringOutput { return o.ApplyT(func(v *Agent) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput) } @@ -634,8 +696,8 @@ func (o AgentOutput) PrometheusConfig() AgentPrometheusConfigPtrOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o AgentOutput) QueryDelay() AgentQueryDelayPtrOutput { - return o.ApplyT(func(v *Agent) AgentQueryDelayPtrOutput { return v.QueryDelay }).(AgentQueryDelayPtrOutput) +func (o AgentOutput) QueryDelay() AgentQueryDelayOutput { + return o.ApplyT(func(v *Agent) AgentQueryDelayOutput { return v.QueryDelay }).(AgentQueryDelayOutput) } // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) @@ -643,7 +705,14 @@ func (o AgentOutput) RedshiftConfig() AgentRedshiftConfigPtrOutput { return o.ApplyT(func(v *Agent) AgentRedshiftConfigPtrOutput { return v.RedshiftConfig }).(AgentRedshiftConfigPtrOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o AgentOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *Agent) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o AgentOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *Agent) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/alertMethodDiscord.go b/sdk/go/nobl9/alertMethodDiscord.go index 14a1a2d..586385a 100644 --- a/sdk/go/nobl9/alertMethodDiscord.go +++ b/sdk/go/nobl9/alertMethodDiscord.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -36,7 +37,14 @@ func NewAlertMethodDiscord(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - opts = pkgResourceDefaultOpts(opts) + if args.Url != nil { + args.Url = pulumi.ToSecret(args.Url).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "url", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodDiscord err := ctx.RegisterResource("nobl9:index/alertMethodDiscord:AlertMethodDiscord", name, args, &resource, opts...) if err != nil { @@ -141,7 +149,7 @@ func (i *AlertMethodDiscord) ToAlertMethodDiscordOutputWithContext(ctx context.C // AlertMethodDiscordArrayInput is an input type that accepts AlertMethodDiscordArray and AlertMethodDiscordArrayOutput values. // You can construct a concrete instance of `AlertMethodDiscordArrayInput` via: // -// AlertMethodDiscordArray{ AlertMethodDiscordArgs{...} } +// AlertMethodDiscordArray{ AlertMethodDiscordArgs{...} } type AlertMethodDiscordArrayInput interface { pulumi.Input @@ -166,7 +174,7 @@ func (i AlertMethodDiscordArray) ToAlertMethodDiscordArrayOutputWithContext(ctx // AlertMethodDiscordMapInput is an input type that accepts AlertMethodDiscordMap and AlertMethodDiscordMapOutput values. // You can construct a concrete instance of `AlertMethodDiscordMapInput` via: // -// AlertMethodDiscordMap{ "key": AlertMethodDiscordArgs{...} } +// AlertMethodDiscordMap{ "key": AlertMethodDiscordArgs{...} } type AlertMethodDiscordMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/alertMethodEmail.go b/sdk/go/nobl9/alertMethodEmail.go index c63cba5..43bdc03 100644 --- a/sdk/go/nobl9/alertMethodEmail.go +++ b/sdk/go/nobl9/alertMethodEmail.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -16,8 +17,10 @@ type AlertMethodEmail struct { // Blind carbon copy recipients. The maximum number of recipients is 10. Bccs pulumi.StringArrayOutput `pulumi:"bccs"` - // The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). - Body pulumi.StringOutput `pulumi:"body"` + // This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. + Body pulumi.StringPtrOutput `pulumi:"body"` // Carbon copy recipients. The maximum number of recipients is 10. Ccs pulumi.StringArrayOutput `pulumi:"ccs"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -28,8 +31,10 @@ type AlertMethodEmail struct { Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` - // The Subject of the email alert. - Subject pulumi.StringOutput `pulumi:"subject"` + // This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. + Subject pulumi.StringPtrOutput `pulumi:"subject"` // Recipients. The maximum number of recipients is 10. Tos pulumi.StringArrayOutput `pulumi:"tos"` } @@ -41,19 +46,13 @@ func NewAlertMethodEmail(ctx *pulumi.Context, return nil, errors.New("missing one or more required arguments") } - if args.Body == nil { - return nil, errors.New("invalid value for required argument 'Body'") - } if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.Subject == nil { - return nil, errors.New("invalid value for required argument 'Subject'") - } if args.Tos == nil { return nil, errors.New("invalid value for required argument 'Tos'") } - opts = pkgResourceDefaultOpts(opts) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodEmail err := ctx.RegisterResource("nobl9:index/alertMethodEmail:AlertMethodEmail", name, args, &resource, opts...) if err != nil { @@ -78,7 +77,9 @@ func GetAlertMethodEmail(ctx *pulumi.Context, type alertMethodEmailState struct { // Blind carbon copy recipients. The maximum number of recipients is 10. Bccs []string `pulumi:"bccs"` - // The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + // This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. Body *string `pulumi:"body"` // Carbon copy recipients. The maximum number of recipients is 10. Ccs []string `pulumi:"ccs"` @@ -90,7 +91,9 @@ type alertMethodEmailState struct { Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` - // The Subject of the email alert. + // This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. Subject *string `pulumi:"subject"` // Recipients. The maximum number of recipients is 10. Tos []string `pulumi:"tos"` @@ -99,7 +102,9 @@ type alertMethodEmailState struct { type AlertMethodEmailState struct { // Blind carbon copy recipients. The maximum number of recipients is 10. Bccs pulumi.StringArrayInput - // The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + // This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. Body pulumi.StringPtrInput // Carbon copy recipients. The maximum number of recipients is 10. Ccs pulumi.StringArrayInput @@ -111,7 +116,9 @@ type AlertMethodEmailState struct { Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput - // The Subject of the email alert. + // This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. Subject pulumi.StringPtrInput // Recipients. The maximum number of recipients is 10. Tos pulumi.StringArrayInput @@ -124,8 +131,10 @@ func (AlertMethodEmailState) ElementType() reflect.Type { type alertMethodEmailArgs struct { // Blind carbon copy recipients. The maximum number of recipients is 10. Bccs []string `pulumi:"bccs"` - // The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). - Body string `pulumi:"body"` + // This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. + Body *string `pulumi:"body"` // Carbon copy recipients. The maximum number of recipients is 10. Ccs []string `pulumi:"ccs"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -136,8 +145,10 @@ type alertMethodEmailArgs struct { Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` - // The Subject of the email alert. - Subject string `pulumi:"subject"` + // This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. + Subject *string `pulumi:"subject"` // Recipients. The maximum number of recipients is 10. Tos []string `pulumi:"tos"` } @@ -146,8 +157,10 @@ type alertMethodEmailArgs struct { type AlertMethodEmailArgs struct { // Blind carbon copy recipients. The maximum number of recipients is 10. Bccs pulumi.StringArrayInput - // The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). - Body pulumi.StringInput + // This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. + Body pulumi.StringPtrInput // Carbon copy recipients. The maximum number of recipients is 10. Ccs pulumi.StringArrayInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -158,8 +171,10 @@ type AlertMethodEmailArgs struct { Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput - // The Subject of the email alert. - Subject pulumi.StringInput + // This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + // + // Deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. + Subject pulumi.StringPtrInput // Recipients. The maximum number of recipients is 10. Tos pulumi.StringArrayInput } @@ -190,7 +205,7 @@ func (i *AlertMethodEmail) ToAlertMethodEmailOutputWithContext(ctx context.Conte // AlertMethodEmailArrayInput is an input type that accepts AlertMethodEmailArray and AlertMethodEmailArrayOutput values. // You can construct a concrete instance of `AlertMethodEmailArrayInput` via: // -// AlertMethodEmailArray{ AlertMethodEmailArgs{...} } +// AlertMethodEmailArray{ AlertMethodEmailArgs{...} } type AlertMethodEmailArrayInput interface { pulumi.Input @@ -215,7 +230,7 @@ func (i AlertMethodEmailArray) ToAlertMethodEmailArrayOutputWithContext(ctx cont // AlertMethodEmailMapInput is an input type that accepts AlertMethodEmailMap and AlertMethodEmailMapOutput values. // You can construct a concrete instance of `AlertMethodEmailMapInput` via: // -// AlertMethodEmailMap{ "key": AlertMethodEmailArgs{...} } +// AlertMethodEmailMap{ "key": AlertMethodEmailArgs{...} } type AlertMethodEmailMapInput interface { pulumi.Input @@ -256,9 +271,11 @@ func (o AlertMethodEmailOutput) Bccs() pulumi.StringArrayOutput { return o.ApplyT(func(v *AlertMethodEmail) pulumi.StringArrayOutput { return v.Bccs }).(pulumi.StringArrayOutput) } -// The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). -func (o AlertMethodEmailOutput) Body() pulumi.StringOutput { - return o.ApplyT(func(v *AlertMethodEmail) pulumi.StringOutput { return v.Body }).(pulumi.StringOutput) +// This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. +// +// Deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. +func (o AlertMethodEmailOutput) Body() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AlertMethodEmail) pulumi.StringPtrOutput { return v.Body }).(pulumi.StringPtrOutput) } // Carbon copy recipients. The maximum number of recipients is 10. @@ -286,9 +303,11 @@ func (o AlertMethodEmailOutput) Project() pulumi.StringOutput { return o.ApplyT(func(v *AlertMethodEmail) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput) } -// The Subject of the email alert. -func (o AlertMethodEmailOutput) Subject() pulumi.StringOutput { - return o.ApplyT(func(v *AlertMethodEmail) pulumi.StringOutput { return v.Subject }).(pulumi.StringOutput) +// This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. +// +// Deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. +func (o AlertMethodEmailOutput) Subject() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AlertMethodEmail) pulumi.StringPtrOutput { return v.Subject }).(pulumi.StringPtrOutput) } // Recipients. The maximum number of recipients is 10. diff --git a/sdk/go/nobl9/alertMethodJira.go b/sdk/go/nobl9/alertMethodJira.go index 0155d22..54c1ce1 100644 --- a/sdk/go/nobl9/alertMethodJira.go +++ b/sdk/go/nobl9/alertMethodJira.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -51,7 +52,14 @@ func NewAlertMethodJira(ctx *pulumi.Context, if args.Username == nil { return nil, errors.New("invalid value for required argument 'Username'") } - opts = pkgResourceDefaultOpts(opts) + if args.Apitoken != nil { + args.Apitoken = pulumi.ToSecret(args.Apitoken).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "apitoken", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodJira err := ctx.RegisterResource("nobl9:index/alertMethodJira:AlertMethodJira", name, args, &resource, opts...) if err != nil { @@ -180,7 +188,7 @@ func (i *AlertMethodJira) ToAlertMethodJiraOutputWithContext(ctx context.Context // AlertMethodJiraArrayInput is an input type that accepts AlertMethodJiraArray and AlertMethodJiraArrayOutput values. // You can construct a concrete instance of `AlertMethodJiraArrayInput` via: // -// AlertMethodJiraArray{ AlertMethodJiraArgs{...} } +// AlertMethodJiraArray{ AlertMethodJiraArgs{...} } type AlertMethodJiraArrayInput interface { pulumi.Input @@ -205,7 +213,7 @@ func (i AlertMethodJiraArray) ToAlertMethodJiraArrayOutputWithContext(ctx contex // AlertMethodJiraMapInput is an input type that accepts AlertMethodJiraMap and AlertMethodJiraMapOutput values. // You can construct a concrete instance of `AlertMethodJiraMapInput` via: // -// AlertMethodJiraMap{ "key": AlertMethodJiraArgs{...} } +// AlertMethodJiraMap{ "key": AlertMethodJiraArgs{...} } type AlertMethodJiraMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/alertMethodMsteams.go b/sdk/go/nobl9/alertMethodMsteams.go index a664063..f62decd 100644 --- a/sdk/go/nobl9/alertMethodMsteams.go +++ b/sdk/go/nobl9/alertMethodMsteams.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -36,7 +37,14 @@ func NewAlertMethodMsteams(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - opts = pkgResourceDefaultOpts(opts) + if args.Url != nil { + args.Url = pulumi.ToSecret(args.Url).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "url", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodMsteams err := ctx.RegisterResource("nobl9:index/alertMethodMsteams:AlertMethodMsteams", name, args, &resource, opts...) if err != nil { @@ -141,7 +149,7 @@ func (i *AlertMethodMsteams) ToAlertMethodMsteamsOutputWithContext(ctx context.C // AlertMethodMsteamsArrayInput is an input type that accepts AlertMethodMsteamsArray and AlertMethodMsteamsArrayOutput values. // You can construct a concrete instance of `AlertMethodMsteamsArrayInput` via: // -// AlertMethodMsteamsArray{ AlertMethodMsteamsArgs{...} } +// AlertMethodMsteamsArray{ AlertMethodMsteamsArgs{...} } type AlertMethodMsteamsArrayInput interface { pulumi.Input @@ -166,7 +174,7 @@ func (i AlertMethodMsteamsArray) ToAlertMethodMsteamsArrayOutputWithContext(ctx // AlertMethodMsteamsMapInput is an input type that accepts AlertMethodMsteamsMap and AlertMethodMsteamsMapOutput values. // You can construct a concrete instance of `AlertMethodMsteamsMapInput` via: // -// AlertMethodMsteamsMap{ "key": AlertMethodMsteamsArgs{...} } +// AlertMethodMsteamsMap{ "key": AlertMethodMsteamsArgs{...} } type AlertMethodMsteamsMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/alertMethodOpsgenie.go b/sdk/go/nobl9/alertMethodOpsgenie.go index 0dc1bfc..cf23484 100644 --- a/sdk/go/nobl9/alertMethodOpsgenie.go +++ b/sdk/go/nobl9/alertMethodOpsgenie.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -41,7 +42,14 @@ func NewAlertMethodOpsgenie(ctx *pulumi.Context, if args.Url == nil { return nil, errors.New("invalid value for required argument 'Url'") } - opts = pkgResourceDefaultOpts(opts) + if args.Auth != nil { + args.Auth = pulumi.ToSecret(args.Auth).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "auth", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodOpsgenie err := ctx.RegisterResource("nobl9:index/alertMethodOpsgenie:AlertMethodOpsgenie", name, args, &resource, opts...) if err != nil { @@ -154,7 +162,7 @@ func (i *AlertMethodOpsgenie) ToAlertMethodOpsgenieOutputWithContext(ctx context // AlertMethodOpsgenieArrayInput is an input type that accepts AlertMethodOpsgenieArray and AlertMethodOpsgenieArrayOutput values. // You can construct a concrete instance of `AlertMethodOpsgenieArrayInput` via: // -// AlertMethodOpsgenieArray{ AlertMethodOpsgenieArgs{...} } +// AlertMethodOpsgenieArray{ AlertMethodOpsgenieArgs{...} } type AlertMethodOpsgenieArrayInput interface { pulumi.Input @@ -179,7 +187,7 @@ func (i AlertMethodOpsgenieArray) ToAlertMethodOpsgenieArrayOutputWithContext(ct // AlertMethodOpsgenieMapInput is an input type that accepts AlertMethodOpsgenieMap and AlertMethodOpsgenieMapOutput values. // You can construct a concrete instance of `AlertMethodOpsgenieMapInput` via: // -// AlertMethodOpsgenieMap{ "key": AlertMethodOpsgenieArgs{...} } +// AlertMethodOpsgenieMap{ "key": AlertMethodOpsgenieArgs{...} } type AlertMethodOpsgenieMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/alertMethodPagerduty.go b/sdk/go/nobl9/alertMethodPagerduty.go index 1928562..fd690c7 100644 --- a/sdk/go/nobl9/alertMethodPagerduty.go +++ b/sdk/go/nobl9/alertMethodPagerduty.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -24,6 +25,8 @@ type AlertMethodPagerduty struct { Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` + // Sends a notification after the cooldown period is over. + SendResolution AlertMethodPagerdutySendResolutionPtrOutput `pulumi:"sendResolution"` } // NewAlertMethodPagerduty registers a new resource with the given unique name, arguments, and options. @@ -36,7 +39,14 @@ func NewAlertMethodPagerduty(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - opts = pkgResourceDefaultOpts(opts) + if args.IntegrationKey != nil { + args.IntegrationKey = pulumi.ToSecret(args.IntegrationKey).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "integrationKey", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodPagerduty err := ctx.RegisterResource("nobl9:index/alertMethodPagerduty:AlertMethodPagerduty", name, args, &resource, opts...) if err != nil { @@ -69,6 +79,8 @@ type alertMethodPagerdutyState struct { Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` + // Sends a notification after the cooldown period is over. + SendResolution *AlertMethodPagerdutySendResolution `pulumi:"sendResolution"` } type AlertMethodPagerdutyState struct { @@ -82,6 +94,8 @@ type AlertMethodPagerdutyState struct { Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput + // Sends a notification after the cooldown period is over. + SendResolution AlertMethodPagerdutySendResolutionPtrInput } func (AlertMethodPagerdutyState) ElementType() reflect.Type { @@ -99,6 +113,8 @@ type alertMethodPagerdutyArgs struct { Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` + // Sends a notification after the cooldown period is over. + SendResolution *AlertMethodPagerdutySendResolution `pulumi:"sendResolution"` } // The set of arguments for constructing a AlertMethodPagerduty resource. @@ -113,6 +129,8 @@ type AlertMethodPagerdutyArgs struct { Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput + // Sends a notification after the cooldown period is over. + SendResolution AlertMethodPagerdutySendResolutionPtrInput } func (AlertMethodPagerdutyArgs) ElementType() reflect.Type { @@ -141,7 +159,7 @@ func (i *AlertMethodPagerduty) ToAlertMethodPagerdutyOutputWithContext(ctx conte // AlertMethodPagerdutyArrayInput is an input type that accepts AlertMethodPagerdutyArray and AlertMethodPagerdutyArrayOutput values. // You can construct a concrete instance of `AlertMethodPagerdutyArrayInput` via: // -// AlertMethodPagerdutyArray{ AlertMethodPagerdutyArgs{...} } +// AlertMethodPagerdutyArray{ AlertMethodPagerdutyArgs{...} } type AlertMethodPagerdutyArrayInput interface { pulumi.Input @@ -166,7 +184,7 @@ func (i AlertMethodPagerdutyArray) ToAlertMethodPagerdutyArrayOutputWithContext( // AlertMethodPagerdutyMapInput is an input type that accepts AlertMethodPagerdutyMap and AlertMethodPagerdutyMapOutput values. // You can construct a concrete instance of `AlertMethodPagerdutyMapInput` via: // -// AlertMethodPagerdutyMap{ "key": AlertMethodPagerdutyArgs{...} } +// AlertMethodPagerdutyMap{ "key": AlertMethodPagerdutyArgs{...} } type AlertMethodPagerdutyMapInput interface { pulumi.Input @@ -227,6 +245,11 @@ func (o AlertMethodPagerdutyOutput) Project() pulumi.StringOutput { return o.ApplyT(func(v *AlertMethodPagerduty) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput) } +// Sends a notification after the cooldown period is over. +func (o AlertMethodPagerdutyOutput) SendResolution() AlertMethodPagerdutySendResolutionPtrOutput { + return o.ApplyT(func(v *AlertMethodPagerduty) AlertMethodPagerdutySendResolutionPtrOutput { return v.SendResolution }).(AlertMethodPagerdutySendResolutionPtrOutput) +} + type AlertMethodPagerdutyArrayOutput struct{ *pulumi.OutputState } func (AlertMethodPagerdutyArrayOutput) ElementType() reflect.Type { diff --git a/sdk/go/nobl9/alertMethodServicenow.go b/sdk/go/nobl9/alertMethodServicenow.go index e7e8ced..ac6c8d1 100644 --- a/sdk/go/nobl9/alertMethodServicenow.go +++ b/sdk/go/nobl9/alertMethodServicenow.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -46,7 +47,14 @@ func NewAlertMethodServicenow(ctx *pulumi.Context, if args.Username == nil { return nil, errors.New("invalid value for required argument 'Username'") } - opts = pkgResourceDefaultOpts(opts) + if args.Password != nil { + args.Password = pulumi.ToSecret(args.Password).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "password", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodServicenow err := ctx.RegisterResource("nobl9:index/alertMethodServicenow:AlertMethodServicenow", name, args, &resource, opts...) if err != nil { @@ -167,7 +175,7 @@ func (i *AlertMethodServicenow) ToAlertMethodServicenowOutputWithContext(ctx con // AlertMethodServicenowArrayInput is an input type that accepts AlertMethodServicenowArray and AlertMethodServicenowArrayOutput values. // You can construct a concrete instance of `AlertMethodServicenowArrayInput` via: // -// AlertMethodServicenowArray{ AlertMethodServicenowArgs{...} } +// AlertMethodServicenowArray{ AlertMethodServicenowArgs{...} } type AlertMethodServicenowArrayInput interface { pulumi.Input @@ -192,7 +200,7 @@ func (i AlertMethodServicenowArray) ToAlertMethodServicenowArrayOutputWithContex // AlertMethodServicenowMapInput is an input type that accepts AlertMethodServicenowMap and AlertMethodServicenowMapOutput values. // You can construct a concrete instance of `AlertMethodServicenowMapInput` via: // -// AlertMethodServicenowMap{ "key": AlertMethodServicenowArgs{...} } +// AlertMethodServicenowMap{ "key": AlertMethodServicenowArgs{...} } type AlertMethodServicenowMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/alertMethodSlack.go b/sdk/go/nobl9/alertMethodSlack.go index 7bea8e4..71f4ce9 100644 --- a/sdk/go/nobl9/alertMethodSlack.go +++ b/sdk/go/nobl9/alertMethodSlack.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -36,7 +37,14 @@ func NewAlertMethodSlack(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - opts = pkgResourceDefaultOpts(opts) + if args.Url != nil { + args.Url = pulumi.ToSecret(args.Url).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "url", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodSlack err := ctx.RegisterResource("nobl9:index/alertMethodSlack:AlertMethodSlack", name, args, &resource, opts...) if err != nil { @@ -141,7 +149,7 @@ func (i *AlertMethodSlack) ToAlertMethodSlackOutputWithContext(ctx context.Conte // AlertMethodSlackArrayInput is an input type that accepts AlertMethodSlackArray and AlertMethodSlackArrayOutput values. // You can construct a concrete instance of `AlertMethodSlackArrayInput` via: // -// AlertMethodSlackArray{ AlertMethodSlackArgs{...} } +// AlertMethodSlackArray{ AlertMethodSlackArgs{...} } type AlertMethodSlackArrayInput interface { pulumi.Input @@ -166,7 +174,7 @@ func (i AlertMethodSlackArray) ToAlertMethodSlackArrayOutputWithContext(ctx cont // AlertMethodSlackMapInput is an input type that accepts AlertMethodSlackMap and AlertMethodSlackMapOutput values. // You can construct a concrete instance of `AlertMethodSlackMapInput` via: // -// AlertMethodSlackMap{ "key": AlertMethodSlackArgs{...} } +// AlertMethodSlackMap{ "key": AlertMethodSlackArgs{...} } type AlertMethodSlackMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/alertMethodWebhook.go b/sdk/go/nobl9/alertMethodWebhook.go index a376853..6f2d118 100644 --- a/sdk/go/nobl9/alertMethodWebhook.go +++ b/sdk/go/nobl9/alertMethodWebhook.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -40,7 +41,14 @@ func NewAlertMethodWebhook(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - opts = pkgResourceDefaultOpts(opts) + if args.Url != nil { + args.Url = pulumi.ToSecret(args.Url).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "url", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertMethodWebhook err := ctx.RegisterResource("nobl9:index/alertMethodWebhook:AlertMethodWebhook", name, args, &resource, opts...) if err != nil { @@ -161,7 +169,7 @@ func (i *AlertMethodWebhook) ToAlertMethodWebhookOutputWithContext(ctx context.C // AlertMethodWebhookArrayInput is an input type that accepts AlertMethodWebhookArray and AlertMethodWebhookArrayOutput values. // You can construct a concrete instance of `AlertMethodWebhookArrayInput` via: // -// AlertMethodWebhookArray{ AlertMethodWebhookArgs{...} } +// AlertMethodWebhookArray{ AlertMethodWebhookArgs{...} } type AlertMethodWebhookArrayInput interface { pulumi.Input @@ -186,7 +194,7 @@ func (i AlertMethodWebhookArray) ToAlertMethodWebhookArrayOutputWithContext(ctx // AlertMethodWebhookMapInput is an input type that accepts AlertMethodWebhookMap and AlertMethodWebhookMapOutput values. // You can construct a concrete instance of `AlertMethodWebhookMapInput` via: // -// AlertMethodWebhookMap{ "key": AlertMethodWebhookArgs{...} } +// AlertMethodWebhookMap{ "key": AlertMethodWebhookArgs{...} } type AlertMethodWebhookMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/alertPolicy.go b/sdk/go/nobl9/alertPolicy.go index f668953..41a83b6 100644 --- a/sdk/go/nobl9/alertPolicy.go +++ b/sdk/go/nobl9/alertPolicy.go @@ -7,13 +7,14 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) // An **Alert Policy** expresses a set of conditions you want to track or monitor. The conditions for an Alert Policy define what is monitored and when to activate an alert: when the performance of your service is declining, Nobl9 will send a notification to a predefined channel. // -// A Nobl9 AlertPolicy accepts up to 7 conditions. All the specified conditions must be satisfied to trigger an alert. +// A Nobl9 AlertPolicy accepts up to 3 conditions. All the specified conditions must be satisfied to trigger an alert. // // For more details, refer to the [Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy). // @@ -25,58 +26,104 @@ import ( // package main // // import ( -// "fmt" // -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// "fmt" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// thisProject, err := nobl9.NewProject(ctx, "thisProject", &nobl9.ProjectArgs{ -// DisplayName: pulumi.String("My Project"), -// Description: pulumi.String("An example N9 Terraform project"), -// }) -// if err != nil { -// return err -// } -// _, err = nobl9.NewService(ctx, "thisService", &nobl9.ServiceArgs{ -// Project: thisProject.Name, -// DisplayName: thisProject.DisplayName.ApplyT(func(displayName string) (string, error) { -// return fmt.Sprintf("%v Front Page", displayName), nil -// }).(pulumi.StringOutput), -// Description: pulumi.String("Front page service"), -// }) -// if err != nil { -// return err -// } -// _, err = nobl9.NewAlertPolicy(ctx, "thisAlertPolicy", &nobl9.AlertPolicyArgs{ -// Project: thisProject.Name, -// DisplayName: thisProject.DisplayName.ApplyT(func(displayName string) (string, error) { -// return fmt.Sprintf("%v Front Page Latency", displayName), nil -// }).(pulumi.StringOutput), -// Severity: pulumi.String("High"), -// Description: pulumi.String("Alert when page latency is > 2000 and error budget would be exhausted"), -// Conditions: AlertPolicyConditionArray{ -// &AlertPolicyConditionArgs{ -// Measurement: pulumi.String("timeToBurnBudget"), -// ValueString: pulumi.String("72h"), -// LastsFor: pulumi.String("30m"), -// }, -// }, -// AlertMethods: AlertPolicyAlertMethodArray{ -// &AlertPolicyAlertMethodArgs{ -// Name: pulumi.String("my-alert-method"), -// }, -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// thisProject, err := nobl9.NewProject(ctx, "thisProject", &nobl9.ProjectArgs{ +// DisplayName: pulumi.String("My Project"), +// Description: pulumi.String("An example N9 Terraform project"), +// }) +// if err != nil { +// return err +// } +// _, err = nobl9.NewService(ctx, "thisService", &nobl9.ServiceArgs{ +// Project: thisProject.Name, +// DisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) { +// return fmt.Sprintf("%v Front Page", displayName), nil +// }).(pulumi.StringOutput), +// Description: pulumi.String("Front page service"), +// }) +// if err != nil { +// return err +// } +// _, err = nobl9.NewAlertPolicy(ctx, "thisAlertPolicy", &nobl9.AlertPolicyArgs{ +// Project: thisProject.Name, +// DisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) { +// return fmt.Sprintf("%v Front Page Latency", displayName), nil +// }).(pulumi.StringOutput), +// Severity: pulumi.String("High"), +// Description: pulumi.String("Alert when page latency is > 2000 and error budget would be exhausted"), +// Cooldown: pulumi.String("5m"), +// Conditions: nobl9.AlertPolicyConditionArray{ +// &nobl9.AlertPolicyConditionArgs{ +// Measurement: pulumi.String("timeToBurnBudget"), +// ValueString: pulumi.String("72h"), +// LastsFor: pulumi.String("30m"), +// }, +// }, +// AlertMethods: nobl9.AlertPolicyAlertMethodArray{ +// &nobl9.AlertPolicyAlertMethodArgs{ +// Name: pulumi.String("my-alert-method"), +// }, +// }, +// }) +// if err != nil { +// return err +// } +// _, err = nobl9.NewAlertPolicy(ctx, "thisIndex/alertPolicyAlertPolicy", &nobl9.AlertPolicyArgs{ +// Project: thisProject.Name, +// DisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) { +// return fmt.Sprintf("%v Slow Burn (1x12h and 2x15min)", displayName), nil +// }).(pulumi.StringOutput), +// Severity: pulumi.String("Low"), +// Description: pulumi.String("The budget is slowly exhausting and not recovering."), +// Cooldown: pulumi.String("5m"), +// Conditions: nobl9.AlertPolicyConditionArray{ +// &nobl9.AlertPolicyConditionArgs{ +// Measurement: pulumi.String("averageBurnRate"), +// Value: pulumi.Float64(1), +// AlertingWindow: pulumi.String("12h"), +// }, +// &nobl9.AlertPolicyConditionArgs{ +// Measurement: pulumi.String("averageBurnRate"), +// Value: pulumi.Float64(2), +// AlertingWindow: pulumi.String("15m"), +// }, +// }, +// }) +// if err != nil { +// return err +// } +// _, err = nobl9.NewAlertPolicy(ctx, "thisNobl9Index/alertPolicyAlertPolicy", &nobl9.AlertPolicyArgs{ +// Project: thisProject.Name, +// DisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) { +// return fmt.Sprintf("%v Fast Burn (20x5min)", displayName), nil +// }).(pulumi.StringOutput), +// Severity: pulumi.String("High"), +// Description: pulumi.String("There’s been a significant spike in burn rate over a brief period."), +// Cooldown: pulumi.String("5m"), +// Conditions: nobl9.AlertPolicyConditionArray{ +// &nobl9.AlertPolicyConditionArgs{ +// Measurement: pulumi.String("averageBurnRate"), +// Value: pulumi.Float64(20), +// AlertingWindow: pulumi.String("5m"), +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Useful Links // @@ -87,13 +134,15 @@ type AlertPolicy struct { AlertMethods AlertPolicyAlertMethodArrayOutput `pulumi:"alertMethods"` // Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). Conditions AlertPolicyConditionArrayOutput `pulumi:"conditions"` + // An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + Cooldown pulumi.StringPtrOutput `pulumi:"cooldown"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name pulumi.StringOutput `pulumi:"name"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project pulumi.StringOutput `pulumi:"project"` // Alert severity. One of `Low` | `Medium` | `High`. Severity pulumi.StringOutput `pulumi:"severity"` @@ -115,7 +164,7 @@ func NewAlertPolicy(ctx *pulumi.Context, if args.Severity == nil { return nil, errors.New("invalid value for required argument 'Severity'") } - opts = pkgResourceDefaultOpts(opts) + opts = internal.PkgResourceDefaultOpts(opts) var resource AlertPolicy err := ctx.RegisterResource("nobl9:index/alertPolicy:AlertPolicy", name, args, &resource, opts...) if err != nil { @@ -141,13 +190,15 @@ type alertPolicyState struct { AlertMethods []AlertPolicyAlertMethod `pulumi:"alertMethods"` // Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). Conditions []AlertPolicyCondition `pulumi:"conditions"` + // An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + Cooldown *string `pulumi:"cooldown"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name *string `pulumi:"name"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project *string `pulumi:"project"` // Alert severity. One of `Low` | `Medium` | `High`. Severity *string `pulumi:"severity"` @@ -157,13 +208,15 @@ type AlertPolicyState struct { AlertMethods AlertPolicyAlertMethodArrayInput // Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). Conditions AlertPolicyConditionArrayInput + // An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + Cooldown pulumi.StringPtrInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name pulumi.StringPtrInput - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project pulumi.StringPtrInput // Alert severity. One of `Low` | `Medium` | `High`. Severity pulumi.StringPtrInput @@ -177,13 +230,15 @@ type alertPolicyArgs struct { AlertMethods []AlertPolicyAlertMethod `pulumi:"alertMethods"` // Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). Conditions []AlertPolicyCondition `pulumi:"conditions"` + // An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + Cooldown *string `pulumi:"cooldown"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name *string `pulumi:"name"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project string `pulumi:"project"` // Alert severity. One of `Low` | `Medium` | `High`. Severity string `pulumi:"severity"` @@ -194,13 +249,15 @@ type AlertPolicyArgs struct { AlertMethods AlertPolicyAlertMethodArrayInput // Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). Conditions AlertPolicyConditionArrayInput + // An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + Cooldown pulumi.StringPtrInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name pulumi.StringPtrInput - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project pulumi.StringInput // Alert severity. One of `Low` | `Medium` | `High`. Severity pulumi.StringInput @@ -232,7 +289,7 @@ func (i *AlertPolicy) ToAlertPolicyOutputWithContext(ctx context.Context) AlertP // AlertPolicyArrayInput is an input type that accepts AlertPolicyArray and AlertPolicyArrayOutput values. // You can construct a concrete instance of `AlertPolicyArrayInput` via: // -// AlertPolicyArray{ AlertPolicyArgs{...} } +// AlertPolicyArray{ AlertPolicyArgs{...} } type AlertPolicyArrayInput interface { pulumi.Input @@ -257,7 +314,7 @@ func (i AlertPolicyArray) ToAlertPolicyArrayOutputWithContext(ctx context.Contex // AlertPolicyMapInput is an input type that accepts AlertPolicyMap and AlertPolicyMapOutput values. // You can construct a concrete instance of `AlertPolicyMapInput` via: // -// AlertPolicyMap{ "key": AlertPolicyArgs{...} } +// AlertPolicyMap{ "key": AlertPolicyArgs{...} } type AlertPolicyMapInput interface { pulumi.Input @@ -302,6 +359,11 @@ func (o AlertPolicyOutput) Conditions() AlertPolicyConditionArrayOutput { return o.ApplyT(func(v *AlertPolicy) AlertPolicyConditionArrayOutput { return v.Conditions }).(AlertPolicyConditionArrayOutput) } +// An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved +func (o AlertPolicyOutput) Cooldown() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AlertPolicy) pulumi.StringPtrOutput { return v.Cooldown }).(pulumi.StringPtrOutput) +} + // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. func (o AlertPolicyOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *AlertPolicy) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) @@ -312,12 +374,12 @@ func (o AlertPolicyOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *AlertPolicy) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } -// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +// The name of the previously defined alert method. func (o AlertPolicyOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *AlertPolicy) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. func (o AlertPolicyOutput) Project() pulumi.StringOutput { return o.ApplyT(func(v *AlertPolicy) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput) } diff --git a/sdk/go/nobl9/config/config.go b/sdk/go/nobl9/config/config.go index 13ea6b1..df9f4fc 100644 --- a/sdk/go/nobl9/config/config.go +++ b/sdk/go/nobl9/config/config.go @@ -4,10 +4,13 @@ package config import ( + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/pulumi/pulumi/sdk/v3/go/pulumi/config" ) +var _ = internal.GetEnvOrDefault + // the [Client ID](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect to // Nobl9. func GetClientId(ctx *pulumi.Context) string { @@ -34,9 +37,6 @@ func GetOktaAuthServer(ctx *pulumi.Context) string { func GetOktaOrgUrl(ctx *pulumi.Context) string { return config.Get(ctx, "nobl9:oktaOrgUrl") } - -// Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that -// contains resources managed by the Nobl9 Terraform provider. func GetOrganization(ctx *pulumi.Context) string { return config.Get(ctx, "nobl9:organization") } diff --git a/sdk/go/nobl9/directAppdynamics.go b/sdk/go/nobl9/directAppdynamics.go index 940537f..fa8b562 100644 --- a/sdk/go/nobl9/directAppdynamics.go +++ b/sdk/go/nobl9/directAppdynamics.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects with AppDynamics to collect SLI measurements and compare them to SLO targets. +// AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects to AppDynamics for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [AppDynamics Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-direct) // @@ -21,30 +22,31 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectAppdynamics(ctx, "test-appdynamics", &nobl9.DirectAppdynamicsArgs{ -// AccountName: pulumi.String("account name"), -// ClientName: pulumi.String("client name"), -// ClientSecret: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// Url: pulumi.String("https://web.net"), -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectAppdynamics(ctx, "test-appdynamics", &nobl9.DirectAppdynamicsArgs{ +// AccountName: pulumi.String("account name"), +// ClientName: pulumi.String("client name"), +// ClientSecret: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// ReleaseChannel: pulumi.String("stable"), +// Url: pulumi.String("https://web.net"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -64,13 +66,21 @@ type DirectAppdynamics struct { Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectAppdynamicsHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectAppdynamicsQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectAppdynamicsQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -94,13 +104,17 @@ func NewDirectAppdynamics(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") - } if args.Url == nil { return nil, errors.New("invalid value for required argument 'Url'") } - opts = pkgResourceDefaultOpts(opts) + if args.ClientSecret != nil { + args.ClientSecret = pulumi.ToSecret(args.ClientSecret).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "clientSecret", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectAppdynamics err := ctx.RegisterResource("nobl9:index/directAppdynamics:DirectAppdynamics", name, args, &resource, opts...) if err != nil { @@ -135,13 +149,21 @@ type directAppdynamicsState struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval *DirectAppdynamicsHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectAppdynamicsQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -162,13 +184,21 @@ type DirectAppdynamicsState struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectAppdynamicsHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectAppdynamicsQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -191,13 +221,21 @@ type directAppdynamicsArgs struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval *DirectAppdynamicsHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectAppdynamicsQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // Base URL to the AppDynamics Controller. Url string `pulumi:"url"` @@ -215,13 +253,21 @@ type DirectAppdynamicsArgs struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectAppdynamicsHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectAppdynamicsQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // Base URL to the AppDynamics Controller. Url pulumi.StringInput @@ -253,7 +299,7 @@ func (i *DirectAppdynamics) ToDirectAppdynamicsOutputWithContext(ctx context.Con // DirectAppdynamicsArrayInput is an input type that accepts DirectAppdynamicsArray and DirectAppdynamicsArrayOutput values. // You can construct a concrete instance of `DirectAppdynamicsArrayInput` via: // -// DirectAppdynamicsArray{ DirectAppdynamicsArgs{...} } +// DirectAppdynamicsArray{ DirectAppdynamicsArgs{...} } type DirectAppdynamicsArrayInput interface { pulumi.Input @@ -278,7 +324,7 @@ func (i DirectAppdynamicsArray) ToDirectAppdynamicsArrayOutputWithContext(ctx co // DirectAppdynamicsMapInput is an input type that accepts DirectAppdynamicsMap and DirectAppdynamicsMapOutput values. // You can construct a concrete instance of `DirectAppdynamicsMapInput` via: // -// DirectAppdynamicsMap{ "key": DirectAppdynamicsArgs{...} } +// DirectAppdynamicsMap{ "key": DirectAppdynamicsArgs{...} } type DirectAppdynamicsMapInput interface { pulumi.Input @@ -344,6 +390,18 @@ func (o DirectAppdynamicsOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectAppdynamics) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Replay configuration documentation](https://docs.nobl9.com/replay) +func (o DirectAppdynamicsOutput) HistoricalDataRetrieval() DirectAppdynamicsHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectAppdynamics) DirectAppdynamicsHistoricalDataRetrievalOutput { + return v.HistoricalDataRetrieval + }).(DirectAppdynamicsHistoricalDataRetrievalOutput) +} + +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectAppdynamicsOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectAppdynamics) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectAppdynamicsOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectAppdynamics) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -355,11 +413,18 @@ func (o DirectAppdynamicsOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectAppdynamicsOutput) QueryDelay() DirectAppdynamicsQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectAppdynamics) DirectAppdynamicsQueryDelayPtrOutput { return v.QueryDelay }).(DirectAppdynamicsQueryDelayPtrOutput) +func (o DirectAppdynamicsOutput) QueryDelay() DirectAppdynamicsQueryDelayOutput { + return o.ApplyT(func(v *DirectAppdynamics) DirectAppdynamicsQueryDelayOutput { return v.QueryDelay }).(DirectAppdynamicsQueryDelayOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o DirectAppdynamicsOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectAppdynamics) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectAppdynamicsOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectAppdynamics) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directAzureMonitor.go b/sdk/go/nobl9/directAzureMonitor.go new file mode 100644 index 0000000..8a4f05a --- /dev/null +++ b/sdk/go/nobl9/directAzureMonitor.go @@ -0,0 +1,446 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package nobl9 + +import ( + "context" + "reflect" + + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +type DirectAzureMonitor struct { + pulumi.CustomResourceState + + // [required] | Azure Application (client) ID. + ClientId pulumi.StringOutput `pulumi:"clientId"` + // [required] | Azure Application (client) Secret. + ClientSecret pulumi.StringOutput `pulumi:"clientSecret"` + // Optional description of the resource. Here, you can add details about who is responsible for the integration + // (team/owner) or the purpose of creating it. + Description pulumi.StringPtrOutput `pulumi:"description"` + // User-friendly display name of the resource. + DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectAzureMonitorHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` + // Unique name of the resource, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name pulumi.StringOutput `pulumi:"name"` + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project pulumi.StringOutput `pulumi:"project"` + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay DirectAzureMonitorQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + // anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` + // The status of the created direct. + Status pulumi.StringOutput `pulumi:"status"` + // [required] | Azure Tenant ID. + TenantId pulumi.StringOutput `pulumi:"tenantId"` +} + +// NewDirectAzureMonitor registers a new resource with the given unique name, arguments, and options. +func NewDirectAzureMonitor(ctx *pulumi.Context, + name string, args *DirectAzureMonitorArgs, opts ...pulumi.ResourceOption) (*DirectAzureMonitor, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Project == nil { + return nil, errors.New("invalid value for required argument 'Project'") + } + if args.TenantId == nil { + return nil, errors.New("invalid value for required argument 'TenantId'") + } + if args.ClientId != nil { + args.ClientId = pulumi.ToSecret(args.ClientId).(pulumi.StringPtrInput) + } + if args.ClientSecret != nil { + args.ClientSecret = pulumi.ToSecret(args.ClientSecret).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "clientId", + "clientSecret", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) + var resource DirectAzureMonitor + err := ctx.RegisterResource("nobl9:index/directAzureMonitor:DirectAzureMonitor", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetDirectAzureMonitor gets an existing DirectAzureMonitor resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetDirectAzureMonitor(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *DirectAzureMonitorState, opts ...pulumi.ResourceOption) (*DirectAzureMonitor, error) { + var resource DirectAzureMonitor + err := ctx.ReadResource("nobl9:index/directAzureMonitor:DirectAzureMonitor", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering DirectAzureMonitor resources. +type directAzureMonitorState struct { + // [required] | Azure Application (client) ID. + ClientId *string `pulumi:"clientId"` + // [required] | Azure Application (client) Secret. + ClientSecret *string `pulumi:"clientSecret"` + // Optional description of the resource. Here, you can add details about who is responsible for the integration + // (team/owner) or the purpose of creating it. + Description *string `pulumi:"description"` + // User-friendly display name of the resource. + DisplayName *string `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval *DirectAzureMonitorHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` + // Unique name of the resource, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name *string `pulumi:"name"` + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project *string `pulumi:"project"` + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay *DirectAzureMonitorQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + // anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs []string `pulumi:"sourceOfs"` + // The status of the created direct. + Status *string `pulumi:"status"` + // [required] | Azure Tenant ID. + TenantId *string `pulumi:"tenantId"` +} + +type DirectAzureMonitorState struct { + // [required] | Azure Application (client) ID. + ClientId pulumi.StringPtrInput + // [required] | Azure Application (client) Secret. + ClientSecret pulumi.StringPtrInput + // Optional description of the resource. Here, you can add details about who is responsible for the integration + // (team/owner) or the purpose of creating it. + Description pulumi.StringPtrInput + // User-friendly display name of the resource. + DisplayName pulumi.StringPtrInput + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectAzureMonitorHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput + // Unique name of the resource, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name pulumi.StringPtrInput + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project pulumi.StringPtrInput + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay DirectAzureMonitorQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + // anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs pulumi.StringArrayInput + // The status of the created direct. + Status pulumi.StringPtrInput + // [required] | Azure Tenant ID. + TenantId pulumi.StringPtrInput +} + +func (DirectAzureMonitorState) ElementType() reflect.Type { + return reflect.TypeOf((*directAzureMonitorState)(nil)).Elem() +} + +type directAzureMonitorArgs struct { + // [required] | Azure Application (client) ID. + ClientId *string `pulumi:"clientId"` + // [required] | Azure Application (client) Secret. + ClientSecret *string `pulumi:"clientSecret"` + // Optional description of the resource. Here, you can add details about who is responsible for the integration + // (team/owner) or the purpose of creating it. + Description *string `pulumi:"description"` + // User-friendly display name of the resource. + DisplayName *string `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval *DirectAzureMonitorHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` + // Unique name of the resource, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name *string `pulumi:"name"` + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project string `pulumi:"project"` + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay *DirectAzureMonitorQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + // anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs []string `pulumi:"sourceOfs"` + // [required] | Azure Tenant ID. + TenantId string `pulumi:"tenantId"` +} + +// The set of arguments for constructing a DirectAzureMonitor resource. +type DirectAzureMonitorArgs struct { + // [required] | Azure Application (client) ID. + ClientId pulumi.StringPtrInput + // [required] | Azure Application (client) Secret. + ClientSecret pulumi.StringPtrInput + // Optional description of the resource. Here, you can add details about who is responsible for the integration + // (team/owner) or the purpose of creating it. + Description pulumi.StringPtrInput + // User-friendly display name of the resource. + DisplayName pulumi.StringPtrInput + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectAzureMonitorHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput + // Unique name of the resource, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name pulumi.StringPtrInput + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + // RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project pulumi.StringInput + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay DirectAzureMonitorQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + // anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs pulumi.StringArrayInput + // [required] | Azure Tenant ID. + TenantId pulumi.StringInput +} + +func (DirectAzureMonitorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*directAzureMonitorArgs)(nil)).Elem() +} + +type DirectAzureMonitorInput interface { + pulumi.Input + + ToDirectAzureMonitorOutput() DirectAzureMonitorOutput + ToDirectAzureMonitorOutputWithContext(ctx context.Context) DirectAzureMonitorOutput +} + +func (*DirectAzureMonitor) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAzureMonitor)(nil)).Elem() +} + +func (i *DirectAzureMonitor) ToDirectAzureMonitorOutput() DirectAzureMonitorOutput { + return i.ToDirectAzureMonitorOutputWithContext(context.Background()) +} + +func (i *DirectAzureMonitor) ToDirectAzureMonitorOutputWithContext(ctx context.Context) DirectAzureMonitorOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorOutput) +} + +// DirectAzureMonitorArrayInput is an input type that accepts DirectAzureMonitorArray and DirectAzureMonitorArrayOutput values. +// You can construct a concrete instance of `DirectAzureMonitorArrayInput` via: +// +// DirectAzureMonitorArray{ DirectAzureMonitorArgs{...} } +type DirectAzureMonitorArrayInput interface { + pulumi.Input + + ToDirectAzureMonitorArrayOutput() DirectAzureMonitorArrayOutput + ToDirectAzureMonitorArrayOutputWithContext(context.Context) DirectAzureMonitorArrayOutput +} + +type DirectAzureMonitorArray []DirectAzureMonitorInput + +func (DirectAzureMonitorArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*DirectAzureMonitor)(nil)).Elem() +} + +func (i DirectAzureMonitorArray) ToDirectAzureMonitorArrayOutput() DirectAzureMonitorArrayOutput { + return i.ToDirectAzureMonitorArrayOutputWithContext(context.Background()) +} + +func (i DirectAzureMonitorArray) ToDirectAzureMonitorArrayOutputWithContext(ctx context.Context) DirectAzureMonitorArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorArrayOutput) +} + +// DirectAzureMonitorMapInput is an input type that accepts DirectAzureMonitorMap and DirectAzureMonitorMapOutput values. +// You can construct a concrete instance of `DirectAzureMonitorMapInput` via: +// +// DirectAzureMonitorMap{ "key": DirectAzureMonitorArgs{...} } +type DirectAzureMonitorMapInput interface { + pulumi.Input + + ToDirectAzureMonitorMapOutput() DirectAzureMonitorMapOutput + ToDirectAzureMonitorMapOutputWithContext(context.Context) DirectAzureMonitorMapOutput +} + +type DirectAzureMonitorMap map[string]DirectAzureMonitorInput + +func (DirectAzureMonitorMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*DirectAzureMonitor)(nil)).Elem() +} + +func (i DirectAzureMonitorMap) ToDirectAzureMonitorMapOutput() DirectAzureMonitorMapOutput { + return i.ToDirectAzureMonitorMapOutputWithContext(context.Background()) +} + +func (i DirectAzureMonitorMap) ToDirectAzureMonitorMapOutputWithContext(ctx context.Context) DirectAzureMonitorMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorMapOutput) +} + +type DirectAzureMonitorOutput struct{ *pulumi.OutputState } + +func (DirectAzureMonitorOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAzureMonitor)(nil)).Elem() +} + +func (o DirectAzureMonitorOutput) ToDirectAzureMonitorOutput() DirectAzureMonitorOutput { + return o +} + +func (o DirectAzureMonitorOutput) ToDirectAzureMonitorOutputWithContext(ctx context.Context) DirectAzureMonitorOutput { + return o +} + +// [required] | Azure Application (client) ID. +func (o DirectAzureMonitorOutput) ClientId() pulumi.StringOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringOutput { return v.ClientId }).(pulumi.StringOutput) +} + +// [required] | Azure Application (client) Secret. +func (o DirectAzureMonitorOutput) ClientSecret() pulumi.StringOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringOutput { return v.ClientSecret }).(pulumi.StringOutput) +} + +// Optional description of the resource. Here, you can add details about who is responsible for the integration +// (team/owner) or the purpose of creating it. +func (o DirectAzureMonitorOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// User-friendly display name of the resource. +func (o DirectAzureMonitorOutput) DisplayName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) +} + +// [Replay configuration documentation](https://docs.nobl9.com/replay) +func (o DirectAzureMonitorOutput) HistoricalDataRetrieval() DirectAzureMonitorHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectAzureMonitor) DirectAzureMonitorHistoricalDataRetrievalOutput { + return v.HistoricalDataRetrieval + }).(DirectAzureMonitorHistoricalDataRetrievalOutput) +} + +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectAzureMonitorOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + +// Unique name of the resource, must conform to the naming convention from [DNS +// RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +func (o DirectAzureMonitorOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS +// RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +func (o DirectAzureMonitorOutput) Project() pulumi.StringOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput) +} + +// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. +func (o DirectAzureMonitorOutput) QueryDelay() DirectAzureMonitorQueryDelayOutput { + return o.ApplyT(func(v *DirectAzureMonitor) DirectAzureMonitorQueryDelayOutput { return v.QueryDelay }).(DirectAzureMonitorQueryDelayOutput) +} + +// Release channel of the created datasource [stable/beta] +func (o DirectAzureMonitorOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used +// anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. +func (o DirectAzureMonitorOutput) SourceOfs() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) +} + +// The status of the created direct. +func (o DirectAzureMonitorOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +// [required] | Azure Tenant ID. +func (o DirectAzureMonitorOutput) TenantId() pulumi.StringOutput { + return o.ApplyT(func(v *DirectAzureMonitor) pulumi.StringOutput { return v.TenantId }).(pulumi.StringOutput) +} + +type DirectAzureMonitorArrayOutput struct{ *pulumi.OutputState } + +func (DirectAzureMonitorArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*DirectAzureMonitor)(nil)).Elem() +} + +func (o DirectAzureMonitorArrayOutput) ToDirectAzureMonitorArrayOutput() DirectAzureMonitorArrayOutput { + return o +} + +func (o DirectAzureMonitorArrayOutput) ToDirectAzureMonitorArrayOutputWithContext(ctx context.Context) DirectAzureMonitorArrayOutput { + return o +} + +func (o DirectAzureMonitorArrayOutput) Index(i pulumi.IntInput) DirectAzureMonitorOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DirectAzureMonitor { + return vs[0].([]*DirectAzureMonitor)[vs[1].(int)] + }).(DirectAzureMonitorOutput) +} + +type DirectAzureMonitorMapOutput struct{ *pulumi.OutputState } + +func (DirectAzureMonitorMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*DirectAzureMonitor)(nil)).Elem() +} + +func (o DirectAzureMonitorMapOutput) ToDirectAzureMonitorMapOutput() DirectAzureMonitorMapOutput { + return o +} + +func (o DirectAzureMonitorMapOutput) ToDirectAzureMonitorMapOutputWithContext(ctx context.Context) DirectAzureMonitorMapOutput { + return o +} + +func (o DirectAzureMonitorMapOutput) MapIndex(k pulumi.StringInput) DirectAzureMonitorOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DirectAzureMonitor { + return vs[0].(map[string]*DirectAzureMonitor)[vs[1].(string)] + }).(DirectAzureMonitorOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorInput)(nil)).Elem(), &DirectAzureMonitor{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorArrayInput)(nil)).Elem(), DirectAzureMonitorArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorMapInput)(nil)).Elem(), DirectAzureMonitorMap{}) + pulumi.RegisterOutputType(DirectAzureMonitorOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorArrayOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorMapOutput{}) +} diff --git a/sdk/go/nobl9/directBigquery.go b/sdk/go/nobl9/directBigquery.go index c75b2d8..b8bd7e2 100644 --- a/sdk/go/nobl9/directBigquery.go +++ b/sdk/go/nobl9/directBigquery.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects with BigQuery to collect SLI measurements and compare them to SLO targets. +// Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects to BigQuery for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [BigQuery Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-direct) // @@ -21,27 +22,27 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectBigquery(ctx, "test-bigquery", &nobl9.DirectBigqueryArgs{ -// Description: pulumi.String("desc"), -// Project: pulumi.String("terraform"), -// ServiceAccountKey: pulumi.String("secret"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectBigquery(ctx, "test-bigquery", &nobl9.DirectBigqueryArgs{ +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// ServiceAccountKey: pulumi.String("secret"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -53,15 +54,21 @@ type DirectBigquery struct { Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectBigqueryQueryDelayPtrOutput `pulumi:"queryDelay"` + QueryDelay DirectBigqueryQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` // [required] | Service Account Key. ServiceAccountKey pulumi.StringOutput `pulumi:"serviceAccountKey"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -77,10 +84,14 @@ func NewDirectBigquery(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.ServiceAccountKey != nil { + args.ServiceAccountKey = pulumi.ToSecret(args.ServiceAccountKey).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "serviceAccountKey", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectBigquery err := ctx.RegisterResource("nobl9:index/directBigquery:DirectBigquery", name, args, &resource, opts...) if err != nil { @@ -107,15 +118,21 @@ type directBigqueryState struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectBigqueryQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` // [required] | Service Account Key. ServiceAccountKey *string `pulumi:"serviceAccountKey"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -126,15 +143,21 @@ type DirectBigqueryState struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectBigqueryQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput // [required] | Service Account Key. ServiceAccountKey pulumi.StringPtrInput - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -149,15 +172,21 @@ type directBigqueryArgs struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectBigqueryQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` // [required] | Service Account Key. ServiceAccountKey *string `pulumi:"serviceAccountKey"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } @@ -167,15 +196,21 @@ type DirectBigqueryArgs struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectBigqueryQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput // [required] | Service Account Key. ServiceAccountKey pulumi.StringPtrInput - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -205,7 +240,7 @@ func (i *DirectBigquery) ToDirectBigqueryOutputWithContext(ctx context.Context) // DirectBigqueryArrayInput is an input type that accepts DirectBigqueryArray and DirectBigqueryArrayOutput values. // You can construct a concrete instance of `DirectBigqueryArrayInput` via: // -// DirectBigqueryArray{ DirectBigqueryArgs{...} } +// DirectBigqueryArray{ DirectBigqueryArgs{...} } type DirectBigqueryArrayInput interface { pulumi.Input @@ -230,7 +265,7 @@ func (i DirectBigqueryArray) ToDirectBigqueryArrayOutputWithContext(ctx context. // DirectBigqueryMapInput is an input type that accepts DirectBigqueryMap and DirectBigqueryMapOutput values. // You can construct a concrete instance of `DirectBigqueryMapInput` via: // -// DirectBigqueryMap{ "key": DirectBigqueryArgs{...} } +// DirectBigqueryMap{ "key": DirectBigqueryArgs{...} } type DirectBigqueryMapInput interface { pulumi.Input @@ -276,6 +311,11 @@ func (o DirectBigqueryOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectBigquery) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectBigqueryOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectBigquery) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectBigqueryOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectBigquery) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -287,8 +327,13 @@ func (o DirectBigqueryOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectBigqueryOutput) QueryDelay() DirectBigqueryQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectBigquery) DirectBigqueryQueryDelayPtrOutput { return v.QueryDelay }).(DirectBigqueryQueryDelayPtrOutput) +func (o DirectBigqueryOutput) QueryDelay() DirectBigqueryQueryDelayOutput { + return o.ApplyT(func(v *DirectBigquery) DirectBigqueryQueryDelayOutput { return v.QueryDelay }).(DirectBigqueryQueryDelayOutput) +} + +// Release channel of the created datasource [stable/beta] +func (o DirectBigqueryOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectBigquery) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) } // [required] | Service Account Key. @@ -296,7 +341,9 @@ func (o DirectBigqueryOutput) ServiceAccountKey() pulumi.StringOutput { return o.ApplyT(func(v *DirectBigquery) pulumi.StringOutput { return v.ServiceAccountKey }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectBigqueryOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectBigquery) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directCloudwatch.go b/sdk/go/nobl9/directCloudwatch.go index 47b54c6..41b40ce 100644 --- a/sdk/go/nobl9/directCloudwatch.go +++ b/sdk/go/nobl9/directCloudwatch.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects with Amazon CloudWatch to collect SLI measurements and compare them to SLO targets. +// Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects to Amazon CloudWatch for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Amazon CloudWatch Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-direct) // @@ -21,43 +22,41 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectCloudwatch(ctx, "test-cloudwatch", &nobl9.DirectCloudwatchArgs{ -// AccessKeyId: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// HistoricalDataRetrieval: &DirectCloudwatchHistoricalDataRetrievalArgs{ -// DefaultDurations: DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray{ -// &DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(0), -// }, -// }, -// MaxDurations: DirectCloudwatchHistoricalDataRetrievalMaxDurationArray{ -// &DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(15), -// }, -// }, -// }, -// Project: pulumi.String("terraform"), -// SecretAccessKey: pulumi.String("secret"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectCloudwatch(ctx, "test-cloudwatch", &nobl9.DirectCloudwatchArgs{ +// Description: pulumi.String("desc"), +// HistoricalDataRetrieval: &nobl9.DirectCloudwatchHistoricalDataRetrievalArgs{ +// DefaultDurations: nobl9.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray{ +// &nobl9.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(0), +// }, +// }, +// MaxDurations: nobl9.DirectCloudwatchHistoricalDataRetrievalMaxDurationArray{ +// &nobl9.DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(15), +// }, +// }, +// }, +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// RoleArn: pulumi.String("secret"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -65,23 +64,27 @@ import ( type DirectCloudwatch struct { pulumi.CustomResourceState - // [required] | AWS Access Key ID. - AccessKeyId pulumi.StringOutput `pulumi:"accessKeyId"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) - HistoricalDataRetrieval DirectCloudwatchHistoricalDataRetrievalPtrOutput `pulumi:"historicalDataRetrieval"` + HistoricalDataRetrieval DirectCloudwatchHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectCloudwatchQueryDelayPtrOutput `pulumi:"queryDelay"` - // [required] | AWS Secret Access Key. - SecretAccessKey pulumi.StringOutput `pulumi:"secretAccessKey"` - // Source of Metrics and/or Services. + QueryDelay DirectCloudwatchQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // [required] | ARN of the AWS IAM Role to assume. + RoleArn pulumi.StringOutput `pulumi:"roleArn"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -97,10 +100,14 @@ func NewDirectCloudwatch(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.RoleArn != nil { + args.RoleArn = pulumi.ToSecret(args.RoleArn).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "roleArn", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectCloudwatch err := ctx.RegisterResource("nobl9:index/directCloudwatch:DirectCloudwatch", name, args, &resource, opts...) if err != nil { @@ -123,46 +130,54 @@ func GetDirectCloudwatch(ctx *pulumi.Context, // Input properties used for looking up and filtering DirectCloudwatch resources. type directCloudwatchState struct { - // [required] | AWS Access Key ID. - AccessKeyId *string `pulumi:"accessKeyId"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval *DirectCloudwatchHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectCloudwatchQueryDelay `pulumi:"queryDelay"` - // [required] | AWS Secret Access Key. - SecretAccessKey *string `pulumi:"secretAccessKey"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // [required] | ARN of the AWS IAM Role to assume. + RoleArn *string `pulumi:"roleArn"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` } type DirectCloudwatchState struct { - // [required] | AWS Access Key ID. - AccessKeyId pulumi.StringPtrInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval DirectCloudwatchHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectCloudwatchQueryDelayPtrInput - // [required] | AWS Secret Access Key. - SecretAccessKey pulumi.StringPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // [required] | ARN of the AWS IAM Role to assume. + RoleArn pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -173,45 +188,53 @@ func (DirectCloudwatchState) ElementType() reflect.Type { } type directCloudwatchArgs struct { - // [required] | AWS Access Key ID. - AccessKeyId *string `pulumi:"accessKeyId"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval *DirectCloudwatchHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectCloudwatchQueryDelay `pulumi:"queryDelay"` - // [required] | AWS Secret Access Key. - SecretAccessKey *string `pulumi:"secretAccessKey"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // [required] | ARN of the AWS IAM Role to assume. + RoleArn *string `pulumi:"roleArn"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } // The set of arguments for constructing a DirectCloudwatch resource. type DirectCloudwatchArgs struct { - // [required] | AWS Access Key ID. - AccessKeyId pulumi.StringPtrInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval DirectCloudwatchHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectCloudwatchQueryDelayPtrInput - // [required] | AWS Secret Access Key. - SecretAccessKey pulumi.StringPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // [required] | ARN of the AWS IAM Role to assume. + RoleArn pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -241,7 +264,7 @@ func (i *DirectCloudwatch) ToDirectCloudwatchOutputWithContext(ctx context.Conte // DirectCloudwatchArrayInput is an input type that accepts DirectCloudwatchArray and DirectCloudwatchArrayOutput values. // You can construct a concrete instance of `DirectCloudwatchArrayInput` via: // -// DirectCloudwatchArray{ DirectCloudwatchArgs{...} } +// DirectCloudwatchArray{ DirectCloudwatchArgs{...} } type DirectCloudwatchArrayInput interface { pulumi.Input @@ -266,7 +289,7 @@ func (i DirectCloudwatchArray) ToDirectCloudwatchArrayOutputWithContext(ctx cont // DirectCloudwatchMapInput is an input type that accepts DirectCloudwatchMap and DirectCloudwatchMapOutput values. // You can construct a concrete instance of `DirectCloudwatchMapInput` via: // -// DirectCloudwatchMap{ "key": DirectCloudwatchArgs{...} } +// DirectCloudwatchMap{ "key": DirectCloudwatchArgs{...} } type DirectCloudwatchMapInput interface { pulumi.Input @@ -302,11 +325,6 @@ func (o DirectCloudwatchOutput) ToDirectCloudwatchOutputWithContext(ctx context. return o } -// [required] | AWS Access Key ID. -func (o DirectCloudwatchOutput) AccessKeyId() pulumi.StringOutput { - return o.ApplyT(func(v *DirectCloudwatch) pulumi.StringOutput { return v.AccessKeyId }).(pulumi.StringOutput) -} - // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. func (o DirectCloudwatchOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectCloudwatch) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) @@ -318,10 +336,15 @@ func (o DirectCloudwatchOutput) DisplayName() pulumi.StringPtrOutput { } // [Replay configuration documentation](https://docs.nobl9.com/replay) -func (o DirectCloudwatchOutput) HistoricalDataRetrieval() DirectCloudwatchHistoricalDataRetrievalPtrOutput { - return o.ApplyT(func(v *DirectCloudwatch) DirectCloudwatchHistoricalDataRetrievalPtrOutput { +func (o DirectCloudwatchOutput) HistoricalDataRetrieval() DirectCloudwatchHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectCloudwatch) DirectCloudwatchHistoricalDataRetrievalOutput { return v.HistoricalDataRetrieval - }).(DirectCloudwatchHistoricalDataRetrievalPtrOutput) + }).(DirectCloudwatchHistoricalDataRetrievalOutput) +} + +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectCloudwatchOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectCloudwatch) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) } // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -335,16 +358,23 @@ func (o DirectCloudwatchOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectCloudwatchOutput) QueryDelay() DirectCloudwatchQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectCloudwatch) DirectCloudwatchQueryDelayPtrOutput { return v.QueryDelay }).(DirectCloudwatchQueryDelayPtrOutput) +func (o DirectCloudwatchOutput) QueryDelay() DirectCloudwatchQueryDelayOutput { + return o.ApplyT(func(v *DirectCloudwatch) DirectCloudwatchQueryDelayOutput { return v.QueryDelay }).(DirectCloudwatchQueryDelayOutput) } -// [required] | AWS Secret Access Key. -func (o DirectCloudwatchOutput) SecretAccessKey() pulumi.StringOutput { - return o.ApplyT(func(v *DirectCloudwatch) pulumi.StringOutput { return v.SecretAccessKey }).(pulumi.StringOutput) +// Release channel of the created datasource [stable/beta] +func (o DirectCloudwatchOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectCloudwatch) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// [required] | ARN of the AWS IAM Role to assume. +func (o DirectCloudwatchOutput) RoleArn() pulumi.StringOutput { + return o.ApplyT(func(v *DirectCloudwatch) pulumi.StringOutput { return v.RoleArn }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectCloudwatchOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectCloudwatch) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directDatadog.go b/sdk/go/nobl9/directDatadog.go index 295930f..58b5276 100644 --- a/sdk/go/nobl9/directDatadog.go +++ b/sdk/go/nobl9/directDatadog.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects with Datadog to collect SLI measurements and compare them to SLO targets. +// Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects to Datadog for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Datadog Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/datadog#datadog-direct). // @@ -21,44 +22,43 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectDatadog(ctx, "test-datadog", &nobl9.DirectDatadogArgs{ -// ApiKey: pulumi.String("secret"), -// ApplicationKey: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// HistoricalDataRetrieval: &DirectDatadogHistoricalDataRetrievalArgs{ -// DefaultDurations: DirectDatadogHistoricalDataRetrievalDefaultDurationArray{ -// &DirectDatadogHistoricalDataRetrievalDefaultDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(0), -// }, -// }, -// MaxDurations: DirectDatadogHistoricalDataRetrievalMaxDurationArray{ -// &DirectDatadogHistoricalDataRetrievalMaxDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(30), -// }, -// }, -// }, -// Project: pulumi.String("terraform"), -// Site: pulumi.String("eu"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectDatadog(ctx, "test-datadog", &nobl9.DirectDatadogArgs{ +// ApiKey: pulumi.String("secret"), +// ApplicationKey: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// HistoricalDataRetrieval: &nobl9.DirectDatadogHistoricalDataRetrievalArgs{ +// DefaultDurations: nobl9.DirectDatadogHistoricalDataRetrievalDefaultDurationArray{ +// &nobl9.DirectDatadogHistoricalDataRetrievalDefaultDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(0), +// }, +// }, +// MaxDurations: nobl9.DirectDatadogHistoricalDataRetrievalMaxDurationArray{ +// &nobl9.DirectDatadogHistoricalDataRetrievalMaxDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(30), +// }, +// }, +// }, +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// Site: pulumi.String("eu"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -75,16 +75,22 @@ type DirectDatadog struct { // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) - HistoricalDataRetrieval DirectDatadogHistoricalDataRetrievalPtrOutput `pulumi:"historicalDataRetrieval"` + HistoricalDataRetrieval DirectDatadogHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectDatadogQueryDelayPtrOutput `pulumi:"queryDelay"` + QueryDelay DirectDatadogQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` // `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). Site pulumi.StringOutput `pulumi:"site"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -103,10 +109,18 @@ func NewDirectDatadog(ctx *pulumi.Context, if args.Site == nil { return nil, errors.New("invalid value for required argument 'Site'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.ApiKey != nil { + args.ApiKey = pulumi.ToSecret(args.ApiKey).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + if args.ApplicationKey != nil { + args.ApplicationKey = pulumi.ToSecret(args.ApplicationKey).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "apiKey", + "applicationKey", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectDatadog err := ctx.RegisterResource("nobl9:index/directDatadog:DirectDatadog", name, args, &resource, opts...) if err != nil { @@ -139,15 +153,21 @@ type directDatadogState struct { DisplayName *string `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval *DirectDatadogHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectDatadogQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` // `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). Site *string `pulumi:"site"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -164,15 +184,21 @@ type DirectDatadogState struct { DisplayName pulumi.StringPtrInput // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval DirectDatadogHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectDatadogQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput // `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). Site pulumi.StringPtrInput - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -193,15 +219,21 @@ type directDatadogArgs struct { DisplayName *string `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval *DirectDatadogHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectDatadogQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` // `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). Site string `pulumi:"site"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } @@ -217,15 +249,21 @@ type DirectDatadogArgs struct { DisplayName pulumi.StringPtrInput // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval DirectDatadogHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectDatadogQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput // `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). Site pulumi.StringInput - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -255,7 +293,7 @@ func (i *DirectDatadog) ToDirectDatadogOutputWithContext(ctx context.Context) Di // DirectDatadogArrayInput is an input type that accepts DirectDatadogArray and DirectDatadogArrayOutput values. // You can construct a concrete instance of `DirectDatadogArrayInput` via: // -// DirectDatadogArray{ DirectDatadogArgs{...} } +// DirectDatadogArray{ DirectDatadogArgs{...} } type DirectDatadogArrayInput interface { pulumi.Input @@ -280,7 +318,7 @@ func (i DirectDatadogArray) ToDirectDatadogArrayOutputWithContext(ctx context.Co // DirectDatadogMapInput is an input type that accepts DirectDatadogMap and DirectDatadogMapOutput values. // You can construct a concrete instance of `DirectDatadogMapInput` via: // -// DirectDatadogMap{ "key": DirectDatadogArgs{...} } +// DirectDatadogMap{ "key": DirectDatadogArgs{...} } type DirectDatadogMapInput interface { pulumi.Input @@ -337,8 +375,13 @@ func (o DirectDatadogOutput) DisplayName() pulumi.StringPtrOutput { } // [Replay configuration documentation](https://docs.nobl9.com/replay) -func (o DirectDatadogOutput) HistoricalDataRetrieval() DirectDatadogHistoricalDataRetrievalPtrOutput { - return o.ApplyT(func(v *DirectDatadog) DirectDatadogHistoricalDataRetrievalPtrOutput { return v.HistoricalDataRetrieval }).(DirectDatadogHistoricalDataRetrievalPtrOutput) +func (o DirectDatadogOutput) HistoricalDataRetrieval() DirectDatadogHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectDatadog) DirectDatadogHistoricalDataRetrievalOutput { return v.HistoricalDataRetrieval }).(DirectDatadogHistoricalDataRetrievalOutput) +} + +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectDatadogOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectDatadog) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) } // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -352,8 +395,13 @@ func (o DirectDatadogOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectDatadogOutput) QueryDelay() DirectDatadogQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectDatadog) DirectDatadogQueryDelayPtrOutput { return v.QueryDelay }).(DirectDatadogQueryDelayPtrOutput) +func (o DirectDatadogOutput) QueryDelay() DirectDatadogQueryDelayOutput { + return o.ApplyT(func(v *DirectDatadog) DirectDatadogQueryDelayOutput { return v.QueryDelay }).(DirectDatadogQueryDelayOutput) +} + +// Release channel of the created datasource [stable/beta] +func (o DirectDatadogOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectDatadog) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) } // `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). @@ -361,7 +409,9 @@ func (o DirectDatadogOutput) Site() pulumi.StringOutput { return o.ApplyT(func(v *DirectDatadog) pulumi.StringOutput { return v.Site }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectDatadogOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectDatadog) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directDynatrace.go b/sdk/go/nobl9/directDynatrace.go index 1ffde64..b300954 100644 --- a/sdk/go/nobl9/directDynatrace.go +++ b/sdk/go/nobl9/directDynatrace.go @@ -7,12 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects with Dynatrace to collect SLI measurements and compare them to SLO targets. -// +// Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects to Dynatrace for SLI measurement collection and comparison with SLO targets. // For more information, refer to [Dynatrace Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/dynatrace#dynatrace-direct). // // ## Example Usage @@ -21,43 +21,42 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectDynatrace(ctx, "test-dynatrace", &nobl9.DirectDynatraceArgs{ -// Description: pulumi.String("desc"), -// DynatraceToken: pulumi.String("secret"), -// HistoricalDataRetrieval: &DirectDynatraceHistoricalDataRetrievalArgs{ -// DefaultDurations: DirectDynatraceHistoricalDataRetrievalDefaultDurationArray{ -// &DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(1), -// }, -// }, -// MaxDurations: DirectDynatraceHistoricalDataRetrievalMaxDurationArray{ -// &DirectDynatraceHistoricalDataRetrievalMaxDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(10), -// }, -// }, -// }, -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// Url: pulumi.String("https://web.net"), -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectDynatrace(ctx, "test-dynatrace", &nobl9.DirectDynatraceArgs{ +// Description: pulumi.String("desc"), +// DynatraceToken: pulumi.String("secret"), +// HistoricalDataRetrieval: &nobl9.DirectDynatraceHistoricalDataRetrievalArgs{ +// DefaultDurations: nobl9.DirectDynatraceHistoricalDataRetrievalDefaultDurationArray{ +// &nobl9.DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(1), +// }, +// }, +// MaxDurations: nobl9.DirectDynatraceHistoricalDataRetrievalMaxDurationArray{ +// &nobl9.DirectDynatraceHistoricalDataRetrievalMaxDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(10), +// }, +// }, +// }, +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// Url: pulumi.String("https://web.net"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -72,14 +71,20 @@ type DirectDynatrace struct { // [required] | Dynatrace Token. DynatraceToken pulumi.StringOutput `pulumi:"dynatraceToken"` // [Replay configuration documentation](https://docs.nobl9.com/replay) - HistoricalDataRetrieval DirectDynatraceHistoricalDataRetrievalPtrOutput `pulumi:"historicalDataRetrieval"` + HistoricalDataRetrieval DirectDynatraceHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectDynatraceQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectDynatraceQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -97,13 +102,17 @@ func NewDirectDynatrace(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") - } if args.Url == nil { return nil, errors.New("invalid value for required argument 'Url'") } - opts = pkgResourceDefaultOpts(opts) + if args.DynatraceToken != nil { + args.DynatraceToken = pulumi.ToSecret(args.DynatraceToken).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "dynatraceToken", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectDynatrace err := ctx.RegisterResource("nobl9:index/directDynatrace:DirectDynatrace", name, args, &resource, opts...) if err != nil { @@ -134,13 +143,19 @@ type directDynatraceState struct { DynatraceToken *string `pulumi:"dynatraceToken"` // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval *DirectDynatraceHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectDynatraceQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -157,13 +172,19 @@ type DirectDynatraceState struct { DynatraceToken pulumi.StringPtrInput // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval DirectDynatraceHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectDynatraceQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -184,13 +205,19 @@ type directDynatraceArgs struct { DynatraceToken *string `pulumi:"dynatraceToken"` // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval *DirectDynatraceHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectDynatraceQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // Dynatrace API URL. Url string `pulumi:"url"` @@ -206,13 +233,19 @@ type DirectDynatraceArgs struct { DynatraceToken pulumi.StringPtrInput // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval DirectDynatraceHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectDynatraceQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // Dynatrace API URL. Url pulumi.StringInput @@ -244,7 +277,7 @@ func (i *DirectDynatrace) ToDirectDynatraceOutputWithContext(ctx context.Context // DirectDynatraceArrayInput is an input type that accepts DirectDynatraceArray and DirectDynatraceArrayOutput values. // You can construct a concrete instance of `DirectDynatraceArrayInput` via: // -// DirectDynatraceArray{ DirectDynatraceArgs{...} } +// DirectDynatraceArray{ DirectDynatraceArgs{...} } type DirectDynatraceArrayInput interface { pulumi.Input @@ -269,7 +302,7 @@ func (i DirectDynatraceArray) ToDirectDynatraceArrayOutputWithContext(ctx contex // DirectDynatraceMapInput is an input type that accepts DirectDynatraceMap and DirectDynatraceMapOutput values. // You can construct a concrete instance of `DirectDynatraceMapInput` via: // -// DirectDynatraceMap{ "key": DirectDynatraceArgs{...} } +// DirectDynatraceMap{ "key": DirectDynatraceArgs{...} } type DirectDynatraceMapInput interface { pulumi.Input @@ -321,10 +354,15 @@ func (o DirectDynatraceOutput) DynatraceToken() pulumi.StringOutput { } // [Replay configuration documentation](https://docs.nobl9.com/replay) -func (o DirectDynatraceOutput) HistoricalDataRetrieval() DirectDynatraceHistoricalDataRetrievalPtrOutput { - return o.ApplyT(func(v *DirectDynatrace) DirectDynatraceHistoricalDataRetrievalPtrOutput { +func (o DirectDynatraceOutput) HistoricalDataRetrieval() DirectDynatraceHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectDynatrace) DirectDynatraceHistoricalDataRetrievalOutput { return v.HistoricalDataRetrieval - }).(DirectDynatraceHistoricalDataRetrievalPtrOutput) + }).(DirectDynatraceHistoricalDataRetrievalOutput) +} + +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectDynatraceOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectDynatrace) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) } // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -338,11 +376,18 @@ func (o DirectDynatraceOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectDynatraceOutput) QueryDelay() DirectDynatraceQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectDynatrace) DirectDynatraceQueryDelayPtrOutput { return v.QueryDelay }).(DirectDynatraceQueryDelayPtrOutput) +func (o DirectDynatraceOutput) QueryDelay() DirectDynatraceQueryDelayOutput { + return o.ApplyT(func(v *DirectDynatrace) DirectDynatraceQueryDelayOutput { return v.QueryDelay }).(DirectDynatraceQueryDelayOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o DirectDynatraceOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectDynatrace) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectDynatraceOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectDynatrace) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directGcm.go b/sdk/go/nobl9/directGcm.go index 0312cf9..981f987 100644 --- a/sdk/go/nobl9/directGcm.go +++ b/sdk/go/nobl9/directGcm.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects with GCM to collect SLI measurements and compare them to SLO targets. +// Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects to GCM for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Google Cloud Monitoring Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-direct). // @@ -21,27 +22,27 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectGcm(ctx, "test-gcm", &nobl9.DirectGcmArgs{ -// Description: pulumi.String("desc"), -// Project: pulumi.String("terraform"), -// ServiceAccountKey: pulumi.String("secret"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectGcm(ctx, "test-gcm", &nobl9.DirectGcmArgs{ +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// ServiceAccountKey: pulumi.String("secret"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -53,15 +54,21 @@ type DirectGcm struct { Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectGcmQueryDelayPtrOutput `pulumi:"queryDelay"` + QueryDelay DirectGcmQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` // [required] | Service Account Key. ServiceAccountKey pulumi.StringOutput `pulumi:"serviceAccountKey"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -77,10 +84,14 @@ func NewDirectGcm(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.ServiceAccountKey != nil { + args.ServiceAccountKey = pulumi.ToSecret(args.ServiceAccountKey).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "serviceAccountKey", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectGcm err := ctx.RegisterResource("nobl9:index/directGcm:DirectGcm", name, args, &resource, opts...) if err != nil { @@ -107,15 +118,21 @@ type directGcmState struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectGcmQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` // [required] | Service Account Key. ServiceAccountKey *string `pulumi:"serviceAccountKey"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -126,15 +143,21 @@ type DirectGcmState struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectGcmQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput // [required] | Service Account Key. ServiceAccountKey pulumi.StringPtrInput - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -149,15 +172,21 @@ type directGcmArgs struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectGcmQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` // [required] | Service Account Key. ServiceAccountKey *string `pulumi:"serviceAccountKey"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } @@ -167,15 +196,21 @@ type DirectGcmArgs struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectGcmQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput // [required] | Service Account Key. ServiceAccountKey pulumi.StringPtrInput - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -205,7 +240,7 @@ func (i *DirectGcm) ToDirectGcmOutputWithContext(ctx context.Context) DirectGcmO // DirectGcmArrayInput is an input type that accepts DirectGcmArray and DirectGcmArrayOutput values. // You can construct a concrete instance of `DirectGcmArrayInput` via: // -// DirectGcmArray{ DirectGcmArgs{...} } +// DirectGcmArray{ DirectGcmArgs{...} } type DirectGcmArrayInput interface { pulumi.Input @@ -230,7 +265,7 @@ func (i DirectGcmArray) ToDirectGcmArrayOutputWithContext(ctx context.Context) D // DirectGcmMapInput is an input type that accepts DirectGcmMap and DirectGcmMapOutput values. // You can construct a concrete instance of `DirectGcmMapInput` via: // -// DirectGcmMap{ "key": DirectGcmArgs{...} } +// DirectGcmMap{ "key": DirectGcmArgs{...} } type DirectGcmMapInput interface { pulumi.Input @@ -276,6 +311,11 @@ func (o DirectGcmOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectGcm) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectGcmOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectGcm) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectGcmOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectGcm) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -287,8 +327,13 @@ func (o DirectGcmOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectGcmOutput) QueryDelay() DirectGcmQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectGcm) DirectGcmQueryDelayPtrOutput { return v.QueryDelay }).(DirectGcmQueryDelayPtrOutput) +func (o DirectGcmOutput) QueryDelay() DirectGcmQueryDelayOutput { + return o.ApplyT(func(v *DirectGcm) DirectGcmQueryDelayOutput { return v.QueryDelay }).(DirectGcmQueryDelayOutput) +} + +// Release channel of the created datasource [stable/beta] +func (o DirectGcmOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectGcm) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) } // [required] | Service Account Key. @@ -296,7 +341,9 @@ func (o DirectGcmOutput) ServiceAccountKey() pulumi.StringOutput { return o.ApplyT(func(v *DirectGcm) pulumi.StringOutput { return v.ServiceAccountKey }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectGcmOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectGcm) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directHoneycomb.go b/sdk/go/nobl9/directHoneycomb.go new file mode 100644 index 0000000..1a65ac8 --- /dev/null +++ b/sdk/go/nobl9/directHoneycomb.go @@ -0,0 +1,439 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package nobl9 + +import ( + "context" + "reflect" + + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Honeycomb is an observability platform that integrates system metrics with high-cardinality application data for in-depth analysis and swift debugging of complex software systems. Nobl9 connects to Honeycomb for SLI measurement collection and comparison with SLO targets. +// +// For more information, refer to [Honeycomb Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/honeycomb#hc-direct). +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectHoneycomb(ctx, "test-honeycomb", &nobl9.DirectHoneycombArgs{ +// ApiKey: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// HistoricalDataRetrieval: &nobl9.DirectHoneycombHistoricalDataRetrievalArgs{ +// DefaultDurations: nobl9.DirectHoneycombHistoricalDataRetrievalDefaultDurationArray{ +// &nobl9.DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(7), +// }, +// }, +// MaxDurations: nobl9.DirectHoneycombHistoricalDataRetrievalMaxDurationArray{ +// &nobl9.DirectHoneycombHistoricalDataRetrievalMaxDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(7), +// }, +// }, +// }, +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// QueryDelay: &nobl9.DirectHoneycombQueryDelayArgs{ +// Unit: pulumi.String("Minute"), +// Value: pulumi.Int(6), +// }, +// ReleaseChannel: pulumi.String("beta"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +// ## Nobl9 Official Documentation +// +// https://docs.nobl9.com/ +type DirectHoneycomb struct { + pulumi.CustomResourceState + + // [required] | Honeycomb API Key. + ApiKey pulumi.StringOutput `pulumi:"apiKey"` + // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + Description pulumi.StringPtrOutput `pulumi:"description"` + // User-friendly display name of the resource. + DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectHoneycombHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name pulumi.StringOutput `pulumi:"name"` + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project pulumi.StringOutput `pulumi:"project"` + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay DirectHoneycombQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` + // The status of the created direct. + Status pulumi.StringOutput `pulumi:"status"` +} + +// NewDirectHoneycomb registers a new resource with the given unique name, arguments, and options. +func NewDirectHoneycomb(ctx *pulumi.Context, + name string, args *DirectHoneycombArgs, opts ...pulumi.ResourceOption) (*DirectHoneycomb, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Project == nil { + return nil, errors.New("invalid value for required argument 'Project'") + } + if args.ApiKey != nil { + args.ApiKey = pulumi.ToSecret(args.ApiKey).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "apiKey", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) + var resource DirectHoneycomb + err := ctx.RegisterResource("nobl9:index/directHoneycomb:DirectHoneycomb", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetDirectHoneycomb gets an existing DirectHoneycomb resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetDirectHoneycomb(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *DirectHoneycombState, opts ...pulumi.ResourceOption) (*DirectHoneycomb, error) { + var resource DirectHoneycomb + err := ctx.ReadResource("nobl9:index/directHoneycomb:DirectHoneycomb", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering DirectHoneycomb resources. +type directHoneycombState struct { + // [required] | Honeycomb API Key. + ApiKey *string `pulumi:"apiKey"` + // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + Description *string `pulumi:"description"` + // User-friendly display name of the resource. + DisplayName *string `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval *DirectHoneycombHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name *string `pulumi:"name"` + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project *string `pulumi:"project"` + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay *DirectHoneycombQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs []string `pulumi:"sourceOfs"` + // The status of the created direct. + Status *string `pulumi:"status"` +} + +type DirectHoneycombState struct { + // [required] | Honeycomb API Key. + ApiKey pulumi.StringPtrInput + // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + Description pulumi.StringPtrInput + // User-friendly display name of the resource. + DisplayName pulumi.StringPtrInput + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectHoneycombHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name pulumi.StringPtrInput + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project pulumi.StringPtrInput + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay DirectHoneycombQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs pulumi.StringArrayInput + // The status of the created direct. + Status pulumi.StringPtrInput +} + +func (DirectHoneycombState) ElementType() reflect.Type { + return reflect.TypeOf((*directHoneycombState)(nil)).Elem() +} + +type directHoneycombArgs struct { + // [required] | Honeycomb API Key. + ApiKey *string `pulumi:"apiKey"` + // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + Description *string `pulumi:"description"` + // User-friendly display name of the resource. + DisplayName *string `pulumi:"displayName"` + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval *DirectHoneycombHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name *string `pulumi:"name"` + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project string `pulumi:"project"` + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay *DirectHoneycombQueryDelay `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs []string `pulumi:"sourceOfs"` +} + +// The set of arguments for constructing a DirectHoneycomb resource. +type DirectHoneycombArgs struct { + // [required] | Honeycomb API Key. + ApiKey pulumi.StringPtrInput + // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + Description pulumi.StringPtrInput + // User-friendly display name of the resource. + DisplayName pulumi.StringPtrInput + // [Replay configuration documentation](https://docs.nobl9.com/replay) + HistoricalDataRetrieval DirectHoneycombHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name pulumi.StringPtrInput + // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project pulumi.StringInput + // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + QueryDelay DirectHoneycombQueryDelayPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + SourceOfs pulumi.StringArrayInput +} + +func (DirectHoneycombArgs) ElementType() reflect.Type { + return reflect.TypeOf((*directHoneycombArgs)(nil)).Elem() +} + +type DirectHoneycombInput interface { + pulumi.Input + + ToDirectHoneycombOutput() DirectHoneycombOutput + ToDirectHoneycombOutputWithContext(ctx context.Context) DirectHoneycombOutput +} + +func (*DirectHoneycomb) ElementType() reflect.Type { + return reflect.TypeOf((**DirectHoneycomb)(nil)).Elem() +} + +func (i *DirectHoneycomb) ToDirectHoneycombOutput() DirectHoneycombOutput { + return i.ToDirectHoneycombOutputWithContext(context.Background()) +} + +func (i *DirectHoneycomb) ToDirectHoneycombOutputWithContext(ctx context.Context) DirectHoneycombOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombOutput) +} + +// DirectHoneycombArrayInput is an input type that accepts DirectHoneycombArray and DirectHoneycombArrayOutput values. +// You can construct a concrete instance of `DirectHoneycombArrayInput` via: +// +// DirectHoneycombArray{ DirectHoneycombArgs{...} } +type DirectHoneycombArrayInput interface { + pulumi.Input + + ToDirectHoneycombArrayOutput() DirectHoneycombArrayOutput + ToDirectHoneycombArrayOutputWithContext(context.Context) DirectHoneycombArrayOutput +} + +type DirectHoneycombArray []DirectHoneycombInput + +func (DirectHoneycombArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]*DirectHoneycomb)(nil)).Elem() +} + +func (i DirectHoneycombArray) ToDirectHoneycombArrayOutput() DirectHoneycombArrayOutput { + return i.ToDirectHoneycombArrayOutputWithContext(context.Background()) +} + +func (i DirectHoneycombArray) ToDirectHoneycombArrayOutputWithContext(ctx context.Context) DirectHoneycombArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombArrayOutput) +} + +// DirectHoneycombMapInput is an input type that accepts DirectHoneycombMap and DirectHoneycombMapOutput values. +// You can construct a concrete instance of `DirectHoneycombMapInput` via: +// +// DirectHoneycombMap{ "key": DirectHoneycombArgs{...} } +type DirectHoneycombMapInput interface { + pulumi.Input + + ToDirectHoneycombMapOutput() DirectHoneycombMapOutput + ToDirectHoneycombMapOutputWithContext(context.Context) DirectHoneycombMapOutput +} + +type DirectHoneycombMap map[string]DirectHoneycombInput + +func (DirectHoneycombMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*DirectHoneycomb)(nil)).Elem() +} + +func (i DirectHoneycombMap) ToDirectHoneycombMapOutput() DirectHoneycombMapOutput { + return i.ToDirectHoneycombMapOutputWithContext(context.Background()) +} + +func (i DirectHoneycombMap) ToDirectHoneycombMapOutputWithContext(ctx context.Context) DirectHoneycombMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombMapOutput) +} + +type DirectHoneycombOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectHoneycomb)(nil)).Elem() +} + +func (o DirectHoneycombOutput) ToDirectHoneycombOutput() DirectHoneycombOutput { + return o +} + +func (o DirectHoneycombOutput) ToDirectHoneycombOutputWithContext(ctx context.Context) DirectHoneycombOutput { + return o +} + +// [required] | Honeycomb API Key. +func (o DirectHoneycombOutput) ApiKey() pulumi.StringOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.StringOutput { return v.ApiKey }).(pulumi.StringOutput) +} + +// Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. +func (o DirectHoneycombOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// User-friendly display name of the resource. +func (o DirectHoneycombOutput) DisplayName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) +} + +// [Replay configuration documentation](https://docs.nobl9.com/replay) +func (o DirectHoneycombOutput) HistoricalDataRetrieval() DirectHoneycombHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectHoneycomb) DirectHoneycombHistoricalDataRetrievalOutput { + return v.HistoricalDataRetrieval + }).(DirectHoneycombHistoricalDataRetrievalOutput) +} + +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectHoneycombOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + +// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +func (o DirectHoneycombOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +func (o DirectHoneycombOutput) Project() pulumi.StringOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput) +} + +// [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. +func (o DirectHoneycombOutput) QueryDelay() DirectHoneycombQueryDelayOutput { + return o.ApplyT(func(v *DirectHoneycomb) DirectHoneycombQueryDelayOutput { return v.QueryDelay }).(DirectHoneycombQueryDelayOutput) +} + +// Release channel of the created datasource [stable/beta] +func (o DirectHoneycombOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. +func (o DirectHoneycombOutput) SourceOfs() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) +} + +// The status of the created direct. +func (o DirectHoneycombOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *DirectHoneycomb) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +type DirectHoneycombArrayOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]*DirectHoneycomb)(nil)).Elem() +} + +func (o DirectHoneycombArrayOutput) ToDirectHoneycombArrayOutput() DirectHoneycombArrayOutput { + return o +} + +func (o DirectHoneycombArrayOutput) ToDirectHoneycombArrayOutputWithContext(ctx context.Context) DirectHoneycombArrayOutput { + return o +} + +func (o DirectHoneycombArrayOutput) Index(i pulumi.IntInput) DirectHoneycombOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DirectHoneycomb { + return vs[0].([]*DirectHoneycomb)[vs[1].(int)] + }).(DirectHoneycombOutput) +} + +type DirectHoneycombMapOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]*DirectHoneycomb)(nil)).Elem() +} + +func (o DirectHoneycombMapOutput) ToDirectHoneycombMapOutput() DirectHoneycombMapOutput { + return o +} + +func (o DirectHoneycombMapOutput) ToDirectHoneycombMapOutputWithContext(ctx context.Context) DirectHoneycombMapOutput { + return o +} + +func (o DirectHoneycombMapOutput) MapIndex(k pulumi.StringInput) DirectHoneycombOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DirectHoneycomb { + return vs[0].(map[string]*DirectHoneycomb)[vs[1].(string)] + }).(DirectHoneycombOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombInput)(nil)).Elem(), &DirectHoneycomb{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombArrayInput)(nil)).Elem(), DirectHoneycombArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombMapInput)(nil)).Elem(), DirectHoneycombMap{}) + pulumi.RegisterOutputType(DirectHoneycombOutput{}) + pulumi.RegisterOutputType(DirectHoneycombArrayOutput{}) + pulumi.RegisterOutputType(DirectHoneycombMapOutput{}) +} diff --git a/sdk/go/nobl9/directInfluxdb.go b/sdk/go/nobl9/directInfluxdb.go index 2264209..3e345c7 100644 --- a/sdk/go/nobl9/directInfluxdb.go +++ b/sdk/go/nobl9/directInfluxdb.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects with InfluxDB to collect SLI measurements and compare them to SLO targets. +// InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects to InfluxDB for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [InfluxDB Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-direct). // @@ -21,29 +22,29 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectInfluxdb(ctx, "test-influxdb", &nobl9.DirectInfluxdbArgs{ -// ApiToken: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// OrganizationId: pulumi.String("secret"), -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// Url: pulumi.String("https://web.net"), -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectInfluxdb(ctx, "test-influxdb", &nobl9.DirectInfluxdbArgs{ +// ApiToken: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// OrganizationId: pulumi.String("secret"), +// Project: pulumi.String("terraform"), +// Url: pulumi.String("https://web.net"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -57,6 +58,8 @@ type DirectInfluxdb struct { Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // [required] | InfluxDB Organization ID. @@ -64,8 +67,12 @@ type DirectInfluxdb struct { // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectInfluxdbQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectInfluxdbQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -83,13 +90,21 @@ func NewDirectInfluxdb(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") - } if args.Url == nil { return nil, errors.New("invalid value for required argument 'Url'") } - opts = pkgResourceDefaultOpts(opts) + if args.ApiToken != nil { + args.ApiToken = pulumi.ToSecret(args.ApiToken).(pulumi.StringPtrInput) + } + if args.OrganizationId != nil { + args.OrganizationId = pulumi.ToSecret(args.OrganizationId).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "apiToken", + "organizationId", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectInfluxdb err := ctx.RegisterResource("nobl9:index/directInfluxdb:DirectInfluxdb", name, args, &resource, opts...) if err != nil { @@ -118,6 +133,8 @@ type directInfluxdbState struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // [required] | InfluxDB Organization ID. @@ -126,7 +143,11 @@ type directInfluxdbState struct { Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectInfluxdbQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -141,6 +162,8 @@ type DirectInfluxdbState struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // [required] | InfluxDB Organization ID. @@ -149,7 +172,11 @@ type DirectInfluxdbState struct { Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectInfluxdbQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -168,6 +195,8 @@ type directInfluxdbArgs struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // [required] | InfluxDB Organization ID. @@ -176,7 +205,11 @@ type directInfluxdbArgs struct { Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectInfluxdbQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // API URL endpoint to the InfluxDB's instance. Url string `pulumi:"url"` @@ -190,6 +223,8 @@ type DirectInfluxdbArgs struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // [required] | InfluxDB Organization ID. @@ -198,7 +233,11 @@ type DirectInfluxdbArgs struct { Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectInfluxdbQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // API URL endpoint to the InfluxDB's instance. Url pulumi.StringInput @@ -230,7 +269,7 @@ func (i *DirectInfluxdb) ToDirectInfluxdbOutputWithContext(ctx context.Context) // DirectInfluxdbArrayInput is an input type that accepts DirectInfluxdbArray and DirectInfluxdbArrayOutput values. // You can construct a concrete instance of `DirectInfluxdbArrayInput` via: // -// DirectInfluxdbArray{ DirectInfluxdbArgs{...} } +// DirectInfluxdbArray{ DirectInfluxdbArgs{...} } type DirectInfluxdbArrayInput interface { pulumi.Input @@ -255,7 +294,7 @@ func (i DirectInfluxdbArray) ToDirectInfluxdbArrayOutputWithContext(ctx context. // DirectInfluxdbMapInput is an input type that accepts DirectInfluxdbMap and DirectInfluxdbMapOutput values. // You can construct a concrete instance of `DirectInfluxdbMapInput` via: // -// DirectInfluxdbMap{ "key": DirectInfluxdbArgs{...} } +// DirectInfluxdbMap{ "key": DirectInfluxdbArgs{...} } type DirectInfluxdbMapInput interface { pulumi.Input @@ -306,6 +345,11 @@ func (o DirectInfluxdbOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectInfluxdb) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectInfluxdbOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectInfluxdb) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectInfluxdbOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectInfluxdb) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -322,11 +366,18 @@ func (o DirectInfluxdbOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectInfluxdbOutput) QueryDelay() DirectInfluxdbQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectInfluxdb) DirectInfluxdbQueryDelayPtrOutput { return v.QueryDelay }).(DirectInfluxdbQueryDelayPtrOutput) +func (o DirectInfluxdbOutput) QueryDelay() DirectInfluxdbQueryDelayOutput { + return o.ApplyT(func(v *DirectInfluxdb) DirectInfluxdbQueryDelayOutput { return v.QueryDelay }).(DirectInfluxdbQueryDelayOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o DirectInfluxdbOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectInfluxdb) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectInfluxdbOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectInfluxdb) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directInstana.go b/sdk/go/nobl9/directInstana.go index 7d154b7..ccefe7b 100644 --- a/sdk/go/nobl9/directInstana.go +++ b/sdk/go/nobl9/directInstana.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects with Instana to collect SLI measurements and compare them to SLO targets. +// Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects to Instana for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Instana Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/instana#instana-direct). // @@ -21,28 +22,28 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectInstana(ctx, "test-instana", &nobl9.DirectInstanaArgs{ -// ApiToken: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// Url: pulumi.String("https://web.net"), -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectInstana(ctx, "test-instana", &nobl9.DirectInstanaArgs{ +// ApiToken: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// Url: pulumi.String("https://web.net"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -56,13 +57,19 @@ type DirectInstana struct { Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectInstanaQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectInstanaQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -80,13 +87,17 @@ func NewDirectInstana(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") - } if args.Url == nil { return nil, errors.New("invalid value for required argument 'Url'") } - opts = pkgResourceDefaultOpts(opts) + if args.ApiToken != nil { + args.ApiToken = pulumi.ToSecret(args.ApiToken).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "apiToken", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectInstana err := ctx.RegisterResource("nobl9:index/directInstana:DirectInstana", name, args, &resource, opts...) if err != nil { @@ -115,13 +126,19 @@ type directInstanaState struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectInstanaQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -136,13 +153,19 @@ type DirectInstanaState struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectInstanaQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -161,13 +184,19 @@ type directInstanaArgs struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectInstanaQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // Instana API URL. Url string `pulumi:"url"` @@ -181,13 +210,19 @@ type DirectInstanaArgs struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectInstanaQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // Instana API URL. Url pulumi.StringInput @@ -219,7 +254,7 @@ func (i *DirectInstana) ToDirectInstanaOutputWithContext(ctx context.Context) Di // DirectInstanaArrayInput is an input type that accepts DirectInstanaArray and DirectInstanaArrayOutput values. // You can construct a concrete instance of `DirectInstanaArrayInput` via: // -// DirectInstanaArray{ DirectInstanaArgs{...} } +// DirectInstanaArray{ DirectInstanaArgs{...} } type DirectInstanaArrayInput interface { pulumi.Input @@ -244,7 +279,7 @@ func (i DirectInstanaArray) ToDirectInstanaArrayOutputWithContext(ctx context.Co // DirectInstanaMapInput is an input type that accepts DirectInstanaMap and DirectInstanaMapOutput values. // You can construct a concrete instance of `DirectInstanaMapInput` via: // -// DirectInstanaMap{ "key": DirectInstanaArgs{...} } +// DirectInstanaMap{ "key": DirectInstanaArgs{...} } type DirectInstanaMapInput interface { pulumi.Input @@ -295,6 +330,11 @@ func (o DirectInstanaOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectInstana) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectInstanaOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectInstana) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectInstanaOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectInstana) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -306,11 +346,18 @@ func (o DirectInstanaOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectInstanaOutput) QueryDelay() DirectInstanaQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectInstana) DirectInstanaQueryDelayPtrOutput { return v.QueryDelay }).(DirectInstanaQueryDelayPtrOutput) +func (o DirectInstanaOutput) QueryDelay() DirectInstanaQueryDelayOutput { + return o.ApplyT(func(v *DirectInstana) DirectInstanaQueryDelayOutput { return v.QueryDelay }).(DirectInstanaQueryDelayOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o DirectInstanaOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectInstana) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectInstanaOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectInstana) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directLightstep.go b/sdk/go/nobl9/directLightstep.go index 086c0d9..52c2b62 100644 --- a/sdk/go/nobl9/directLightstep.go +++ b/sdk/go/nobl9/directLightstep.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects with Lightstep to collect SLI measurements and compare them to SLO targets. +// Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects to Lightstep for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Lightstep Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-direct). // @@ -21,44 +22,43 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectLightstep(ctx, "test-lightstep", &nobl9.DirectLightstepArgs{ -// AppToken: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// HistoricalDataRetrieval: &DirectLightstepHistoricalDataRetrievalArgs{ -// DefaultDurations: DirectLightstepHistoricalDataRetrievalDefaultDurationArray{ -// &DirectLightstepHistoricalDataRetrievalDefaultDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(0), -// }, -// }, -// MaxDurations: DirectLightstepHistoricalDataRetrievalMaxDurationArray{ -// &DirectLightstepHistoricalDataRetrievalMaxDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(30), -// }, -// }, -// }, -// LightstepOrganization: pulumi.String("acme"), -// LightstepProject: pulumi.String("project1"), -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectLightstep(ctx, "test-lightstep", &nobl9.DirectLightstepArgs{ +// AppToken: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// HistoricalDataRetrieval: &nobl9.DirectLightstepHistoricalDataRetrievalArgs{ +// DefaultDurations: nobl9.DirectLightstepHistoricalDataRetrievalDefaultDurationArray{ +// &nobl9.DirectLightstepHistoricalDataRetrievalDefaultDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(0), +// }, +// }, +// MaxDurations: nobl9.DirectLightstepHistoricalDataRetrievalMaxDurationArray{ +// &nobl9.DirectLightstepHistoricalDataRetrievalMaxDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(30), +// }, +// }, +// }, +// LightstepOrganization: pulumi.String("acme"), +// LightstepProject: pulumi.String("project1"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -73,21 +73,29 @@ type DirectLightstep struct { // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) - HistoricalDataRetrieval DirectLightstepHistoricalDataRetrievalPtrOutput `pulumi:"historicalDataRetrieval"` + HistoricalDataRetrieval DirectLightstepHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` // Organization name registered in Lightstep. LightstepOrganization pulumi.StringOutput `pulumi:"lightstepOrganization"` // Name of the Lightstep project. LightstepProject pulumi.StringOutput `pulumi:"lightstepProject"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectLightstepQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectLightstepQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` + // Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + Url pulumi.StringPtrOutput `pulumi:"url"` } // NewDirectLightstep registers a new resource with the given unique name, arguments, and options. @@ -106,10 +114,14 @@ func NewDirectLightstep(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.AppToken != nil { + args.AppToken = pulumi.ToSecret(args.AppToken).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "appToken", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectLightstep err := ctx.RegisterResource("nobl9:index/directLightstep:DirectLightstep", name, args, &resource, opts...) if err != nil { @@ -144,16 +156,24 @@ type directLightstepState struct { LightstepOrganization *string `pulumi:"lightstepOrganization"` // Name of the Lightstep project. LightstepProject *string `pulumi:"lightstepProject"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectLightstepQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` + // Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + Url *string `pulumi:"url"` } type DirectLightstepState struct { @@ -169,16 +189,24 @@ type DirectLightstepState struct { LightstepOrganization pulumi.StringPtrInput // Name of the Lightstep project. LightstepProject pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectLightstepQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput + // Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + Url pulumi.StringPtrInput } func (DirectLightstepState) ElementType() reflect.Type { @@ -198,14 +226,22 @@ type directLightstepArgs struct { LightstepOrganization string `pulumi:"lightstepOrganization"` // Name of the Lightstep project. LightstepProject string `pulumi:"lightstepProject"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectLightstepQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` + // Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + Url *string `pulumi:"url"` } // The set of arguments for constructing a DirectLightstep resource. @@ -222,14 +258,22 @@ type DirectLightstepArgs struct { LightstepOrganization pulumi.StringInput // Name of the Lightstep project. LightstepProject pulumi.StringInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectLightstepQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput + // Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + Url pulumi.StringPtrInput } func (DirectLightstepArgs) ElementType() reflect.Type { @@ -258,7 +302,7 @@ func (i *DirectLightstep) ToDirectLightstepOutputWithContext(ctx context.Context // DirectLightstepArrayInput is an input type that accepts DirectLightstepArray and DirectLightstepArrayOutput values. // You can construct a concrete instance of `DirectLightstepArrayInput` via: // -// DirectLightstepArray{ DirectLightstepArgs{...} } +// DirectLightstepArray{ DirectLightstepArgs{...} } type DirectLightstepArrayInput interface { pulumi.Input @@ -283,7 +327,7 @@ func (i DirectLightstepArray) ToDirectLightstepArrayOutputWithContext(ctx contex // DirectLightstepMapInput is an input type that accepts DirectLightstepMap and DirectLightstepMapOutput values. // You can construct a concrete instance of `DirectLightstepMapInput` via: // -// DirectLightstepMap{ "key": DirectLightstepArgs{...} } +// DirectLightstepMap{ "key": DirectLightstepArgs{...} } type DirectLightstepMapInput interface { pulumi.Input @@ -335,10 +379,10 @@ func (o DirectLightstepOutput) DisplayName() pulumi.StringPtrOutput { } // [Replay configuration documentation](https://docs.nobl9.com/replay) -func (o DirectLightstepOutput) HistoricalDataRetrieval() DirectLightstepHistoricalDataRetrievalPtrOutput { - return o.ApplyT(func(v *DirectLightstep) DirectLightstepHistoricalDataRetrievalPtrOutput { +func (o DirectLightstepOutput) HistoricalDataRetrieval() DirectLightstepHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectLightstep) DirectLightstepHistoricalDataRetrievalOutput { return v.HistoricalDataRetrieval - }).(DirectLightstepHistoricalDataRetrievalPtrOutput) + }).(DirectLightstepHistoricalDataRetrievalOutput) } // Organization name registered in Lightstep. @@ -351,6 +395,11 @@ func (o DirectLightstepOutput) LightstepProject() pulumi.StringOutput { return o.ApplyT(func(v *DirectLightstep) pulumi.StringOutput { return v.LightstepProject }).(pulumi.StringOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectLightstepOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectLightstep) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectLightstepOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectLightstep) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -362,11 +411,18 @@ func (o DirectLightstepOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectLightstepOutput) QueryDelay() DirectLightstepQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectLightstep) DirectLightstepQueryDelayPtrOutput { return v.QueryDelay }).(DirectLightstepQueryDelayPtrOutput) +func (o DirectLightstepOutput) QueryDelay() DirectLightstepQueryDelayOutput { + return o.ApplyT(func(v *DirectLightstep) DirectLightstepQueryDelayOutput { return v.QueryDelay }).(DirectLightstepQueryDelayOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o DirectLightstepOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectLightstep) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectLightstepOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectLightstep) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } @@ -376,6 +432,11 @@ func (o DirectLightstepOutput) Status() pulumi.StringOutput { return o.ApplyT(func(v *DirectLightstep) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) } +// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. +func (o DirectLightstepOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectLightstep) pulumi.StringPtrOutput { return v.Url }).(pulumi.StringPtrOutput) +} + type DirectLightstepArrayOutput struct{ *pulumi.OutputState } func (DirectLightstepArrayOutput) ElementType() reflect.Type { diff --git a/sdk/go/nobl9/directNewrelic.go b/sdk/go/nobl9/directNewrelic.go index e9cd34d..73dd55f 100644 --- a/sdk/go/nobl9/directNewrelic.go +++ b/sdk/go/nobl9/directNewrelic.go @@ -7,12 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects with New Relic to collect SLI measurements and compare them to SLO targets. -// +// New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects to New Relic for SLI measurement collection and comparison with SLO targets. // For more information, refer to [New Relic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-direct). // // ## Example Usage @@ -21,43 +21,42 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectNewrelic(ctx, "test-newrelic", &nobl9.DirectNewrelicArgs{ -// AccountId: pulumi.Int(1234), -// Description: pulumi.String("desc"), -// HistoricalDataRetrieval: &DirectNewrelicHistoricalDataRetrievalArgs{ -// DefaultDurations: DirectNewrelicHistoricalDataRetrievalDefaultDurationArray{ -// &DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(0), -// }, -// }, -// MaxDurations: DirectNewrelicHistoricalDataRetrievalMaxDurationArray{ -// &DirectNewrelicHistoricalDataRetrievalMaxDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(30), -// }, -// }, -// }, -// InsightsQueryKey: pulumi.String("secret"), -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectNewrelic(ctx, "test-newrelic", &nobl9.DirectNewrelicArgs{ +// AccountId: pulumi.Int(1234), +// Description: pulumi.String("desc"), +// HistoricalDataRetrieval: &nobl9.DirectNewrelicHistoricalDataRetrievalArgs{ +// DefaultDurations: nobl9.DirectNewrelicHistoricalDataRetrievalDefaultDurationArray{ +// &nobl9.DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(0), +// }, +// }, +// MaxDurations: nobl9.DirectNewrelicHistoricalDataRetrievalMaxDurationArray{ +// &nobl9.DirectNewrelicHistoricalDataRetrievalMaxDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(30), +// }, +// }, +// }, +// InsightsQueryKey: pulumi.String("secret"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -72,16 +71,22 @@ type DirectNewrelic struct { // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) - HistoricalDataRetrieval DirectNewrelicHistoricalDataRetrievalPtrOutput `pulumi:"historicalDataRetrieval"` + HistoricalDataRetrieval DirectNewrelicHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` // [required] | New Relic Insights Query Key. InsightsQueryKey pulumi.StringOutput `pulumi:"insightsQueryKey"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectNewrelicQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectNewrelicQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -100,10 +105,14 @@ func NewDirectNewrelic(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.InsightsQueryKey != nil { + args.InsightsQueryKey = pulumi.ToSecret(args.InsightsQueryKey).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "insightsQueryKey", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectNewrelic err := ctx.RegisterResource("nobl9:index/directNewrelic:DirectNewrelic", name, args, &resource, opts...) if err != nil { @@ -136,13 +145,19 @@ type directNewrelicState struct { HistoricalDataRetrieval *DirectNewrelicHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` // [required] | New Relic Insights Query Key. InsightsQueryKey *string `pulumi:"insightsQueryKey"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectNewrelicQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -159,13 +174,19 @@ type DirectNewrelicState struct { HistoricalDataRetrieval DirectNewrelicHistoricalDataRetrievalPtrInput // [required] | New Relic Insights Query Key. InsightsQueryKey pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectNewrelicQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -186,13 +207,19 @@ type directNewrelicArgs struct { HistoricalDataRetrieval *DirectNewrelicHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` // [required] | New Relic Insights Query Key. InsightsQueryKey *string `pulumi:"insightsQueryKey"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectNewrelicQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } @@ -208,13 +235,19 @@ type DirectNewrelicArgs struct { HistoricalDataRetrieval DirectNewrelicHistoricalDataRetrievalPtrInput // [required] | New Relic Insights Query Key. InsightsQueryKey pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectNewrelicQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -244,7 +277,7 @@ func (i *DirectNewrelic) ToDirectNewrelicOutputWithContext(ctx context.Context) // DirectNewrelicArrayInput is an input type that accepts DirectNewrelicArray and DirectNewrelicArrayOutput values. // You can construct a concrete instance of `DirectNewrelicArrayInput` via: // -// DirectNewrelicArray{ DirectNewrelicArgs{...} } +// DirectNewrelicArray{ DirectNewrelicArgs{...} } type DirectNewrelicArrayInput interface { pulumi.Input @@ -269,7 +302,7 @@ func (i DirectNewrelicArray) ToDirectNewrelicArrayOutputWithContext(ctx context. // DirectNewrelicMapInput is an input type that accepts DirectNewrelicMap and DirectNewrelicMapOutput values. // You can construct a concrete instance of `DirectNewrelicMapInput` via: // -// DirectNewrelicMap{ "key": DirectNewrelicArgs{...} } +// DirectNewrelicMap{ "key": DirectNewrelicArgs{...} } type DirectNewrelicMapInput interface { pulumi.Input @@ -321,10 +354,8 @@ func (o DirectNewrelicOutput) DisplayName() pulumi.StringPtrOutput { } // [Replay configuration documentation](https://docs.nobl9.com/replay) -func (o DirectNewrelicOutput) HistoricalDataRetrieval() DirectNewrelicHistoricalDataRetrievalPtrOutput { - return o.ApplyT(func(v *DirectNewrelic) DirectNewrelicHistoricalDataRetrievalPtrOutput { - return v.HistoricalDataRetrieval - }).(DirectNewrelicHistoricalDataRetrievalPtrOutput) +func (o DirectNewrelicOutput) HistoricalDataRetrieval() DirectNewrelicHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectNewrelic) DirectNewrelicHistoricalDataRetrievalOutput { return v.HistoricalDataRetrieval }).(DirectNewrelicHistoricalDataRetrievalOutput) } // [required] | New Relic Insights Query Key. @@ -332,6 +363,11 @@ func (o DirectNewrelicOutput) InsightsQueryKey() pulumi.StringOutput { return o.ApplyT(func(v *DirectNewrelic) pulumi.StringOutput { return v.InsightsQueryKey }).(pulumi.StringOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectNewrelicOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectNewrelic) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectNewrelicOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectNewrelic) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -343,11 +379,18 @@ func (o DirectNewrelicOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectNewrelicOutput) QueryDelay() DirectNewrelicQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectNewrelic) DirectNewrelicQueryDelayPtrOutput { return v.QueryDelay }).(DirectNewrelicQueryDelayPtrOutput) +func (o DirectNewrelicOutput) QueryDelay() DirectNewrelicQueryDelayOutput { + return o.ApplyT(func(v *DirectNewrelic) DirectNewrelicQueryDelayOutput { return v.QueryDelay }).(DirectNewrelicQueryDelayOutput) +} + +// Release channel of the created datasource [stable/beta] +func (o DirectNewrelicOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectNewrelic) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectNewrelicOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectNewrelic) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directPingdom.go b/sdk/go/nobl9/directPingdom.go index 4879bb1..057e893 100644 --- a/sdk/go/nobl9/directPingdom.go +++ b/sdk/go/nobl9/directPingdom.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects with Pingdom to collect SLI measurements and compare them to SLO targets. +// Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects to Pingdom for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Pingdom Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-direct). // @@ -21,27 +22,27 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectPingdom(ctx, "test-pingdom", &nobl9.DirectPingdomArgs{ -// ApiToken: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectPingdom(ctx, "test-pingdom", &nobl9.DirectPingdomArgs{ +// ApiToken: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -55,13 +56,19 @@ type DirectPingdom struct { Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectPingdomQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectPingdomQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -77,10 +84,14 @@ func NewDirectPingdom(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.ApiToken != nil { + args.ApiToken = pulumi.ToSecret(args.ApiToken).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "apiToken", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectPingdom err := ctx.RegisterResource("nobl9:index/directPingdom:DirectPingdom", name, args, &resource, opts...) if err != nil { @@ -109,13 +120,19 @@ type directPingdomState struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectPingdomQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -128,13 +145,19 @@ type DirectPingdomState struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectPingdomQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -151,13 +174,19 @@ type directPingdomArgs struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectPingdomQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } @@ -169,13 +198,19 @@ type DirectPingdomArgs struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectPingdomQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -205,7 +240,7 @@ func (i *DirectPingdom) ToDirectPingdomOutputWithContext(ctx context.Context) Di // DirectPingdomArrayInput is an input type that accepts DirectPingdomArray and DirectPingdomArrayOutput values. // You can construct a concrete instance of `DirectPingdomArrayInput` via: // -// DirectPingdomArray{ DirectPingdomArgs{...} } +// DirectPingdomArray{ DirectPingdomArgs{...} } type DirectPingdomArrayInput interface { pulumi.Input @@ -230,7 +265,7 @@ func (i DirectPingdomArray) ToDirectPingdomArrayOutputWithContext(ctx context.Co // DirectPingdomMapInput is an input type that accepts DirectPingdomMap and DirectPingdomMapOutput values. // You can construct a concrete instance of `DirectPingdomMapInput` via: // -// DirectPingdomMap{ "key": DirectPingdomArgs{...} } +// DirectPingdomMap{ "key": DirectPingdomArgs{...} } type DirectPingdomMapInput interface { pulumi.Input @@ -281,6 +316,11 @@ func (o DirectPingdomOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectPingdom) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectPingdomOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectPingdom) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectPingdomOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectPingdom) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -292,11 +332,18 @@ func (o DirectPingdomOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectPingdomOutput) QueryDelay() DirectPingdomQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectPingdom) DirectPingdomQueryDelayPtrOutput { return v.QueryDelay }).(DirectPingdomQueryDelayPtrOutput) +func (o DirectPingdomOutput) QueryDelay() DirectPingdomQueryDelayOutput { + return o.ApplyT(func(v *DirectPingdom) DirectPingdomQueryDelayOutput { return v.QueryDelay }).(DirectPingdomQueryDelayOutput) +} + +// Release channel of the created datasource [stable/beta] +func (o DirectPingdomOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectPingdom) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectPingdomOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectPingdom) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directRedshift.go b/sdk/go/nobl9/directRedshift.go index 34d603c..5dcccf8 100644 --- a/sdk/go/nobl9/directRedshift.go +++ b/sdk/go/nobl9/directRedshift.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects with Amazon Redshift to collect SLI measurements and compare them to SLO targets. +// Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects to Amazon Redshift for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Amazon Redshift Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-direct). // @@ -21,29 +22,28 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectRedshift(ctx, "test-redshift", &nobl9.DirectRedshiftArgs{ -// AccessKeyId: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// Project: pulumi.String("terraform"), -// SecretAccessKey: pulumi.String("secret"), -// SecretArn: pulumi.String("aws:arn"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectRedshift(ctx, "test-redshift", &nobl9.DirectRedshiftArgs{ +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// RoleArn: pulumi.String("secret"), +// SecretArn: pulumi.String("aws:arn"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -51,23 +51,27 @@ import ( type DirectRedshift struct { pulumi.CustomResourceState - // [required] | AWS Access Key ID. - AccessKeyId pulumi.StringOutput `pulumi:"accessKeyId"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectRedshiftQueryDelayPtrOutput `pulumi:"queryDelay"` - // [required] | AWS Secret Access Key. - SecretAccessKey pulumi.StringOutput `pulumi:"secretAccessKey"` + QueryDelay DirectRedshiftQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // [required] | ARN of the AWS IAM Role to assume. + RoleArn pulumi.StringOutput `pulumi:"roleArn"` // AWS Secret ARN. SecretArn pulumi.StringOutput `pulumi:"secretArn"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -83,10 +87,18 @@ func NewDirectRedshift(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.RoleArn != nil { + args.RoleArn = pulumi.ToSecret(args.RoleArn).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + if args.SecretArn != nil { + args.SecretArn = pulumi.ToSecret(args.SecretArn).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "roleArn", + "secretArn", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectRedshift err := ctx.RegisterResource("nobl9:index/directRedshift:DirectRedshift", name, args, &resource, opts...) if err != nil { @@ -109,46 +121,54 @@ func GetDirectRedshift(ctx *pulumi.Context, // Input properties used for looking up and filtering DirectRedshift resources. type directRedshiftState struct { - // [required] | AWS Access Key ID. - AccessKeyId *string `pulumi:"accessKeyId"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectRedshiftQueryDelay `pulumi:"queryDelay"` - // [required] | AWS Secret Access Key. - SecretAccessKey *string `pulumi:"secretAccessKey"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // [required] | ARN of the AWS IAM Role to assume. + RoleArn *string `pulumi:"roleArn"` // AWS Secret ARN. SecretArn *string `pulumi:"secretArn"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` } type DirectRedshiftState struct { - // [required] | AWS Access Key ID. - AccessKeyId pulumi.StringPtrInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectRedshiftQueryDelayPtrInput - // [required] | AWS Secret Access Key. - SecretAccessKey pulumi.StringPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // [required] | ARN of the AWS IAM Role to assume. + RoleArn pulumi.StringPtrInput // AWS Secret ARN. SecretArn pulumi.StringPtrInput - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -159,45 +179,53 @@ func (DirectRedshiftState) ElementType() reflect.Type { } type directRedshiftArgs struct { - // [required] | AWS Access Key ID. - AccessKeyId *string `pulumi:"accessKeyId"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectRedshiftQueryDelay `pulumi:"queryDelay"` - // [required] | AWS Secret Access Key. - SecretAccessKey *string `pulumi:"secretAccessKey"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // [required] | ARN of the AWS IAM Role to assume. + RoleArn *string `pulumi:"roleArn"` // AWS Secret ARN. SecretArn *string `pulumi:"secretArn"` - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } // The set of arguments for constructing a DirectRedshift resource. type DirectRedshiftArgs struct { - // [required] | AWS Access Key ID. - AccessKeyId pulumi.StringPtrInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectRedshiftQueryDelayPtrInput - // [required] | AWS Secret Access Key. - SecretAccessKey pulumi.StringPtrInput + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // [required] | ARN of the AWS IAM Role to assume. + RoleArn pulumi.StringPtrInput // AWS Secret ARN. SecretArn pulumi.StringPtrInput - // Source of Metrics and/or Services. + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -227,7 +255,7 @@ func (i *DirectRedshift) ToDirectRedshiftOutputWithContext(ctx context.Context) // DirectRedshiftArrayInput is an input type that accepts DirectRedshiftArray and DirectRedshiftArrayOutput values. // You can construct a concrete instance of `DirectRedshiftArrayInput` via: // -// DirectRedshiftArray{ DirectRedshiftArgs{...} } +// DirectRedshiftArray{ DirectRedshiftArgs{...} } type DirectRedshiftArrayInput interface { pulumi.Input @@ -252,7 +280,7 @@ func (i DirectRedshiftArray) ToDirectRedshiftArrayOutputWithContext(ctx context. // DirectRedshiftMapInput is an input type that accepts DirectRedshiftMap and DirectRedshiftMapOutput values. // You can construct a concrete instance of `DirectRedshiftMapInput` via: // -// DirectRedshiftMap{ "key": DirectRedshiftArgs{...} } +// DirectRedshiftMap{ "key": DirectRedshiftArgs{...} } type DirectRedshiftMapInput interface { pulumi.Input @@ -288,11 +316,6 @@ func (o DirectRedshiftOutput) ToDirectRedshiftOutputWithContext(ctx context.Cont return o } -// [required] | AWS Access Key ID. -func (o DirectRedshiftOutput) AccessKeyId() pulumi.StringOutput { - return o.ApplyT(func(v *DirectRedshift) pulumi.StringOutput { return v.AccessKeyId }).(pulumi.StringOutput) -} - // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. func (o DirectRedshiftOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectRedshift) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) @@ -303,6 +326,11 @@ func (o DirectRedshiftOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectRedshift) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectRedshiftOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectRedshift) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectRedshiftOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectRedshift) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -314,13 +342,18 @@ func (o DirectRedshiftOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectRedshiftOutput) QueryDelay() DirectRedshiftQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectRedshift) DirectRedshiftQueryDelayPtrOutput { return v.QueryDelay }).(DirectRedshiftQueryDelayPtrOutput) +func (o DirectRedshiftOutput) QueryDelay() DirectRedshiftQueryDelayOutput { + return o.ApplyT(func(v *DirectRedshift) DirectRedshiftQueryDelayOutput { return v.QueryDelay }).(DirectRedshiftQueryDelayOutput) } -// [required] | AWS Secret Access Key. -func (o DirectRedshiftOutput) SecretAccessKey() pulumi.StringOutput { - return o.ApplyT(func(v *DirectRedshift) pulumi.StringOutput { return v.SecretAccessKey }).(pulumi.StringOutput) +// Release channel of the created datasource [stable/beta] +func (o DirectRedshiftOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectRedshift) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// [required] | ARN of the AWS IAM Role to assume. +func (o DirectRedshiftOutput) RoleArn() pulumi.StringOutput { + return o.ApplyT(func(v *DirectRedshift) pulumi.StringOutput { return v.RoleArn }).(pulumi.StringOutput) } // AWS Secret ARN. @@ -328,7 +361,9 @@ func (o DirectRedshiftOutput) SecretArn() pulumi.StringOutput { return o.ApplyT(func(v *DirectRedshift) pulumi.StringOutput { return v.SecretArn }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectRedshiftOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectRedshift) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directSplunk.go b/sdk/go/nobl9/directSplunk.go index e5a6835..4c7537d 100644 --- a/sdk/go/nobl9/directSplunk.go +++ b/sdk/go/nobl9/directSplunk.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects with Splunk to collect SLI measurements and compare them to SLO targets. +// Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects to Splunk for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Splunk Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk#splunk-direct). // @@ -21,43 +22,42 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectSplunk(ctx, "test-splunk", &nobl9.DirectSplunkArgs{ -// AccessToken: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// HistoricalDataRetrieval: &DirectSplunkHistoricalDataRetrievalArgs{ -// DefaultDurations: DirectSplunkHistoricalDataRetrievalDefaultDurationArray{ -// &DirectSplunkHistoricalDataRetrievalDefaultDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(0), -// }, -// }, -// MaxDurations: DirectSplunkHistoricalDataRetrievalMaxDurationArray{ -// &DirectSplunkHistoricalDataRetrievalMaxDurationArgs{ -// Unit: pulumi.String("Day"), -// Value: pulumi.Int(30), -// }, -// }, -// }, -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// Url: pulumi.String("https://web.net"), -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectSplunk(ctx, "test-splunk", &nobl9.DirectSplunkArgs{ +// AccessToken: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// HistoricalDataRetrieval: &nobl9.DirectSplunkHistoricalDataRetrievalArgs{ +// DefaultDurations: nobl9.DirectSplunkHistoricalDataRetrievalDefaultDurationArray{ +// &nobl9.DirectSplunkHistoricalDataRetrievalDefaultDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(0), +// }, +// }, +// MaxDurations: nobl9.DirectSplunkHistoricalDataRetrievalMaxDurationArray{ +// &nobl9.DirectSplunkHistoricalDataRetrievalMaxDurationArgs{ +// Unit: pulumi.String("Day"), +// Value: pulumi.Int(30), +// }, +// }, +// }, +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// Url: pulumi.String("https://web.net"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -72,14 +72,20 @@ type DirectSplunk struct { // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) - HistoricalDataRetrieval DirectSplunkHistoricalDataRetrievalPtrOutput `pulumi:"historicalDataRetrieval"` + HistoricalDataRetrieval DirectSplunkHistoricalDataRetrievalOutput `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectSplunkQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectSplunkQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -97,13 +103,17 @@ func NewDirectSplunk(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") - } if args.Url == nil { return nil, errors.New("invalid value for required argument 'Url'") } - opts = pkgResourceDefaultOpts(opts) + if args.AccessToken != nil { + args.AccessToken = pulumi.ToSecret(args.AccessToken).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "accessToken", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectSplunk err := ctx.RegisterResource("nobl9:index/directSplunk:DirectSplunk", name, args, &resource, opts...) if err != nil { @@ -134,13 +144,19 @@ type directSplunkState struct { DisplayName *string `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval *DirectSplunkHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectSplunkQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -157,13 +173,19 @@ type DirectSplunkState struct { DisplayName pulumi.StringPtrInput // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval DirectSplunkHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectSplunkQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -184,13 +206,19 @@ type directSplunkArgs struct { DisplayName *string `pulumi:"displayName"` // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval *DirectSplunkHistoricalDataRetrieval `pulumi:"historicalDataRetrieval"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectSplunkQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // Base API URL to the Splunk Search app. Url string `pulumi:"url"` @@ -206,13 +234,19 @@ type DirectSplunkArgs struct { DisplayName pulumi.StringPtrInput // [Replay configuration documentation](https://docs.nobl9.com/replay) HistoricalDataRetrieval DirectSplunkHistoricalDataRetrievalPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectSplunkQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // Base API URL to the Splunk Search app. Url pulumi.StringInput @@ -244,7 +278,7 @@ func (i *DirectSplunk) ToDirectSplunkOutputWithContext(ctx context.Context) Dire // DirectSplunkArrayInput is an input type that accepts DirectSplunkArray and DirectSplunkArrayOutput values. // You can construct a concrete instance of `DirectSplunkArrayInput` via: // -// DirectSplunkArray{ DirectSplunkArgs{...} } +// DirectSplunkArray{ DirectSplunkArgs{...} } type DirectSplunkArrayInput interface { pulumi.Input @@ -269,7 +303,7 @@ func (i DirectSplunkArray) ToDirectSplunkArrayOutputWithContext(ctx context.Cont // DirectSplunkMapInput is an input type that accepts DirectSplunkMap and DirectSplunkMapOutput values. // You can construct a concrete instance of `DirectSplunkMapInput` via: // -// DirectSplunkMap{ "key": DirectSplunkArgs{...} } +// DirectSplunkMap{ "key": DirectSplunkArgs{...} } type DirectSplunkMapInput interface { pulumi.Input @@ -321,8 +355,13 @@ func (o DirectSplunkOutput) DisplayName() pulumi.StringPtrOutput { } // [Replay configuration documentation](https://docs.nobl9.com/replay) -func (o DirectSplunkOutput) HistoricalDataRetrieval() DirectSplunkHistoricalDataRetrievalPtrOutput { - return o.ApplyT(func(v *DirectSplunk) DirectSplunkHistoricalDataRetrievalPtrOutput { return v.HistoricalDataRetrieval }).(DirectSplunkHistoricalDataRetrievalPtrOutput) +func (o DirectSplunkOutput) HistoricalDataRetrieval() DirectSplunkHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectSplunk) DirectSplunkHistoricalDataRetrievalOutput { return v.HistoricalDataRetrieval }).(DirectSplunkHistoricalDataRetrievalOutput) +} + +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectSplunkOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectSplunk) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) } // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -336,11 +375,18 @@ func (o DirectSplunkOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectSplunkOutput) QueryDelay() DirectSplunkQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectSplunk) DirectSplunkQueryDelayPtrOutput { return v.QueryDelay }).(DirectSplunkQueryDelayPtrOutput) +func (o DirectSplunkOutput) QueryDelay() DirectSplunkQueryDelayOutput { + return o.ApplyT(func(v *DirectSplunk) DirectSplunkQueryDelayOutput { return v.QueryDelay }).(DirectSplunkQueryDelayOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o DirectSplunkOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectSplunk) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectSplunkOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectSplunk) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directSplunkObservability.go b/sdk/go/nobl9/directSplunkObservability.go index 4494f99..e88e7c5 100644 --- a/sdk/go/nobl9/directSplunkObservability.go +++ b/sdk/go/nobl9/directSplunkObservability.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects with Splunk Observability to collect SLI measurements and compare them to SLO targets. +// Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects to Splunk Observability for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Splunk Observability Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-direct). // @@ -21,28 +22,27 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectSplunkObservability(ctx, "test-splunkobservability", &nobl9.DirectSplunkObservabilityArgs{ -// AccessToken: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// Project: pulumi.String("terraform"), -// Realm: pulumi.String("eu"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectSplunkObservability(ctx, "test-splunk-observability", &nobl9.DirectSplunkObservabilityArgs{ +// AccessToken: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// Project: pulumi.String("terraform"), +// Realm: pulumi.String("eu"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -61,10 +61,14 @@ type DirectSplunkObservability struct { // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectSplunkObservabilityQueryDelayPtrOutput `pulumi:"queryDelay"` + QueryDelay DirectSplunkObservabilityQueryDelayOutput `pulumi:"queryDelay"` // SplunkObservability Realm. Realm pulumi.StringOutput `pulumi:"realm"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -83,10 +87,14 @@ func NewDirectSplunkObservability(ctx *pulumi.Context, if args.Realm == nil { return nil, errors.New("invalid value for required argument 'Realm'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.AccessToken != nil { + args.AccessToken = pulumi.ToSecret(args.AccessToken).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "accessToken", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectSplunkObservability err := ctx.RegisterResource("nobl9:index/directSplunkObservability:DirectSplunkObservability", name, args, &resource, opts...) if err != nil { @@ -123,7 +131,11 @@ type directSplunkObservabilityState struct { QueryDelay *DirectSplunkObservabilityQueryDelay `pulumi:"queryDelay"` // SplunkObservability Realm. Realm *string `pulumi:"realm"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -144,7 +156,11 @@ type DirectSplunkObservabilityState struct { QueryDelay DirectSplunkObservabilityQueryDelayPtrInput // SplunkObservability Realm. Realm pulumi.StringPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -169,7 +185,11 @@ type directSplunkObservabilityArgs struct { QueryDelay *DirectSplunkObservabilityQueryDelay `pulumi:"queryDelay"` // SplunkObservability Realm. Realm string `pulumi:"realm"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } @@ -189,7 +209,11 @@ type DirectSplunkObservabilityArgs struct { QueryDelay DirectSplunkObservabilityQueryDelayPtrInput // SplunkObservability Realm. Realm pulumi.StringInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -219,7 +243,7 @@ func (i *DirectSplunkObservability) ToDirectSplunkObservabilityOutputWithContext // DirectSplunkObservabilityArrayInput is an input type that accepts DirectSplunkObservabilityArray and DirectSplunkObservabilityArrayOutput values. // You can construct a concrete instance of `DirectSplunkObservabilityArrayInput` via: // -// DirectSplunkObservabilityArray{ DirectSplunkObservabilityArgs{...} } +// DirectSplunkObservabilityArray{ DirectSplunkObservabilityArgs{...} } type DirectSplunkObservabilityArrayInput interface { pulumi.Input @@ -244,7 +268,7 @@ func (i DirectSplunkObservabilityArray) ToDirectSplunkObservabilityArrayOutputWi // DirectSplunkObservabilityMapInput is an input type that accepts DirectSplunkObservabilityMap and DirectSplunkObservabilityMapOutput values. // You can construct a concrete instance of `DirectSplunkObservabilityMapInput` via: // -// DirectSplunkObservabilityMap{ "key": DirectSplunkObservabilityArgs{...} } +// DirectSplunkObservabilityMap{ "key": DirectSplunkObservabilityArgs{...} } type DirectSplunkObservabilityMapInput interface { pulumi.Input @@ -306,8 +330,8 @@ func (o DirectSplunkObservabilityOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectSplunkObservabilityOutput) QueryDelay() DirectSplunkObservabilityQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectSplunkObservability) DirectSplunkObservabilityQueryDelayPtrOutput { return v.QueryDelay }).(DirectSplunkObservabilityQueryDelayPtrOutput) +func (o DirectSplunkObservabilityOutput) QueryDelay() DirectSplunkObservabilityQueryDelayOutput { + return o.ApplyT(func(v *DirectSplunkObservability) DirectSplunkObservabilityQueryDelayOutput { return v.QueryDelay }).(DirectSplunkObservabilityQueryDelayOutput) } // SplunkObservability Realm. @@ -315,7 +339,14 @@ func (o DirectSplunkObservabilityOutput) Realm() pulumi.StringOutput { return o.ApplyT(func(v *DirectSplunkObservability) pulumi.StringOutput { return v.Realm }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o DirectSplunkObservabilityOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectSplunkObservability) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectSplunkObservabilityOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectSplunkObservability) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directSumologic.go b/sdk/go/nobl9/directSumologic.go index 7655c9f..2b772ca 100644 --- a/sdk/go/nobl9/directSumologic.go +++ b/sdk/go/nobl9/directSumologic.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects with Sumo Logic to collect SLI measurements and compare them to SLO targets. +// Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects to Sumo Logic for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [Sumo Logic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-direct). // @@ -21,28 +22,29 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectSumologic(ctx, "test-sumologic", &nobl9.DirectSumologicArgs{ -// AccessId: pulumi.String("secret"), -// AccessKey: pulumi.String("secret"), -// Description: pulumi.String("desc"), -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// }, -// Url: pulumi.String("http://web.net"), -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectSumologic(ctx, "test-sumologic", &nobl9.DirectSumologicArgs{ +// AccessId: pulumi.String("secret"), +// AccessKey: pulumi.String("secret"), +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// Project: pulumi.String("terraform"), +// Url: pulumi.String("http://web.net"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -58,13 +60,19 @@ type DirectSumologic struct { Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectSumologicQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectSumologicQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -82,13 +90,21 @@ func NewDirectSumologic(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") - } if args.Url == nil { return nil, errors.New("invalid value for required argument 'Url'") } - opts = pkgResourceDefaultOpts(opts) + if args.AccessId != nil { + args.AccessId = pulumi.ToSecret(args.AccessId).(pulumi.StringPtrInput) + } + if args.AccessKey != nil { + args.AccessKey = pulumi.ToSecret(args.AccessKey).(pulumi.StringPtrInput) + } + secrets := pulumi.AdditionalSecretOutputs([]string{ + "accessId", + "accessKey", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectSumologic err := ctx.RegisterResource("nobl9:index/directSumologic:DirectSumologic", name, args, &resource, opts...) if err != nil { @@ -119,13 +135,19 @@ type directSumologicState struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectSumologicQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -142,13 +164,19 @@ type DirectSumologicState struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectSumologicQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -169,13 +197,19 @@ type directSumologicArgs struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectSumologicQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // Sumo Logic API URL. Url string `pulumi:"url"` @@ -191,13 +225,19 @@ type DirectSumologicArgs struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectSumologicQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // Sumo Logic API URL. Url pulumi.StringInput @@ -229,7 +269,7 @@ func (i *DirectSumologic) ToDirectSumologicOutputWithContext(ctx context.Context // DirectSumologicArrayInput is an input type that accepts DirectSumologicArray and DirectSumologicArrayOutput values. // You can construct a concrete instance of `DirectSumologicArrayInput` via: // -// DirectSumologicArray{ DirectSumologicArgs{...} } +// DirectSumologicArray{ DirectSumologicArgs{...} } type DirectSumologicArrayInput interface { pulumi.Input @@ -254,7 +294,7 @@ func (i DirectSumologicArray) ToDirectSumologicArrayOutputWithContext(ctx contex // DirectSumologicMapInput is an input type that accepts DirectSumologicMap and DirectSumologicMapOutput values. // You can construct a concrete instance of `DirectSumologicMapInput` via: // -// DirectSumologicMap{ "key": DirectSumologicArgs{...} } +// DirectSumologicMap{ "key": DirectSumologicArgs{...} } type DirectSumologicMapInput interface { pulumi.Input @@ -310,6 +350,11 @@ func (o DirectSumologicOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectSumologic) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectSumologicOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectSumologic) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectSumologicOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectSumologic) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -321,11 +366,18 @@ func (o DirectSumologicOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectSumologicOutput) QueryDelay() DirectSumologicQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectSumologic) DirectSumologicQueryDelayPtrOutput { return v.QueryDelay }).(DirectSumologicQueryDelayPtrOutput) +func (o DirectSumologicOutput) QueryDelay() DirectSumologicQueryDelayOutput { + return o.ApplyT(func(v *DirectSumologic) DirectSumologicQueryDelayOutput { return v.QueryDelay }).(DirectSumologicQueryDelayOutput) } -// Source of Metrics and/or Services. +// Release channel of the created datasource [stable/beta] +func (o DirectSumologicOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectSumologic) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) +} + +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectSumologicOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectSumologic) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/directThousandeyes.go b/sdk/go/nobl9/directThousandeyes.go index fe47882..9408b4b 100644 --- a/sdk/go/nobl9/directThousandeyes.go +++ b/sdk/go/nobl9/directThousandeyes.go @@ -7,11 +7,12 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects with ThousandEyes to collect SLI measurements and compare them to SLO targets. +// ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects to ThousandEyes for SLI measurement collection and comparison with SLO targets. // // For more information, refer to [ThousandEyes Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/thousandeyes#thousandeyes-direct). // @@ -21,27 +22,27 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewDirectThousandeyes(ctx, "test-thousandeyes", &nobl9.DirectThousandeyesArgs{ -// Description: pulumi.String("desc"), -// OauthBearerToken: pulumi.String("secret"), -// Project: pulumi.String("terraform"), -// SourceOfs: pulumi.StringArray{ -// pulumi.String("Metrics"), -// pulumi.String("Services"), -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewDirectThousandeyes(ctx, "test-thousandeyes", &nobl9.DirectThousandeyesArgs{ +// Description: pulumi.String("desc"), +// LogCollectionEnabled: pulumi.Bool(true), +// OauthBearerToken: pulumi.String("secret"), +// Project: pulumi.String("terraform"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Nobl9 Official Documentation // @@ -53,6 +54,8 @@ type DirectThousandeyes struct { Description pulumi.StringPtrOutput `pulumi:"description"` // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrOutput `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` // [required] | ThousandEyes OAuth Bearer Token. @@ -60,8 +63,12 @@ type DirectThousandeyes struct { // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Project pulumi.StringOutput `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - QueryDelay DirectThousandeyesQueryDelayPtrOutput `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + QueryDelay DirectThousandeyesQueryDelayOutput `pulumi:"queryDelay"` + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringOutput `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayOutput `pulumi:"sourceOfs"` // The status of the created direct. Status pulumi.StringOutput `pulumi:"status"` @@ -77,10 +84,14 @@ func NewDirectThousandeyes(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - if args.SourceOfs == nil { - return nil, errors.New("invalid value for required argument 'SourceOfs'") + if args.OauthBearerToken != nil { + args.OauthBearerToken = pulumi.ToSecret(args.OauthBearerToken).(pulumi.StringPtrInput) } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "oauthBearerToken", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource DirectThousandeyes err := ctx.RegisterResource("nobl9:index/directThousandeyes:DirectThousandeyes", name, args, &resource, opts...) if err != nil { @@ -107,6 +118,8 @@ type directThousandeyesState struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // [required] | ThousandEyes OAuth Bearer Token. @@ -115,7 +128,11 @@ type directThousandeyesState struct { Project *string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectThousandeyesQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` // The status of the created direct. Status *string `pulumi:"status"` @@ -126,6 +143,8 @@ type DirectThousandeyesState struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // [required] | ThousandEyes OAuth Bearer Token. @@ -134,7 +153,11 @@ type DirectThousandeyesState struct { Project pulumi.StringPtrInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectThousandeyesQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput // The status of the created direct. Status pulumi.StringPtrInput @@ -149,6 +172,8 @@ type directThousandeyesArgs struct { Description *string `pulumi:"description"` // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled *bool `pulumi:"logCollectionEnabled"` // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` // [required] | ThousandEyes OAuth Bearer Token. @@ -157,7 +182,11 @@ type directThousandeyesArgs struct { Project string `pulumi:"project"` // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay *DirectThousandeyesQueryDelay `pulumi:"queryDelay"` - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel *string `pulumi:"releaseChannel"` + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs []string `pulumi:"sourceOfs"` } @@ -167,6 +196,8 @@ type DirectThousandeyesArgs struct { Description pulumi.StringPtrInput // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + LogCollectionEnabled pulumi.BoolPtrInput // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput // [required] | ThousandEyes OAuth Bearer Token. @@ -175,7 +206,11 @@ type DirectThousandeyesArgs struct { Project pulumi.StringInput // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. QueryDelay DirectThousandeyesQueryDelayPtrInput - // Source of Metrics and/or Services. + // Release channel of the created datasource [stable/beta] + ReleaseChannel pulumi.StringPtrInput + // This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + // + // Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. SourceOfs pulumi.StringArrayInput } @@ -205,7 +240,7 @@ func (i *DirectThousandeyes) ToDirectThousandeyesOutputWithContext(ctx context.C // DirectThousandeyesArrayInput is an input type that accepts DirectThousandeyesArray and DirectThousandeyesArrayOutput values. // You can construct a concrete instance of `DirectThousandeyesArrayInput` via: // -// DirectThousandeyesArray{ DirectThousandeyesArgs{...} } +// DirectThousandeyesArray{ DirectThousandeyesArgs{...} } type DirectThousandeyesArrayInput interface { pulumi.Input @@ -230,7 +265,7 @@ func (i DirectThousandeyesArray) ToDirectThousandeyesArrayOutputWithContext(ctx // DirectThousandeyesMapInput is an input type that accepts DirectThousandeyesMap and DirectThousandeyesMapOutput values. // You can construct a concrete instance of `DirectThousandeyesMapInput` via: // -// DirectThousandeyesMap{ "key": DirectThousandeyesArgs{...} } +// DirectThousandeyesMap{ "key": DirectThousandeyesArgs{...} } type DirectThousandeyesMapInput interface { pulumi.Input @@ -276,6 +311,11 @@ func (o DirectThousandeyesOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectThousandeyes) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) +func (o DirectThousandeyesOutput) LogCollectionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DirectThousandeyes) pulumi.BoolPtrOutput { return v.LogCollectionEnabled }).(pulumi.BoolPtrOutput) +} + // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o DirectThousandeyesOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DirectThousandeyes) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -292,11 +332,18 @@ func (o DirectThousandeyesOutput) Project() pulumi.StringOutput { } // [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. -func (o DirectThousandeyesOutput) QueryDelay() DirectThousandeyesQueryDelayPtrOutput { - return o.ApplyT(func(v *DirectThousandeyes) DirectThousandeyesQueryDelayPtrOutput { return v.QueryDelay }).(DirectThousandeyesQueryDelayPtrOutput) +func (o DirectThousandeyesOutput) QueryDelay() DirectThousandeyesQueryDelayOutput { + return o.ApplyT(func(v *DirectThousandeyes) DirectThousandeyesQueryDelayOutput { return v.QueryDelay }).(DirectThousandeyesQueryDelayOutput) +} + +// Release channel of the created datasource [stable/beta] +func (o DirectThousandeyesOutput) ReleaseChannel() pulumi.StringOutput { + return o.ApplyT(func(v *DirectThousandeyes) pulumi.StringOutput { return v.ReleaseChannel }).(pulumi.StringOutput) } -// Source of Metrics and/or Services. +// This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. +// +// Deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. func (o DirectThousandeyesOutput) SourceOfs() pulumi.StringArrayOutput { return o.ApplyT(func(v *DirectThousandeyes) pulumi.StringArrayOutput { return v.SourceOfs }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/nobl9/doc.go b/sdk/go/nobl9/doc.go index f229139..56d1704 100644 --- a/sdk/go/nobl9/doc.go +++ b/sdk/go/nobl9/doc.go @@ -1,3 +1,2 @@ -// A Pulumi package for creating and managing Nobl9 cloud resources. - +// A Pulumi package for creating and managing Nobl9 resources package nobl9 diff --git a/sdk/go/nobl9/getAwsIamRoleExternalId.go b/sdk/go/nobl9/getAwsIamRoleExternalId.go new file mode 100644 index 0000000..e36fd11 --- /dev/null +++ b/sdk/go/nobl9/getAwsIamRoleExternalId.go @@ -0,0 +1,129 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package nobl9 + +import ( + "context" + "reflect" + + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Returns external ID and AWS account ID that can be used to create [cross-account IAM roles in AWS](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cross-account-iam-roles-new). +// +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.GetAwsIamRoleExternalId(ctx, &nobl9.GetAwsIamRoleExternalIdArgs{ +// Name: "my-datasource-name", +// }, nil) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` +func GetAwsIamRoleExternalId(ctx *pulumi.Context, args *GetAwsIamRoleExternalIdArgs, opts ...pulumi.InvokeOption) (*GetAwsIamRoleExternalIdResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv GetAwsIamRoleExternalIdResult + err := ctx.Invoke("nobl9:index/getAwsIamRoleExternalId:getAwsIamRoleExternalId", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +// A collection of arguments for invoking getAwsIamRoleExternalId. +type GetAwsIamRoleExternalIdArgs struct { + // Data source name + Name string `pulumi:"name"` +} + +// A collection of values returned by getAwsIamRoleExternalId. +type GetAwsIamRoleExternalIdResult struct { + // External ID + AccountId string `pulumi:"accountId"` + // Nobl9 AWS Account ID + ExternalId string `pulumi:"externalId"` + // The provider-assigned unique ID for this managed resource. + Id string `pulumi:"id"` + // Data source name + Name string `pulumi:"name"` +} + +func GetAwsIamRoleExternalIdOutput(ctx *pulumi.Context, args GetAwsIamRoleExternalIdOutputArgs, opts ...pulumi.InvokeOption) GetAwsIamRoleExternalIdResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetAwsIamRoleExternalIdResult, error) { + args := v.(GetAwsIamRoleExternalIdArgs) + r, err := GetAwsIamRoleExternalId(ctx, &args, opts...) + var s GetAwsIamRoleExternalIdResult + if r != nil { + s = *r + } + return s, err + }).(GetAwsIamRoleExternalIdResultOutput) +} + +// A collection of arguments for invoking getAwsIamRoleExternalId. +type GetAwsIamRoleExternalIdOutputArgs struct { + // Data source name + Name pulumi.StringInput `pulumi:"name"` +} + +func (GetAwsIamRoleExternalIdOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetAwsIamRoleExternalIdArgs)(nil)).Elem() +} + +// A collection of values returned by getAwsIamRoleExternalId. +type GetAwsIamRoleExternalIdResultOutput struct{ *pulumi.OutputState } + +func (GetAwsIamRoleExternalIdResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetAwsIamRoleExternalIdResult)(nil)).Elem() +} + +func (o GetAwsIamRoleExternalIdResultOutput) ToGetAwsIamRoleExternalIdResultOutput() GetAwsIamRoleExternalIdResultOutput { + return o +} + +func (o GetAwsIamRoleExternalIdResultOutput) ToGetAwsIamRoleExternalIdResultOutputWithContext(ctx context.Context) GetAwsIamRoleExternalIdResultOutput { + return o +} + +// External ID +func (o GetAwsIamRoleExternalIdResultOutput) AccountId() pulumi.StringOutput { + return o.ApplyT(func(v GetAwsIamRoleExternalIdResult) string { return v.AccountId }).(pulumi.StringOutput) +} + +// Nobl9 AWS Account ID +func (o GetAwsIamRoleExternalIdResultOutput) ExternalId() pulumi.StringOutput { + return o.ApplyT(func(v GetAwsIamRoleExternalIdResult) string { return v.ExternalId }).(pulumi.StringOutput) +} + +// The provider-assigned unique ID for this managed resource. +func (o GetAwsIamRoleExternalIdResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v GetAwsIamRoleExternalIdResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Data source name +func (o GetAwsIamRoleExternalIdResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GetAwsIamRoleExternalIdResult) string { return v.Name }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetAwsIamRoleExternalIdResultOutput{}) +} diff --git a/sdk/go/nobl9/init.go b/sdk/go/nobl9/init.go index 7fdc9b5..47ff02c 100644 --- a/sdk/go/nobl9/init.go +++ b/sdk/go/nobl9/init.go @@ -7,6 +7,7 @@ import ( "fmt" "github.com/blang/semver" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -44,6 +45,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &AlertPolicy{} case "nobl9:index/directAppdynamics:DirectAppdynamics": r = &DirectAppdynamics{} + case "nobl9:index/directAzureMonitor:DirectAzureMonitor": + r = &DirectAzureMonitor{} case "nobl9:index/directBigquery:DirectBigquery": r = &DirectBigquery{} case "nobl9:index/directCloudwatch:DirectCloudwatch": @@ -54,6 +57,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &DirectDynatrace{} case "nobl9:index/directGcm:DirectGcm": r = &DirectGcm{} + case "nobl9:index/directHoneycomb:DirectHoneycomb": + r = &DirectHoneycomb{} case "nobl9:index/directInfluxdb:DirectInfluxdb": r = &DirectInfluxdb{} case "nobl9:index/directInstana:DirectInstana": @@ -109,7 +114,10 @@ func (p *pkg) ConstructProvider(ctx *pulumi.Context, name, typ, urn string) (pul } func init() { - version, _ := PkgVersion() + version, err := internal.PkgVersion() + if err != nil { + version = semver.Version{Major: 1} + } pulumi.RegisterResourceModule( "nobl9", "index/agent", @@ -170,6 +178,11 @@ func init() { "index/directAppdynamics", &module{version}, ) + pulumi.RegisterResourceModule( + "nobl9", + "index/directAzureMonitor", + &module{version}, + ) pulumi.RegisterResourceModule( "nobl9", "index/directBigquery", @@ -195,6 +208,11 @@ func init() { "index/directGcm", &module{version}, ) + pulumi.RegisterResourceModule( + "nobl9", + "index/directHoneycomb", + &module{version}, + ) pulumi.RegisterResourceModule( "nobl9", "index/directInfluxdb", diff --git a/sdk/go/nobl9/internal/pulumiUtilities.go b/sdk/go/nobl9/internal/pulumiUtilities.go new file mode 100644 index 0000000..6f35c3d --- /dev/null +++ b/sdk/go/nobl9/internal/pulumiUtilities.go @@ -0,0 +1,184 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package internal + +import ( + "fmt" + "os" + "reflect" + "regexp" + "strconv" + "strings" + + "github.com/blang/semver" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +import ( + "github.com/pulumi/pulumi/sdk/v3/go/pulumi/internals" +) + +type envParser func(v string) interface{} + +func ParseEnvBool(v string) interface{} { + b, err := strconv.ParseBool(v) + if err != nil { + return nil + } + return b +} + +func ParseEnvInt(v string) interface{} { + i, err := strconv.ParseInt(v, 0, 0) + if err != nil { + return nil + } + return int(i) +} + +func ParseEnvFloat(v string) interface{} { + f, err := strconv.ParseFloat(v, 64) + if err != nil { + return nil + } + return f +} + +func ParseEnvStringArray(v string) interface{} { + var result pulumi.StringArray + for _, item := range strings.Split(v, ";") { + result = append(result, pulumi.String(item)) + } + return result +} + +func GetEnvOrDefault(def interface{}, parser envParser, vars ...string) interface{} { + for _, v := range vars { + if value, ok := os.LookupEnv(v); ok { + if parser != nil { + return parser(value) + } + return value + } + } + return def +} + +// PkgVersion uses reflection to determine the version of the current package. +// If a version cannot be determined, v1 will be assumed. The second return +// value is always nil. +func PkgVersion() (semver.Version, error) { + // emptyVersion defaults to v0.0.0 + if !SdkVersion.Equals(semver.Version{}) { + return SdkVersion, nil + } + type sentinal struct{} + pkgPath := reflect.TypeOf(sentinal{}).PkgPath() + re := regexp.MustCompile("^.*/pulumi-nobl9/sdk(/v\\d+)?") + if match := re.FindStringSubmatch(pkgPath); match != nil { + vStr := match[1] + if len(vStr) == 0 { // If the version capture group was empty, default to v1. + return semver.Version{Major: 1}, nil + } + return semver.MustParse(fmt.Sprintf("%s.0.0", vStr[2:])), nil + } + return semver.Version{Major: 1}, nil +} + +// isZero is a null safe check for if a value is it's types zero value. +func IsZero(v interface{}) bool { + if v == nil { + return true + } + return reflect.ValueOf(v).IsZero() +} + +func CallPlain( + ctx *pulumi.Context, + tok string, + args pulumi.Input, + output pulumi.Output, + self pulumi.Resource, + property string, + resultPtr reflect.Value, + errorPtr *error, + opts ...pulumi.InvokeOption, +) { + res, err := callPlainInner(ctx, tok, args, output, self, opts...) + if err != nil { + *errorPtr = err + return + } + + v := reflect.ValueOf(res) + + // extract res.property field if asked to do so + if property != "" { + v = v.FieldByName("Res") + } + + // return by setting the result pointer; this style of returns shortens the generated code without generics + resultPtr.Elem().Set(v) +} + +func callPlainInner( + ctx *pulumi.Context, + tok string, + args pulumi.Input, + output pulumi.Output, + self pulumi.Resource, + opts ...pulumi.InvokeOption, +) (any, error) { + o, err := ctx.Call(tok, args, output, self, opts...) + if err != nil { + return nil, err + } + + outputData, err := internals.UnsafeAwaitOutput(ctx.Context(), o) + if err != nil { + return nil, err + } + + // Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency. + known := outputData.Known + value := outputData.Value + secret := outputData.Secret + + problem := "" + if !known { + problem = "an unknown value" + } else if secret { + problem = "a secret value" + } + + if problem != "" { + return nil, fmt.Errorf("Plain resource method %q incorrectly returned %s. "+ + "This is an error in the provider, please report this to the provider developer.", + tok, problem) + } + + return value, nil +} + +// PkgResourceDefaultOpts provides package level defaults to pulumi.OptionResource. +func PkgResourceDefaultOpts(opts []pulumi.ResourceOption) []pulumi.ResourceOption { + defaults := []pulumi.ResourceOption{} + defaults = append(defaults, pulumi.PluginDownloadURL("github://api.github.com/piclemx/pulumi-nobl9")) + version := SdkVersion + if !version.Equals(semver.Version{}) { + defaults = append(defaults, pulumi.Version(version.String())) + } + return append(defaults, opts...) +} + +// PkgInvokeDefaultOpts provides package level defaults to pulumi.OptionInvoke. +func PkgInvokeDefaultOpts(opts []pulumi.InvokeOption) []pulumi.InvokeOption { + defaults := []pulumi.InvokeOption{} + defaults = append(defaults, pulumi.PluginDownloadURL("github://api.github.com/piclemx/pulumi-nobl9")) + version := SdkVersion + if !version.Equals(semver.Version{}) { + defaults = append(defaults, pulumi.Version(version.String())) + } + return append(defaults, opts...) +} diff --git a/sdk/go/nobl9/internal/pulumiVersion.go b/sdk/go/nobl9/internal/pulumiVersion.go new file mode 100644 index 0000000..d591687 --- /dev/null +++ b/sdk/go/nobl9/internal/pulumiVersion.go @@ -0,0 +1,11 @@ +// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package internal + +import ( + "github.com/blang/semver" +) + +var SdkVersion semver.Version = semver.Version{} +var pluginDownloadURL string = "" diff --git a/sdk/go/nobl9/project.go b/sdk/go/nobl9/project.go index 2be2631..ce6a1b6 100644 --- a/sdk/go/nobl9/project.go +++ b/sdk/go/nobl9/project.go @@ -7,6 +7,7 @@ import ( "context" "reflect" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -24,38 +25,40 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewProject(ctx, "this", &nobl9.ProjectArgs{ -// Description: pulumi.String("An example N9 Terraform project"), -// DisplayName: pulumi.String("My Project"), -// Labels: ProjectLabelArray{ -// &ProjectLabelArgs{ -// Key: pulumi.String("env"), -// Values: pulumi.StringArray{ -// pulumi.String("dev"), -// pulumi.String("prod"), -// }, -// }, -// &ProjectLabelArgs{ -// Key: pulumi.String("team"), -// Values: pulumi.StringArray{ -// pulumi.String("red"), -// }, -// }, -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewProject(ctx, "this", &nobl9.ProjectArgs{ +// Description: pulumi.String("An example N9 Terraform project"), +// DisplayName: pulumi.String("My Project"), +// Labels: nobl9.ProjectLabelArray{ +// &nobl9.ProjectLabelArgs{ +// Key: pulumi.String("env"), +// Values: pulumi.StringArray{ +// pulumi.String("dev"), +// pulumi.String("prod"), +// }, +// }, +// &nobl9.ProjectLabelArgs{ +// Key: pulumi.String("team"), +// Values: pulumi.StringArray{ +// pulumi.String("red"), +// }, +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Useful Links // @@ -82,7 +85,7 @@ func NewProject(ctx *pulumi.Context, args = &ProjectArgs{} } - opts = pkgResourceDefaultOpts(opts) + opts = internal.PkgResourceDefaultOpts(opts) var resource Project err := ctx.RegisterResource("nobl9:index/project:Project", name, args, &resource, opts...) if err != nil { @@ -179,7 +182,7 @@ func (i *Project) ToProjectOutputWithContext(ctx context.Context) ProjectOutput // ProjectArrayInput is an input type that accepts ProjectArray and ProjectArrayOutput values. // You can construct a concrete instance of `ProjectArrayInput` via: // -// ProjectArray{ ProjectArgs{...} } +// ProjectArray{ ProjectArgs{...} } type ProjectArrayInput interface { pulumi.Input @@ -204,7 +207,7 @@ func (i ProjectArray) ToProjectArrayOutputWithContext(ctx context.Context) Proje // ProjectMapInput is an input type that accepts ProjectMap and ProjectMapOutput values. // You can construct a concrete instance of `ProjectMapInput` via: // -// ProjectMap{ "key": ProjectArgs{...} } +// ProjectMap{ "key": ProjectArgs{...} } type ProjectMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/provider.go b/sdk/go/nobl9/provider.go index ef7f06b..62432ec 100644 --- a/sdk/go/nobl9/provider.go +++ b/sdk/go/nobl9/provider.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -32,9 +33,9 @@ type Provider struct { OktaOrgUrl pulumi.StringPtrOutput `pulumi:"oktaOrgUrl"` // Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that // contains resources managed by the Nobl9 Terraform provider. - Organization pulumi.StringOutput `pulumi:"organization"` + Organization pulumi.StringPtrOutput `pulumi:"organization"` // Nobl9 project used when importing resources. - Project pulumi.StringOutput `pulumi:"project"` + Project pulumi.StringPtrOutput `pulumi:"project"` } // NewProvider registers a new resource with the given unique name, arguments, and options. @@ -50,13 +51,14 @@ func NewProvider(ctx *pulumi.Context, if args.ClientSecret == nil { return nil, errors.New("invalid value for required argument 'ClientSecret'") } - if args.Organization == nil { - return nil, errors.New("invalid value for required argument 'Organization'") + if args.ClientSecret != nil { + args.ClientSecret = pulumi.ToSecret(args.ClientSecret).(pulumi.StringInput) } - if args.Project == nil { - return nil, errors.New("invalid value for required argument 'Project'") - } - opts = pkgResourceDefaultOpts(opts) + secrets := pulumi.AdditionalSecretOutputs([]string{ + "clientSecret", + }) + opts = append(opts, secrets) + opts = internal.PkgResourceDefaultOpts(opts) var resource Provider err := ctx.RegisterResource("pulumi:providers:nobl9", name, args, &resource, opts...) if err != nil { @@ -80,9 +82,9 @@ type providerArgs struct { OktaOrgUrl *string `pulumi:"oktaOrgUrl"` // Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that // contains resources managed by the Nobl9 Terraform provider. - Organization string `pulumi:"organization"` + Organization *string `pulumi:"organization"` // Nobl9 project used when importing resources. - Project string `pulumi:"project"` + Project *string `pulumi:"project"` } // The set of arguments for constructing a Provider resource. @@ -101,9 +103,9 @@ type ProviderArgs struct { OktaOrgUrl pulumi.StringPtrInput // Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that // contains resources managed by the Nobl9 Terraform provider. - Organization pulumi.StringInput + Organization pulumi.StringPtrInput // Nobl9 project used when importing resources. - Project pulumi.StringInput + Project pulumi.StringPtrInput } func (ProviderArgs) ElementType() reflect.Type { @@ -172,13 +174,13 @@ func (o ProviderOutput) OktaOrgUrl() pulumi.StringPtrOutput { // Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that // contains resources managed by the Nobl9 Terraform provider. -func (o ProviderOutput) Organization() pulumi.StringOutput { - return o.ApplyT(func(v *Provider) pulumi.StringOutput { return v.Organization }).(pulumi.StringOutput) +func (o ProviderOutput) Organization() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.Organization }).(pulumi.StringPtrOutput) } // Nobl9 project used when importing resources. -func (o ProviderOutput) Project() pulumi.StringOutput { - return o.ApplyT(func(v *Provider) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput) +func (o ProviderOutput) Project() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Provider) pulumi.StringPtrOutput { return v.Project }).(pulumi.StringPtrOutput) } func init() { diff --git a/sdk/go/nobl9/pulumi-plugin.json b/sdk/go/nobl9/pulumi-plugin.json index 44404ee..245a7ef 100644 --- a/sdk/go/nobl9/pulumi-plugin.json +++ b/sdk/go/nobl9/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "nobl9", - "server": "https://github.com/piclemx/pulumi-nobl9/releases/" + "server": "github://api.github.com/piclemx/pulumi-nobl9" } diff --git a/sdk/go/nobl9/pulumiTypes.go b/sdk/go/nobl9/pulumiTypes.go index eef1ae8..50bf577 100644 --- a/sdk/go/nobl9/pulumiTypes.go +++ b/sdk/go/nobl9/pulumiTypes.go @@ -7,9 +7,12 @@ import ( "context" "reflect" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) +var _ = internal.GetEnvOrDefault + type AgentAmazonPrometheusConfig struct { // AWS region e.g., eu-central-1 Region string `pulumi:"region"` @@ -20,7 +23,7 @@ type AgentAmazonPrometheusConfig struct { // AgentAmazonPrometheusConfigInput is an input type that accepts AgentAmazonPrometheusConfigArgs and AgentAmazonPrometheusConfigOutput values. // You can construct a concrete instance of `AgentAmazonPrometheusConfigInput` via: // -// AgentAmazonPrometheusConfigArgs{...} +// AgentAmazonPrometheusConfigArgs{...} type AgentAmazonPrometheusConfigInput interface { pulumi.Input @@ -58,11 +61,11 @@ func (i AgentAmazonPrometheusConfigArgs) ToAgentAmazonPrometheusConfigPtrOutputW // AgentAmazonPrometheusConfigPtrInput is an input type that accepts AgentAmazonPrometheusConfigArgs, AgentAmazonPrometheusConfigPtr and AgentAmazonPrometheusConfigPtrOutput values. // You can construct a concrete instance of `AgentAmazonPrometheusConfigPtrInput` via: // -// AgentAmazonPrometheusConfigArgs{...} +// AgentAmazonPrometheusConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentAmazonPrometheusConfigPtrInput interface { pulumi.Input @@ -174,7 +177,7 @@ type AgentAppdynamicsConfig struct { // AgentAppdynamicsConfigInput is an input type that accepts AgentAppdynamicsConfigArgs and AgentAppdynamicsConfigOutput values. // You can construct a concrete instance of `AgentAppdynamicsConfigInput` via: // -// AgentAppdynamicsConfigArgs{...} +// AgentAppdynamicsConfigArgs{...} type AgentAppdynamicsConfigInput interface { pulumi.Input @@ -210,11 +213,11 @@ func (i AgentAppdynamicsConfigArgs) ToAgentAppdynamicsConfigPtrOutputWithContext // AgentAppdynamicsConfigPtrInput is an input type that accepts AgentAppdynamicsConfigArgs, AgentAppdynamicsConfigPtr and AgentAppdynamicsConfigPtrOutput values. // You can construct a concrete instance of `AgentAppdynamicsConfigPtrInput` via: // -// AgentAppdynamicsConfigArgs{...} +// AgentAppdynamicsConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentAppdynamicsConfigPtrInput interface { pulumi.Input @@ -303,13 +306,150 @@ func (o AgentAppdynamicsConfigPtrOutput) Url() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type AgentAzureMonitorConfig struct { + // Azure Tenant Id. + TenantId string `pulumi:"tenantId"` +} + +// AgentAzureMonitorConfigInput is an input type that accepts AgentAzureMonitorConfigArgs and AgentAzureMonitorConfigOutput values. +// You can construct a concrete instance of `AgentAzureMonitorConfigInput` via: +// +// AgentAzureMonitorConfigArgs{...} +type AgentAzureMonitorConfigInput interface { + pulumi.Input + + ToAgentAzureMonitorConfigOutput() AgentAzureMonitorConfigOutput + ToAgentAzureMonitorConfigOutputWithContext(context.Context) AgentAzureMonitorConfigOutput +} + +type AgentAzureMonitorConfigArgs struct { + // Azure Tenant Id. + TenantId pulumi.StringInput `pulumi:"tenantId"` +} + +func (AgentAzureMonitorConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentAzureMonitorConfig)(nil)).Elem() +} + +func (i AgentAzureMonitorConfigArgs) ToAgentAzureMonitorConfigOutput() AgentAzureMonitorConfigOutput { + return i.ToAgentAzureMonitorConfigOutputWithContext(context.Background()) +} + +func (i AgentAzureMonitorConfigArgs) ToAgentAzureMonitorConfigOutputWithContext(ctx context.Context) AgentAzureMonitorConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAzureMonitorConfigOutput) +} + +func (i AgentAzureMonitorConfigArgs) ToAgentAzureMonitorConfigPtrOutput() AgentAzureMonitorConfigPtrOutput { + return i.ToAgentAzureMonitorConfigPtrOutputWithContext(context.Background()) +} + +func (i AgentAzureMonitorConfigArgs) ToAgentAzureMonitorConfigPtrOutputWithContext(ctx context.Context) AgentAzureMonitorConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAzureMonitorConfigOutput).ToAgentAzureMonitorConfigPtrOutputWithContext(ctx) +} + +// AgentAzureMonitorConfigPtrInput is an input type that accepts AgentAzureMonitorConfigArgs, AgentAzureMonitorConfigPtr and AgentAzureMonitorConfigPtrOutput values. +// You can construct a concrete instance of `AgentAzureMonitorConfigPtrInput` via: +// +// AgentAzureMonitorConfigArgs{...} +// +// or: +// +// nil +type AgentAzureMonitorConfigPtrInput interface { + pulumi.Input + + ToAgentAzureMonitorConfigPtrOutput() AgentAzureMonitorConfigPtrOutput + ToAgentAzureMonitorConfigPtrOutputWithContext(context.Context) AgentAzureMonitorConfigPtrOutput +} + +type agentAzureMonitorConfigPtrType AgentAzureMonitorConfigArgs + +func AgentAzureMonitorConfigPtr(v *AgentAzureMonitorConfigArgs) AgentAzureMonitorConfigPtrInput { + return (*agentAzureMonitorConfigPtrType)(v) +} + +func (*agentAzureMonitorConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentAzureMonitorConfig)(nil)).Elem() +} + +func (i *agentAzureMonitorConfigPtrType) ToAgentAzureMonitorConfigPtrOutput() AgentAzureMonitorConfigPtrOutput { + return i.ToAgentAzureMonitorConfigPtrOutputWithContext(context.Background()) +} + +func (i *agentAzureMonitorConfigPtrType) ToAgentAzureMonitorConfigPtrOutputWithContext(ctx context.Context) AgentAzureMonitorConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentAzureMonitorConfigPtrOutput) +} + +type AgentAzureMonitorConfigOutput struct{ *pulumi.OutputState } + +func (AgentAzureMonitorConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentAzureMonitorConfig)(nil)).Elem() +} + +func (o AgentAzureMonitorConfigOutput) ToAgentAzureMonitorConfigOutput() AgentAzureMonitorConfigOutput { + return o +} + +func (o AgentAzureMonitorConfigOutput) ToAgentAzureMonitorConfigOutputWithContext(ctx context.Context) AgentAzureMonitorConfigOutput { + return o +} + +func (o AgentAzureMonitorConfigOutput) ToAgentAzureMonitorConfigPtrOutput() AgentAzureMonitorConfigPtrOutput { + return o.ToAgentAzureMonitorConfigPtrOutputWithContext(context.Background()) +} + +func (o AgentAzureMonitorConfigOutput) ToAgentAzureMonitorConfigPtrOutputWithContext(ctx context.Context) AgentAzureMonitorConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentAzureMonitorConfig) *AgentAzureMonitorConfig { + return &v + }).(AgentAzureMonitorConfigPtrOutput) +} + +// Azure Tenant Id. +func (o AgentAzureMonitorConfigOutput) TenantId() pulumi.StringOutput { + return o.ApplyT(func(v AgentAzureMonitorConfig) string { return v.TenantId }).(pulumi.StringOutput) +} + +type AgentAzureMonitorConfigPtrOutput struct{ *pulumi.OutputState } + +func (AgentAzureMonitorConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentAzureMonitorConfig)(nil)).Elem() +} + +func (o AgentAzureMonitorConfigPtrOutput) ToAgentAzureMonitorConfigPtrOutput() AgentAzureMonitorConfigPtrOutput { + return o +} + +func (o AgentAzureMonitorConfigPtrOutput) ToAgentAzureMonitorConfigPtrOutputWithContext(ctx context.Context) AgentAzureMonitorConfigPtrOutput { + return o +} + +func (o AgentAzureMonitorConfigPtrOutput) Elem() AgentAzureMonitorConfigOutput { + return o.ApplyT(func(v *AgentAzureMonitorConfig) AgentAzureMonitorConfig { + if v != nil { + return *v + } + var ret AgentAzureMonitorConfig + return ret + }).(AgentAzureMonitorConfigOutput) +} + +// Azure Tenant Id. +func (o AgentAzureMonitorConfigPtrOutput) TenantId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentAzureMonitorConfig) *string { + if v == nil { + return nil + } + return &v.TenantId + }).(pulumi.StringPtrOutput) +} + type AgentBigqueryConfig struct { } // AgentBigqueryConfigInput is an input type that accepts AgentBigqueryConfigArgs and AgentBigqueryConfigOutput values. // You can construct a concrete instance of `AgentBigqueryConfigInput` via: // -// AgentBigqueryConfigArgs{...} +// AgentBigqueryConfigArgs{...} type AgentBigqueryConfigInput interface { pulumi.Input @@ -343,11 +483,11 @@ func (i AgentBigqueryConfigArgs) ToAgentBigqueryConfigPtrOutputWithContext(ctx c // AgentBigqueryConfigPtrInput is an input type that accepts AgentBigqueryConfigArgs, AgentBigqueryConfigPtr and AgentBigqueryConfigPtrOutput values. // You can construct a concrete instance of `AgentBigqueryConfigPtrInput` via: // -// AgentBigqueryConfigArgs{...} +// AgentBigqueryConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentBigqueryConfigPtrInput interface { pulumi.Input @@ -427,7 +567,7 @@ type AgentCloudwatchConfig struct { // AgentCloudwatchConfigInput is an input type that accepts AgentCloudwatchConfigArgs and AgentCloudwatchConfigOutput values. // You can construct a concrete instance of `AgentCloudwatchConfigInput` via: // -// AgentCloudwatchConfigArgs{...} +// AgentCloudwatchConfigArgs{...} type AgentCloudwatchConfigInput interface { pulumi.Input @@ -461,11 +601,11 @@ func (i AgentCloudwatchConfigArgs) ToAgentCloudwatchConfigPtrOutputWithContext(c // AgentCloudwatchConfigPtrInput is an input type that accepts AgentCloudwatchConfigArgs, AgentCloudwatchConfigPtr and AgentCloudwatchConfigPtrOutput values. // You can construct a concrete instance of `AgentCloudwatchConfigPtrInput` via: // -// AgentCloudwatchConfigArgs{...} +// AgentCloudwatchConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentCloudwatchConfigPtrInput interface { pulumi.Input @@ -547,7 +687,7 @@ type AgentDatadogConfig struct { // AgentDatadogConfigInput is an input type that accepts AgentDatadogConfigArgs and AgentDatadogConfigOutput values. // You can construct a concrete instance of `AgentDatadogConfigInput` via: // -// AgentDatadogConfigArgs{...} +// AgentDatadogConfigArgs{...} type AgentDatadogConfigInput interface { pulumi.Input @@ -583,11 +723,11 @@ func (i AgentDatadogConfigArgs) ToAgentDatadogConfigPtrOutputWithContext(ctx con // AgentDatadogConfigPtrInput is an input type that accepts AgentDatadogConfigArgs, AgentDatadogConfigPtr and AgentDatadogConfigPtrOutput values. // You can construct a concrete instance of `AgentDatadogConfigPtrInput` via: // -// AgentDatadogConfigArgs{...} +// AgentDatadogConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentDatadogConfigPtrInput interface { pulumi.Input @@ -684,7 +824,7 @@ type AgentDynatraceConfig struct { // AgentDynatraceConfigInput is an input type that accepts AgentDynatraceConfigArgs and AgentDynatraceConfigOutput values. // You can construct a concrete instance of `AgentDynatraceConfigInput` via: // -// AgentDynatraceConfigArgs{...} +// AgentDynatraceConfigArgs{...} type AgentDynatraceConfigInput interface { pulumi.Input @@ -720,11 +860,11 @@ func (i AgentDynatraceConfigArgs) ToAgentDynatraceConfigPtrOutputWithContext(ctx // AgentDynatraceConfigPtrInput is an input type that accepts AgentDynatraceConfigArgs, AgentDynatraceConfigPtr and AgentDynatraceConfigPtrOutput values. // You can construct a concrete instance of `AgentDynatraceConfigPtrInput` via: // -// AgentDynatraceConfigArgs{...} +// AgentDynatraceConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentDynatraceConfigPtrInput interface { pulumi.Input @@ -821,7 +961,7 @@ type AgentElasticsearchConfig struct { // AgentElasticsearchConfigInput is an input type that accepts AgentElasticsearchConfigArgs and AgentElasticsearchConfigOutput values. // You can construct a concrete instance of `AgentElasticsearchConfigInput` via: // -// AgentElasticsearchConfigArgs{...} +// AgentElasticsearchConfigArgs{...} type AgentElasticsearchConfigInput interface { pulumi.Input @@ -857,11 +997,11 @@ func (i AgentElasticsearchConfigArgs) ToAgentElasticsearchConfigPtrOutputWithCon // AgentElasticsearchConfigPtrInput is an input type that accepts AgentElasticsearchConfigArgs, AgentElasticsearchConfigPtr and AgentElasticsearchConfigPtrOutput values. // You can construct a concrete instance of `AgentElasticsearchConfigPtrInput` via: // -// AgentElasticsearchConfigArgs{...} +// AgentElasticsearchConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentElasticsearchConfigPtrInput interface { pulumi.Input @@ -956,7 +1096,7 @@ type AgentGcmConfig struct { // AgentGcmConfigInput is an input type that accepts AgentGcmConfigArgs and AgentGcmConfigOutput values. // You can construct a concrete instance of `AgentGcmConfigInput` via: // -// AgentGcmConfigArgs{...} +// AgentGcmConfigArgs{...} type AgentGcmConfigInput interface { pulumi.Input @@ -990,11 +1130,11 @@ func (i AgentGcmConfigArgs) ToAgentGcmConfigPtrOutputWithContext(ctx context.Con // AgentGcmConfigPtrInput is an input type that accepts AgentGcmConfigArgs, AgentGcmConfigPtr and AgentGcmConfigPtrOutput values. // You can construct a concrete instance of `AgentGcmConfigPtrInput` via: // -// AgentGcmConfigArgs{...} +// AgentGcmConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentGcmConfigPtrInput interface { pulumi.Input @@ -1076,7 +1216,7 @@ type AgentGrafanaLokiConfig struct { // AgentGrafanaLokiConfigInput is an input type that accepts AgentGrafanaLokiConfigArgs and AgentGrafanaLokiConfigOutput values. // You can construct a concrete instance of `AgentGrafanaLokiConfigInput` via: // -// AgentGrafanaLokiConfigArgs{...} +// AgentGrafanaLokiConfigArgs{...} type AgentGrafanaLokiConfigInput interface { pulumi.Input @@ -1112,11 +1252,11 @@ func (i AgentGrafanaLokiConfigArgs) ToAgentGrafanaLokiConfigPtrOutputWithContext // AgentGrafanaLokiConfigPtrInput is an input type that accepts AgentGrafanaLokiConfigArgs, AgentGrafanaLokiConfigPtr and AgentGrafanaLokiConfigPtrOutput values. // You can construct a concrete instance of `AgentGrafanaLokiConfigPtrInput` via: // -// AgentGrafanaLokiConfigArgs{...} +// AgentGrafanaLokiConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentGrafanaLokiConfigPtrInput interface { pulumi.Input @@ -1213,7 +1353,7 @@ type AgentGraphiteConfig struct { // AgentGraphiteConfigInput is an input type that accepts AgentGraphiteConfigArgs and AgentGraphiteConfigOutput values. // You can construct a concrete instance of `AgentGraphiteConfigInput` via: // -// AgentGraphiteConfigArgs{...} +// AgentGraphiteConfigArgs{...} type AgentGraphiteConfigInput interface { pulumi.Input @@ -1249,11 +1389,11 @@ func (i AgentGraphiteConfigArgs) ToAgentGraphiteConfigPtrOutputWithContext(ctx c // AgentGraphiteConfigPtrInput is an input type that accepts AgentGraphiteConfigArgs, AgentGraphiteConfigPtr and AgentGraphiteConfigPtrOutput values. // You can construct a concrete instance of `AgentGraphiteConfigPtrInput` via: // -// AgentGraphiteConfigArgs{...} +// AgentGraphiteConfigArgs{...} // -// or: +// or: // -// nil +// nil type AgentGraphiteConfigPtrInput interface { pulumi.Input @@ -1342,703 +1482,624 @@ func (o AgentGraphiteConfigPtrOutput) Url() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -type AgentInfluxdbConfig struct { - // API URL endpoint to the InfluxDB's instance. - Url string `pulumi:"url"` +type AgentHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []AgentHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []AgentHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` } -// AgentInfluxdbConfigInput is an input type that accepts AgentInfluxdbConfigArgs and AgentInfluxdbConfigOutput values. -// You can construct a concrete instance of `AgentInfluxdbConfigInput` via: +// AgentHistoricalDataRetrievalInput is an input type that accepts AgentHistoricalDataRetrievalArgs and AgentHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `AgentHistoricalDataRetrievalInput` via: // -// AgentInfluxdbConfigArgs{...} -type AgentInfluxdbConfigInput interface { +// AgentHistoricalDataRetrievalArgs{...} +type AgentHistoricalDataRetrievalInput interface { pulumi.Input - ToAgentInfluxdbConfigOutput() AgentInfluxdbConfigOutput - ToAgentInfluxdbConfigOutputWithContext(context.Context) AgentInfluxdbConfigOutput + ToAgentHistoricalDataRetrievalOutput() AgentHistoricalDataRetrievalOutput + ToAgentHistoricalDataRetrievalOutputWithContext(context.Context) AgentHistoricalDataRetrievalOutput } -type AgentInfluxdbConfigArgs struct { - // API URL endpoint to the InfluxDB's instance. - Url pulumi.StringInput `pulumi:"url"` +type AgentHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations AgentHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations AgentHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` } -func (AgentInfluxdbConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentInfluxdbConfig)(nil)).Elem() +func (AgentHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentHistoricalDataRetrieval)(nil)).Elem() } -func (i AgentInfluxdbConfigArgs) ToAgentInfluxdbConfigOutput() AgentInfluxdbConfigOutput { - return i.ToAgentInfluxdbConfigOutputWithContext(context.Background()) +func (i AgentHistoricalDataRetrievalArgs) ToAgentHistoricalDataRetrievalOutput() AgentHistoricalDataRetrievalOutput { + return i.ToAgentHistoricalDataRetrievalOutputWithContext(context.Background()) } -func (i AgentInfluxdbConfigArgs) ToAgentInfluxdbConfigOutputWithContext(ctx context.Context) AgentInfluxdbConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentInfluxdbConfigOutput) +func (i AgentHistoricalDataRetrievalArgs) ToAgentHistoricalDataRetrievalOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHistoricalDataRetrievalOutput) } -func (i AgentInfluxdbConfigArgs) ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput { - return i.ToAgentInfluxdbConfigPtrOutputWithContext(context.Background()) +func (i AgentHistoricalDataRetrievalArgs) ToAgentHistoricalDataRetrievalPtrOutput() AgentHistoricalDataRetrievalPtrOutput { + return i.ToAgentHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (i AgentInfluxdbConfigArgs) ToAgentInfluxdbConfigPtrOutputWithContext(ctx context.Context) AgentInfluxdbConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentInfluxdbConfigOutput).ToAgentInfluxdbConfigPtrOutputWithContext(ctx) +func (i AgentHistoricalDataRetrievalArgs) ToAgentHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHistoricalDataRetrievalOutput).ToAgentHistoricalDataRetrievalPtrOutputWithContext(ctx) } -// AgentInfluxdbConfigPtrInput is an input type that accepts AgentInfluxdbConfigArgs, AgentInfluxdbConfigPtr and AgentInfluxdbConfigPtrOutput values. -// You can construct a concrete instance of `AgentInfluxdbConfigPtrInput` via: +// AgentHistoricalDataRetrievalPtrInput is an input type that accepts AgentHistoricalDataRetrievalArgs, AgentHistoricalDataRetrievalPtr and AgentHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `AgentHistoricalDataRetrievalPtrInput` via: // -// AgentInfluxdbConfigArgs{...} +// AgentHistoricalDataRetrievalArgs{...} // -// or: +// or: // -// nil -type AgentInfluxdbConfigPtrInput interface { +// nil +type AgentHistoricalDataRetrievalPtrInput interface { pulumi.Input - ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput - ToAgentInfluxdbConfigPtrOutputWithContext(context.Context) AgentInfluxdbConfigPtrOutput + ToAgentHistoricalDataRetrievalPtrOutput() AgentHistoricalDataRetrievalPtrOutput + ToAgentHistoricalDataRetrievalPtrOutputWithContext(context.Context) AgentHistoricalDataRetrievalPtrOutput } -type agentInfluxdbConfigPtrType AgentInfluxdbConfigArgs +type agentHistoricalDataRetrievalPtrType AgentHistoricalDataRetrievalArgs -func AgentInfluxdbConfigPtr(v *AgentInfluxdbConfigArgs) AgentInfluxdbConfigPtrInput { - return (*agentInfluxdbConfigPtrType)(v) +func AgentHistoricalDataRetrievalPtr(v *AgentHistoricalDataRetrievalArgs) AgentHistoricalDataRetrievalPtrInput { + return (*agentHistoricalDataRetrievalPtrType)(v) } -func (*agentInfluxdbConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentInfluxdbConfig)(nil)).Elem() +func (*agentHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentHistoricalDataRetrieval)(nil)).Elem() } -func (i *agentInfluxdbConfigPtrType) ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput { - return i.ToAgentInfluxdbConfigPtrOutputWithContext(context.Background()) +func (i *agentHistoricalDataRetrievalPtrType) ToAgentHistoricalDataRetrievalPtrOutput() AgentHistoricalDataRetrievalPtrOutput { + return i.ToAgentHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (i *agentInfluxdbConfigPtrType) ToAgentInfluxdbConfigPtrOutputWithContext(ctx context.Context) AgentInfluxdbConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentInfluxdbConfigPtrOutput) +func (i *agentHistoricalDataRetrievalPtrType) ToAgentHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHistoricalDataRetrievalPtrOutput) } -type AgentInfluxdbConfigOutput struct{ *pulumi.OutputState } +type AgentHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } -func (AgentInfluxdbConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentInfluxdbConfig)(nil)).Elem() +func (AgentHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentHistoricalDataRetrieval)(nil)).Elem() } -func (o AgentInfluxdbConfigOutput) ToAgentInfluxdbConfigOutput() AgentInfluxdbConfigOutput { +func (o AgentHistoricalDataRetrievalOutput) ToAgentHistoricalDataRetrievalOutput() AgentHistoricalDataRetrievalOutput { return o } -func (o AgentInfluxdbConfigOutput) ToAgentInfluxdbConfigOutputWithContext(ctx context.Context) AgentInfluxdbConfigOutput { +func (o AgentHistoricalDataRetrievalOutput) ToAgentHistoricalDataRetrievalOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalOutput { return o } -func (o AgentInfluxdbConfigOutput) ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput { - return o.ToAgentInfluxdbConfigPtrOutputWithContext(context.Background()) +func (o AgentHistoricalDataRetrievalOutput) ToAgentHistoricalDataRetrievalPtrOutput() AgentHistoricalDataRetrievalPtrOutput { + return o.ToAgentHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (o AgentInfluxdbConfigOutput) ToAgentInfluxdbConfigPtrOutputWithContext(ctx context.Context) AgentInfluxdbConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentInfluxdbConfig) *AgentInfluxdbConfig { +func (o AgentHistoricalDataRetrievalOutput) ToAgentHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentHistoricalDataRetrieval) *AgentHistoricalDataRetrieval { return &v - }).(AgentInfluxdbConfigPtrOutput) + }).(AgentHistoricalDataRetrievalPtrOutput) } -// API URL endpoint to the InfluxDB's instance. -func (o AgentInfluxdbConfigOutput) Url() pulumi.StringOutput { - return o.ApplyT(func(v AgentInfluxdbConfig) string { return v.Url }).(pulumi.StringOutput) +// Used by default for any SLOs connected to this data source. +func (o AgentHistoricalDataRetrievalOutput) DefaultDurations() AgentHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v AgentHistoricalDataRetrieval) []AgentHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(AgentHistoricalDataRetrievalDefaultDurationArrayOutput) } -type AgentInfluxdbConfigPtrOutput struct{ *pulumi.OutputState } +// Defines the maximum period for which data can be retrieved. +func (o AgentHistoricalDataRetrievalOutput) MaxDurations() AgentHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v AgentHistoricalDataRetrieval) []AgentHistoricalDataRetrievalMaxDuration { return v.MaxDurations }).(AgentHistoricalDataRetrievalMaxDurationArrayOutput) +} -func (AgentInfluxdbConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentInfluxdbConfig)(nil)).Elem() +type AgentHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } + +func (AgentHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentHistoricalDataRetrieval)(nil)).Elem() } -func (o AgentInfluxdbConfigPtrOutput) ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput { +func (o AgentHistoricalDataRetrievalPtrOutput) ToAgentHistoricalDataRetrievalPtrOutput() AgentHistoricalDataRetrievalPtrOutput { return o } -func (o AgentInfluxdbConfigPtrOutput) ToAgentInfluxdbConfigPtrOutputWithContext(ctx context.Context) AgentInfluxdbConfigPtrOutput { +func (o AgentHistoricalDataRetrievalPtrOutput) ToAgentHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalPtrOutput { return o } -func (o AgentInfluxdbConfigPtrOutput) Elem() AgentInfluxdbConfigOutput { - return o.ApplyT(func(v *AgentInfluxdbConfig) AgentInfluxdbConfig { +func (o AgentHistoricalDataRetrievalPtrOutput) Elem() AgentHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *AgentHistoricalDataRetrieval) AgentHistoricalDataRetrieval { if v != nil { return *v } - var ret AgentInfluxdbConfig + var ret AgentHistoricalDataRetrieval return ret - }).(AgentInfluxdbConfigOutput) + }).(AgentHistoricalDataRetrievalOutput) } -// API URL endpoint to the InfluxDB's instance. -func (o AgentInfluxdbConfigPtrOutput) Url() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentInfluxdbConfig) *string { +// Used by default for any SLOs connected to this data source. +func (o AgentHistoricalDataRetrievalPtrOutput) DefaultDurations() AgentHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *AgentHistoricalDataRetrieval) []AgentHistoricalDataRetrievalDefaultDuration { if v == nil { return nil } - return &v.Url - }).(pulumi.StringPtrOutput) + return v.DefaultDurations + }).(AgentHistoricalDataRetrievalDefaultDurationArrayOutput) } -type AgentInstanaConfig struct { - // API URL endpoint to the InfluxDB's instance. - Url string `pulumi:"url"` +// Defines the maximum period for which data can be retrieved. +func (o AgentHistoricalDataRetrievalPtrOutput) MaxDurations() AgentHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *AgentHistoricalDataRetrieval) []AgentHistoricalDataRetrievalMaxDuration { + if v == nil { + return nil + } + return v.MaxDurations + }).(AgentHistoricalDataRetrievalMaxDurationArrayOutput) } -// AgentInstanaConfigInput is an input type that accepts AgentInstanaConfigArgs and AgentInstanaConfigOutput values. -// You can construct a concrete instance of `AgentInstanaConfigInput` via: -// -// AgentInstanaConfigArgs{...} -type AgentInstanaConfigInput interface { - pulumi.Input - - ToAgentInstanaConfigOutput() AgentInstanaConfigOutput - ToAgentInstanaConfigOutputWithContext(context.Context) AgentInstanaConfigOutput +type AgentHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` } -type AgentInstanaConfigArgs struct { - // API URL endpoint to the InfluxDB's instance. - Url pulumi.StringInput `pulumi:"url"` -} +// AgentHistoricalDataRetrievalDefaultDurationInput is an input type that accepts AgentHistoricalDataRetrievalDefaultDurationArgs and AgentHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `AgentHistoricalDataRetrievalDefaultDurationInput` via: +// +// AgentHistoricalDataRetrievalDefaultDurationArgs{...} +type AgentHistoricalDataRetrievalDefaultDurationInput interface { + pulumi.Input -func (AgentInstanaConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentInstanaConfig)(nil)).Elem() + ToAgentHistoricalDataRetrievalDefaultDurationOutput() AgentHistoricalDataRetrievalDefaultDurationOutput + ToAgentHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) AgentHistoricalDataRetrievalDefaultDurationOutput } -func (i AgentInstanaConfigArgs) ToAgentInstanaConfigOutput() AgentInstanaConfigOutput { - return i.ToAgentInstanaConfigOutputWithContext(context.Background()) +type AgentHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` } -func (i AgentInstanaConfigArgs) ToAgentInstanaConfigOutputWithContext(ctx context.Context) AgentInstanaConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentInstanaConfigOutput) +func (AgentHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (i AgentInstanaConfigArgs) ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput { - return i.ToAgentInstanaConfigPtrOutputWithContext(context.Background()) +func (i AgentHistoricalDataRetrievalDefaultDurationArgs) ToAgentHistoricalDataRetrievalDefaultDurationOutput() AgentHistoricalDataRetrievalDefaultDurationOutput { + return i.ToAgentHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) } -func (i AgentInstanaConfigArgs) ToAgentInstanaConfigPtrOutputWithContext(ctx context.Context) AgentInstanaConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentInstanaConfigOutput).ToAgentInstanaConfigPtrOutputWithContext(ctx) +func (i AgentHistoricalDataRetrievalDefaultDurationArgs) ToAgentHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHistoricalDataRetrievalDefaultDurationOutput) } -// AgentInstanaConfigPtrInput is an input type that accepts AgentInstanaConfigArgs, AgentInstanaConfigPtr and AgentInstanaConfigPtrOutput values. -// You can construct a concrete instance of `AgentInstanaConfigPtrInput` via: -// -// AgentInstanaConfigArgs{...} -// -// or: +// AgentHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts AgentHistoricalDataRetrievalDefaultDurationArray and AgentHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `AgentHistoricalDataRetrievalDefaultDurationArrayInput` via: // -// nil -type AgentInstanaConfigPtrInput interface { +// AgentHistoricalDataRetrievalDefaultDurationArray{ AgentHistoricalDataRetrievalDefaultDurationArgs{...} } +type AgentHistoricalDataRetrievalDefaultDurationArrayInput interface { pulumi.Input - ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput - ToAgentInstanaConfigPtrOutputWithContext(context.Context) AgentInstanaConfigPtrOutput + ToAgentHistoricalDataRetrievalDefaultDurationArrayOutput() AgentHistoricalDataRetrievalDefaultDurationArrayOutput + ToAgentHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) AgentHistoricalDataRetrievalDefaultDurationArrayOutput } -type agentInstanaConfigPtrType AgentInstanaConfigArgs - -func AgentInstanaConfigPtr(v *AgentInstanaConfigArgs) AgentInstanaConfigPtrInput { - return (*agentInstanaConfigPtrType)(v) -} +type AgentHistoricalDataRetrievalDefaultDurationArray []AgentHistoricalDataRetrievalDefaultDurationInput -func (*agentInstanaConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentInstanaConfig)(nil)).Elem() +func (AgentHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]AgentHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (i *agentInstanaConfigPtrType) ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput { - return i.ToAgentInstanaConfigPtrOutputWithContext(context.Background()) +func (i AgentHistoricalDataRetrievalDefaultDurationArray) ToAgentHistoricalDataRetrievalDefaultDurationArrayOutput() AgentHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToAgentHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) } -func (i *agentInstanaConfigPtrType) ToAgentInstanaConfigPtrOutputWithContext(ctx context.Context) AgentInstanaConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentInstanaConfigPtrOutput) +func (i AgentHistoricalDataRetrievalDefaultDurationArray) ToAgentHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHistoricalDataRetrievalDefaultDurationArrayOutput) } -type AgentInstanaConfigOutput struct{ *pulumi.OutputState } +type AgentHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } -func (AgentInstanaConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentInstanaConfig)(nil)).Elem() +func (AgentHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (o AgentInstanaConfigOutput) ToAgentInstanaConfigOutput() AgentInstanaConfigOutput { +func (o AgentHistoricalDataRetrievalDefaultDurationOutput) ToAgentHistoricalDataRetrievalDefaultDurationOutput() AgentHistoricalDataRetrievalDefaultDurationOutput { return o } -func (o AgentInstanaConfigOutput) ToAgentInstanaConfigOutputWithContext(ctx context.Context) AgentInstanaConfigOutput { +func (o AgentHistoricalDataRetrievalDefaultDurationOutput) ToAgentHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalDefaultDurationOutput { return o } -func (o AgentInstanaConfigOutput) ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput { - return o.ToAgentInstanaConfigPtrOutputWithContext(context.Background()) -} - -func (o AgentInstanaConfigOutput) ToAgentInstanaConfigPtrOutputWithContext(ctx context.Context) AgentInstanaConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentInstanaConfig) *AgentInstanaConfig { - return &v - }).(AgentInstanaConfigPtrOutput) +// Must be one of Minute, Hour, or Day. +func (o AgentHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v AgentHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) } -// API URL endpoint to the InfluxDB's instance. -func (o AgentInstanaConfigOutput) Url() pulumi.StringOutput { - return o.ApplyT(func(v AgentInstanaConfig) string { return v.Url }).(pulumi.StringOutput) +// Must be an integer greater than or equal to 0. +func (o AgentHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v AgentHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) } -type AgentInstanaConfigPtrOutput struct{ *pulumi.OutputState } +type AgentHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } -func (AgentInstanaConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentInstanaConfig)(nil)).Elem() +func (AgentHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]AgentHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (o AgentInstanaConfigPtrOutput) ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput { +func (o AgentHistoricalDataRetrievalDefaultDurationArrayOutput) ToAgentHistoricalDataRetrievalDefaultDurationArrayOutput() AgentHistoricalDataRetrievalDefaultDurationArrayOutput { return o } -func (o AgentInstanaConfigPtrOutput) ToAgentInstanaConfigPtrOutputWithContext(ctx context.Context) AgentInstanaConfigPtrOutput { +func (o AgentHistoricalDataRetrievalDefaultDurationArrayOutput) ToAgentHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalDefaultDurationArrayOutput { return o } -func (o AgentInstanaConfigPtrOutput) Elem() AgentInstanaConfigOutput { - return o.ApplyT(func(v *AgentInstanaConfig) AgentInstanaConfig { - if v != nil { - return *v - } - var ret AgentInstanaConfig - return ret - }).(AgentInstanaConfigOutput) -} - -// API URL endpoint to the InfluxDB's instance. -func (o AgentInstanaConfigPtrOutput) Url() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentInstanaConfig) *string { - if v == nil { - return nil - } - return &v.Url - }).(pulumi.StringPtrOutput) +func (o AgentHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) AgentHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) AgentHistoricalDataRetrievalDefaultDuration { + return vs[0].([]AgentHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(AgentHistoricalDataRetrievalDefaultDurationOutput) } -type AgentLightstepConfig struct { - // Organization name registered in Lightstep. - Organization string `pulumi:"organization"` - // Name of the Lightstep project. - Project string `pulumi:"project"` +type AgentHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` } -// AgentLightstepConfigInput is an input type that accepts AgentLightstepConfigArgs and AgentLightstepConfigOutput values. -// You can construct a concrete instance of `AgentLightstepConfigInput` via: +// AgentHistoricalDataRetrievalMaxDurationInput is an input type that accepts AgentHistoricalDataRetrievalMaxDurationArgs and AgentHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `AgentHistoricalDataRetrievalMaxDurationInput` via: // -// AgentLightstepConfigArgs{...} -type AgentLightstepConfigInput interface { +// AgentHistoricalDataRetrievalMaxDurationArgs{...} +type AgentHistoricalDataRetrievalMaxDurationInput interface { pulumi.Input - ToAgentLightstepConfigOutput() AgentLightstepConfigOutput - ToAgentLightstepConfigOutputWithContext(context.Context) AgentLightstepConfigOutput + ToAgentHistoricalDataRetrievalMaxDurationOutput() AgentHistoricalDataRetrievalMaxDurationOutput + ToAgentHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) AgentHistoricalDataRetrievalMaxDurationOutput } -type AgentLightstepConfigArgs struct { - // Organization name registered in Lightstep. - Organization pulumi.StringInput `pulumi:"organization"` - // Name of the Lightstep project. - Project pulumi.StringInput `pulumi:"project"` -} - -func (AgentLightstepConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentLightstepConfig)(nil)).Elem() -} - -func (i AgentLightstepConfigArgs) ToAgentLightstepConfigOutput() AgentLightstepConfigOutput { - return i.ToAgentLightstepConfigOutputWithContext(context.Background()) +type AgentHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` } -func (i AgentLightstepConfigArgs) ToAgentLightstepConfigOutputWithContext(ctx context.Context) AgentLightstepConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentLightstepConfigOutput) +func (AgentHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (i AgentLightstepConfigArgs) ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput { - return i.ToAgentLightstepConfigPtrOutputWithContext(context.Background()) +func (i AgentHistoricalDataRetrievalMaxDurationArgs) ToAgentHistoricalDataRetrievalMaxDurationOutput() AgentHistoricalDataRetrievalMaxDurationOutput { + return i.ToAgentHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) } -func (i AgentLightstepConfigArgs) ToAgentLightstepConfigPtrOutputWithContext(ctx context.Context) AgentLightstepConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentLightstepConfigOutput).ToAgentLightstepConfigPtrOutputWithContext(ctx) +func (i AgentHistoricalDataRetrievalMaxDurationArgs) ToAgentHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHistoricalDataRetrievalMaxDurationOutput) } -// AgentLightstepConfigPtrInput is an input type that accepts AgentLightstepConfigArgs, AgentLightstepConfigPtr and AgentLightstepConfigPtrOutput values. -// You can construct a concrete instance of `AgentLightstepConfigPtrInput` via: -// -// AgentLightstepConfigArgs{...} +// AgentHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts AgentHistoricalDataRetrievalMaxDurationArray and AgentHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `AgentHistoricalDataRetrievalMaxDurationArrayInput` via: // -// or: -// -// nil -type AgentLightstepConfigPtrInput interface { +// AgentHistoricalDataRetrievalMaxDurationArray{ AgentHistoricalDataRetrievalMaxDurationArgs{...} } +type AgentHistoricalDataRetrievalMaxDurationArrayInput interface { pulumi.Input - ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput - ToAgentLightstepConfigPtrOutputWithContext(context.Context) AgentLightstepConfigPtrOutput + ToAgentHistoricalDataRetrievalMaxDurationArrayOutput() AgentHistoricalDataRetrievalMaxDurationArrayOutput + ToAgentHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) AgentHistoricalDataRetrievalMaxDurationArrayOutput } -type agentLightstepConfigPtrType AgentLightstepConfigArgs - -func AgentLightstepConfigPtr(v *AgentLightstepConfigArgs) AgentLightstepConfigPtrInput { - return (*agentLightstepConfigPtrType)(v) -} +type AgentHistoricalDataRetrievalMaxDurationArray []AgentHistoricalDataRetrievalMaxDurationInput -func (*agentLightstepConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentLightstepConfig)(nil)).Elem() +func (AgentHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]AgentHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (i *agentLightstepConfigPtrType) ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput { - return i.ToAgentLightstepConfigPtrOutputWithContext(context.Background()) +func (i AgentHistoricalDataRetrievalMaxDurationArray) ToAgentHistoricalDataRetrievalMaxDurationArrayOutput() AgentHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToAgentHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) } -func (i *agentLightstepConfigPtrType) ToAgentLightstepConfigPtrOutputWithContext(ctx context.Context) AgentLightstepConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentLightstepConfigPtrOutput) +func (i AgentHistoricalDataRetrievalMaxDurationArray) ToAgentHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHistoricalDataRetrievalMaxDurationArrayOutput) } -type AgentLightstepConfigOutput struct{ *pulumi.OutputState } +type AgentHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } -func (AgentLightstepConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentLightstepConfig)(nil)).Elem() +func (AgentHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (o AgentLightstepConfigOutput) ToAgentLightstepConfigOutput() AgentLightstepConfigOutput { +func (o AgentHistoricalDataRetrievalMaxDurationOutput) ToAgentHistoricalDataRetrievalMaxDurationOutput() AgentHistoricalDataRetrievalMaxDurationOutput { return o } -func (o AgentLightstepConfigOutput) ToAgentLightstepConfigOutputWithContext(ctx context.Context) AgentLightstepConfigOutput { +func (o AgentHistoricalDataRetrievalMaxDurationOutput) ToAgentHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalMaxDurationOutput { return o } -func (o AgentLightstepConfigOutput) ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput { - return o.ToAgentLightstepConfigPtrOutputWithContext(context.Background()) -} - -func (o AgentLightstepConfigOutput) ToAgentLightstepConfigPtrOutputWithContext(ctx context.Context) AgentLightstepConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentLightstepConfig) *AgentLightstepConfig { - return &v - }).(AgentLightstepConfigPtrOutput) -} - -// Organization name registered in Lightstep. -func (o AgentLightstepConfigOutput) Organization() pulumi.StringOutput { - return o.ApplyT(func(v AgentLightstepConfig) string { return v.Organization }).(pulumi.StringOutput) +// Must be one of Minute, Hour, or Day. +func (o AgentHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v AgentHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) } -// Name of the Lightstep project. -func (o AgentLightstepConfigOutput) Project() pulumi.StringOutput { - return o.ApplyT(func(v AgentLightstepConfig) string { return v.Project }).(pulumi.StringOutput) +// Must be an integer greater than or equal to 0. +func (o AgentHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v AgentHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) } -type AgentLightstepConfigPtrOutput struct{ *pulumi.OutputState } +type AgentHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } -func (AgentLightstepConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentLightstepConfig)(nil)).Elem() +func (AgentHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]AgentHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (o AgentLightstepConfigPtrOutput) ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput { +func (o AgentHistoricalDataRetrievalMaxDurationArrayOutput) ToAgentHistoricalDataRetrievalMaxDurationArrayOutput() AgentHistoricalDataRetrievalMaxDurationArrayOutput { return o } -func (o AgentLightstepConfigPtrOutput) ToAgentLightstepConfigPtrOutputWithContext(ctx context.Context) AgentLightstepConfigPtrOutput { +func (o AgentHistoricalDataRetrievalMaxDurationArrayOutput) ToAgentHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) AgentHistoricalDataRetrievalMaxDurationArrayOutput { return o } -func (o AgentLightstepConfigPtrOutput) Elem() AgentLightstepConfigOutput { - return o.ApplyT(func(v *AgentLightstepConfig) AgentLightstepConfig { - if v != nil { - return *v - } - var ret AgentLightstepConfig - return ret - }).(AgentLightstepConfigOutput) -} - -// Organization name registered in Lightstep. -func (o AgentLightstepConfigPtrOutput) Organization() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentLightstepConfig) *string { - if v == nil { - return nil - } - return &v.Organization - }).(pulumi.StringPtrOutput) -} - -// Name of the Lightstep project. -func (o AgentLightstepConfigPtrOutput) Project() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentLightstepConfig) *string { - if v == nil { - return nil - } - return &v.Project - }).(pulumi.StringPtrOutput) +func (o AgentHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) AgentHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) AgentHistoricalDataRetrievalMaxDuration { + return vs[0].([]AgentHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(AgentHistoricalDataRetrievalMaxDurationOutput) } -type AgentNewrelicConfig struct { - // ID number assigned to the New Relic user account. - AccountId string `pulumi:"accountId"` +type AgentHoneycombConfig struct { } -// AgentNewrelicConfigInput is an input type that accepts AgentNewrelicConfigArgs and AgentNewrelicConfigOutput values. -// You can construct a concrete instance of `AgentNewrelicConfigInput` via: +// AgentHoneycombConfigInput is an input type that accepts AgentHoneycombConfigArgs and AgentHoneycombConfigOutput values. +// You can construct a concrete instance of `AgentHoneycombConfigInput` via: // -// AgentNewrelicConfigArgs{...} -type AgentNewrelicConfigInput interface { +// AgentHoneycombConfigArgs{...} +type AgentHoneycombConfigInput interface { pulumi.Input - ToAgentNewrelicConfigOutput() AgentNewrelicConfigOutput - ToAgentNewrelicConfigOutputWithContext(context.Context) AgentNewrelicConfigOutput + ToAgentHoneycombConfigOutput() AgentHoneycombConfigOutput + ToAgentHoneycombConfigOutputWithContext(context.Context) AgentHoneycombConfigOutput } -type AgentNewrelicConfigArgs struct { - // ID number assigned to the New Relic user account. - AccountId pulumi.StringInput `pulumi:"accountId"` +type AgentHoneycombConfigArgs struct { } -func (AgentNewrelicConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentNewrelicConfig)(nil)).Elem() +func (AgentHoneycombConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentHoneycombConfig)(nil)).Elem() } -func (i AgentNewrelicConfigArgs) ToAgentNewrelicConfigOutput() AgentNewrelicConfigOutput { - return i.ToAgentNewrelicConfigOutputWithContext(context.Background()) +func (i AgentHoneycombConfigArgs) ToAgentHoneycombConfigOutput() AgentHoneycombConfigOutput { + return i.ToAgentHoneycombConfigOutputWithContext(context.Background()) } -func (i AgentNewrelicConfigArgs) ToAgentNewrelicConfigOutputWithContext(ctx context.Context) AgentNewrelicConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentNewrelicConfigOutput) +func (i AgentHoneycombConfigArgs) ToAgentHoneycombConfigOutputWithContext(ctx context.Context) AgentHoneycombConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHoneycombConfigOutput) } -func (i AgentNewrelicConfigArgs) ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput { - return i.ToAgentNewrelicConfigPtrOutputWithContext(context.Background()) +func (i AgentHoneycombConfigArgs) ToAgentHoneycombConfigPtrOutput() AgentHoneycombConfigPtrOutput { + return i.ToAgentHoneycombConfigPtrOutputWithContext(context.Background()) } -func (i AgentNewrelicConfigArgs) ToAgentNewrelicConfigPtrOutputWithContext(ctx context.Context) AgentNewrelicConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentNewrelicConfigOutput).ToAgentNewrelicConfigPtrOutputWithContext(ctx) +func (i AgentHoneycombConfigArgs) ToAgentHoneycombConfigPtrOutputWithContext(ctx context.Context) AgentHoneycombConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHoneycombConfigOutput).ToAgentHoneycombConfigPtrOutputWithContext(ctx) } -// AgentNewrelicConfigPtrInput is an input type that accepts AgentNewrelicConfigArgs, AgentNewrelicConfigPtr and AgentNewrelicConfigPtrOutput values. -// You can construct a concrete instance of `AgentNewrelicConfigPtrInput` via: +// AgentHoneycombConfigPtrInput is an input type that accepts AgentHoneycombConfigArgs, AgentHoneycombConfigPtr and AgentHoneycombConfigPtrOutput values. +// You can construct a concrete instance of `AgentHoneycombConfigPtrInput` via: // -// AgentNewrelicConfigArgs{...} +// AgentHoneycombConfigArgs{...} // -// or: +// or: // -// nil -type AgentNewrelicConfigPtrInput interface { +// nil +type AgentHoneycombConfigPtrInput interface { pulumi.Input - ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput - ToAgentNewrelicConfigPtrOutputWithContext(context.Context) AgentNewrelicConfigPtrOutput + ToAgentHoneycombConfigPtrOutput() AgentHoneycombConfigPtrOutput + ToAgentHoneycombConfigPtrOutputWithContext(context.Context) AgentHoneycombConfigPtrOutput } -type agentNewrelicConfigPtrType AgentNewrelicConfigArgs +type agentHoneycombConfigPtrType AgentHoneycombConfigArgs -func AgentNewrelicConfigPtr(v *AgentNewrelicConfigArgs) AgentNewrelicConfigPtrInput { - return (*agentNewrelicConfigPtrType)(v) +func AgentHoneycombConfigPtr(v *AgentHoneycombConfigArgs) AgentHoneycombConfigPtrInput { + return (*agentHoneycombConfigPtrType)(v) } -func (*agentNewrelicConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentNewrelicConfig)(nil)).Elem() +func (*agentHoneycombConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentHoneycombConfig)(nil)).Elem() } -func (i *agentNewrelicConfigPtrType) ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput { - return i.ToAgentNewrelicConfigPtrOutputWithContext(context.Background()) +func (i *agentHoneycombConfigPtrType) ToAgentHoneycombConfigPtrOutput() AgentHoneycombConfigPtrOutput { + return i.ToAgentHoneycombConfigPtrOutputWithContext(context.Background()) } -func (i *agentNewrelicConfigPtrType) ToAgentNewrelicConfigPtrOutputWithContext(ctx context.Context) AgentNewrelicConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentNewrelicConfigPtrOutput) +func (i *agentHoneycombConfigPtrType) ToAgentHoneycombConfigPtrOutputWithContext(ctx context.Context) AgentHoneycombConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentHoneycombConfigPtrOutput) } -type AgentNewrelicConfigOutput struct{ *pulumi.OutputState } +type AgentHoneycombConfigOutput struct{ *pulumi.OutputState } -func (AgentNewrelicConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentNewrelicConfig)(nil)).Elem() +func (AgentHoneycombConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentHoneycombConfig)(nil)).Elem() } -func (o AgentNewrelicConfigOutput) ToAgentNewrelicConfigOutput() AgentNewrelicConfigOutput { +func (o AgentHoneycombConfigOutput) ToAgentHoneycombConfigOutput() AgentHoneycombConfigOutput { return o } -func (o AgentNewrelicConfigOutput) ToAgentNewrelicConfigOutputWithContext(ctx context.Context) AgentNewrelicConfigOutput { +func (o AgentHoneycombConfigOutput) ToAgentHoneycombConfigOutputWithContext(ctx context.Context) AgentHoneycombConfigOutput { return o } -func (o AgentNewrelicConfigOutput) ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput { - return o.ToAgentNewrelicConfigPtrOutputWithContext(context.Background()) +func (o AgentHoneycombConfigOutput) ToAgentHoneycombConfigPtrOutput() AgentHoneycombConfigPtrOutput { + return o.ToAgentHoneycombConfigPtrOutputWithContext(context.Background()) } -func (o AgentNewrelicConfigOutput) ToAgentNewrelicConfigPtrOutputWithContext(ctx context.Context) AgentNewrelicConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentNewrelicConfig) *AgentNewrelicConfig { +func (o AgentHoneycombConfigOutput) ToAgentHoneycombConfigPtrOutputWithContext(ctx context.Context) AgentHoneycombConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentHoneycombConfig) *AgentHoneycombConfig { return &v - }).(AgentNewrelicConfigPtrOutput) -} - -// ID number assigned to the New Relic user account. -func (o AgentNewrelicConfigOutput) AccountId() pulumi.StringOutput { - return o.ApplyT(func(v AgentNewrelicConfig) string { return v.AccountId }).(pulumi.StringOutput) + }).(AgentHoneycombConfigPtrOutput) } -type AgentNewrelicConfigPtrOutput struct{ *pulumi.OutputState } +type AgentHoneycombConfigPtrOutput struct{ *pulumi.OutputState } -func (AgentNewrelicConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentNewrelicConfig)(nil)).Elem() +func (AgentHoneycombConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentHoneycombConfig)(nil)).Elem() } -func (o AgentNewrelicConfigPtrOutput) ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput { +func (o AgentHoneycombConfigPtrOutput) ToAgentHoneycombConfigPtrOutput() AgentHoneycombConfigPtrOutput { return o } -func (o AgentNewrelicConfigPtrOutput) ToAgentNewrelicConfigPtrOutputWithContext(ctx context.Context) AgentNewrelicConfigPtrOutput { +func (o AgentHoneycombConfigPtrOutput) ToAgentHoneycombConfigPtrOutputWithContext(ctx context.Context) AgentHoneycombConfigPtrOutput { return o } -func (o AgentNewrelicConfigPtrOutput) Elem() AgentNewrelicConfigOutput { - return o.ApplyT(func(v *AgentNewrelicConfig) AgentNewrelicConfig { +func (o AgentHoneycombConfigPtrOutput) Elem() AgentHoneycombConfigOutput { + return o.ApplyT(func(v *AgentHoneycombConfig) AgentHoneycombConfig { if v != nil { return *v } - var ret AgentNewrelicConfig + var ret AgentHoneycombConfig return ret - }).(AgentNewrelicConfigOutput) -} - -// ID number assigned to the New Relic user account. -func (o AgentNewrelicConfigPtrOutput) AccountId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentNewrelicConfig) *string { - if v == nil { - return nil - } - return &v.AccountId - }).(pulumi.StringPtrOutput) + }).(AgentHoneycombConfigOutput) } -type AgentOpentsdbConfig struct { - // OpenTSDB cluster URL. +type AgentInfluxdbConfig struct { + // API URL endpoint to the InfluxDB's instance. Url string `pulumi:"url"` } -// AgentOpentsdbConfigInput is an input type that accepts AgentOpentsdbConfigArgs and AgentOpentsdbConfigOutput values. -// You can construct a concrete instance of `AgentOpentsdbConfigInput` via: +// AgentInfluxdbConfigInput is an input type that accepts AgentInfluxdbConfigArgs and AgentInfluxdbConfigOutput values. +// You can construct a concrete instance of `AgentInfluxdbConfigInput` via: // -// AgentOpentsdbConfigArgs{...} -type AgentOpentsdbConfigInput interface { +// AgentInfluxdbConfigArgs{...} +type AgentInfluxdbConfigInput interface { pulumi.Input - ToAgentOpentsdbConfigOutput() AgentOpentsdbConfigOutput - ToAgentOpentsdbConfigOutputWithContext(context.Context) AgentOpentsdbConfigOutput + ToAgentInfluxdbConfigOutput() AgentInfluxdbConfigOutput + ToAgentInfluxdbConfigOutputWithContext(context.Context) AgentInfluxdbConfigOutput } -type AgentOpentsdbConfigArgs struct { - // OpenTSDB cluster URL. +type AgentInfluxdbConfigArgs struct { + // API URL endpoint to the InfluxDB's instance. Url pulumi.StringInput `pulumi:"url"` } -func (AgentOpentsdbConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentOpentsdbConfig)(nil)).Elem() +func (AgentInfluxdbConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentInfluxdbConfig)(nil)).Elem() } -func (i AgentOpentsdbConfigArgs) ToAgentOpentsdbConfigOutput() AgentOpentsdbConfigOutput { - return i.ToAgentOpentsdbConfigOutputWithContext(context.Background()) +func (i AgentInfluxdbConfigArgs) ToAgentInfluxdbConfigOutput() AgentInfluxdbConfigOutput { + return i.ToAgentInfluxdbConfigOutputWithContext(context.Background()) } -func (i AgentOpentsdbConfigArgs) ToAgentOpentsdbConfigOutputWithContext(ctx context.Context) AgentOpentsdbConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentOpentsdbConfigOutput) +func (i AgentInfluxdbConfigArgs) ToAgentInfluxdbConfigOutputWithContext(ctx context.Context) AgentInfluxdbConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentInfluxdbConfigOutput) } -func (i AgentOpentsdbConfigArgs) ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput { - return i.ToAgentOpentsdbConfigPtrOutputWithContext(context.Background()) +func (i AgentInfluxdbConfigArgs) ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput { + return i.ToAgentInfluxdbConfigPtrOutputWithContext(context.Background()) } -func (i AgentOpentsdbConfigArgs) ToAgentOpentsdbConfigPtrOutputWithContext(ctx context.Context) AgentOpentsdbConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentOpentsdbConfigOutput).ToAgentOpentsdbConfigPtrOutputWithContext(ctx) +func (i AgentInfluxdbConfigArgs) ToAgentInfluxdbConfigPtrOutputWithContext(ctx context.Context) AgentInfluxdbConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentInfluxdbConfigOutput).ToAgentInfluxdbConfigPtrOutputWithContext(ctx) } -// AgentOpentsdbConfigPtrInput is an input type that accepts AgentOpentsdbConfigArgs, AgentOpentsdbConfigPtr and AgentOpentsdbConfigPtrOutput values. -// You can construct a concrete instance of `AgentOpentsdbConfigPtrInput` via: +// AgentInfluxdbConfigPtrInput is an input type that accepts AgentInfluxdbConfigArgs, AgentInfluxdbConfigPtr and AgentInfluxdbConfigPtrOutput values. +// You can construct a concrete instance of `AgentInfluxdbConfigPtrInput` via: // -// AgentOpentsdbConfigArgs{...} +// AgentInfluxdbConfigArgs{...} // -// or: +// or: // -// nil -type AgentOpentsdbConfigPtrInput interface { +// nil +type AgentInfluxdbConfigPtrInput interface { pulumi.Input - ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput - ToAgentOpentsdbConfigPtrOutputWithContext(context.Context) AgentOpentsdbConfigPtrOutput + ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput + ToAgentInfluxdbConfigPtrOutputWithContext(context.Context) AgentInfluxdbConfigPtrOutput } -type agentOpentsdbConfigPtrType AgentOpentsdbConfigArgs +type agentInfluxdbConfigPtrType AgentInfluxdbConfigArgs -func AgentOpentsdbConfigPtr(v *AgentOpentsdbConfigArgs) AgentOpentsdbConfigPtrInput { - return (*agentOpentsdbConfigPtrType)(v) +func AgentInfluxdbConfigPtr(v *AgentInfluxdbConfigArgs) AgentInfluxdbConfigPtrInput { + return (*agentInfluxdbConfigPtrType)(v) } -func (*agentOpentsdbConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentOpentsdbConfig)(nil)).Elem() +func (*agentInfluxdbConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentInfluxdbConfig)(nil)).Elem() } -func (i *agentOpentsdbConfigPtrType) ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput { - return i.ToAgentOpentsdbConfigPtrOutputWithContext(context.Background()) +func (i *agentInfluxdbConfigPtrType) ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput { + return i.ToAgentInfluxdbConfigPtrOutputWithContext(context.Background()) } -func (i *agentOpentsdbConfigPtrType) ToAgentOpentsdbConfigPtrOutputWithContext(ctx context.Context) AgentOpentsdbConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentOpentsdbConfigPtrOutput) +func (i *agentInfluxdbConfigPtrType) ToAgentInfluxdbConfigPtrOutputWithContext(ctx context.Context) AgentInfluxdbConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentInfluxdbConfigPtrOutput) } -type AgentOpentsdbConfigOutput struct{ *pulumi.OutputState } +type AgentInfluxdbConfigOutput struct{ *pulumi.OutputState } -func (AgentOpentsdbConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentOpentsdbConfig)(nil)).Elem() +func (AgentInfluxdbConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentInfluxdbConfig)(nil)).Elem() } -func (o AgentOpentsdbConfigOutput) ToAgentOpentsdbConfigOutput() AgentOpentsdbConfigOutput { +func (o AgentInfluxdbConfigOutput) ToAgentInfluxdbConfigOutput() AgentInfluxdbConfigOutput { return o } -func (o AgentOpentsdbConfigOutput) ToAgentOpentsdbConfigOutputWithContext(ctx context.Context) AgentOpentsdbConfigOutput { +func (o AgentInfluxdbConfigOutput) ToAgentInfluxdbConfigOutputWithContext(ctx context.Context) AgentInfluxdbConfigOutput { return o } -func (o AgentOpentsdbConfigOutput) ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput { - return o.ToAgentOpentsdbConfigPtrOutputWithContext(context.Background()) +func (o AgentInfluxdbConfigOutput) ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput { + return o.ToAgentInfluxdbConfigPtrOutputWithContext(context.Background()) } -func (o AgentOpentsdbConfigOutput) ToAgentOpentsdbConfigPtrOutputWithContext(ctx context.Context) AgentOpentsdbConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentOpentsdbConfig) *AgentOpentsdbConfig { +func (o AgentInfluxdbConfigOutput) ToAgentInfluxdbConfigPtrOutputWithContext(ctx context.Context) AgentInfluxdbConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentInfluxdbConfig) *AgentInfluxdbConfig { return &v - }).(AgentOpentsdbConfigPtrOutput) + }).(AgentInfluxdbConfigPtrOutput) } -// OpenTSDB cluster URL. -func (o AgentOpentsdbConfigOutput) Url() pulumi.StringOutput { - return o.ApplyT(func(v AgentOpentsdbConfig) string { return v.Url }).(pulumi.StringOutput) +// API URL endpoint to the InfluxDB's instance. +func (o AgentInfluxdbConfigOutput) Url() pulumi.StringOutput { + return o.ApplyT(func(v AgentInfluxdbConfig) string { return v.Url }).(pulumi.StringOutput) } -type AgentOpentsdbConfigPtrOutput struct{ *pulumi.OutputState } +type AgentInfluxdbConfigPtrOutput struct{ *pulumi.OutputState } -func (AgentOpentsdbConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentOpentsdbConfig)(nil)).Elem() +func (AgentInfluxdbConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentInfluxdbConfig)(nil)).Elem() } -func (o AgentOpentsdbConfigPtrOutput) ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput { +func (o AgentInfluxdbConfigPtrOutput) ToAgentInfluxdbConfigPtrOutput() AgentInfluxdbConfigPtrOutput { return o } -func (o AgentOpentsdbConfigPtrOutput) ToAgentOpentsdbConfigPtrOutputWithContext(ctx context.Context) AgentOpentsdbConfigPtrOutput { +func (o AgentInfluxdbConfigPtrOutput) ToAgentInfluxdbConfigPtrOutputWithContext(ctx context.Context) AgentInfluxdbConfigPtrOutput { return o } -func (o AgentOpentsdbConfigPtrOutput) Elem() AgentOpentsdbConfigOutput { - return o.ApplyT(func(v *AgentOpentsdbConfig) AgentOpentsdbConfig { +func (o AgentInfluxdbConfigPtrOutput) Elem() AgentInfluxdbConfigOutput { + return o.ApplyT(func(v *AgentInfluxdbConfig) AgentInfluxdbConfig { if v != nil { return *v } - var ret AgentOpentsdbConfig + var ret AgentInfluxdbConfig return ret - }).(AgentOpentsdbConfigOutput) + }).(AgentInfluxdbConfigOutput) } -// OpenTSDB cluster URL. -func (o AgentOpentsdbConfigPtrOutput) Url() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentOpentsdbConfig) *string { +// API URL endpoint to the InfluxDB's instance. +func (o AgentInfluxdbConfigPtrOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentInfluxdbConfig) *string { if v == nil { return nil } @@ -2046,2621 +2107,2537 @@ func (o AgentOpentsdbConfigPtrOutput) Url() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -type AgentPingdomConfig struct { +type AgentInstanaConfig struct { + // API URL endpoint to the InfluxDB's instance. + Url string `pulumi:"url"` } -// AgentPingdomConfigInput is an input type that accepts AgentPingdomConfigArgs and AgentPingdomConfigOutput values. -// You can construct a concrete instance of `AgentPingdomConfigInput` via: +// AgentInstanaConfigInput is an input type that accepts AgentInstanaConfigArgs and AgentInstanaConfigOutput values. +// You can construct a concrete instance of `AgentInstanaConfigInput` via: // -// AgentPingdomConfigArgs{...} -type AgentPingdomConfigInput interface { +// AgentInstanaConfigArgs{...} +type AgentInstanaConfigInput interface { pulumi.Input - ToAgentPingdomConfigOutput() AgentPingdomConfigOutput - ToAgentPingdomConfigOutputWithContext(context.Context) AgentPingdomConfigOutput + ToAgentInstanaConfigOutput() AgentInstanaConfigOutput + ToAgentInstanaConfigOutputWithContext(context.Context) AgentInstanaConfigOutput } -type AgentPingdomConfigArgs struct { +type AgentInstanaConfigArgs struct { + // API URL endpoint to the InfluxDB's instance. + Url pulumi.StringInput `pulumi:"url"` } -func (AgentPingdomConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentPingdomConfig)(nil)).Elem() +func (AgentInstanaConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentInstanaConfig)(nil)).Elem() } -func (i AgentPingdomConfigArgs) ToAgentPingdomConfigOutput() AgentPingdomConfigOutput { - return i.ToAgentPingdomConfigOutputWithContext(context.Background()) +func (i AgentInstanaConfigArgs) ToAgentInstanaConfigOutput() AgentInstanaConfigOutput { + return i.ToAgentInstanaConfigOutputWithContext(context.Background()) } -func (i AgentPingdomConfigArgs) ToAgentPingdomConfigOutputWithContext(ctx context.Context) AgentPingdomConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPingdomConfigOutput) +func (i AgentInstanaConfigArgs) ToAgentInstanaConfigOutputWithContext(ctx context.Context) AgentInstanaConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentInstanaConfigOutput) } -func (i AgentPingdomConfigArgs) ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput { - return i.ToAgentPingdomConfigPtrOutputWithContext(context.Background()) +func (i AgentInstanaConfigArgs) ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput { + return i.ToAgentInstanaConfigPtrOutputWithContext(context.Background()) } -func (i AgentPingdomConfigArgs) ToAgentPingdomConfigPtrOutputWithContext(ctx context.Context) AgentPingdomConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPingdomConfigOutput).ToAgentPingdomConfigPtrOutputWithContext(ctx) +func (i AgentInstanaConfigArgs) ToAgentInstanaConfigPtrOutputWithContext(ctx context.Context) AgentInstanaConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentInstanaConfigOutput).ToAgentInstanaConfigPtrOutputWithContext(ctx) } -// AgentPingdomConfigPtrInput is an input type that accepts AgentPingdomConfigArgs, AgentPingdomConfigPtr and AgentPingdomConfigPtrOutput values. -// You can construct a concrete instance of `AgentPingdomConfigPtrInput` via: +// AgentInstanaConfigPtrInput is an input type that accepts AgentInstanaConfigArgs, AgentInstanaConfigPtr and AgentInstanaConfigPtrOutput values. +// You can construct a concrete instance of `AgentInstanaConfigPtrInput` via: // -// AgentPingdomConfigArgs{...} +// AgentInstanaConfigArgs{...} // -// or: +// or: // -// nil -type AgentPingdomConfigPtrInput interface { +// nil +type AgentInstanaConfigPtrInput interface { pulumi.Input - ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput - ToAgentPingdomConfigPtrOutputWithContext(context.Context) AgentPingdomConfigPtrOutput + ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput + ToAgentInstanaConfigPtrOutputWithContext(context.Context) AgentInstanaConfigPtrOutput } -type agentPingdomConfigPtrType AgentPingdomConfigArgs +type agentInstanaConfigPtrType AgentInstanaConfigArgs -func AgentPingdomConfigPtr(v *AgentPingdomConfigArgs) AgentPingdomConfigPtrInput { - return (*agentPingdomConfigPtrType)(v) +func AgentInstanaConfigPtr(v *AgentInstanaConfigArgs) AgentInstanaConfigPtrInput { + return (*agentInstanaConfigPtrType)(v) } -func (*agentPingdomConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentPingdomConfig)(nil)).Elem() +func (*agentInstanaConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentInstanaConfig)(nil)).Elem() } -func (i *agentPingdomConfigPtrType) ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput { - return i.ToAgentPingdomConfigPtrOutputWithContext(context.Background()) +func (i *agentInstanaConfigPtrType) ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput { + return i.ToAgentInstanaConfigPtrOutputWithContext(context.Background()) } -func (i *agentPingdomConfigPtrType) ToAgentPingdomConfigPtrOutputWithContext(ctx context.Context) AgentPingdomConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPingdomConfigPtrOutput) +func (i *agentInstanaConfigPtrType) ToAgentInstanaConfigPtrOutputWithContext(ctx context.Context) AgentInstanaConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentInstanaConfigPtrOutput) } -type AgentPingdomConfigOutput struct{ *pulumi.OutputState } +type AgentInstanaConfigOutput struct{ *pulumi.OutputState } -func (AgentPingdomConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentPingdomConfig)(nil)).Elem() +func (AgentInstanaConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentInstanaConfig)(nil)).Elem() } -func (o AgentPingdomConfigOutput) ToAgentPingdomConfigOutput() AgentPingdomConfigOutput { +func (o AgentInstanaConfigOutput) ToAgentInstanaConfigOutput() AgentInstanaConfigOutput { return o } -func (o AgentPingdomConfigOutput) ToAgentPingdomConfigOutputWithContext(ctx context.Context) AgentPingdomConfigOutput { +func (o AgentInstanaConfigOutput) ToAgentInstanaConfigOutputWithContext(ctx context.Context) AgentInstanaConfigOutput { return o } -func (o AgentPingdomConfigOutput) ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput { - return o.ToAgentPingdomConfigPtrOutputWithContext(context.Background()) +func (o AgentInstanaConfigOutput) ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput { + return o.ToAgentInstanaConfigPtrOutputWithContext(context.Background()) } -func (o AgentPingdomConfigOutput) ToAgentPingdomConfigPtrOutputWithContext(ctx context.Context) AgentPingdomConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPingdomConfig) *AgentPingdomConfig { +func (o AgentInstanaConfigOutput) ToAgentInstanaConfigPtrOutputWithContext(ctx context.Context) AgentInstanaConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentInstanaConfig) *AgentInstanaConfig { return &v - }).(AgentPingdomConfigPtrOutput) + }).(AgentInstanaConfigPtrOutput) } -type AgentPingdomConfigPtrOutput struct{ *pulumi.OutputState } +// API URL endpoint to the InfluxDB's instance. +func (o AgentInstanaConfigOutput) Url() pulumi.StringOutput { + return o.ApplyT(func(v AgentInstanaConfig) string { return v.Url }).(pulumi.StringOutput) +} -func (AgentPingdomConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentPingdomConfig)(nil)).Elem() +type AgentInstanaConfigPtrOutput struct{ *pulumi.OutputState } + +func (AgentInstanaConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentInstanaConfig)(nil)).Elem() } -func (o AgentPingdomConfigPtrOutput) ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput { +func (o AgentInstanaConfigPtrOutput) ToAgentInstanaConfigPtrOutput() AgentInstanaConfigPtrOutput { return o } -func (o AgentPingdomConfigPtrOutput) ToAgentPingdomConfigPtrOutputWithContext(ctx context.Context) AgentPingdomConfigPtrOutput { +func (o AgentInstanaConfigPtrOutput) ToAgentInstanaConfigPtrOutputWithContext(ctx context.Context) AgentInstanaConfigPtrOutput { return o } -func (o AgentPingdomConfigPtrOutput) Elem() AgentPingdomConfigOutput { - return o.ApplyT(func(v *AgentPingdomConfig) AgentPingdomConfig { +func (o AgentInstanaConfigPtrOutput) Elem() AgentInstanaConfigOutput { + return o.ApplyT(func(v *AgentInstanaConfig) AgentInstanaConfig { if v != nil { return *v } - var ret AgentPingdomConfig + var ret AgentInstanaConfig return ret - }).(AgentPingdomConfigOutput) + }).(AgentInstanaConfigOutput) } -type AgentPrometheusConfig struct { - // Base URL to Prometheus server. - Url string `pulumi:"url"` +// API URL endpoint to the InfluxDB's instance. +func (o AgentInstanaConfigPtrOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentInstanaConfig) *string { + if v == nil { + return nil + } + return &v.Url + }).(pulumi.StringPtrOutput) } -// AgentPrometheusConfigInput is an input type that accepts AgentPrometheusConfigArgs and AgentPrometheusConfigOutput values. -// You can construct a concrete instance of `AgentPrometheusConfigInput` via: +type AgentLightstepConfig struct { + // Organization name registered in Lightstep. + Organization string `pulumi:"organization"` + // Name of the Lightstep project. + Project string `pulumi:"project"` + // Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + Url *string `pulumi:"url"` +} + +// AgentLightstepConfigInput is an input type that accepts AgentLightstepConfigArgs and AgentLightstepConfigOutput values. +// You can construct a concrete instance of `AgentLightstepConfigInput` via: // -// AgentPrometheusConfigArgs{...} -type AgentPrometheusConfigInput interface { +// AgentLightstepConfigArgs{...} +type AgentLightstepConfigInput interface { pulumi.Input - ToAgentPrometheusConfigOutput() AgentPrometheusConfigOutput - ToAgentPrometheusConfigOutputWithContext(context.Context) AgentPrometheusConfigOutput + ToAgentLightstepConfigOutput() AgentLightstepConfigOutput + ToAgentLightstepConfigOutputWithContext(context.Context) AgentLightstepConfigOutput } -type AgentPrometheusConfigArgs struct { - // Base URL to Prometheus server. - Url pulumi.StringInput `pulumi:"url"` +type AgentLightstepConfigArgs struct { + // Organization name registered in Lightstep. + Organization pulumi.StringInput `pulumi:"organization"` + // Name of the Lightstep project. + Project pulumi.StringInput `pulumi:"project"` + // Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + Url pulumi.StringPtrInput `pulumi:"url"` } -func (AgentPrometheusConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentPrometheusConfig)(nil)).Elem() +func (AgentLightstepConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentLightstepConfig)(nil)).Elem() } -func (i AgentPrometheusConfigArgs) ToAgentPrometheusConfigOutput() AgentPrometheusConfigOutput { - return i.ToAgentPrometheusConfigOutputWithContext(context.Background()) +func (i AgentLightstepConfigArgs) ToAgentLightstepConfigOutput() AgentLightstepConfigOutput { + return i.ToAgentLightstepConfigOutputWithContext(context.Background()) } -func (i AgentPrometheusConfigArgs) ToAgentPrometheusConfigOutputWithContext(ctx context.Context) AgentPrometheusConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPrometheusConfigOutput) +func (i AgentLightstepConfigArgs) ToAgentLightstepConfigOutputWithContext(ctx context.Context) AgentLightstepConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentLightstepConfigOutput) } -func (i AgentPrometheusConfigArgs) ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput { - return i.ToAgentPrometheusConfigPtrOutputWithContext(context.Background()) +func (i AgentLightstepConfigArgs) ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput { + return i.ToAgentLightstepConfigPtrOutputWithContext(context.Background()) } -func (i AgentPrometheusConfigArgs) ToAgentPrometheusConfigPtrOutputWithContext(ctx context.Context) AgentPrometheusConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPrometheusConfigOutput).ToAgentPrometheusConfigPtrOutputWithContext(ctx) +func (i AgentLightstepConfigArgs) ToAgentLightstepConfigPtrOutputWithContext(ctx context.Context) AgentLightstepConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentLightstepConfigOutput).ToAgentLightstepConfigPtrOutputWithContext(ctx) } -// AgentPrometheusConfigPtrInput is an input type that accepts AgentPrometheusConfigArgs, AgentPrometheusConfigPtr and AgentPrometheusConfigPtrOutput values. -// You can construct a concrete instance of `AgentPrometheusConfigPtrInput` via: +// AgentLightstepConfigPtrInput is an input type that accepts AgentLightstepConfigArgs, AgentLightstepConfigPtr and AgentLightstepConfigPtrOutput values. +// You can construct a concrete instance of `AgentLightstepConfigPtrInput` via: // -// AgentPrometheusConfigArgs{...} +// AgentLightstepConfigArgs{...} // -// or: +// or: // -// nil -type AgentPrometheusConfigPtrInput interface { +// nil +type AgentLightstepConfigPtrInput interface { pulumi.Input - ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput - ToAgentPrometheusConfigPtrOutputWithContext(context.Context) AgentPrometheusConfigPtrOutput + ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput + ToAgentLightstepConfigPtrOutputWithContext(context.Context) AgentLightstepConfigPtrOutput } -type agentPrometheusConfigPtrType AgentPrometheusConfigArgs +type agentLightstepConfigPtrType AgentLightstepConfigArgs -func AgentPrometheusConfigPtr(v *AgentPrometheusConfigArgs) AgentPrometheusConfigPtrInput { - return (*agentPrometheusConfigPtrType)(v) +func AgentLightstepConfigPtr(v *AgentLightstepConfigArgs) AgentLightstepConfigPtrInput { + return (*agentLightstepConfigPtrType)(v) } -func (*agentPrometheusConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentPrometheusConfig)(nil)).Elem() +func (*agentLightstepConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentLightstepConfig)(nil)).Elem() } -func (i *agentPrometheusConfigPtrType) ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput { - return i.ToAgentPrometheusConfigPtrOutputWithContext(context.Background()) +func (i *agentLightstepConfigPtrType) ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput { + return i.ToAgentLightstepConfigPtrOutputWithContext(context.Background()) } -func (i *agentPrometheusConfigPtrType) ToAgentPrometheusConfigPtrOutputWithContext(ctx context.Context) AgentPrometheusConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPrometheusConfigPtrOutput) +func (i *agentLightstepConfigPtrType) ToAgentLightstepConfigPtrOutputWithContext(ctx context.Context) AgentLightstepConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentLightstepConfigPtrOutput) } -type AgentPrometheusConfigOutput struct{ *pulumi.OutputState } +type AgentLightstepConfigOutput struct{ *pulumi.OutputState } -func (AgentPrometheusConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentPrometheusConfig)(nil)).Elem() +func (AgentLightstepConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentLightstepConfig)(nil)).Elem() } -func (o AgentPrometheusConfigOutput) ToAgentPrometheusConfigOutput() AgentPrometheusConfigOutput { +func (o AgentLightstepConfigOutput) ToAgentLightstepConfigOutput() AgentLightstepConfigOutput { return o } -func (o AgentPrometheusConfigOutput) ToAgentPrometheusConfigOutputWithContext(ctx context.Context) AgentPrometheusConfigOutput { +func (o AgentLightstepConfigOutput) ToAgentLightstepConfigOutputWithContext(ctx context.Context) AgentLightstepConfigOutput { return o } -func (o AgentPrometheusConfigOutput) ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput { - return o.ToAgentPrometheusConfigPtrOutputWithContext(context.Background()) +func (o AgentLightstepConfigOutput) ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput { + return o.ToAgentLightstepConfigPtrOutputWithContext(context.Background()) } -func (o AgentPrometheusConfigOutput) ToAgentPrometheusConfigPtrOutputWithContext(ctx context.Context) AgentPrometheusConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPrometheusConfig) *AgentPrometheusConfig { +func (o AgentLightstepConfigOutput) ToAgentLightstepConfigPtrOutputWithContext(ctx context.Context) AgentLightstepConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentLightstepConfig) *AgentLightstepConfig { return &v - }).(AgentPrometheusConfigPtrOutput) + }).(AgentLightstepConfigPtrOutput) } -// Base URL to Prometheus server. -func (o AgentPrometheusConfigOutput) Url() pulumi.StringOutput { - return o.ApplyT(func(v AgentPrometheusConfig) string { return v.Url }).(pulumi.StringOutput) +// Organization name registered in Lightstep. +func (o AgentLightstepConfigOutput) Organization() pulumi.StringOutput { + return o.ApplyT(func(v AgentLightstepConfig) string { return v.Organization }).(pulumi.StringOutput) } -type AgentPrometheusConfigPtrOutput struct{ *pulumi.OutputState } - -func (AgentPrometheusConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentPrometheusConfig)(nil)).Elem() +// Name of the Lightstep project. +func (o AgentLightstepConfigOutput) Project() pulumi.StringOutput { + return o.ApplyT(func(v AgentLightstepConfig) string { return v.Project }).(pulumi.StringOutput) } -func (o AgentPrometheusConfigPtrOutput) ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput { - return o +// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. +func (o AgentLightstepConfigOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v AgentLightstepConfig) *string { return v.Url }).(pulumi.StringPtrOutput) } -func (o AgentPrometheusConfigPtrOutput) ToAgentPrometheusConfigPtrOutputWithContext(ctx context.Context) AgentPrometheusConfigPtrOutput { - return o -} +type AgentLightstepConfigPtrOutput struct{ *pulumi.OutputState } -func (o AgentPrometheusConfigPtrOutput) Elem() AgentPrometheusConfigOutput { - return o.ApplyT(func(v *AgentPrometheusConfig) AgentPrometheusConfig { +func (AgentLightstepConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentLightstepConfig)(nil)).Elem() +} + +func (o AgentLightstepConfigPtrOutput) ToAgentLightstepConfigPtrOutput() AgentLightstepConfigPtrOutput { + return o +} + +func (o AgentLightstepConfigPtrOutput) ToAgentLightstepConfigPtrOutputWithContext(ctx context.Context) AgentLightstepConfigPtrOutput { + return o +} + +func (o AgentLightstepConfigPtrOutput) Elem() AgentLightstepConfigOutput { + return o.ApplyT(func(v *AgentLightstepConfig) AgentLightstepConfig { if v != nil { return *v } - var ret AgentPrometheusConfig + var ret AgentLightstepConfig return ret - }).(AgentPrometheusConfigOutput) + }).(AgentLightstepConfigOutput) } -// Base URL to Prometheus server. -func (o AgentPrometheusConfigPtrOutput) Url() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentPrometheusConfig) *string { +// Organization name registered in Lightstep. +func (o AgentLightstepConfigPtrOutput) Organization() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentLightstepConfig) *string { if v == nil { return nil } - return &v.Url + return &v.Organization }).(pulumi.StringPtrOutput) } -type AgentQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +// Name of the Lightstep project. +func (o AgentLightstepConfigPtrOutput) Project() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentLightstepConfig) *string { + if v == nil { + return nil + } + return &v.Project + }).(pulumi.StringPtrOutput) } -// AgentQueryDelayInput is an input type that accepts AgentQueryDelayArgs and AgentQueryDelayOutput values. -// You can construct a concrete instance of `AgentQueryDelayInput` via: +// Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. +func (o AgentLightstepConfigPtrOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentLightstepConfig) *string { + if v == nil { + return nil + } + return v.Url + }).(pulumi.StringPtrOutput) +} + +type AgentNewrelicConfig struct { + // ID number assigned to the New Relic user account. + AccountId string `pulumi:"accountId"` +} + +// AgentNewrelicConfigInput is an input type that accepts AgentNewrelicConfigArgs and AgentNewrelicConfigOutput values. +// You can construct a concrete instance of `AgentNewrelicConfigInput` via: // -// AgentQueryDelayArgs{...} -type AgentQueryDelayInput interface { +// AgentNewrelicConfigArgs{...} +type AgentNewrelicConfigInput interface { pulumi.Input - ToAgentQueryDelayOutput() AgentQueryDelayOutput - ToAgentQueryDelayOutputWithContext(context.Context) AgentQueryDelayOutput + ToAgentNewrelicConfigOutput() AgentNewrelicConfigOutput + ToAgentNewrelicConfigOutputWithContext(context.Context) AgentNewrelicConfigOutput } -type AgentQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type AgentNewrelicConfigArgs struct { + // ID number assigned to the New Relic user account. + AccountId pulumi.StringInput `pulumi:"accountId"` } -func (AgentQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentQueryDelay)(nil)).Elem() +func (AgentNewrelicConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentNewrelicConfig)(nil)).Elem() } -func (i AgentQueryDelayArgs) ToAgentQueryDelayOutput() AgentQueryDelayOutput { - return i.ToAgentQueryDelayOutputWithContext(context.Background()) +func (i AgentNewrelicConfigArgs) ToAgentNewrelicConfigOutput() AgentNewrelicConfigOutput { + return i.ToAgentNewrelicConfigOutputWithContext(context.Background()) } -func (i AgentQueryDelayArgs) ToAgentQueryDelayOutputWithContext(ctx context.Context) AgentQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentQueryDelayOutput) +func (i AgentNewrelicConfigArgs) ToAgentNewrelicConfigOutputWithContext(ctx context.Context) AgentNewrelicConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentNewrelicConfigOutput) } -func (i AgentQueryDelayArgs) ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput { - return i.ToAgentQueryDelayPtrOutputWithContext(context.Background()) +func (i AgentNewrelicConfigArgs) ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput { + return i.ToAgentNewrelicConfigPtrOutputWithContext(context.Background()) } -func (i AgentQueryDelayArgs) ToAgentQueryDelayPtrOutputWithContext(ctx context.Context) AgentQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentQueryDelayOutput).ToAgentQueryDelayPtrOutputWithContext(ctx) +func (i AgentNewrelicConfigArgs) ToAgentNewrelicConfigPtrOutputWithContext(ctx context.Context) AgentNewrelicConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentNewrelicConfigOutput).ToAgentNewrelicConfigPtrOutputWithContext(ctx) } -// AgentQueryDelayPtrInput is an input type that accepts AgentQueryDelayArgs, AgentQueryDelayPtr and AgentQueryDelayPtrOutput values. -// You can construct a concrete instance of `AgentQueryDelayPtrInput` via: +// AgentNewrelicConfigPtrInput is an input type that accepts AgentNewrelicConfigArgs, AgentNewrelicConfigPtr and AgentNewrelicConfigPtrOutput values. +// You can construct a concrete instance of `AgentNewrelicConfigPtrInput` via: // -// AgentQueryDelayArgs{...} +// AgentNewrelicConfigArgs{...} // -// or: +// or: // -// nil -type AgentQueryDelayPtrInput interface { +// nil +type AgentNewrelicConfigPtrInput interface { pulumi.Input - ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput - ToAgentQueryDelayPtrOutputWithContext(context.Context) AgentQueryDelayPtrOutput + ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput + ToAgentNewrelicConfigPtrOutputWithContext(context.Context) AgentNewrelicConfigPtrOutput } -type agentQueryDelayPtrType AgentQueryDelayArgs +type agentNewrelicConfigPtrType AgentNewrelicConfigArgs -func AgentQueryDelayPtr(v *AgentQueryDelayArgs) AgentQueryDelayPtrInput { - return (*agentQueryDelayPtrType)(v) +func AgentNewrelicConfigPtr(v *AgentNewrelicConfigArgs) AgentNewrelicConfigPtrInput { + return (*agentNewrelicConfigPtrType)(v) } -func (*agentQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentQueryDelay)(nil)).Elem() +func (*agentNewrelicConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentNewrelicConfig)(nil)).Elem() } -func (i *agentQueryDelayPtrType) ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput { - return i.ToAgentQueryDelayPtrOutputWithContext(context.Background()) +func (i *agentNewrelicConfigPtrType) ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput { + return i.ToAgentNewrelicConfigPtrOutputWithContext(context.Background()) } -func (i *agentQueryDelayPtrType) ToAgentQueryDelayPtrOutputWithContext(ctx context.Context) AgentQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentQueryDelayPtrOutput) +func (i *agentNewrelicConfigPtrType) ToAgentNewrelicConfigPtrOutputWithContext(ctx context.Context) AgentNewrelicConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentNewrelicConfigPtrOutput) } -type AgentQueryDelayOutput struct{ *pulumi.OutputState } +type AgentNewrelicConfigOutput struct{ *pulumi.OutputState } -func (AgentQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentQueryDelay)(nil)).Elem() +func (AgentNewrelicConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentNewrelicConfig)(nil)).Elem() } -func (o AgentQueryDelayOutput) ToAgentQueryDelayOutput() AgentQueryDelayOutput { +func (o AgentNewrelicConfigOutput) ToAgentNewrelicConfigOutput() AgentNewrelicConfigOutput { return o } -func (o AgentQueryDelayOutput) ToAgentQueryDelayOutputWithContext(ctx context.Context) AgentQueryDelayOutput { +func (o AgentNewrelicConfigOutput) ToAgentNewrelicConfigOutputWithContext(ctx context.Context) AgentNewrelicConfigOutput { return o } -func (o AgentQueryDelayOutput) ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput { - return o.ToAgentQueryDelayPtrOutputWithContext(context.Background()) +func (o AgentNewrelicConfigOutput) ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput { + return o.ToAgentNewrelicConfigPtrOutputWithContext(context.Background()) } -func (o AgentQueryDelayOutput) ToAgentQueryDelayPtrOutputWithContext(ctx context.Context) AgentQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentQueryDelay) *AgentQueryDelay { +func (o AgentNewrelicConfigOutput) ToAgentNewrelicConfigPtrOutputWithContext(ctx context.Context) AgentNewrelicConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentNewrelicConfig) *AgentNewrelicConfig { return &v - }).(AgentQueryDelayPtrOutput) -} - -// Must be one of Minute or Second. -func (o AgentQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v AgentQueryDelay) string { return v.Unit }).(pulumi.StringOutput) + }).(AgentNewrelicConfigPtrOutput) } -// Must be an integer greater than or equal to 0. -func (o AgentQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v AgentQueryDelay) int { return v.Value }).(pulumi.IntOutput) +// ID number assigned to the New Relic user account. +func (o AgentNewrelicConfigOutput) AccountId() pulumi.StringOutput { + return o.ApplyT(func(v AgentNewrelicConfig) string { return v.AccountId }).(pulumi.StringOutput) } -type AgentQueryDelayPtrOutput struct{ *pulumi.OutputState } +type AgentNewrelicConfigPtrOutput struct{ *pulumi.OutputState } -func (AgentQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentQueryDelay)(nil)).Elem() +func (AgentNewrelicConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentNewrelicConfig)(nil)).Elem() } -func (o AgentQueryDelayPtrOutput) ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput { +func (o AgentNewrelicConfigPtrOutput) ToAgentNewrelicConfigPtrOutput() AgentNewrelicConfigPtrOutput { return o } -func (o AgentQueryDelayPtrOutput) ToAgentQueryDelayPtrOutputWithContext(ctx context.Context) AgentQueryDelayPtrOutput { +func (o AgentNewrelicConfigPtrOutput) ToAgentNewrelicConfigPtrOutputWithContext(ctx context.Context) AgentNewrelicConfigPtrOutput { return o } -func (o AgentQueryDelayPtrOutput) Elem() AgentQueryDelayOutput { - return o.ApplyT(func(v *AgentQueryDelay) AgentQueryDelay { +func (o AgentNewrelicConfigPtrOutput) Elem() AgentNewrelicConfigOutput { + return o.ApplyT(func(v *AgentNewrelicConfig) AgentNewrelicConfig { if v != nil { return *v } - var ret AgentQueryDelay + var ret AgentNewrelicConfig return ret - }).(AgentQueryDelayOutput) + }).(AgentNewrelicConfigOutput) } -// Must be one of Minute or Second. -func (o AgentQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentQueryDelay) *string { +// ID number assigned to the New Relic user account. +func (o AgentNewrelicConfigPtrOutput) AccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentNewrelicConfig) *string { if v == nil { return nil } - return &v.Unit + return &v.AccountId }).(pulumi.StringPtrOutput) } -// Must be an integer greater than or equal to 0. -func (o AgentQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *AgentQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) -} - -type AgentRedshiftConfig struct { +type AgentOpentsdbConfig struct { + // OpenTSDB cluster URL. + Url string `pulumi:"url"` } -// AgentRedshiftConfigInput is an input type that accepts AgentRedshiftConfigArgs and AgentRedshiftConfigOutput values. -// You can construct a concrete instance of `AgentRedshiftConfigInput` via: +// AgentOpentsdbConfigInput is an input type that accepts AgentOpentsdbConfigArgs and AgentOpentsdbConfigOutput values. +// You can construct a concrete instance of `AgentOpentsdbConfigInput` via: // -// AgentRedshiftConfigArgs{...} -type AgentRedshiftConfigInput interface { +// AgentOpentsdbConfigArgs{...} +type AgentOpentsdbConfigInput interface { pulumi.Input - ToAgentRedshiftConfigOutput() AgentRedshiftConfigOutput - ToAgentRedshiftConfigOutputWithContext(context.Context) AgentRedshiftConfigOutput + ToAgentOpentsdbConfigOutput() AgentOpentsdbConfigOutput + ToAgentOpentsdbConfigOutputWithContext(context.Context) AgentOpentsdbConfigOutput } -type AgentRedshiftConfigArgs struct { +type AgentOpentsdbConfigArgs struct { + // OpenTSDB cluster URL. + Url pulumi.StringInput `pulumi:"url"` } -func (AgentRedshiftConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentRedshiftConfig)(nil)).Elem() +func (AgentOpentsdbConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentOpentsdbConfig)(nil)).Elem() } -func (i AgentRedshiftConfigArgs) ToAgentRedshiftConfigOutput() AgentRedshiftConfigOutput { - return i.ToAgentRedshiftConfigOutputWithContext(context.Background()) +func (i AgentOpentsdbConfigArgs) ToAgentOpentsdbConfigOutput() AgentOpentsdbConfigOutput { + return i.ToAgentOpentsdbConfigOutputWithContext(context.Background()) } -func (i AgentRedshiftConfigArgs) ToAgentRedshiftConfigOutputWithContext(ctx context.Context) AgentRedshiftConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentRedshiftConfigOutput) +func (i AgentOpentsdbConfigArgs) ToAgentOpentsdbConfigOutputWithContext(ctx context.Context) AgentOpentsdbConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentOpentsdbConfigOutput) } -func (i AgentRedshiftConfigArgs) ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput { - return i.ToAgentRedshiftConfigPtrOutputWithContext(context.Background()) +func (i AgentOpentsdbConfigArgs) ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput { + return i.ToAgentOpentsdbConfigPtrOutputWithContext(context.Background()) } -func (i AgentRedshiftConfigArgs) ToAgentRedshiftConfigPtrOutputWithContext(ctx context.Context) AgentRedshiftConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentRedshiftConfigOutput).ToAgentRedshiftConfigPtrOutputWithContext(ctx) +func (i AgentOpentsdbConfigArgs) ToAgentOpentsdbConfigPtrOutputWithContext(ctx context.Context) AgentOpentsdbConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentOpentsdbConfigOutput).ToAgentOpentsdbConfigPtrOutputWithContext(ctx) } -// AgentRedshiftConfigPtrInput is an input type that accepts AgentRedshiftConfigArgs, AgentRedshiftConfigPtr and AgentRedshiftConfigPtrOutput values. -// You can construct a concrete instance of `AgentRedshiftConfigPtrInput` via: +// AgentOpentsdbConfigPtrInput is an input type that accepts AgentOpentsdbConfigArgs, AgentOpentsdbConfigPtr and AgentOpentsdbConfigPtrOutput values. +// You can construct a concrete instance of `AgentOpentsdbConfigPtrInput` via: // -// AgentRedshiftConfigArgs{...} +// AgentOpentsdbConfigArgs{...} // -// or: +// or: // -// nil -type AgentRedshiftConfigPtrInput interface { +// nil +type AgentOpentsdbConfigPtrInput interface { pulumi.Input - ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput - ToAgentRedshiftConfigPtrOutputWithContext(context.Context) AgentRedshiftConfigPtrOutput + ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput + ToAgentOpentsdbConfigPtrOutputWithContext(context.Context) AgentOpentsdbConfigPtrOutput } -type agentRedshiftConfigPtrType AgentRedshiftConfigArgs +type agentOpentsdbConfigPtrType AgentOpentsdbConfigArgs -func AgentRedshiftConfigPtr(v *AgentRedshiftConfigArgs) AgentRedshiftConfigPtrInput { - return (*agentRedshiftConfigPtrType)(v) +func AgentOpentsdbConfigPtr(v *AgentOpentsdbConfigArgs) AgentOpentsdbConfigPtrInput { + return (*agentOpentsdbConfigPtrType)(v) } -func (*agentRedshiftConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentRedshiftConfig)(nil)).Elem() +func (*agentOpentsdbConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentOpentsdbConfig)(nil)).Elem() } -func (i *agentRedshiftConfigPtrType) ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput { - return i.ToAgentRedshiftConfigPtrOutputWithContext(context.Background()) +func (i *agentOpentsdbConfigPtrType) ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput { + return i.ToAgentOpentsdbConfigPtrOutputWithContext(context.Background()) } -func (i *agentRedshiftConfigPtrType) ToAgentRedshiftConfigPtrOutputWithContext(ctx context.Context) AgentRedshiftConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentRedshiftConfigPtrOutput) +func (i *agentOpentsdbConfigPtrType) ToAgentOpentsdbConfigPtrOutputWithContext(ctx context.Context) AgentOpentsdbConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentOpentsdbConfigPtrOutput) } -type AgentRedshiftConfigOutput struct{ *pulumi.OutputState } +type AgentOpentsdbConfigOutput struct{ *pulumi.OutputState } -func (AgentRedshiftConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentRedshiftConfig)(nil)).Elem() -} +func (AgentOpentsdbConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentOpentsdbConfig)(nil)).Elem() +} -func (o AgentRedshiftConfigOutput) ToAgentRedshiftConfigOutput() AgentRedshiftConfigOutput { +func (o AgentOpentsdbConfigOutput) ToAgentOpentsdbConfigOutput() AgentOpentsdbConfigOutput { return o } -func (o AgentRedshiftConfigOutput) ToAgentRedshiftConfigOutputWithContext(ctx context.Context) AgentRedshiftConfigOutput { +func (o AgentOpentsdbConfigOutput) ToAgentOpentsdbConfigOutputWithContext(ctx context.Context) AgentOpentsdbConfigOutput { return o } -func (o AgentRedshiftConfigOutput) ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput { - return o.ToAgentRedshiftConfigPtrOutputWithContext(context.Background()) +func (o AgentOpentsdbConfigOutput) ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput { + return o.ToAgentOpentsdbConfigPtrOutputWithContext(context.Background()) } -func (o AgentRedshiftConfigOutput) ToAgentRedshiftConfigPtrOutputWithContext(ctx context.Context) AgentRedshiftConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentRedshiftConfig) *AgentRedshiftConfig { +func (o AgentOpentsdbConfigOutput) ToAgentOpentsdbConfigPtrOutputWithContext(ctx context.Context) AgentOpentsdbConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentOpentsdbConfig) *AgentOpentsdbConfig { return &v - }).(AgentRedshiftConfigPtrOutput) + }).(AgentOpentsdbConfigPtrOutput) } -type AgentRedshiftConfigPtrOutput struct{ *pulumi.OutputState } +// OpenTSDB cluster URL. +func (o AgentOpentsdbConfigOutput) Url() pulumi.StringOutput { + return o.ApplyT(func(v AgentOpentsdbConfig) string { return v.Url }).(pulumi.StringOutput) +} -func (AgentRedshiftConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentRedshiftConfig)(nil)).Elem() +type AgentOpentsdbConfigPtrOutput struct{ *pulumi.OutputState } + +func (AgentOpentsdbConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentOpentsdbConfig)(nil)).Elem() } -func (o AgentRedshiftConfigPtrOutput) ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput { +func (o AgentOpentsdbConfigPtrOutput) ToAgentOpentsdbConfigPtrOutput() AgentOpentsdbConfigPtrOutput { return o } -func (o AgentRedshiftConfigPtrOutput) ToAgentRedshiftConfigPtrOutputWithContext(ctx context.Context) AgentRedshiftConfigPtrOutput { +func (o AgentOpentsdbConfigPtrOutput) ToAgentOpentsdbConfigPtrOutputWithContext(ctx context.Context) AgentOpentsdbConfigPtrOutput { return o } -func (o AgentRedshiftConfigPtrOutput) Elem() AgentRedshiftConfigOutput { - return o.ApplyT(func(v *AgentRedshiftConfig) AgentRedshiftConfig { +func (o AgentOpentsdbConfigPtrOutput) Elem() AgentOpentsdbConfigOutput { + return o.ApplyT(func(v *AgentOpentsdbConfig) AgentOpentsdbConfig { if v != nil { return *v } - var ret AgentRedshiftConfig + var ret AgentOpentsdbConfig return ret - }).(AgentRedshiftConfigOutput) + }).(AgentOpentsdbConfigOutput) } -type AgentSplunkConfig struct { - // Base API URL to the Splunk Search app. - Url string `pulumi:"url"` +// OpenTSDB cluster URL. +func (o AgentOpentsdbConfigPtrOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentOpentsdbConfig) *string { + if v == nil { + return nil + } + return &v.Url + }).(pulumi.StringPtrOutput) } -// AgentSplunkConfigInput is an input type that accepts AgentSplunkConfigArgs and AgentSplunkConfigOutput values. -// You can construct a concrete instance of `AgentSplunkConfigInput` via: +type AgentPingdomConfig struct { +} + +// AgentPingdomConfigInput is an input type that accepts AgentPingdomConfigArgs and AgentPingdomConfigOutput values. +// You can construct a concrete instance of `AgentPingdomConfigInput` via: // -// AgentSplunkConfigArgs{...} -type AgentSplunkConfigInput interface { +// AgentPingdomConfigArgs{...} +type AgentPingdomConfigInput interface { pulumi.Input - ToAgentSplunkConfigOutput() AgentSplunkConfigOutput - ToAgentSplunkConfigOutputWithContext(context.Context) AgentSplunkConfigOutput + ToAgentPingdomConfigOutput() AgentPingdomConfigOutput + ToAgentPingdomConfigOutputWithContext(context.Context) AgentPingdomConfigOutput } -type AgentSplunkConfigArgs struct { - // Base API URL to the Splunk Search app. - Url pulumi.StringInput `pulumi:"url"` +type AgentPingdomConfigArgs struct { } -func (AgentSplunkConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentSplunkConfig)(nil)).Elem() +func (AgentPingdomConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPingdomConfig)(nil)).Elem() } -func (i AgentSplunkConfigArgs) ToAgentSplunkConfigOutput() AgentSplunkConfigOutput { - return i.ToAgentSplunkConfigOutputWithContext(context.Background()) +func (i AgentPingdomConfigArgs) ToAgentPingdomConfigOutput() AgentPingdomConfigOutput { + return i.ToAgentPingdomConfigOutputWithContext(context.Background()) } -func (i AgentSplunkConfigArgs) ToAgentSplunkConfigOutputWithContext(ctx context.Context) AgentSplunkConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkConfigOutput) +func (i AgentPingdomConfigArgs) ToAgentPingdomConfigOutputWithContext(ctx context.Context) AgentPingdomConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPingdomConfigOutput) } -func (i AgentSplunkConfigArgs) ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput { - return i.ToAgentSplunkConfigPtrOutputWithContext(context.Background()) +func (i AgentPingdomConfigArgs) ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput { + return i.ToAgentPingdomConfigPtrOutputWithContext(context.Background()) } -func (i AgentSplunkConfigArgs) ToAgentSplunkConfigPtrOutputWithContext(ctx context.Context) AgentSplunkConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkConfigOutput).ToAgentSplunkConfigPtrOutputWithContext(ctx) +func (i AgentPingdomConfigArgs) ToAgentPingdomConfigPtrOutputWithContext(ctx context.Context) AgentPingdomConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPingdomConfigOutput).ToAgentPingdomConfigPtrOutputWithContext(ctx) } -// AgentSplunkConfigPtrInput is an input type that accepts AgentSplunkConfigArgs, AgentSplunkConfigPtr and AgentSplunkConfigPtrOutput values. -// You can construct a concrete instance of `AgentSplunkConfigPtrInput` via: +// AgentPingdomConfigPtrInput is an input type that accepts AgentPingdomConfigArgs, AgentPingdomConfigPtr and AgentPingdomConfigPtrOutput values. +// You can construct a concrete instance of `AgentPingdomConfigPtrInput` via: // -// AgentSplunkConfigArgs{...} +// AgentPingdomConfigArgs{...} // -// or: +// or: // -// nil -type AgentSplunkConfigPtrInput interface { +// nil +type AgentPingdomConfigPtrInput interface { pulumi.Input - ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput - ToAgentSplunkConfigPtrOutputWithContext(context.Context) AgentSplunkConfigPtrOutput + ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput + ToAgentPingdomConfigPtrOutputWithContext(context.Context) AgentPingdomConfigPtrOutput } -type agentSplunkConfigPtrType AgentSplunkConfigArgs +type agentPingdomConfigPtrType AgentPingdomConfigArgs -func AgentSplunkConfigPtr(v *AgentSplunkConfigArgs) AgentSplunkConfigPtrInput { - return (*agentSplunkConfigPtrType)(v) +func AgentPingdomConfigPtr(v *AgentPingdomConfigArgs) AgentPingdomConfigPtrInput { + return (*agentPingdomConfigPtrType)(v) } -func (*agentSplunkConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentSplunkConfig)(nil)).Elem() +func (*agentPingdomConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPingdomConfig)(nil)).Elem() } -func (i *agentSplunkConfigPtrType) ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput { - return i.ToAgentSplunkConfigPtrOutputWithContext(context.Background()) +func (i *agentPingdomConfigPtrType) ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput { + return i.ToAgentPingdomConfigPtrOutputWithContext(context.Background()) } -func (i *agentSplunkConfigPtrType) ToAgentSplunkConfigPtrOutputWithContext(ctx context.Context) AgentSplunkConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkConfigPtrOutput) +func (i *agentPingdomConfigPtrType) ToAgentPingdomConfigPtrOutputWithContext(ctx context.Context) AgentPingdomConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPingdomConfigPtrOutput) } -type AgentSplunkConfigOutput struct{ *pulumi.OutputState } +type AgentPingdomConfigOutput struct{ *pulumi.OutputState } -func (AgentSplunkConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentSplunkConfig)(nil)).Elem() +func (AgentPingdomConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPingdomConfig)(nil)).Elem() } -func (o AgentSplunkConfigOutput) ToAgentSplunkConfigOutput() AgentSplunkConfigOutput { +func (o AgentPingdomConfigOutput) ToAgentPingdomConfigOutput() AgentPingdomConfigOutput { return o } -func (o AgentSplunkConfigOutput) ToAgentSplunkConfigOutputWithContext(ctx context.Context) AgentSplunkConfigOutput { +func (o AgentPingdomConfigOutput) ToAgentPingdomConfigOutputWithContext(ctx context.Context) AgentPingdomConfigOutput { return o } -func (o AgentSplunkConfigOutput) ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput { - return o.ToAgentSplunkConfigPtrOutputWithContext(context.Background()) +func (o AgentPingdomConfigOutput) ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput { + return o.ToAgentPingdomConfigPtrOutputWithContext(context.Background()) } -func (o AgentSplunkConfigOutput) ToAgentSplunkConfigPtrOutputWithContext(ctx context.Context) AgentSplunkConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentSplunkConfig) *AgentSplunkConfig { +func (o AgentPingdomConfigOutput) ToAgentPingdomConfigPtrOutputWithContext(ctx context.Context) AgentPingdomConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPingdomConfig) *AgentPingdomConfig { return &v - }).(AgentSplunkConfigPtrOutput) -} - -// Base API URL to the Splunk Search app. -func (o AgentSplunkConfigOutput) Url() pulumi.StringOutput { - return o.ApplyT(func(v AgentSplunkConfig) string { return v.Url }).(pulumi.StringOutput) + }).(AgentPingdomConfigPtrOutput) } -type AgentSplunkConfigPtrOutput struct{ *pulumi.OutputState } +type AgentPingdomConfigPtrOutput struct{ *pulumi.OutputState } -func (AgentSplunkConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentSplunkConfig)(nil)).Elem() +func (AgentPingdomConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPingdomConfig)(nil)).Elem() } -func (o AgentSplunkConfigPtrOutput) ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput { +func (o AgentPingdomConfigPtrOutput) ToAgentPingdomConfigPtrOutput() AgentPingdomConfigPtrOutput { return o } -func (o AgentSplunkConfigPtrOutput) ToAgentSplunkConfigPtrOutputWithContext(ctx context.Context) AgentSplunkConfigPtrOutput { +func (o AgentPingdomConfigPtrOutput) ToAgentPingdomConfigPtrOutputWithContext(ctx context.Context) AgentPingdomConfigPtrOutput { return o } -func (o AgentSplunkConfigPtrOutput) Elem() AgentSplunkConfigOutput { - return o.ApplyT(func(v *AgentSplunkConfig) AgentSplunkConfig { +func (o AgentPingdomConfigPtrOutput) Elem() AgentPingdomConfigOutput { + return o.ApplyT(func(v *AgentPingdomConfig) AgentPingdomConfig { if v != nil { return *v } - var ret AgentSplunkConfig + var ret AgentPingdomConfig return ret - }).(AgentSplunkConfigOutput) -} - -// Base API URL to the Splunk Search app. -func (o AgentSplunkConfigPtrOutput) Url() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentSplunkConfig) *string { - if v == nil { - return nil - } - return &v.Url - }).(pulumi.StringPtrOutput) + }).(AgentPingdomConfigOutput) } -type AgentSplunkObservabilityConfig struct { - // SplunkObservability Realm. - Realm string `pulumi:"realm"` +type AgentPrometheusConfig struct { + // Base URL to Prometheus server. + Url string `pulumi:"url"` } -// AgentSplunkObservabilityConfigInput is an input type that accepts AgentSplunkObservabilityConfigArgs and AgentSplunkObservabilityConfigOutput values. -// You can construct a concrete instance of `AgentSplunkObservabilityConfigInput` via: +// AgentPrometheusConfigInput is an input type that accepts AgentPrometheusConfigArgs and AgentPrometheusConfigOutput values. +// You can construct a concrete instance of `AgentPrometheusConfigInput` via: // -// AgentSplunkObservabilityConfigArgs{...} -type AgentSplunkObservabilityConfigInput interface { +// AgentPrometheusConfigArgs{...} +type AgentPrometheusConfigInput interface { pulumi.Input - ToAgentSplunkObservabilityConfigOutput() AgentSplunkObservabilityConfigOutput - ToAgentSplunkObservabilityConfigOutputWithContext(context.Context) AgentSplunkObservabilityConfigOutput + ToAgentPrometheusConfigOutput() AgentPrometheusConfigOutput + ToAgentPrometheusConfigOutputWithContext(context.Context) AgentPrometheusConfigOutput } -type AgentSplunkObservabilityConfigArgs struct { - // SplunkObservability Realm. - Realm pulumi.StringInput `pulumi:"realm"` +type AgentPrometheusConfigArgs struct { + // Base URL to Prometheus server. + Url pulumi.StringInput `pulumi:"url"` } -func (AgentSplunkObservabilityConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentSplunkObservabilityConfig)(nil)).Elem() +func (AgentPrometheusConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPrometheusConfig)(nil)).Elem() } -func (i AgentSplunkObservabilityConfigArgs) ToAgentSplunkObservabilityConfigOutput() AgentSplunkObservabilityConfigOutput { - return i.ToAgentSplunkObservabilityConfigOutputWithContext(context.Background()) +func (i AgentPrometheusConfigArgs) ToAgentPrometheusConfigOutput() AgentPrometheusConfigOutput { + return i.ToAgentPrometheusConfigOutputWithContext(context.Background()) } -func (i AgentSplunkObservabilityConfigArgs) ToAgentSplunkObservabilityConfigOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkObservabilityConfigOutput) +func (i AgentPrometheusConfigArgs) ToAgentPrometheusConfigOutputWithContext(ctx context.Context) AgentPrometheusConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPrometheusConfigOutput) } -func (i AgentSplunkObservabilityConfigArgs) ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput { - return i.ToAgentSplunkObservabilityConfigPtrOutputWithContext(context.Background()) +func (i AgentPrometheusConfigArgs) ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput { + return i.ToAgentPrometheusConfigPtrOutputWithContext(context.Background()) } -func (i AgentSplunkObservabilityConfigArgs) ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkObservabilityConfigOutput).ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx) +func (i AgentPrometheusConfigArgs) ToAgentPrometheusConfigPtrOutputWithContext(ctx context.Context) AgentPrometheusConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPrometheusConfigOutput).ToAgentPrometheusConfigPtrOutputWithContext(ctx) } -// AgentSplunkObservabilityConfigPtrInput is an input type that accepts AgentSplunkObservabilityConfigArgs, AgentSplunkObservabilityConfigPtr and AgentSplunkObservabilityConfigPtrOutput values. -// You can construct a concrete instance of `AgentSplunkObservabilityConfigPtrInput` via: +// AgentPrometheusConfigPtrInput is an input type that accepts AgentPrometheusConfigArgs, AgentPrometheusConfigPtr and AgentPrometheusConfigPtrOutput values. +// You can construct a concrete instance of `AgentPrometheusConfigPtrInput` via: // -// AgentSplunkObservabilityConfigArgs{...} +// AgentPrometheusConfigArgs{...} // -// or: +// or: // -// nil -type AgentSplunkObservabilityConfigPtrInput interface { +// nil +type AgentPrometheusConfigPtrInput interface { pulumi.Input - ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput - ToAgentSplunkObservabilityConfigPtrOutputWithContext(context.Context) AgentSplunkObservabilityConfigPtrOutput + ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput + ToAgentPrometheusConfigPtrOutputWithContext(context.Context) AgentPrometheusConfigPtrOutput } -type agentSplunkObservabilityConfigPtrType AgentSplunkObservabilityConfigArgs +type agentPrometheusConfigPtrType AgentPrometheusConfigArgs -func AgentSplunkObservabilityConfigPtr(v *AgentSplunkObservabilityConfigArgs) AgentSplunkObservabilityConfigPtrInput { - return (*agentSplunkObservabilityConfigPtrType)(v) +func AgentPrometheusConfigPtr(v *AgentPrometheusConfigArgs) AgentPrometheusConfigPtrInput { + return (*agentPrometheusConfigPtrType)(v) } -func (*agentSplunkObservabilityConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentSplunkObservabilityConfig)(nil)).Elem() +func (*agentPrometheusConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPrometheusConfig)(nil)).Elem() } -func (i *agentSplunkObservabilityConfigPtrType) ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput { - return i.ToAgentSplunkObservabilityConfigPtrOutputWithContext(context.Background()) +func (i *agentPrometheusConfigPtrType) ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput { + return i.ToAgentPrometheusConfigPtrOutputWithContext(context.Background()) } -func (i *agentSplunkObservabilityConfigPtrType) ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkObservabilityConfigPtrOutput) +func (i *agentPrometheusConfigPtrType) ToAgentPrometheusConfigPtrOutputWithContext(ctx context.Context) AgentPrometheusConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPrometheusConfigPtrOutput) } -type AgentSplunkObservabilityConfigOutput struct{ *pulumi.OutputState } +type AgentPrometheusConfigOutput struct{ *pulumi.OutputState } -func (AgentSplunkObservabilityConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentSplunkObservabilityConfig)(nil)).Elem() +func (AgentPrometheusConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPrometheusConfig)(nil)).Elem() } -func (o AgentSplunkObservabilityConfigOutput) ToAgentSplunkObservabilityConfigOutput() AgentSplunkObservabilityConfigOutput { +func (o AgentPrometheusConfigOutput) ToAgentPrometheusConfigOutput() AgentPrometheusConfigOutput { return o } -func (o AgentSplunkObservabilityConfigOutput) ToAgentSplunkObservabilityConfigOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigOutput { +func (o AgentPrometheusConfigOutput) ToAgentPrometheusConfigOutputWithContext(ctx context.Context) AgentPrometheusConfigOutput { return o } -func (o AgentSplunkObservabilityConfigOutput) ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput { - return o.ToAgentSplunkObservabilityConfigPtrOutputWithContext(context.Background()) +func (o AgentPrometheusConfigOutput) ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput { + return o.ToAgentPrometheusConfigPtrOutputWithContext(context.Background()) } -func (o AgentSplunkObservabilityConfigOutput) ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentSplunkObservabilityConfig) *AgentSplunkObservabilityConfig { - return &v - }).(AgentSplunkObservabilityConfigPtrOutput) +func (o AgentPrometheusConfigOutput) ToAgentPrometheusConfigPtrOutputWithContext(ctx context.Context) AgentPrometheusConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPrometheusConfig) *AgentPrometheusConfig { + return &v + }).(AgentPrometheusConfigPtrOutput) } -// SplunkObservability Realm. -func (o AgentSplunkObservabilityConfigOutput) Realm() pulumi.StringOutput { - return o.ApplyT(func(v AgentSplunkObservabilityConfig) string { return v.Realm }).(pulumi.StringOutput) +// Base URL to Prometheus server. +func (o AgentPrometheusConfigOutput) Url() pulumi.StringOutput { + return o.ApplyT(func(v AgentPrometheusConfig) string { return v.Url }).(pulumi.StringOutput) } -type AgentSplunkObservabilityConfigPtrOutput struct{ *pulumi.OutputState } +type AgentPrometheusConfigPtrOutput struct{ *pulumi.OutputState } -func (AgentSplunkObservabilityConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentSplunkObservabilityConfig)(nil)).Elem() +func (AgentPrometheusConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPrometheusConfig)(nil)).Elem() } -func (o AgentSplunkObservabilityConfigPtrOutput) ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput { +func (o AgentPrometheusConfigPtrOutput) ToAgentPrometheusConfigPtrOutput() AgentPrometheusConfigPtrOutput { return o } -func (o AgentSplunkObservabilityConfigPtrOutput) ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigPtrOutput { +func (o AgentPrometheusConfigPtrOutput) ToAgentPrometheusConfigPtrOutputWithContext(ctx context.Context) AgentPrometheusConfigPtrOutput { return o } -func (o AgentSplunkObservabilityConfigPtrOutput) Elem() AgentSplunkObservabilityConfigOutput { - return o.ApplyT(func(v *AgentSplunkObservabilityConfig) AgentSplunkObservabilityConfig { +func (o AgentPrometheusConfigPtrOutput) Elem() AgentPrometheusConfigOutput { + return o.ApplyT(func(v *AgentPrometheusConfig) AgentPrometheusConfig { if v != nil { return *v } - var ret AgentSplunkObservabilityConfig + var ret AgentPrometheusConfig return ret - }).(AgentSplunkObservabilityConfigOutput) + }).(AgentPrometheusConfigOutput) } -// SplunkObservability Realm. -func (o AgentSplunkObservabilityConfigPtrOutput) Realm() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentSplunkObservabilityConfig) *string { +// Base URL to Prometheus server. +func (o AgentPrometheusConfigPtrOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentPrometheusConfig) *string { if v == nil { return nil } - return &v.Realm + return &v.Url }).(pulumi.StringPtrOutput) } -type AgentSumologicConfig struct { - // Sumo Logic API URL. - Url string `pulumi:"url"` +type AgentQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` } -// AgentSumologicConfigInput is an input type that accepts AgentSumologicConfigArgs and AgentSumologicConfigOutput values. -// You can construct a concrete instance of `AgentSumologicConfigInput` via: +// AgentQueryDelayInput is an input type that accepts AgentQueryDelayArgs and AgentQueryDelayOutput values. +// You can construct a concrete instance of `AgentQueryDelayInput` via: // -// AgentSumologicConfigArgs{...} -type AgentSumologicConfigInput interface { +// AgentQueryDelayArgs{...} +type AgentQueryDelayInput interface { pulumi.Input - ToAgentSumologicConfigOutput() AgentSumologicConfigOutput - ToAgentSumologicConfigOutputWithContext(context.Context) AgentSumologicConfigOutput + ToAgentQueryDelayOutput() AgentQueryDelayOutput + ToAgentQueryDelayOutputWithContext(context.Context) AgentQueryDelayOutput } -type AgentSumologicConfigArgs struct { - // Sumo Logic API URL. - Url pulumi.StringInput `pulumi:"url"` +type AgentQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` } -func (AgentSumologicConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentSumologicConfig)(nil)).Elem() +func (AgentQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentQueryDelay)(nil)).Elem() } -func (i AgentSumologicConfigArgs) ToAgentSumologicConfigOutput() AgentSumologicConfigOutput { - return i.ToAgentSumologicConfigOutputWithContext(context.Background()) +func (i AgentQueryDelayArgs) ToAgentQueryDelayOutput() AgentQueryDelayOutput { + return i.ToAgentQueryDelayOutputWithContext(context.Background()) } -func (i AgentSumologicConfigArgs) ToAgentSumologicConfigOutputWithContext(ctx context.Context) AgentSumologicConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSumologicConfigOutput) +func (i AgentQueryDelayArgs) ToAgentQueryDelayOutputWithContext(ctx context.Context) AgentQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentQueryDelayOutput) } -func (i AgentSumologicConfigArgs) ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput { - return i.ToAgentSumologicConfigPtrOutputWithContext(context.Background()) +func (i AgentQueryDelayArgs) ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput { + return i.ToAgentQueryDelayPtrOutputWithContext(context.Background()) } -func (i AgentSumologicConfigArgs) ToAgentSumologicConfigPtrOutputWithContext(ctx context.Context) AgentSumologicConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSumologicConfigOutput).ToAgentSumologicConfigPtrOutputWithContext(ctx) +func (i AgentQueryDelayArgs) ToAgentQueryDelayPtrOutputWithContext(ctx context.Context) AgentQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentQueryDelayOutput).ToAgentQueryDelayPtrOutputWithContext(ctx) } -// AgentSumologicConfigPtrInput is an input type that accepts AgentSumologicConfigArgs, AgentSumologicConfigPtr and AgentSumologicConfigPtrOutput values. -// You can construct a concrete instance of `AgentSumologicConfigPtrInput` via: +// AgentQueryDelayPtrInput is an input type that accepts AgentQueryDelayArgs, AgentQueryDelayPtr and AgentQueryDelayPtrOutput values. +// You can construct a concrete instance of `AgentQueryDelayPtrInput` via: // -// AgentSumologicConfigArgs{...} +// AgentQueryDelayArgs{...} // -// or: +// or: // -// nil -type AgentSumologicConfigPtrInput interface { +// nil +type AgentQueryDelayPtrInput interface { pulumi.Input - ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput - ToAgentSumologicConfigPtrOutputWithContext(context.Context) AgentSumologicConfigPtrOutput + ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput + ToAgentQueryDelayPtrOutputWithContext(context.Context) AgentQueryDelayPtrOutput } -type agentSumologicConfigPtrType AgentSumologicConfigArgs +type agentQueryDelayPtrType AgentQueryDelayArgs -func AgentSumologicConfigPtr(v *AgentSumologicConfigArgs) AgentSumologicConfigPtrInput { - return (*agentSumologicConfigPtrType)(v) +func AgentQueryDelayPtr(v *AgentQueryDelayArgs) AgentQueryDelayPtrInput { + return (*agentQueryDelayPtrType)(v) } -func (*agentSumologicConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentSumologicConfig)(nil)).Elem() +func (*agentQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentQueryDelay)(nil)).Elem() } -func (i *agentSumologicConfigPtrType) ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput { - return i.ToAgentSumologicConfigPtrOutputWithContext(context.Background()) +func (i *agentQueryDelayPtrType) ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput { + return i.ToAgentQueryDelayPtrOutputWithContext(context.Background()) } -func (i *agentSumologicConfigPtrType) ToAgentSumologicConfigPtrOutputWithContext(ctx context.Context) AgentSumologicConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentSumologicConfigPtrOutput) +func (i *agentQueryDelayPtrType) ToAgentQueryDelayPtrOutputWithContext(ctx context.Context) AgentQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentQueryDelayPtrOutput) } -type AgentSumologicConfigOutput struct{ *pulumi.OutputState } +type AgentQueryDelayOutput struct{ *pulumi.OutputState } -func (AgentSumologicConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentSumologicConfig)(nil)).Elem() +func (AgentQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentQueryDelay)(nil)).Elem() } -func (o AgentSumologicConfigOutput) ToAgentSumologicConfigOutput() AgentSumologicConfigOutput { +func (o AgentQueryDelayOutput) ToAgentQueryDelayOutput() AgentQueryDelayOutput { return o } -func (o AgentSumologicConfigOutput) ToAgentSumologicConfigOutputWithContext(ctx context.Context) AgentSumologicConfigOutput { +func (o AgentQueryDelayOutput) ToAgentQueryDelayOutputWithContext(ctx context.Context) AgentQueryDelayOutput { return o } -func (o AgentSumologicConfigOutput) ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput { - return o.ToAgentSumologicConfigPtrOutputWithContext(context.Background()) +func (o AgentQueryDelayOutput) ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput { + return o.ToAgentQueryDelayPtrOutputWithContext(context.Background()) } -func (o AgentSumologicConfigOutput) ToAgentSumologicConfigPtrOutputWithContext(ctx context.Context) AgentSumologicConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentSumologicConfig) *AgentSumologicConfig { +func (o AgentQueryDelayOutput) ToAgentQueryDelayPtrOutputWithContext(ctx context.Context) AgentQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentQueryDelay) *AgentQueryDelay { return &v - }).(AgentSumologicConfigPtrOutput) + }).(AgentQueryDelayPtrOutput) } -// Sumo Logic API URL. -func (o AgentSumologicConfigOutput) Url() pulumi.StringOutput { - return o.ApplyT(func(v AgentSumologicConfig) string { return v.Url }).(pulumi.StringOutput) +// Must be one of Minute or Second. +func (o AgentQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v AgentQueryDelay) string { return v.Unit }).(pulumi.StringOutput) } -type AgentSumologicConfigPtrOutput struct{ *pulumi.OutputState } +// Must be an integer greater than or equal to 0. +func (o AgentQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v AgentQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} -func (AgentSumologicConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentSumologicConfig)(nil)).Elem() +type AgentQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (AgentQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentQueryDelay)(nil)).Elem() } -func (o AgentSumologicConfigPtrOutput) ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput { +func (o AgentQueryDelayPtrOutput) ToAgentQueryDelayPtrOutput() AgentQueryDelayPtrOutput { return o } -func (o AgentSumologicConfigPtrOutput) ToAgentSumologicConfigPtrOutputWithContext(ctx context.Context) AgentSumologicConfigPtrOutput { +func (o AgentQueryDelayPtrOutput) ToAgentQueryDelayPtrOutputWithContext(ctx context.Context) AgentQueryDelayPtrOutput { return o } -func (o AgentSumologicConfigPtrOutput) Elem() AgentSumologicConfigOutput { - return o.ApplyT(func(v *AgentSumologicConfig) AgentSumologicConfig { +func (o AgentQueryDelayPtrOutput) Elem() AgentQueryDelayOutput { + return o.ApplyT(func(v *AgentQueryDelay) AgentQueryDelay { if v != nil { return *v } - var ret AgentSumologicConfig + var ret AgentQueryDelay return ret - }).(AgentSumologicConfigOutput) + }).(AgentQueryDelayOutput) } -// Sumo Logic API URL. -func (o AgentSumologicConfigPtrOutput) Url() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentSumologicConfig) *string { +// Must be one of Minute or Second. +func (o AgentQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentQueryDelay) *string { if v == nil { return nil } - return &v.Url + return &v.Unit }).(pulumi.StringPtrOutput) } -type AgentThousandeyesConfig struct { +// Must be an integer greater than or equal to 0. +func (o AgentQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AgentQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) } -// AgentThousandeyesConfigInput is an input type that accepts AgentThousandeyesConfigArgs and AgentThousandeyesConfigOutput values. -// You can construct a concrete instance of `AgentThousandeyesConfigInput` via: +type AgentRedshiftConfig struct { +} + +// AgentRedshiftConfigInput is an input type that accepts AgentRedshiftConfigArgs and AgentRedshiftConfigOutput values. +// You can construct a concrete instance of `AgentRedshiftConfigInput` via: // -// AgentThousandeyesConfigArgs{...} -type AgentThousandeyesConfigInput interface { +// AgentRedshiftConfigArgs{...} +type AgentRedshiftConfigInput interface { pulumi.Input - ToAgentThousandeyesConfigOutput() AgentThousandeyesConfigOutput - ToAgentThousandeyesConfigOutputWithContext(context.Context) AgentThousandeyesConfigOutput + ToAgentRedshiftConfigOutput() AgentRedshiftConfigOutput + ToAgentRedshiftConfigOutputWithContext(context.Context) AgentRedshiftConfigOutput } -type AgentThousandeyesConfigArgs struct { +type AgentRedshiftConfigArgs struct { } -func (AgentThousandeyesConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentThousandeyesConfig)(nil)).Elem() +func (AgentRedshiftConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentRedshiftConfig)(nil)).Elem() } -func (i AgentThousandeyesConfigArgs) ToAgentThousandeyesConfigOutput() AgentThousandeyesConfigOutput { - return i.ToAgentThousandeyesConfigOutputWithContext(context.Background()) +func (i AgentRedshiftConfigArgs) ToAgentRedshiftConfigOutput() AgentRedshiftConfigOutput { + return i.ToAgentRedshiftConfigOutputWithContext(context.Background()) } -func (i AgentThousandeyesConfigArgs) ToAgentThousandeyesConfigOutputWithContext(ctx context.Context) AgentThousandeyesConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentThousandeyesConfigOutput) +func (i AgentRedshiftConfigArgs) ToAgentRedshiftConfigOutputWithContext(ctx context.Context) AgentRedshiftConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentRedshiftConfigOutput) } -func (i AgentThousandeyesConfigArgs) ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput { - return i.ToAgentThousandeyesConfigPtrOutputWithContext(context.Background()) +func (i AgentRedshiftConfigArgs) ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput { + return i.ToAgentRedshiftConfigPtrOutputWithContext(context.Background()) } -func (i AgentThousandeyesConfigArgs) ToAgentThousandeyesConfigPtrOutputWithContext(ctx context.Context) AgentThousandeyesConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentThousandeyesConfigOutput).ToAgentThousandeyesConfigPtrOutputWithContext(ctx) +func (i AgentRedshiftConfigArgs) ToAgentRedshiftConfigPtrOutputWithContext(ctx context.Context) AgentRedshiftConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentRedshiftConfigOutput).ToAgentRedshiftConfigPtrOutputWithContext(ctx) } -// AgentThousandeyesConfigPtrInput is an input type that accepts AgentThousandeyesConfigArgs, AgentThousandeyesConfigPtr and AgentThousandeyesConfigPtrOutput values. -// You can construct a concrete instance of `AgentThousandeyesConfigPtrInput` via: +// AgentRedshiftConfigPtrInput is an input type that accepts AgentRedshiftConfigArgs, AgentRedshiftConfigPtr and AgentRedshiftConfigPtrOutput values. +// You can construct a concrete instance of `AgentRedshiftConfigPtrInput` via: // -// AgentThousandeyesConfigArgs{...} +// AgentRedshiftConfigArgs{...} // -// or: +// or: // -// nil -type AgentThousandeyesConfigPtrInput interface { +// nil +type AgentRedshiftConfigPtrInput interface { pulumi.Input - ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput - ToAgentThousandeyesConfigPtrOutputWithContext(context.Context) AgentThousandeyesConfigPtrOutput + ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput + ToAgentRedshiftConfigPtrOutputWithContext(context.Context) AgentRedshiftConfigPtrOutput } -type agentThousandeyesConfigPtrType AgentThousandeyesConfigArgs +type agentRedshiftConfigPtrType AgentRedshiftConfigArgs -func AgentThousandeyesConfigPtr(v *AgentThousandeyesConfigArgs) AgentThousandeyesConfigPtrInput { - return (*agentThousandeyesConfigPtrType)(v) +func AgentRedshiftConfigPtr(v *AgentRedshiftConfigArgs) AgentRedshiftConfigPtrInput { + return (*agentRedshiftConfigPtrType)(v) } -func (*agentThousandeyesConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentThousandeyesConfig)(nil)).Elem() +func (*agentRedshiftConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentRedshiftConfig)(nil)).Elem() } -func (i *agentThousandeyesConfigPtrType) ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput { - return i.ToAgentThousandeyesConfigPtrOutputWithContext(context.Background()) +func (i *agentRedshiftConfigPtrType) ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput { + return i.ToAgentRedshiftConfigPtrOutputWithContext(context.Background()) } -func (i *agentThousandeyesConfigPtrType) ToAgentThousandeyesConfigPtrOutputWithContext(ctx context.Context) AgentThousandeyesConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentThousandeyesConfigPtrOutput) +func (i *agentRedshiftConfigPtrType) ToAgentRedshiftConfigPtrOutputWithContext(ctx context.Context) AgentRedshiftConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentRedshiftConfigPtrOutput) } -type AgentThousandeyesConfigOutput struct{ *pulumi.OutputState } +type AgentRedshiftConfigOutput struct{ *pulumi.OutputState } -func (AgentThousandeyesConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentThousandeyesConfig)(nil)).Elem() +func (AgentRedshiftConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentRedshiftConfig)(nil)).Elem() } -func (o AgentThousandeyesConfigOutput) ToAgentThousandeyesConfigOutput() AgentThousandeyesConfigOutput { +func (o AgentRedshiftConfigOutput) ToAgentRedshiftConfigOutput() AgentRedshiftConfigOutput { return o } -func (o AgentThousandeyesConfigOutput) ToAgentThousandeyesConfigOutputWithContext(ctx context.Context) AgentThousandeyesConfigOutput { +func (o AgentRedshiftConfigOutput) ToAgentRedshiftConfigOutputWithContext(ctx context.Context) AgentRedshiftConfigOutput { return o } -func (o AgentThousandeyesConfigOutput) ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput { - return o.ToAgentThousandeyesConfigPtrOutputWithContext(context.Background()) +func (o AgentRedshiftConfigOutput) ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput { + return o.ToAgentRedshiftConfigPtrOutputWithContext(context.Background()) } -func (o AgentThousandeyesConfigOutput) ToAgentThousandeyesConfigPtrOutputWithContext(ctx context.Context) AgentThousandeyesConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentThousandeyesConfig) *AgentThousandeyesConfig { +func (o AgentRedshiftConfigOutput) ToAgentRedshiftConfigPtrOutputWithContext(ctx context.Context) AgentRedshiftConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentRedshiftConfig) *AgentRedshiftConfig { return &v - }).(AgentThousandeyesConfigPtrOutput) + }).(AgentRedshiftConfigPtrOutput) } -type AgentThousandeyesConfigPtrOutput struct{ *pulumi.OutputState } +type AgentRedshiftConfigPtrOutput struct{ *pulumi.OutputState } -func (AgentThousandeyesConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentThousandeyesConfig)(nil)).Elem() +func (AgentRedshiftConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentRedshiftConfig)(nil)).Elem() } -func (o AgentThousandeyesConfigPtrOutput) ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput { +func (o AgentRedshiftConfigPtrOutput) ToAgentRedshiftConfigPtrOutput() AgentRedshiftConfigPtrOutput { return o } -func (o AgentThousandeyesConfigPtrOutput) ToAgentThousandeyesConfigPtrOutputWithContext(ctx context.Context) AgentThousandeyesConfigPtrOutput { +func (o AgentRedshiftConfigPtrOutput) ToAgentRedshiftConfigPtrOutputWithContext(ctx context.Context) AgentRedshiftConfigPtrOutput { return o } -func (o AgentThousandeyesConfigPtrOutput) Elem() AgentThousandeyesConfigOutput { - return o.ApplyT(func(v *AgentThousandeyesConfig) AgentThousandeyesConfig { +func (o AgentRedshiftConfigPtrOutput) Elem() AgentRedshiftConfigOutput { + return o.ApplyT(func(v *AgentRedshiftConfig) AgentRedshiftConfig { if v != nil { return *v } - var ret AgentThousandeyesConfig + var ret AgentRedshiftConfig return ret - }).(AgentThousandeyesConfigOutput) + }).(AgentRedshiftConfigOutput) } -type AlertPolicyAlertMethod struct { - // The name of the previously defined alert method. - Name string `pulumi:"name"` - // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. - Project *string `pulumi:"project"` +type AgentSplunkConfig struct { + // Base API URL to the Splunk Search app. + Url string `pulumi:"url"` } -// AlertPolicyAlertMethodInput is an input type that accepts AlertPolicyAlertMethodArgs and AlertPolicyAlertMethodOutput values. -// You can construct a concrete instance of `AlertPolicyAlertMethodInput` via: +// AgentSplunkConfigInput is an input type that accepts AgentSplunkConfigArgs and AgentSplunkConfigOutput values. +// You can construct a concrete instance of `AgentSplunkConfigInput` via: // -// AlertPolicyAlertMethodArgs{...} -type AlertPolicyAlertMethodInput interface { +// AgentSplunkConfigArgs{...} +type AgentSplunkConfigInput interface { pulumi.Input - ToAlertPolicyAlertMethodOutput() AlertPolicyAlertMethodOutput - ToAlertPolicyAlertMethodOutputWithContext(context.Context) AlertPolicyAlertMethodOutput + ToAgentSplunkConfigOutput() AgentSplunkConfigOutput + ToAgentSplunkConfigOutputWithContext(context.Context) AgentSplunkConfigOutput } -type AlertPolicyAlertMethodArgs struct { - // The name of the previously defined alert method. - Name pulumi.StringInput `pulumi:"name"` - // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. - Project pulumi.StringPtrInput `pulumi:"project"` +type AgentSplunkConfigArgs struct { + // Base API URL to the Splunk Search app. + Url pulumi.StringInput `pulumi:"url"` } -func (AlertPolicyAlertMethodArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AlertPolicyAlertMethod)(nil)).Elem() +func (AgentSplunkConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentSplunkConfig)(nil)).Elem() } -func (i AlertPolicyAlertMethodArgs) ToAlertPolicyAlertMethodOutput() AlertPolicyAlertMethodOutput { - return i.ToAlertPolicyAlertMethodOutputWithContext(context.Background()) +func (i AgentSplunkConfigArgs) ToAgentSplunkConfigOutput() AgentSplunkConfigOutput { + return i.ToAgentSplunkConfigOutputWithContext(context.Background()) } -func (i AlertPolicyAlertMethodArgs) ToAlertPolicyAlertMethodOutputWithContext(ctx context.Context) AlertPolicyAlertMethodOutput { - return pulumi.ToOutputWithContext(ctx, i).(AlertPolicyAlertMethodOutput) +func (i AgentSplunkConfigArgs) ToAgentSplunkConfigOutputWithContext(ctx context.Context) AgentSplunkConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkConfigOutput) } -// AlertPolicyAlertMethodArrayInput is an input type that accepts AlertPolicyAlertMethodArray and AlertPolicyAlertMethodArrayOutput values. -// You can construct a concrete instance of `AlertPolicyAlertMethodArrayInput` via: +func (i AgentSplunkConfigArgs) ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput { + return i.ToAgentSplunkConfigPtrOutputWithContext(context.Background()) +} + +func (i AgentSplunkConfigArgs) ToAgentSplunkConfigPtrOutputWithContext(ctx context.Context) AgentSplunkConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkConfigOutput).ToAgentSplunkConfigPtrOutputWithContext(ctx) +} + +// AgentSplunkConfigPtrInput is an input type that accepts AgentSplunkConfigArgs, AgentSplunkConfigPtr and AgentSplunkConfigPtrOutput values. +// You can construct a concrete instance of `AgentSplunkConfigPtrInput` via: // -// AlertPolicyAlertMethodArray{ AlertPolicyAlertMethodArgs{...} } -type AlertPolicyAlertMethodArrayInput interface { +// AgentSplunkConfigArgs{...} +// +// or: +// +// nil +type AgentSplunkConfigPtrInput interface { pulumi.Input - ToAlertPolicyAlertMethodArrayOutput() AlertPolicyAlertMethodArrayOutput - ToAlertPolicyAlertMethodArrayOutputWithContext(context.Context) AlertPolicyAlertMethodArrayOutput + ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput + ToAgentSplunkConfigPtrOutputWithContext(context.Context) AgentSplunkConfigPtrOutput } -type AlertPolicyAlertMethodArray []AlertPolicyAlertMethodInput +type agentSplunkConfigPtrType AgentSplunkConfigArgs -func (AlertPolicyAlertMethodArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]AlertPolicyAlertMethod)(nil)).Elem() +func AgentSplunkConfigPtr(v *AgentSplunkConfigArgs) AgentSplunkConfigPtrInput { + return (*agentSplunkConfigPtrType)(v) } -func (i AlertPolicyAlertMethodArray) ToAlertPolicyAlertMethodArrayOutput() AlertPolicyAlertMethodArrayOutput { - return i.ToAlertPolicyAlertMethodArrayOutputWithContext(context.Background()) +func (*agentSplunkConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentSplunkConfig)(nil)).Elem() } -func (i AlertPolicyAlertMethodArray) ToAlertPolicyAlertMethodArrayOutputWithContext(ctx context.Context) AlertPolicyAlertMethodArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(AlertPolicyAlertMethodArrayOutput) +func (i *agentSplunkConfigPtrType) ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput { + return i.ToAgentSplunkConfigPtrOutputWithContext(context.Background()) } -type AlertPolicyAlertMethodOutput struct{ *pulumi.OutputState } +func (i *agentSplunkConfigPtrType) ToAgentSplunkConfigPtrOutputWithContext(ctx context.Context) AgentSplunkConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkConfigPtrOutput) +} -func (AlertPolicyAlertMethodOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AlertPolicyAlertMethod)(nil)).Elem() +type AgentSplunkConfigOutput struct{ *pulumi.OutputState } + +func (AgentSplunkConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentSplunkConfig)(nil)).Elem() } -func (o AlertPolicyAlertMethodOutput) ToAlertPolicyAlertMethodOutput() AlertPolicyAlertMethodOutput { +func (o AgentSplunkConfigOutput) ToAgentSplunkConfigOutput() AgentSplunkConfigOutput { return o } -func (o AlertPolicyAlertMethodOutput) ToAlertPolicyAlertMethodOutputWithContext(ctx context.Context) AlertPolicyAlertMethodOutput { +func (o AgentSplunkConfigOutput) ToAgentSplunkConfigOutputWithContext(ctx context.Context) AgentSplunkConfigOutput { return o } -// The name of the previously defined alert method. -func (o AlertPolicyAlertMethodOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v AlertPolicyAlertMethod) string { return v.Name }).(pulumi.StringOutput) +func (o AgentSplunkConfigOutput) ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput { + return o.ToAgentSplunkConfigPtrOutputWithContext(context.Background()) } -// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. -func (o AlertPolicyAlertMethodOutput) Project() pulumi.StringPtrOutput { - return o.ApplyT(func(v AlertPolicyAlertMethod) *string { return v.Project }).(pulumi.StringPtrOutput) +func (o AgentSplunkConfigOutput) ToAgentSplunkConfigPtrOutputWithContext(ctx context.Context) AgentSplunkConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentSplunkConfig) *AgentSplunkConfig { + return &v + }).(AgentSplunkConfigPtrOutput) } -type AlertPolicyAlertMethodArrayOutput struct{ *pulumi.OutputState } +// Base API URL to the Splunk Search app. +func (o AgentSplunkConfigOutput) Url() pulumi.StringOutput { + return o.ApplyT(func(v AgentSplunkConfig) string { return v.Url }).(pulumi.StringOutput) +} -func (AlertPolicyAlertMethodArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]AlertPolicyAlertMethod)(nil)).Elem() +type AgentSplunkConfigPtrOutput struct{ *pulumi.OutputState } + +func (AgentSplunkConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentSplunkConfig)(nil)).Elem() } -func (o AlertPolicyAlertMethodArrayOutput) ToAlertPolicyAlertMethodArrayOutput() AlertPolicyAlertMethodArrayOutput { +func (o AgentSplunkConfigPtrOutput) ToAgentSplunkConfigPtrOutput() AgentSplunkConfigPtrOutput { return o } -func (o AlertPolicyAlertMethodArrayOutput) ToAlertPolicyAlertMethodArrayOutputWithContext(ctx context.Context) AlertPolicyAlertMethodArrayOutput { +func (o AgentSplunkConfigPtrOutput) ToAgentSplunkConfigPtrOutputWithContext(ctx context.Context) AgentSplunkConfigPtrOutput { return o } -func (o AlertPolicyAlertMethodArrayOutput) Index(i pulumi.IntInput) AlertPolicyAlertMethodOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) AlertPolicyAlertMethod { - return vs[0].([]AlertPolicyAlertMethod)[vs[1].(int)] - }).(AlertPolicyAlertMethodOutput) +func (o AgentSplunkConfigPtrOutput) Elem() AgentSplunkConfigOutput { + return o.ApplyT(func(v *AgentSplunkConfig) AgentSplunkConfig { + if v != nil { + return *v + } + var ret AgentSplunkConfig + return ret + }).(AgentSplunkConfigOutput) } -type AlertPolicyCondition struct { - // Indicates how long a given condition needs to be valid to mark the condition as true. - LastsFor *string `pulumi:"lastsFor"` - // One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. - Measurement string `pulumi:"measurement"` - // For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned. - Value *float64 `pulumi:"value"` - // Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. - ValueString *string `pulumi:"valueString"` +// Base API URL to the Splunk Search app. +func (o AgentSplunkConfigPtrOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentSplunkConfig) *string { + if v == nil { + return nil + } + return &v.Url + }).(pulumi.StringPtrOutput) } -// AlertPolicyConditionInput is an input type that accepts AlertPolicyConditionArgs and AlertPolicyConditionOutput values. -// You can construct a concrete instance of `AlertPolicyConditionInput` via: +type AgentSplunkObservabilityConfig struct { + // SplunkObservability Realm. + Realm string `pulumi:"realm"` +} + +// AgentSplunkObservabilityConfigInput is an input type that accepts AgentSplunkObservabilityConfigArgs and AgentSplunkObservabilityConfigOutput values. +// You can construct a concrete instance of `AgentSplunkObservabilityConfigInput` via: // -// AlertPolicyConditionArgs{...} -type AlertPolicyConditionInput interface { +// AgentSplunkObservabilityConfigArgs{...} +type AgentSplunkObservabilityConfigInput interface { pulumi.Input - ToAlertPolicyConditionOutput() AlertPolicyConditionOutput - ToAlertPolicyConditionOutputWithContext(context.Context) AlertPolicyConditionOutput + ToAgentSplunkObservabilityConfigOutput() AgentSplunkObservabilityConfigOutput + ToAgentSplunkObservabilityConfigOutputWithContext(context.Context) AgentSplunkObservabilityConfigOutput } -type AlertPolicyConditionArgs struct { - // Indicates how long a given condition needs to be valid to mark the condition as true. - LastsFor pulumi.StringPtrInput `pulumi:"lastsFor"` - // One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. - Measurement pulumi.StringInput `pulumi:"measurement"` - // For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned. - Value pulumi.Float64PtrInput `pulumi:"value"` - // Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. - ValueString pulumi.StringPtrInput `pulumi:"valueString"` +type AgentSplunkObservabilityConfigArgs struct { + // SplunkObservability Realm. + Realm pulumi.StringInput `pulumi:"realm"` } -func (AlertPolicyConditionArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AlertPolicyCondition)(nil)).Elem() +func (AgentSplunkObservabilityConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentSplunkObservabilityConfig)(nil)).Elem() } -func (i AlertPolicyConditionArgs) ToAlertPolicyConditionOutput() AlertPolicyConditionOutput { - return i.ToAlertPolicyConditionOutputWithContext(context.Background()) +func (i AgentSplunkObservabilityConfigArgs) ToAgentSplunkObservabilityConfigOutput() AgentSplunkObservabilityConfigOutput { + return i.ToAgentSplunkObservabilityConfigOutputWithContext(context.Background()) } -func (i AlertPolicyConditionArgs) ToAlertPolicyConditionOutputWithContext(ctx context.Context) AlertPolicyConditionOutput { - return pulumi.ToOutputWithContext(ctx, i).(AlertPolicyConditionOutput) +func (i AgentSplunkObservabilityConfigArgs) ToAgentSplunkObservabilityConfigOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkObservabilityConfigOutput) } -// AlertPolicyConditionArrayInput is an input type that accepts AlertPolicyConditionArray and AlertPolicyConditionArrayOutput values. -// You can construct a concrete instance of `AlertPolicyConditionArrayInput` via: +func (i AgentSplunkObservabilityConfigArgs) ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput { + return i.ToAgentSplunkObservabilityConfigPtrOutputWithContext(context.Background()) +} + +func (i AgentSplunkObservabilityConfigArgs) ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkObservabilityConfigOutput).ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx) +} + +// AgentSplunkObservabilityConfigPtrInput is an input type that accepts AgentSplunkObservabilityConfigArgs, AgentSplunkObservabilityConfigPtr and AgentSplunkObservabilityConfigPtrOutput values. +// You can construct a concrete instance of `AgentSplunkObservabilityConfigPtrInput` via: // -// AlertPolicyConditionArray{ AlertPolicyConditionArgs{...} } -type AlertPolicyConditionArrayInput interface { +// AgentSplunkObservabilityConfigArgs{...} +// +// or: +// +// nil +type AgentSplunkObservabilityConfigPtrInput interface { pulumi.Input - ToAlertPolicyConditionArrayOutput() AlertPolicyConditionArrayOutput - ToAlertPolicyConditionArrayOutputWithContext(context.Context) AlertPolicyConditionArrayOutput + ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput + ToAgentSplunkObservabilityConfigPtrOutputWithContext(context.Context) AgentSplunkObservabilityConfigPtrOutput } -type AlertPolicyConditionArray []AlertPolicyConditionInput +type agentSplunkObservabilityConfigPtrType AgentSplunkObservabilityConfigArgs -func (AlertPolicyConditionArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]AlertPolicyCondition)(nil)).Elem() +func AgentSplunkObservabilityConfigPtr(v *AgentSplunkObservabilityConfigArgs) AgentSplunkObservabilityConfigPtrInput { + return (*agentSplunkObservabilityConfigPtrType)(v) } -func (i AlertPolicyConditionArray) ToAlertPolicyConditionArrayOutput() AlertPolicyConditionArrayOutput { - return i.ToAlertPolicyConditionArrayOutputWithContext(context.Background()) +func (*agentSplunkObservabilityConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentSplunkObservabilityConfig)(nil)).Elem() } -func (i AlertPolicyConditionArray) ToAlertPolicyConditionArrayOutputWithContext(ctx context.Context) AlertPolicyConditionArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(AlertPolicyConditionArrayOutput) +func (i *agentSplunkObservabilityConfigPtrType) ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput { + return i.ToAgentSplunkObservabilityConfigPtrOutputWithContext(context.Background()) } -type AlertPolicyConditionOutput struct{ *pulumi.OutputState } - -func (AlertPolicyConditionOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AlertPolicyCondition)(nil)).Elem() +func (i *agentSplunkObservabilityConfigPtrType) ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSplunkObservabilityConfigPtrOutput) } -func (o AlertPolicyConditionOutput) ToAlertPolicyConditionOutput() AlertPolicyConditionOutput { - return o +type AgentSplunkObservabilityConfigOutput struct{ *pulumi.OutputState } + +func (AgentSplunkObservabilityConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentSplunkObservabilityConfig)(nil)).Elem() } -func (o AlertPolicyConditionOutput) ToAlertPolicyConditionOutputWithContext(ctx context.Context) AlertPolicyConditionOutput { +func (o AgentSplunkObservabilityConfigOutput) ToAgentSplunkObservabilityConfigOutput() AgentSplunkObservabilityConfigOutput { return o } -// Indicates how long a given condition needs to be valid to mark the condition as true. -func (o AlertPolicyConditionOutput) LastsFor() pulumi.StringPtrOutput { - return o.ApplyT(func(v AlertPolicyCondition) *string { return v.LastsFor }).(pulumi.StringPtrOutput) +func (o AgentSplunkObservabilityConfigOutput) ToAgentSplunkObservabilityConfigOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigOutput { + return o } -// One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. -func (o AlertPolicyConditionOutput) Measurement() pulumi.StringOutput { - return o.ApplyT(func(v AlertPolicyCondition) string { return v.Measurement }).(pulumi.StringOutput) +func (o AgentSplunkObservabilityConfigOutput) ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput { + return o.ToAgentSplunkObservabilityConfigPtrOutputWithContext(context.Background()) } -// For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned. -func (o AlertPolicyConditionOutput) Value() pulumi.Float64PtrOutput { - return o.ApplyT(func(v AlertPolicyCondition) *float64 { return v.Value }).(pulumi.Float64PtrOutput) +func (o AgentSplunkObservabilityConfigOutput) ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentSplunkObservabilityConfig) *AgentSplunkObservabilityConfig { + return &v + }).(AgentSplunkObservabilityConfigPtrOutput) } -// Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. -func (o AlertPolicyConditionOutput) ValueString() pulumi.StringPtrOutput { - return o.ApplyT(func(v AlertPolicyCondition) *string { return v.ValueString }).(pulumi.StringPtrOutput) +// SplunkObservability Realm. +func (o AgentSplunkObservabilityConfigOutput) Realm() pulumi.StringOutput { + return o.ApplyT(func(v AgentSplunkObservabilityConfig) string { return v.Realm }).(pulumi.StringOutput) } -type AlertPolicyConditionArrayOutput struct{ *pulumi.OutputState } +type AgentSplunkObservabilityConfigPtrOutput struct{ *pulumi.OutputState } -func (AlertPolicyConditionArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]AlertPolicyCondition)(nil)).Elem() +func (AgentSplunkObservabilityConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentSplunkObservabilityConfig)(nil)).Elem() } -func (o AlertPolicyConditionArrayOutput) ToAlertPolicyConditionArrayOutput() AlertPolicyConditionArrayOutput { +func (o AgentSplunkObservabilityConfigPtrOutput) ToAgentSplunkObservabilityConfigPtrOutput() AgentSplunkObservabilityConfigPtrOutput { return o } -func (o AlertPolicyConditionArrayOutput) ToAlertPolicyConditionArrayOutputWithContext(ctx context.Context) AlertPolicyConditionArrayOutput { +func (o AgentSplunkObservabilityConfigPtrOutput) ToAgentSplunkObservabilityConfigPtrOutputWithContext(ctx context.Context) AgentSplunkObservabilityConfigPtrOutput { return o } -func (o AlertPolicyConditionArrayOutput) Index(i pulumi.IntInput) AlertPolicyConditionOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) AlertPolicyCondition { - return vs[0].([]AlertPolicyCondition)[vs[1].(int)] - }).(AlertPolicyConditionOutput) +func (o AgentSplunkObservabilityConfigPtrOutput) Elem() AgentSplunkObservabilityConfigOutput { + return o.ApplyT(func(v *AgentSplunkObservabilityConfig) AgentSplunkObservabilityConfig { + if v != nil { + return *v + } + var ret AgentSplunkObservabilityConfig + return ret + }).(AgentSplunkObservabilityConfigOutput) } -type DirectAppdynamicsQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +// SplunkObservability Realm. +func (o AgentSplunkObservabilityConfigPtrOutput) Realm() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentSplunkObservabilityConfig) *string { + if v == nil { + return nil + } + return &v.Realm + }).(pulumi.StringPtrOutput) } -// DirectAppdynamicsQueryDelayInput is an input type that accepts DirectAppdynamicsQueryDelayArgs and DirectAppdynamicsQueryDelayOutput values. -// You can construct a concrete instance of `DirectAppdynamicsQueryDelayInput` via: +type AgentSumologicConfig struct { + // Sumo Logic API URL. + Url string `pulumi:"url"` +} + +// AgentSumologicConfigInput is an input type that accepts AgentSumologicConfigArgs and AgentSumologicConfigOutput values. +// You can construct a concrete instance of `AgentSumologicConfigInput` via: // -// DirectAppdynamicsQueryDelayArgs{...} -type DirectAppdynamicsQueryDelayInput interface { +// AgentSumologicConfigArgs{...} +type AgentSumologicConfigInput interface { pulumi.Input - ToDirectAppdynamicsQueryDelayOutput() DirectAppdynamicsQueryDelayOutput - ToDirectAppdynamicsQueryDelayOutputWithContext(context.Context) DirectAppdynamicsQueryDelayOutput + ToAgentSumologicConfigOutput() AgentSumologicConfigOutput + ToAgentSumologicConfigOutputWithContext(context.Context) AgentSumologicConfigOutput } -type DirectAppdynamicsQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type AgentSumologicConfigArgs struct { + // Sumo Logic API URL. + Url pulumi.StringInput `pulumi:"url"` } -func (DirectAppdynamicsQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectAppdynamicsQueryDelay)(nil)).Elem() +func (AgentSumologicConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentSumologicConfig)(nil)).Elem() } -func (i DirectAppdynamicsQueryDelayArgs) ToDirectAppdynamicsQueryDelayOutput() DirectAppdynamicsQueryDelayOutput { - return i.ToDirectAppdynamicsQueryDelayOutputWithContext(context.Background()) +func (i AgentSumologicConfigArgs) ToAgentSumologicConfigOutput() AgentSumologicConfigOutput { + return i.ToAgentSumologicConfigOutputWithContext(context.Background()) } -func (i DirectAppdynamicsQueryDelayArgs) ToDirectAppdynamicsQueryDelayOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsQueryDelayOutput) +func (i AgentSumologicConfigArgs) ToAgentSumologicConfigOutputWithContext(ctx context.Context) AgentSumologicConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSumologicConfigOutput) } -func (i DirectAppdynamicsQueryDelayArgs) ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput { - return i.ToDirectAppdynamicsQueryDelayPtrOutputWithContext(context.Background()) +func (i AgentSumologicConfigArgs) ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput { + return i.ToAgentSumologicConfigPtrOutputWithContext(context.Background()) } -func (i DirectAppdynamicsQueryDelayArgs) ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsQueryDelayOutput).ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx) +func (i AgentSumologicConfigArgs) ToAgentSumologicConfigPtrOutputWithContext(ctx context.Context) AgentSumologicConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSumologicConfigOutput).ToAgentSumologicConfigPtrOutputWithContext(ctx) } -// DirectAppdynamicsQueryDelayPtrInput is an input type that accepts DirectAppdynamicsQueryDelayArgs, DirectAppdynamicsQueryDelayPtr and DirectAppdynamicsQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectAppdynamicsQueryDelayPtrInput` via: +// AgentSumologicConfigPtrInput is an input type that accepts AgentSumologicConfigArgs, AgentSumologicConfigPtr and AgentSumologicConfigPtrOutput values. +// You can construct a concrete instance of `AgentSumologicConfigPtrInput` via: // -// DirectAppdynamicsQueryDelayArgs{...} +// AgentSumologicConfigArgs{...} // -// or: +// or: // -// nil -type DirectAppdynamicsQueryDelayPtrInput interface { +// nil +type AgentSumologicConfigPtrInput interface { pulumi.Input - ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput - ToDirectAppdynamicsQueryDelayPtrOutputWithContext(context.Context) DirectAppdynamicsQueryDelayPtrOutput + ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput + ToAgentSumologicConfigPtrOutputWithContext(context.Context) AgentSumologicConfigPtrOutput } -type directAppdynamicsQueryDelayPtrType DirectAppdynamicsQueryDelayArgs +type agentSumologicConfigPtrType AgentSumologicConfigArgs -func DirectAppdynamicsQueryDelayPtr(v *DirectAppdynamicsQueryDelayArgs) DirectAppdynamicsQueryDelayPtrInput { - return (*directAppdynamicsQueryDelayPtrType)(v) +func AgentSumologicConfigPtr(v *AgentSumologicConfigArgs) AgentSumologicConfigPtrInput { + return (*agentSumologicConfigPtrType)(v) } -func (*directAppdynamicsQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectAppdynamicsQueryDelay)(nil)).Elem() +func (*agentSumologicConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentSumologicConfig)(nil)).Elem() } -func (i *directAppdynamicsQueryDelayPtrType) ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput { - return i.ToDirectAppdynamicsQueryDelayPtrOutputWithContext(context.Background()) +func (i *agentSumologicConfigPtrType) ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput { + return i.ToAgentSumologicConfigPtrOutputWithContext(context.Background()) } -func (i *directAppdynamicsQueryDelayPtrType) ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsQueryDelayPtrOutput) +func (i *agentSumologicConfigPtrType) ToAgentSumologicConfigPtrOutputWithContext(ctx context.Context) AgentSumologicConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentSumologicConfigPtrOutput) } -type DirectAppdynamicsQueryDelayOutput struct{ *pulumi.OutputState } +type AgentSumologicConfigOutput struct{ *pulumi.OutputState } -func (DirectAppdynamicsQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectAppdynamicsQueryDelay)(nil)).Elem() +func (AgentSumologicConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentSumologicConfig)(nil)).Elem() } -func (o DirectAppdynamicsQueryDelayOutput) ToDirectAppdynamicsQueryDelayOutput() DirectAppdynamicsQueryDelayOutput { +func (o AgentSumologicConfigOutput) ToAgentSumologicConfigOutput() AgentSumologicConfigOutput { return o } -func (o DirectAppdynamicsQueryDelayOutput) ToDirectAppdynamicsQueryDelayOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayOutput { +func (o AgentSumologicConfigOutput) ToAgentSumologicConfigOutputWithContext(ctx context.Context) AgentSumologicConfigOutput { return o } -func (o DirectAppdynamicsQueryDelayOutput) ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput { - return o.ToDirectAppdynamicsQueryDelayPtrOutputWithContext(context.Background()) +func (o AgentSumologicConfigOutput) ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput { + return o.ToAgentSumologicConfigPtrOutputWithContext(context.Background()) } -func (o DirectAppdynamicsQueryDelayOutput) ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectAppdynamicsQueryDelay) *DirectAppdynamicsQueryDelay { +func (o AgentSumologicConfigOutput) ToAgentSumologicConfigPtrOutputWithContext(ctx context.Context) AgentSumologicConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentSumologicConfig) *AgentSumologicConfig { return &v - }).(DirectAppdynamicsQueryDelayPtrOutput) -} - -// Must be one of Minute or Second. -func (o DirectAppdynamicsQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectAppdynamicsQueryDelay) string { return v.Unit }).(pulumi.StringOutput) + }).(AgentSumologicConfigPtrOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectAppdynamicsQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectAppdynamicsQueryDelay) int { return v.Value }).(pulumi.IntOutput) +// Sumo Logic API URL. +func (o AgentSumologicConfigOutput) Url() pulumi.StringOutput { + return o.ApplyT(func(v AgentSumologicConfig) string { return v.Url }).(pulumi.StringOutput) } -type DirectAppdynamicsQueryDelayPtrOutput struct{ *pulumi.OutputState } +type AgentSumologicConfigPtrOutput struct{ *pulumi.OutputState } -func (DirectAppdynamicsQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectAppdynamicsQueryDelay)(nil)).Elem() +func (AgentSumologicConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentSumologicConfig)(nil)).Elem() } -func (o DirectAppdynamicsQueryDelayPtrOutput) ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput { +func (o AgentSumologicConfigPtrOutput) ToAgentSumologicConfigPtrOutput() AgentSumologicConfigPtrOutput { return o } -func (o DirectAppdynamicsQueryDelayPtrOutput) ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayPtrOutput { +func (o AgentSumologicConfigPtrOutput) ToAgentSumologicConfigPtrOutputWithContext(ctx context.Context) AgentSumologicConfigPtrOutput { return o } -func (o DirectAppdynamicsQueryDelayPtrOutput) Elem() DirectAppdynamicsQueryDelayOutput { - return o.ApplyT(func(v *DirectAppdynamicsQueryDelay) DirectAppdynamicsQueryDelay { +func (o AgentSumologicConfigPtrOutput) Elem() AgentSumologicConfigOutput { + return o.ApplyT(func(v *AgentSumologicConfig) AgentSumologicConfig { if v != nil { return *v } - var ret DirectAppdynamicsQueryDelay + var ret AgentSumologicConfig return ret - }).(DirectAppdynamicsQueryDelayOutput) + }).(AgentSumologicConfigOutput) } -// Must be one of Minute or Second. -func (o DirectAppdynamicsQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectAppdynamicsQueryDelay) *string { +// Sumo Logic API URL. +func (o AgentSumologicConfigPtrOutput) Url() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentSumologicConfig) *string { if v == nil { return nil } - return &v.Unit + return &v.Url }).(pulumi.StringPtrOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectAppdynamicsQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectAppdynamicsQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) -} - -type DirectBigqueryQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type AgentThousandeyesConfig struct { } -// DirectBigqueryQueryDelayInput is an input type that accepts DirectBigqueryQueryDelayArgs and DirectBigqueryQueryDelayOutput values. -// You can construct a concrete instance of `DirectBigqueryQueryDelayInput` via: +// AgentThousandeyesConfigInput is an input type that accepts AgentThousandeyesConfigArgs and AgentThousandeyesConfigOutput values. +// You can construct a concrete instance of `AgentThousandeyesConfigInput` via: // -// DirectBigqueryQueryDelayArgs{...} -type DirectBigqueryQueryDelayInput interface { +// AgentThousandeyesConfigArgs{...} +type AgentThousandeyesConfigInput interface { pulumi.Input - ToDirectBigqueryQueryDelayOutput() DirectBigqueryQueryDelayOutput - ToDirectBigqueryQueryDelayOutputWithContext(context.Context) DirectBigqueryQueryDelayOutput + ToAgentThousandeyesConfigOutput() AgentThousandeyesConfigOutput + ToAgentThousandeyesConfigOutputWithContext(context.Context) AgentThousandeyesConfigOutput } -type DirectBigqueryQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type AgentThousandeyesConfigArgs struct { } -func (DirectBigqueryQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectBigqueryQueryDelay)(nil)).Elem() +func (AgentThousandeyesConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentThousandeyesConfig)(nil)).Elem() } -func (i DirectBigqueryQueryDelayArgs) ToDirectBigqueryQueryDelayOutput() DirectBigqueryQueryDelayOutput { - return i.ToDirectBigqueryQueryDelayOutputWithContext(context.Background()) +func (i AgentThousandeyesConfigArgs) ToAgentThousandeyesConfigOutput() AgentThousandeyesConfigOutput { + return i.ToAgentThousandeyesConfigOutputWithContext(context.Background()) } -func (i DirectBigqueryQueryDelayArgs) ToDirectBigqueryQueryDelayOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectBigqueryQueryDelayOutput) +func (i AgentThousandeyesConfigArgs) ToAgentThousandeyesConfigOutputWithContext(ctx context.Context) AgentThousandeyesConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentThousandeyesConfigOutput) } -func (i DirectBigqueryQueryDelayArgs) ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput { - return i.ToDirectBigqueryQueryDelayPtrOutputWithContext(context.Background()) +func (i AgentThousandeyesConfigArgs) ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput { + return i.ToAgentThousandeyesConfigPtrOutputWithContext(context.Background()) } -func (i DirectBigqueryQueryDelayArgs) ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectBigqueryQueryDelayOutput).ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx) +func (i AgentThousandeyesConfigArgs) ToAgentThousandeyesConfigPtrOutputWithContext(ctx context.Context) AgentThousandeyesConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentThousandeyesConfigOutput).ToAgentThousandeyesConfigPtrOutputWithContext(ctx) } -// DirectBigqueryQueryDelayPtrInput is an input type that accepts DirectBigqueryQueryDelayArgs, DirectBigqueryQueryDelayPtr and DirectBigqueryQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectBigqueryQueryDelayPtrInput` via: +// AgentThousandeyesConfigPtrInput is an input type that accepts AgentThousandeyesConfigArgs, AgentThousandeyesConfigPtr and AgentThousandeyesConfigPtrOutput values. +// You can construct a concrete instance of `AgentThousandeyesConfigPtrInput` via: // -// DirectBigqueryQueryDelayArgs{...} +// AgentThousandeyesConfigArgs{...} // -// or: +// or: // -// nil -type DirectBigqueryQueryDelayPtrInput interface { +// nil +type AgentThousandeyesConfigPtrInput interface { pulumi.Input - ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput - ToDirectBigqueryQueryDelayPtrOutputWithContext(context.Context) DirectBigqueryQueryDelayPtrOutput + ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput + ToAgentThousandeyesConfigPtrOutputWithContext(context.Context) AgentThousandeyesConfigPtrOutput } -type directBigqueryQueryDelayPtrType DirectBigqueryQueryDelayArgs +type agentThousandeyesConfigPtrType AgentThousandeyesConfigArgs -func DirectBigqueryQueryDelayPtr(v *DirectBigqueryQueryDelayArgs) DirectBigqueryQueryDelayPtrInput { - return (*directBigqueryQueryDelayPtrType)(v) +func AgentThousandeyesConfigPtr(v *AgentThousandeyesConfigArgs) AgentThousandeyesConfigPtrInput { + return (*agentThousandeyesConfigPtrType)(v) } -func (*directBigqueryQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectBigqueryQueryDelay)(nil)).Elem() +func (*agentThousandeyesConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentThousandeyesConfig)(nil)).Elem() } -func (i *directBigqueryQueryDelayPtrType) ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput { - return i.ToDirectBigqueryQueryDelayPtrOutputWithContext(context.Background()) +func (i *agentThousandeyesConfigPtrType) ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput { + return i.ToAgentThousandeyesConfigPtrOutputWithContext(context.Background()) } -func (i *directBigqueryQueryDelayPtrType) ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectBigqueryQueryDelayPtrOutput) +func (i *agentThousandeyesConfigPtrType) ToAgentThousandeyesConfigPtrOutputWithContext(ctx context.Context) AgentThousandeyesConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentThousandeyesConfigPtrOutput) } -type DirectBigqueryQueryDelayOutput struct{ *pulumi.OutputState } +type AgentThousandeyesConfigOutput struct{ *pulumi.OutputState } -func (DirectBigqueryQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectBigqueryQueryDelay)(nil)).Elem() +func (AgentThousandeyesConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentThousandeyesConfig)(nil)).Elem() } -func (o DirectBigqueryQueryDelayOutput) ToDirectBigqueryQueryDelayOutput() DirectBigqueryQueryDelayOutput { +func (o AgentThousandeyesConfigOutput) ToAgentThousandeyesConfigOutput() AgentThousandeyesConfigOutput { return o } -func (o DirectBigqueryQueryDelayOutput) ToDirectBigqueryQueryDelayOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayOutput { +func (o AgentThousandeyesConfigOutput) ToAgentThousandeyesConfigOutputWithContext(ctx context.Context) AgentThousandeyesConfigOutput { return o } -func (o DirectBigqueryQueryDelayOutput) ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput { - return o.ToDirectBigqueryQueryDelayPtrOutputWithContext(context.Background()) +func (o AgentThousandeyesConfigOutput) ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput { + return o.ToAgentThousandeyesConfigPtrOutputWithContext(context.Background()) } -func (o DirectBigqueryQueryDelayOutput) ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectBigqueryQueryDelay) *DirectBigqueryQueryDelay { +func (o AgentThousandeyesConfigOutput) ToAgentThousandeyesConfigPtrOutputWithContext(ctx context.Context) AgentThousandeyesConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentThousandeyesConfig) *AgentThousandeyesConfig { return &v - }).(DirectBigqueryQueryDelayPtrOutput) -} - -// Must be one of Minute or Second. -func (o DirectBigqueryQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectBigqueryQueryDelay) string { return v.Unit }).(pulumi.StringOutput) -} - -// Must be an integer greater than or equal to 0. -func (o DirectBigqueryQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectBigqueryQueryDelay) int { return v.Value }).(pulumi.IntOutput) + }).(AgentThousandeyesConfigPtrOutput) } -type DirectBigqueryQueryDelayPtrOutput struct{ *pulumi.OutputState } +type AgentThousandeyesConfigPtrOutput struct{ *pulumi.OutputState } -func (DirectBigqueryQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectBigqueryQueryDelay)(nil)).Elem() +func (AgentThousandeyesConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentThousandeyesConfig)(nil)).Elem() } -func (o DirectBigqueryQueryDelayPtrOutput) ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput { +func (o AgentThousandeyesConfigPtrOutput) ToAgentThousandeyesConfigPtrOutput() AgentThousandeyesConfigPtrOutput { return o } -func (o DirectBigqueryQueryDelayPtrOutput) ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayPtrOutput { +func (o AgentThousandeyesConfigPtrOutput) ToAgentThousandeyesConfigPtrOutputWithContext(ctx context.Context) AgentThousandeyesConfigPtrOutput { return o } -func (o DirectBigqueryQueryDelayPtrOutput) Elem() DirectBigqueryQueryDelayOutput { - return o.ApplyT(func(v *DirectBigqueryQueryDelay) DirectBigqueryQueryDelay { +func (o AgentThousandeyesConfigPtrOutput) Elem() AgentThousandeyesConfigOutput { + return o.ApplyT(func(v *AgentThousandeyesConfig) AgentThousandeyesConfig { if v != nil { return *v } - var ret DirectBigqueryQueryDelay + var ret AgentThousandeyesConfig return ret - }).(DirectBigqueryQueryDelayOutput) -} - -// Must be one of Minute or Second. -func (o DirectBigqueryQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectBigqueryQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) -} - -// Must be an integer greater than or equal to 0. -func (o DirectBigqueryQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectBigqueryQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) + }).(AgentThousandeyesConfigOutput) } -type DirectCloudwatchHistoricalDataRetrieval struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations []DirectCloudwatchHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations []DirectCloudwatchHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +type AlertMethodPagerdutySendResolution struct { + // A message that will be attached to your 'all clear' notification. + Message *string `pulumi:"message"` } -// DirectCloudwatchHistoricalDataRetrievalInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalArgs and DirectCloudwatchHistoricalDataRetrievalOutput values. -// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalInput` via: +// AlertMethodPagerdutySendResolutionInput is an input type that accepts AlertMethodPagerdutySendResolutionArgs and AlertMethodPagerdutySendResolutionOutput values. +// You can construct a concrete instance of `AlertMethodPagerdutySendResolutionInput` via: // -// DirectCloudwatchHistoricalDataRetrievalArgs{...} -type DirectCloudwatchHistoricalDataRetrievalInput interface { +// AlertMethodPagerdutySendResolutionArgs{...} +type AlertMethodPagerdutySendResolutionInput interface { pulumi.Input - ToDirectCloudwatchHistoricalDataRetrievalOutput() DirectCloudwatchHistoricalDataRetrievalOutput - ToDirectCloudwatchHistoricalDataRetrievalOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalOutput + ToAlertMethodPagerdutySendResolutionOutput() AlertMethodPagerdutySendResolutionOutput + ToAlertMethodPagerdutySendResolutionOutputWithContext(context.Context) AlertMethodPagerdutySendResolutionOutput } -type DirectCloudwatchHistoricalDataRetrievalArgs struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +type AlertMethodPagerdutySendResolutionArgs struct { + // A message that will be attached to your 'all clear' notification. + Message pulumi.StringPtrInput `pulumi:"message"` } -func (DirectCloudwatchHistoricalDataRetrievalArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrieval)(nil)).Elem() +func (AlertMethodPagerdutySendResolutionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AlertMethodPagerdutySendResolution)(nil)).Elem() } -func (i DirectCloudwatchHistoricalDataRetrievalArgs) ToDirectCloudwatchHistoricalDataRetrievalOutput() DirectCloudwatchHistoricalDataRetrievalOutput { - return i.ToDirectCloudwatchHistoricalDataRetrievalOutputWithContext(context.Background()) +func (i AlertMethodPagerdutySendResolutionArgs) ToAlertMethodPagerdutySendResolutionOutput() AlertMethodPagerdutySendResolutionOutput { + return i.ToAlertMethodPagerdutySendResolutionOutputWithContext(context.Background()) } -func (i DirectCloudwatchHistoricalDataRetrievalArgs) ToDirectCloudwatchHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalOutput) +func (i AlertMethodPagerdutySendResolutionArgs) ToAlertMethodPagerdutySendResolutionOutputWithContext(ctx context.Context) AlertMethodPagerdutySendResolutionOutput { + return pulumi.ToOutputWithContext(ctx, i).(AlertMethodPagerdutySendResolutionOutput) } -func (i DirectCloudwatchHistoricalDataRetrievalArgs) ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput { - return i.ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i AlertMethodPagerdutySendResolutionArgs) ToAlertMethodPagerdutySendResolutionPtrOutput() AlertMethodPagerdutySendResolutionPtrOutput { + return i.ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(context.Background()) } -func (i DirectCloudwatchHistoricalDataRetrievalArgs) ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalOutput).ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx) +func (i AlertMethodPagerdutySendResolutionArgs) ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(ctx context.Context) AlertMethodPagerdutySendResolutionPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AlertMethodPagerdutySendResolutionOutput).ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(ctx) } -// DirectCloudwatchHistoricalDataRetrievalPtrInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalArgs, DirectCloudwatchHistoricalDataRetrievalPtr and DirectCloudwatchHistoricalDataRetrievalPtrOutput values. -// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalPtrInput` via: +// AlertMethodPagerdutySendResolutionPtrInput is an input type that accepts AlertMethodPagerdutySendResolutionArgs, AlertMethodPagerdutySendResolutionPtr and AlertMethodPagerdutySendResolutionPtrOutput values. +// You can construct a concrete instance of `AlertMethodPagerdutySendResolutionPtrInput` via: // -// DirectCloudwatchHistoricalDataRetrievalArgs{...} +// AlertMethodPagerdutySendResolutionArgs{...} // -// or: +// or: // -// nil -type DirectCloudwatchHistoricalDataRetrievalPtrInput interface { +// nil +type AlertMethodPagerdutySendResolutionPtrInput interface { pulumi.Input - ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput - ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput + ToAlertMethodPagerdutySendResolutionPtrOutput() AlertMethodPagerdutySendResolutionPtrOutput + ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(context.Context) AlertMethodPagerdutySendResolutionPtrOutput } -type directCloudwatchHistoricalDataRetrievalPtrType DirectCloudwatchHistoricalDataRetrievalArgs +type alertMethodPagerdutySendResolutionPtrType AlertMethodPagerdutySendResolutionArgs -func DirectCloudwatchHistoricalDataRetrievalPtr(v *DirectCloudwatchHistoricalDataRetrievalArgs) DirectCloudwatchHistoricalDataRetrievalPtrInput { - return (*directCloudwatchHistoricalDataRetrievalPtrType)(v) +func AlertMethodPagerdutySendResolutionPtr(v *AlertMethodPagerdutySendResolutionArgs) AlertMethodPagerdutySendResolutionPtrInput { + return (*alertMethodPagerdutySendResolutionPtrType)(v) } -func (*directCloudwatchHistoricalDataRetrievalPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectCloudwatchHistoricalDataRetrieval)(nil)).Elem() +func (*alertMethodPagerdutySendResolutionPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AlertMethodPagerdutySendResolution)(nil)).Elem() } -func (i *directCloudwatchHistoricalDataRetrievalPtrType) ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput { - return i.ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i *alertMethodPagerdutySendResolutionPtrType) ToAlertMethodPagerdutySendResolutionPtrOutput() AlertMethodPagerdutySendResolutionPtrOutput { + return i.ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(context.Background()) } -func (i *directCloudwatchHistoricalDataRetrievalPtrType) ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalPtrOutput) +func (i *alertMethodPagerdutySendResolutionPtrType) ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(ctx context.Context) AlertMethodPagerdutySendResolutionPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AlertMethodPagerdutySendResolutionPtrOutput) } -type DirectCloudwatchHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } +type AlertMethodPagerdutySendResolutionOutput struct{ *pulumi.OutputState } -func (DirectCloudwatchHistoricalDataRetrievalOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrieval)(nil)).Elem() +func (AlertMethodPagerdutySendResolutionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AlertMethodPagerdutySendResolution)(nil)).Elem() } -func (o DirectCloudwatchHistoricalDataRetrievalOutput) ToDirectCloudwatchHistoricalDataRetrievalOutput() DirectCloudwatchHistoricalDataRetrievalOutput { +func (o AlertMethodPagerdutySendResolutionOutput) ToAlertMethodPagerdutySendResolutionOutput() AlertMethodPagerdutySendResolutionOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalOutput) ToDirectCloudwatchHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalOutput { +func (o AlertMethodPagerdutySendResolutionOutput) ToAlertMethodPagerdutySendResolutionOutputWithContext(ctx context.Context) AlertMethodPagerdutySendResolutionOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalOutput) ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput { - return o.ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (o AlertMethodPagerdutySendResolutionOutput) ToAlertMethodPagerdutySendResolutionPtrOutput() AlertMethodPagerdutySendResolutionPtrOutput { + return o.ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(context.Background()) } -func (o DirectCloudwatchHistoricalDataRetrievalOutput) ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectCloudwatchHistoricalDataRetrieval) *DirectCloudwatchHistoricalDataRetrieval { +func (o AlertMethodPagerdutySendResolutionOutput) ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(ctx context.Context) AlertMethodPagerdutySendResolutionPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AlertMethodPagerdutySendResolution) *AlertMethodPagerdutySendResolution { return &v - }).(DirectCloudwatchHistoricalDataRetrievalPtrOutput) -} - -// Used by default for any SLOs connected to this data source. -func (o DirectCloudwatchHistoricalDataRetrievalOutput) DefaultDurations() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrieval) []DirectCloudwatchHistoricalDataRetrievalDefaultDuration { - return v.DefaultDurations - }).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) + }).(AlertMethodPagerdutySendResolutionPtrOutput) } -// Defines the maximum period for which data can be retrieved. -func (o DirectCloudwatchHistoricalDataRetrievalOutput) MaxDurations() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrieval) []DirectCloudwatchHistoricalDataRetrievalMaxDuration { - return v.MaxDurations - }).(DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) +// A message that will be attached to your 'all clear' notification. +func (o AlertMethodPagerdutySendResolutionOutput) Message() pulumi.StringPtrOutput { + return o.ApplyT(func(v AlertMethodPagerdutySendResolution) *string { return v.Message }).(pulumi.StringPtrOutput) } -type DirectCloudwatchHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } +type AlertMethodPagerdutySendResolutionPtrOutput struct{ *pulumi.OutputState } -func (DirectCloudwatchHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectCloudwatchHistoricalDataRetrieval)(nil)).Elem() +func (AlertMethodPagerdutySendResolutionPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AlertMethodPagerdutySendResolution)(nil)).Elem() } -func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput { +func (o AlertMethodPagerdutySendResolutionPtrOutput) ToAlertMethodPagerdutySendResolutionPtrOutput() AlertMethodPagerdutySendResolutionPtrOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput { +func (o AlertMethodPagerdutySendResolutionPtrOutput) ToAlertMethodPagerdutySendResolutionPtrOutputWithContext(ctx context.Context) AlertMethodPagerdutySendResolutionPtrOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) Elem() DirectCloudwatchHistoricalDataRetrievalOutput { - return o.ApplyT(func(v *DirectCloudwatchHistoricalDataRetrieval) DirectCloudwatchHistoricalDataRetrieval { +func (o AlertMethodPagerdutySendResolutionPtrOutput) Elem() AlertMethodPagerdutySendResolutionOutput { + return o.ApplyT(func(v *AlertMethodPagerdutySendResolution) AlertMethodPagerdutySendResolution { if v != nil { return *v } - var ret DirectCloudwatchHistoricalDataRetrieval + var ret AlertMethodPagerdutySendResolution return ret - }).(DirectCloudwatchHistoricalDataRetrievalOutput) -} - -// Used by default for any SLOs connected to this data source. -func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v *DirectCloudwatchHistoricalDataRetrieval) []DirectCloudwatchHistoricalDataRetrievalDefaultDuration { - if v == nil { - return nil - } - return v.DefaultDurations - }).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) + }).(AlertMethodPagerdutySendResolutionOutput) } -// Defines the maximum period for which data can be retrieved. -func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) MaxDurations() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v *DirectCloudwatchHistoricalDataRetrieval) []DirectCloudwatchHistoricalDataRetrievalMaxDuration { +// A message that will be attached to your 'all clear' notification. +func (o AlertMethodPagerdutySendResolutionPtrOutput) Message() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AlertMethodPagerdutySendResolution) *string { if v == nil { return nil } - return v.MaxDurations - }).(DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) + return v.Message + }).(pulumi.StringPtrOutput) } -type DirectCloudwatchHistoricalDataRetrievalDefaultDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type AlertPolicyAlertMethod struct { + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + Project *string `pulumi:"project"` } -// DirectCloudwatchHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs and DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput values. -// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalDefaultDurationInput` via: +// AlertPolicyAlertMethodInput is an input type that accepts AlertPolicyAlertMethodArgs and AlertPolicyAlertMethodOutput values. +// You can construct a concrete instance of `AlertPolicyAlertMethodInput` via: // -// DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs{...} -type DirectCloudwatchHistoricalDataRetrievalDefaultDurationInput interface { +// AlertPolicyAlertMethodArgs{...} +type AlertPolicyAlertMethodInput interface { pulumi.Input - ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput - ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput + ToAlertPolicyAlertMethodOutput() AlertPolicyAlertMethodOutput + ToAlertPolicyAlertMethodOutputWithContext(context.Context) AlertPolicyAlertMethodOutput } -type DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type AlertPolicyAlertMethodArgs struct { + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + Project pulumi.StringPtrInput `pulumi:"project"` } -func (DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (AlertPolicyAlertMethodArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AlertPolicyAlertMethod)(nil)).Elem() } -func (i DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { - return i.ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +func (i AlertPolicyAlertMethodArgs) ToAlertPolicyAlertMethodOutput() AlertPolicyAlertMethodOutput { + return i.ToAlertPolicyAlertMethodOutputWithContext(context.Background()) } -func (i DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) +func (i AlertPolicyAlertMethodArgs) ToAlertPolicyAlertMethodOutputWithContext(ctx context.Context) AlertPolicyAlertMethodOutput { + return pulumi.ToOutputWithContext(ctx, i).(AlertPolicyAlertMethodOutput) } -// DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray and DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput values. -// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayInput` via: +// AlertPolicyAlertMethodArrayInput is an input type that accepts AlertPolicyAlertMethodArray and AlertPolicyAlertMethodArrayOutput values. +// You can construct a concrete instance of `AlertPolicyAlertMethodArrayInput` via: // -// DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray{ DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs{...} } -type DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayInput interface { +// AlertPolicyAlertMethodArray{ AlertPolicyAlertMethodArgs{...} } +type AlertPolicyAlertMethodArrayInput interface { pulumi.Input - ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput - ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput + ToAlertPolicyAlertMethodArrayOutput() AlertPolicyAlertMethodArrayOutput + ToAlertPolicyAlertMethodArrayOutputWithContext(context.Context) AlertPolicyAlertMethodArrayOutput } -type DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray []DirectCloudwatchHistoricalDataRetrievalDefaultDurationInput +type AlertPolicyAlertMethodArray []AlertPolicyAlertMethodInput -func (DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectCloudwatchHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (AlertPolicyAlertMethodArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]AlertPolicyAlertMethod)(nil)).Elem() } -func (i DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { - return i.ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +func (i AlertPolicyAlertMethodArray) ToAlertPolicyAlertMethodArrayOutput() AlertPolicyAlertMethodArrayOutput { + return i.ToAlertPolicyAlertMethodArrayOutputWithContext(context.Background()) } -func (i DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) +func (i AlertPolicyAlertMethodArray) ToAlertPolicyAlertMethodArrayOutputWithContext(ctx context.Context) AlertPolicyAlertMethodArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AlertPolicyAlertMethodArrayOutput) } -type DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } +type AlertPolicyAlertMethodOutput struct{ *pulumi.OutputState } -func (DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (AlertPolicyAlertMethodOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AlertPolicyAlertMethod)(nil)).Elem() } -func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { +func (o AlertPolicyAlertMethodOutput) ToAlertPolicyAlertMethodOutput() AlertPolicyAlertMethodOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { +func (o AlertPolicyAlertMethodOutput) ToAlertPolicyAlertMethodOutputWithContext(ctx context.Context) AlertPolicyAlertMethodOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +// The name of the previously defined alert method. +func (o AlertPolicyAlertMethodOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v AlertPolicyAlertMethod) string { return v.Name }).(pulumi.StringOutput) } -func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. +func (o AlertPolicyAlertMethodOutput) Project() pulumi.StringPtrOutput { + return o.ApplyT(func(v AlertPolicyAlertMethod) *string { return v.Project }).(pulumi.StringPtrOutput) } -type DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } +type AlertPolicyAlertMethodArrayOutput struct{ *pulumi.OutputState } -func (DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectCloudwatchHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (AlertPolicyAlertMethodArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]AlertPolicyAlertMethod)(nil)).Elem() } -func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o AlertPolicyAlertMethodArrayOutput) ToAlertPolicyAlertMethodArrayOutput() AlertPolicyAlertMethodArrayOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o AlertPolicyAlertMethodArrayOutput) ToAlertPolicyAlertMethodArrayOutputWithContext(ctx context.Context) AlertPolicyAlertMethodArrayOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectCloudwatchHistoricalDataRetrievalDefaultDuration { - return vs[0].([]DirectCloudwatchHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] - }).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) -} - -type DirectCloudwatchHistoricalDataRetrievalMaxDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +func (o AlertPolicyAlertMethodArrayOutput) Index(i pulumi.IntInput) AlertPolicyAlertMethodOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) AlertPolicyAlertMethod { + return vs[0].([]AlertPolicyAlertMethod)[vs[1].(int)] + }).(AlertPolicyAlertMethodOutput) } -// DirectCloudwatchHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs and DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput values. -// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalMaxDurationInput` via: -// -// DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs{...} -type DirectCloudwatchHistoricalDataRetrievalMaxDurationInput interface { +type AlertPolicyCondition struct { + // Duration over which the burn rate is evaluated. + AlertingWindow *string `pulumi:"alertingWindow"` + // Indicates how long a given condition needs to be valid to mark the condition as true. + LastsFor *string `pulumi:"lastsFor"` + // One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. + Measurement string `pulumi:"measurement"` + // For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned. + Value *float64 `pulumi:"value"` + // Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + ValueString *string `pulumi:"valueString"` +} + +// AlertPolicyConditionInput is an input type that accepts AlertPolicyConditionArgs and AlertPolicyConditionOutput values. +// You can construct a concrete instance of `AlertPolicyConditionInput` via: +// +// AlertPolicyConditionArgs{...} +type AlertPolicyConditionInput interface { pulumi.Input - ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput - ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput + ToAlertPolicyConditionOutput() AlertPolicyConditionOutput + ToAlertPolicyConditionOutputWithContext(context.Context) AlertPolicyConditionOutput } -type DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type AlertPolicyConditionArgs struct { + // Duration over which the burn rate is evaluated. + AlertingWindow pulumi.StringPtrInput `pulumi:"alertingWindow"` + // Indicates how long a given condition needs to be valid to mark the condition as true. + LastsFor pulumi.StringPtrInput `pulumi:"lastsFor"` + // One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. + Measurement pulumi.StringInput `pulumi:"measurement"` + // For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned. + Value pulumi.Float64PtrInput `pulumi:"value"` + // Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + ValueString pulumi.StringPtrInput `pulumi:"valueString"` } -func (DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (AlertPolicyConditionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AlertPolicyCondition)(nil)).Elem() } -func (i DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { - return i.ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +func (i AlertPolicyConditionArgs) ToAlertPolicyConditionOutput() AlertPolicyConditionOutput { + return i.ToAlertPolicyConditionOutputWithContext(context.Background()) } -func (i DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) +func (i AlertPolicyConditionArgs) ToAlertPolicyConditionOutputWithContext(ctx context.Context) AlertPolicyConditionOutput { + return pulumi.ToOutputWithContext(ctx, i).(AlertPolicyConditionOutput) } -// DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalMaxDurationArray and DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput values. -// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayInput` via: +// AlertPolicyConditionArrayInput is an input type that accepts AlertPolicyConditionArray and AlertPolicyConditionArrayOutput values. +// You can construct a concrete instance of `AlertPolicyConditionArrayInput` via: // -// DirectCloudwatchHistoricalDataRetrievalMaxDurationArray{ DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs{...} } -type DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayInput interface { +// AlertPolicyConditionArray{ AlertPolicyConditionArgs{...} } +type AlertPolicyConditionArrayInput interface { pulumi.Input - ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput - ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput + ToAlertPolicyConditionArrayOutput() AlertPolicyConditionArrayOutput + ToAlertPolicyConditionArrayOutputWithContext(context.Context) AlertPolicyConditionArrayOutput } -type DirectCloudwatchHistoricalDataRetrievalMaxDurationArray []DirectCloudwatchHistoricalDataRetrievalMaxDurationInput +type AlertPolicyConditionArray []AlertPolicyConditionInput -func (DirectCloudwatchHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectCloudwatchHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (AlertPolicyConditionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]AlertPolicyCondition)(nil)).Elem() } -func (i DirectCloudwatchHistoricalDataRetrievalMaxDurationArray) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { - return i.ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +func (i AlertPolicyConditionArray) ToAlertPolicyConditionArrayOutput() AlertPolicyConditionArrayOutput { + return i.ToAlertPolicyConditionArrayOutputWithContext(context.Background()) } -func (i DirectCloudwatchHistoricalDataRetrievalMaxDurationArray) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) +func (i AlertPolicyConditionArray) ToAlertPolicyConditionArrayOutputWithContext(ctx context.Context) AlertPolicyConditionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(AlertPolicyConditionArrayOutput) } -type DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } +type AlertPolicyConditionOutput struct{ *pulumi.OutputState } -func (DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (AlertPolicyConditionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AlertPolicyCondition)(nil)).Elem() } -func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { +func (o AlertPolicyConditionOutput) ToAlertPolicyConditionOutput() AlertPolicyConditionOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { +func (o AlertPolicyConditionOutput) ToAlertPolicyConditionOutputWithContext(ctx context.Context) AlertPolicyConditionOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +// Duration over which the burn rate is evaluated. +func (o AlertPolicyConditionOutput) AlertingWindow() pulumi.StringPtrOutput { + return o.ApplyT(func(v AlertPolicyCondition) *string { return v.AlertingWindow }).(pulumi.StringPtrOutput) } -func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +// Indicates how long a given condition needs to be valid to mark the condition as true. +func (o AlertPolicyConditionOutput) LastsFor() pulumi.StringPtrOutput { + return o.ApplyT(func(v AlertPolicyCondition) *string { return v.LastsFor }).(pulumi.StringPtrOutput) } -type DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } +// One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. +func (o AlertPolicyConditionOutput) Measurement() pulumi.StringOutput { + return o.ApplyT(func(v AlertPolicyCondition) string { return v.Measurement }).(pulumi.StringOutput) +} -func (DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectCloudwatchHistoricalDataRetrievalMaxDuration)(nil)).Elem() +// For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned. +func (o AlertPolicyConditionOutput) Value() pulumi.Float64PtrOutput { + return o.ApplyT(func(v AlertPolicyCondition) *float64 { return v.Value }).(pulumi.Float64PtrOutput) } -func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { +// Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. +func (o AlertPolicyConditionOutput) ValueString() pulumi.StringPtrOutput { + return o.ApplyT(func(v AlertPolicyCondition) *string { return v.ValueString }).(pulumi.StringPtrOutput) +} + +type AlertPolicyConditionArrayOutput struct{ *pulumi.OutputState } + +func (AlertPolicyConditionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]AlertPolicyCondition)(nil)).Elem() +} + +func (o AlertPolicyConditionArrayOutput) ToAlertPolicyConditionArrayOutput() AlertPolicyConditionArrayOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { +func (o AlertPolicyConditionArrayOutput) ToAlertPolicyConditionArrayOutputWithContext(ctx context.Context) AlertPolicyConditionArrayOutput { return o } -func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectCloudwatchHistoricalDataRetrievalMaxDuration { - return vs[0].([]DirectCloudwatchHistoricalDataRetrievalMaxDuration)[vs[1].(int)] - }).(DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) +func (o AlertPolicyConditionArrayOutput) Index(i pulumi.IntInput) AlertPolicyConditionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) AlertPolicyCondition { + return vs[0].([]AlertPolicyCondition)[vs[1].(int)] + }).(AlertPolicyConditionOutput) } -type DirectCloudwatchQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type DirectAppdynamicsHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []DirectAppdynamicsHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []DirectAppdynamicsHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` } -// DirectCloudwatchQueryDelayInput is an input type that accepts DirectCloudwatchQueryDelayArgs and DirectCloudwatchQueryDelayOutput values. -// You can construct a concrete instance of `DirectCloudwatchQueryDelayInput` via: +// DirectAppdynamicsHistoricalDataRetrievalInput is an input type that accepts DirectAppdynamicsHistoricalDataRetrievalArgs and DirectAppdynamicsHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectAppdynamicsHistoricalDataRetrievalInput` via: // -// DirectCloudwatchQueryDelayArgs{...} -type DirectCloudwatchQueryDelayInput interface { +// DirectAppdynamicsHistoricalDataRetrievalArgs{...} +type DirectAppdynamicsHistoricalDataRetrievalInput interface { pulumi.Input - ToDirectCloudwatchQueryDelayOutput() DirectCloudwatchQueryDelayOutput - ToDirectCloudwatchQueryDelayOutputWithContext(context.Context) DirectCloudwatchQueryDelayOutput + ToDirectAppdynamicsHistoricalDataRetrievalOutput() DirectAppdynamicsHistoricalDataRetrievalOutput + ToDirectAppdynamicsHistoricalDataRetrievalOutputWithContext(context.Context) DirectAppdynamicsHistoricalDataRetrievalOutput } -type DirectCloudwatchQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type DirectAppdynamicsHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` } -func (DirectCloudwatchQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectCloudwatchQueryDelay)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrieval)(nil)).Elem() } -func (i DirectCloudwatchQueryDelayArgs) ToDirectCloudwatchQueryDelayOutput() DirectCloudwatchQueryDelayOutput { - return i.ToDirectCloudwatchQueryDelayOutputWithContext(context.Background()) +func (i DirectAppdynamicsHistoricalDataRetrievalArgs) ToDirectAppdynamicsHistoricalDataRetrievalOutput() DirectAppdynamicsHistoricalDataRetrievalOutput { + return i.ToDirectAppdynamicsHistoricalDataRetrievalOutputWithContext(context.Background()) } -func (i DirectCloudwatchQueryDelayArgs) ToDirectCloudwatchQueryDelayOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchQueryDelayOutput) +func (i DirectAppdynamicsHistoricalDataRetrievalArgs) ToDirectAppdynamicsHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsHistoricalDataRetrievalOutput) } -func (i DirectCloudwatchQueryDelayArgs) ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput { - return i.ToDirectCloudwatchQueryDelayPtrOutputWithContext(context.Background()) +func (i DirectAppdynamicsHistoricalDataRetrievalArgs) ToDirectAppdynamicsHistoricalDataRetrievalPtrOutput() DirectAppdynamicsHistoricalDataRetrievalPtrOutput { + return i.ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (i DirectCloudwatchQueryDelayArgs) ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchQueryDelayOutput).ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx) +func (i DirectAppdynamicsHistoricalDataRetrievalArgs) ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsHistoricalDataRetrievalOutput).ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(ctx) } -// DirectCloudwatchQueryDelayPtrInput is an input type that accepts DirectCloudwatchQueryDelayArgs, DirectCloudwatchQueryDelayPtr and DirectCloudwatchQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectCloudwatchQueryDelayPtrInput` via: +// DirectAppdynamicsHistoricalDataRetrievalPtrInput is an input type that accepts DirectAppdynamicsHistoricalDataRetrievalArgs, DirectAppdynamicsHistoricalDataRetrievalPtr and DirectAppdynamicsHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectAppdynamicsHistoricalDataRetrievalPtrInput` via: // -// DirectCloudwatchQueryDelayArgs{...} +// DirectAppdynamicsHistoricalDataRetrievalArgs{...} // -// or: +// or: // -// nil -type DirectCloudwatchQueryDelayPtrInput interface { +// nil +type DirectAppdynamicsHistoricalDataRetrievalPtrInput interface { pulumi.Input - ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput - ToDirectCloudwatchQueryDelayPtrOutputWithContext(context.Context) DirectCloudwatchQueryDelayPtrOutput + ToDirectAppdynamicsHistoricalDataRetrievalPtrOutput() DirectAppdynamicsHistoricalDataRetrievalPtrOutput + ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectAppdynamicsHistoricalDataRetrievalPtrOutput } -type directCloudwatchQueryDelayPtrType DirectCloudwatchQueryDelayArgs +type directAppdynamicsHistoricalDataRetrievalPtrType DirectAppdynamicsHistoricalDataRetrievalArgs -func DirectCloudwatchQueryDelayPtr(v *DirectCloudwatchQueryDelayArgs) DirectCloudwatchQueryDelayPtrInput { - return (*directCloudwatchQueryDelayPtrType)(v) +func DirectAppdynamicsHistoricalDataRetrievalPtr(v *DirectAppdynamicsHistoricalDataRetrievalArgs) DirectAppdynamicsHistoricalDataRetrievalPtrInput { + return (*directAppdynamicsHistoricalDataRetrievalPtrType)(v) } -func (*directCloudwatchQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectCloudwatchQueryDelay)(nil)).Elem() +func (*directAppdynamicsHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAppdynamicsHistoricalDataRetrieval)(nil)).Elem() } -func (i *directCloudwatchQueryDelayPtrType) ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput { - return i.ToDirectCloudwatchQueryDelayPtrOutputWithContext(context.Background()) +func (i *directAppdynamicsHistoricalDataRetrievalPtrType) ToDirectAppdynamicsHistoricalDataRetrievalPtrOutput() DirectAppdynamicsHistoricalDataRetrievalPtrOutput { + return i.ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (i *directCloudwatchQueryDelayPtrType) ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchQueryDelayPtrOutput) +func (i *directAppdynamicsHistoricalDataRetrievalPtrType) ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsHistoricalDataRetrievalPtrOutput) } -type DirectCloudwatchQueryDelayOutput struct{ *pulumi.OutputState } +type DirectAppdynamicsHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } -func (DirectCloudwatchQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectCloudwatchQueryDelay)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrieval)(nil)).Elem() } -func (o DirectCloudwatchQueryDelayOutput) ToDirectCloudwatchQueryDelayOutput() DirectCloudwatchQueryDelayOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalOutput) ToDirectAppdynamicsHistoricalDataRetrievalOutput() DirectAppdynamicsHistoricalDataRetrievalOutput { return o } -func (o DirectCloudwatchQueryDelayOutput) ToDirectCloudwatchQueryDelayOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalOutput) ToDirectAppdynamicsHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalOutput { return o } -func (o DirectCloudwatchQueryDelayOutput) ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput { - return o.ToDirectCloudwatchQueryDelayPtrOutputWithContext(context.Background()) +func (o DirectAppdynamicsHistoricalDataRetrievalOutput) ToDirectAppdynamicsHistoricalDataRetrievalPtrOutput() DirectAppdynamicsHistoricalDataRetrievalPtrOutput { + return o.ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (o DirectCloudwatchQueryDelayOutput) ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectCloudwatchQueryDelay) *DirectCloudwatchQueryDelay { +func (o DirectAppdynamicsHistoricalDataRetrievalOutput) ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectAppdynamicsHistoricalDataRetrieval) *DirectAppdynamicsHistoricalDataRetrieval { return &v - }).(DirectCloudwatchQueryDelayPtrOutput) + }).(DirectAppdynamicsHistoricalDataRetrievalPtrOutput) } -// Must be one of Minute or Second. -func (o DirectCloudwatchQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectCloudwatchQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +// Used by default for any SLOs connected to this data source. +func (o DirectAppdynamicsHistoricalDataRetrievalOutput) DefaultDurations() DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectAppdynamicsHistoricalDataRetrieval) []DirectAppdynamicsHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectCloudwatchQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectCloudwatchQueryDelay) int { return v.Value }).(pulumi.IntOutput) +// Defines the maximum period for which data can be retrieved. +func (o DirectAppdynamicsHistoricalDataRetrievalOutput) MaxDurations() DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectAppdynamicsHistoricalDataRetrieval) []DirectAppdynamicsHistoricalDataRetrievalMaxDuration { + return v.MaxDurations + }).(DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput) } -type DirectCloudwatchQueryDelayPtrOutput struct{ *pulumi.OutputState } +type DirectAppdynamicsHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } -func (DirectCloudwatchQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectCloudwatchQueryDelay)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAppdynamicsHistoricalDataRetrieval)(nil)).Elem() } -func (o DirectCloudwatchQueryDelayPtrOutput) ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalPtrOutput) ToDirectAppdynamicsHistoricalDataRetrievalPtrOutput() DirectAppdynamicsHistoricalDataRetrievalPtrOutput { return o } -func (o DirectCloudwatchQueryDelayPtrOutput) ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayPtrOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalPtrOutput) ToDirectAppdynamicsHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalPtrOutput { return o } -func (o DirectCloudwatchQueryDelayPtrOutput) Elem() DirectCloudwatchQueryDelayOutput { - return o.ApplyT(func(v *DirectCloudwatchQueryDelay) DirectCloudwatchQueryDelay { +func (o DirectAppdynamicsHistoricalDataRetrievalPtrOutput) Elem() DirectAppdynamicsHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectAppdynamicsHistoricalDataRetrieval) DirectAppdynamicsHistoricalDataRetrieval { if v != nil { return *v } - var ret DirectCloudwatchQueryDelay + var ret DirectAppdynamicsHistoricalDataRetrieval return ret - }).(DirectCloudwatchQueryDelayOutput) + }).(DirectAppdynamicsHistoricalDataRetrievalOutput) } -// Must be one of Minute or Second. -func (o DirectCloudwatchQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectCloudwatchQueryDelay) *string { +// Used by default for any SLOs connected to this data source. +func (o DirectAppdynamicsHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectAppdynamicsHistoricalDataRetrieval) []DirectAppdynamicsHistoricalDataRetrievalDefaultDuration { if v == nil { return nil } - return &v.Unit - }).(pulumi.StringPtrOutput) + return v.DefaultDurations + }).(DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectCloudwatchQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectCloudwatchQueryDelay) *int { +// Defines the maximum period for which data can be retrieved. +func (o DirectAppdynamicsHistoricalDataRetrievalPtrOutput) MaxDurations() DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectAppdynamicsHistoricalDataRetrieval) []DirectAppdynamicsHistoricalDataRetrievalMaxDuration { if v == nil { return nil } - return &v.Value - }).(pulumi.IntPtrOutput) + return v.MaxDurations + }).(DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput) } -type DirectDatadogHistoricalDataRetrieval struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations []DirectDatadogHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations []DirectDatadogHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +type DirectAppdynamicsHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` } -// DirectDatadogHistoricalDataRetrievalInput is an input type that accepts DirectDatadogHistoricalDataRetrievalArgs and DirectDatadogHistoricalDataRetrievalOutput values. -// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalInput` via: +// DirectAppdynamicsHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs and DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectAppdynamicsHistoricalDataRetrievalDefaultDurationInput` via: // -// DirectDatadogHistoricalDataRetrievalArgs{...} -type DirectDatadogHistoricalDataRetrievalInput interface { +// DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectAppdynamicsHistoricalDataRetrievalDefaultDurationInput interface { pulumi.Input - ToDirectDatadogHistoricalDataRetrievalOutput() DirectDatadogHistoricalDataRetrievalOutput - ToDirectDatadogHistoricalDataRetrievalOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalOutput -} - -type DirectDatadogHistoricalDataRetrievalArgs struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations DirectDatadogHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations DirectDatadogHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` -} - -func (DirectDatadogHistoricalDataRetrievalArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDatadogHistoricalDataRetrieval)(nil)).Elem() + ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput() DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput + ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput } -func (i DirectDatadogHistoricalDataRetrievalArgs) ToDirectDatadogHistoricalDataRetrievalOutput() DirectDatadogHistoricalDataRetrievalOutput { - return i.ToDirectDatadogHistoricalDataRetrievalOutputWithContext(context.Background()) +type DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` } -func (i DirectDatadogHistoricalDataRetrievalArgs) ToDirectDatadogHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalOutput) +func (DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (i DirectDatadogHistoricalDataRetrievalArgs) ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput { - return i.ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs) ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput() DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) } -func (i DirectDatadogHistoricalDataRetrievalArgs) ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalOutput).ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx) +func (i DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs) ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput) } -// DirectDatadogHistoricalDataRetrievalPtrInput is an input type that accepts DirectDatadogHistoricalDataRetrievalArgs, DirectDatadogHistoricalDataRetrievalPtr and DirectDatadogHistoricalDataRetrievalPtrOutput values. -// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalPtrInput` via: +// DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArray and DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayInput` via: // -// DirectDatadogHistoricalDataRetrievalArgs{...} -// -// or: -// -// nil -type DirectDatadogHistoricalDataRetrievalPtrInput interface { +// DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArray{ DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayInput interface { pulumi.Input - ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput - ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput + ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput() DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput } -type directDatadogHistoricalDataRetrievalPtrType DirectDatadogHistoricalDataRetrievalArgs - -func DirectDatadogHistoricalDataRetrievalPtr(v *DirectDatadogHistoricalDataRetrievalArgs) DirectDatadogHistoricalDataRetrievalPtrInput { - return (*directDatadogHistoricalDataRetrievalPtrType)(v) -} +type DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArray []DirectAppdynamicsHistoricalDataRetrievalDefaultDurationInput -func (*directDatadogHistoricalDataRetrievalPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectDatadogHistoricalDataRetrieval)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectAppdynamicsHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (i *directDatadogHistoricalDataRetrievalPtrType) ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput { - return i.ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArray) ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput() DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) } -func (i *directDatadogHistoricalDataRetrievalPtrType) ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalPtrOutput) +func (i DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArray) ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput) } -type DirectDatadogHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } +type DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } -func (DirectDatadogHistoricalDataRetrievalOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDatadogHistoricalDataRetrieval)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (o DirectDatadogHistoricalDataRetrievalOutput) ToDirectDatadogHistoricalDataRetrievalOutput() DirectDatadogHistoricalDataRetrievalOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput) ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput() DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalOutput) ToDirectDatadogHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput) ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalOutput) ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput { - return o.ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +// Must be one of Minute, Hour, or Day. +func (o DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectAppdynamicsHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) } -func (o DirectDatadogHistoricalDataRetrievalOutput) ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectDatadogHistoricalDataRetrieval) *DirectDatadogHistoricalDataRetrieval { - return &v - }).(DirectDatadogHistoricalDataRetrievalPtrOutput) -} - -// Used by default for any SLOs connected to this data source. -func (o DirectDatadogHistoricalDataRetrievalOutput) DefaultDurations() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v DirectDatadogHistoricalDataRetrieval) []DirectDatadogHistoricalDataRetrievalDefaultDuration { - return v.DefaultDurations - }).(DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) -} - -// Defines the maximum period for which data can be retrieved. -func (o DirectDatadogHistoricalDataRetrievalOutput) MaxDurations() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v DirectDatadogHistoricalDataRetrieval) []DirectDatadogHistoricalDataRetrievalMaxDuration { - return v.MaxDurations - }).(DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) +// Must be an integer greater than or equal to 0. +func (o DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectAppdynamicsHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) } -type DirectDatadogHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } +type DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } -func (DirectDatadogHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectDatadogHistoricalDataRetrieval)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectAppdynamicsHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (o DirectDatadogHistoricalDataRetrievalPtrOutput) ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput() DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalPtrOutput) ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalPtrOutput) Elem() DirectDatadogHistoricalDataRetrievalOutput { - return o.ApplyT(func(v *DirectDatadogHistoricalDataRetrieval) DirectDatadogHistoricalDataRetrieval { - if v != nil { - return *v - } - var ret DirectDatadogHistoricalDataRetrieval - return ret - }).(DirectDatadogHistoricalDataRetrievalOutput) -} - -// Used by default for any SLOs connected to this data source. -func (o DirectDatadogHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v *DirectDatadogHistoricalDataRetrieval) []DirectDatadogHistoricalDataRetrievalDefaultDuration { - if v == nil { - return nil - } - return v.DefaultDurations - }).(DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) -} - -// Defines the maximum period for which data can be retrieved. -func (o DirectDatadogHistoricalDataRetrievalPtrOutput) MaxDurations() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v *DirectDatadogHistoricalDataRetrieval) []DirectDatadogHistoricalDataRetrievalMaxDuration { - if v == nil { - return nil - } - return v.MaxDurations - }).(DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) +func (o DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectAppdynamicsHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectAppdynamicsHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput) } -type DirectDatadogHistoricalDataRetrievalDefaultDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type DirectAppdynamicsHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` } -// DirectDatadogHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectDatadogHistoricalDataRetrievalDefaultDurationArgs and DirectDatadogHistoricalDataRetrievalDefaultDurationOutput values. -// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalDefaultDurationInput` via: +// DirectAppdynamicsHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs and DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectAppdynamicsHistoricalDataRetrievalMaxDurationInput` via: // -// DirectDatadogHistoricalDataRetrievalDefaultDurationArgs{...} -type DirectDatadogHistoricalDataRetrievalDefaultDurationInput interface { +// DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs{...} +type DirectAppdynamicsHistoricalDataRetrievalMaxDurationInput interface { pulumi.Input - ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationOutput - ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationOutput + ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput() DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput + ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput } -type DirectDatadogHistoricalDataRetrievalDefaultDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` } -func (DirectDatadogHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDatadogHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (i DirectDatadogHistoricalDataRetrievalDefaultDurationArgs) ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { - return i.ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +func (i DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs) ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput() DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) } -func (i DirectDatadogHistoricalDataRetrievalDefaultDurationArgs) ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) +func (i DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs) ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput) } -// DirectDatadogHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectDatadogHistoricalDataRetrievalDefaultDurationArray and DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput values. -// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalDefaultDurationArrayInput` via: +// DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectAppdynamicsHistoricalDataRetrievalMaxDurationArray and DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayInput` via: // -// DirectDatadogHistoricalDataRetrievalDefaultDurationArray{ DirectDatadogHistoricalDataRetrievalDefaultDurationArgs{...} } -type DirectDatadogHistoricalDataRetrievalDefaultDurationArrayInput interface { +// DirectAppdynamicsHistoricalDataRetrievalMaxDurationArray{ DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayInput interface { pulumi.Input - ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput - ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput() DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput } -type DirectDatadogHistoricalDataRetrievalDefaultDurationArray []DirectDatadogHistoricalDataRetrievalDefaultDurationInput +type DirectAppdynamicsHistoricalDataRetrievalMaxDurationArray []DirectAppdynamicsHistoricalDataRetrievalMaxDurationInput -func (DirectDatadogHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectDatadogHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectAppdynamicsHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (i DirectDatadogHistoricalDataRetrievalDefaultDurationArray) ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { - return i.ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +func (i DirectAppdynamicsHistoricalDataRetrievalMaxDurationArray) ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput() DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) } -func (i DirectDatadogHistoricalDataRetrievalDefaultDurationArray) ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) +func (i DirectAppdynamicsHistoricalDataRetrievalMaxDurationArray) ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput) } -type DirectDatadogHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } +type DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } -func (DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDatadogHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (o DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput) ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput() DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput) ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectDatadogHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +// Must be one of Minute, Hour, or Day. +func (o DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectAppdynamicsHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) } -func (o DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectDatadogHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +// Must be an integer greater than or equal to 0. +func (o DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectAppdynamicsHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) } -type DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } +type DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } -func (DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectDatadogHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectAppdynamicsHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (o DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput() DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectDatadogHistoricalDataRetrievalDefaultDuration { - return vs[0].([]DirectDatadogHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] - }).(DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) +func (o DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectAppdynamicsHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectAppdynamicsHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput) } -type DirectDatadogHistoricalDataRetrievalMaxDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type DirectAppdynamicsQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` } -// DirectDatadogHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectDatadogHistoricalDataRetrievalMaxDurationArgs and DirectDatadogHistoricalDataRetrievalMaxDurationOutput values. -// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalMaxDurationInput` via: +// DirectAppdynamicsQueryDelayInput is an input type that accepts DirectAppdynamicsQueryDelayArgs and DirectAppdynamicsQueryDelayOutput values. +// You can construct a concrete instance of `DirectAppdynamicsQueryDelayInput` via: // -// DirectDatadogHistoricalDataRetrievalMaxDurationArgs{...} -type DirectDatadogHistoricalDataRetrievalMaxDurationInput interface { +// DirectAppdynamicsQueryDelayArgs{...} +type DirectAppdynamicsQueryDelayInput interface { pulumi.Input - ToDirectDatadogHistoricalDataRetrievalMaxDurationOutput() DirectDatadogHistoricalDataRetrievalMaxDurationOutput - ToDirectDatadogHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationOutput + ToDirectAppdynamicsQueryDelayOutput() DirectAppdynamicsQueryDelayOutput + ToDirectAppdynamicsQueryDelayOutputWithContext(context.Context) DirectAppdynamicsQueryDelayOutput } -type DirectDatadogHistoricalDataRetrievalMaxDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type DirectAppdynamicsQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` } -func (DirectDatadogHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDatadogHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (DirectAppdynamicsQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAppdynamicsQueryDelay)(nil)).Elem() } -func (i DirectDatadogHistoricalDataRetrievalMaxDurationArgs) ToDirectDatadogHistoricalDataRetrievalMaxDurationOutput() DirectDatadogHistoricalDataRetrievalMaxDurationOutput { - return i.ToDirectDatadogHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +func (i DirectAppdynamicsQueryDelayArgs) ToDirectAppdynamicsQueryDelayOutput() DirectAppdynamicsQueryDelayOutput { + return i.ToDirectAppdynamicsQueryDelayOutputWithContext(context.Background()) } -func (i DirectDatadogHistoricalDataRetrievalMaxDurationArgs) ToDirectDatadogHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalMaxDurationOutput) +func (i DirectAppdynamicsQueryDelayArgs) ToDirectAppdynamicsQueryDelayOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsQueryDelayOutput) } -// DirectDatadogHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectDatadogHistoricalDataRetrievalMaxDurationArray and DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput values. -// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalMaxDurationArrayInput` via: -// -// DirectDatadogHistoricalDataRetrievalMaxDurationArray{ DirectDatadogHistoricalDataRetrievalMaxDurationArgs{...} } -type DirectDatadogHistoricalDataRetrievalMaxDurationArrayInput interface { - pulumi.Input - - ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput - ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput +func (i DirectAppdynamicsQueryDelayArgs) ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput { + return i.ToDirectAppdynamicsQueryDelayPtrOutputWithContext(context.Background()) } -type DirectDatadogHistoricalDataRetrievalMaxDurationArray []DirectDatadogHistoricalDataRetrievalMaxDurationInput - -func (DirectDatadogHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectDatadogHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (i DirectAppdynamicsQueryDelayArgs) ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsQueryDelayOutput).ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx) } -func (i DirectDatadogHistoricalDataRetrievalMaxDurationArray) ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { - return i.ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) -} +// DirectAppdynamicsQueryDelayPtrInput is an input type that accepts DirectAppdynamicsQueryDelayArgs, DirectAppdynamicsQueryDelayPtr and DirectAppdynamicsQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectAppdynamicsQueryDelayPtrInput` via: +// +// DirectAppdynamicsQueryDelayArgs{...} +// +// or: +// +// nil +type DirectAppdynamicsQueryDelayPtrInput interface { + pulumi.Input -func (i DirectDatadogHistoricalDataRetrievalMaxDurationArray) ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) + ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput + ToDirectAppdynamicsQueryDelayPtrOutputWithContext(context.Context) DirectAppdynamicsQueryDelayPtrOutput } -type DirectDatadogHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } - -func (DirectDatadogHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDatadogHistoricalDataRetrievalMaxDuration)(nil)).Elem() -} +type directAppdynamicsQueryDelayPtrType DirectAppdynamicsQueryDelayArgs -func (o DirectDatadogHistoricalDataRetrievalMaxDurationOutput) ToDirectDatadogHistoricalDataRetrievalMaxDurationOutput() DirectDatadogHistoricalDataRetrievalMaxDurationOutput { - return o +func DirectAppdynamicsQueryDelayPtr(v *DirectAppdynamicsQueryDelayArgs) DirectAppdynamicsQueryDelayPtrInput { + return (*directAppdynamicsQueryDelayPtrType)(v) } -func (o DirectDatadogHistoricalDataRetrievalMaxDurationOutput) ToDirectDatadogHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationOutput { - return o +func (*directAppdynamicsQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAppdynamicsQueryDelay)(nil)).Elem() } -func (o DirectDatadogHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectDatadogHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +func (i *directAppdynamicsQueryDelayPtrType) ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput { + return i.ToDirectAppdynamicsQueryDelayPtrOutputWithContext(context.Background()) } -func (o DirectDatadogHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectDatadogHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +func (i *directAppdynamicsQueryDelayPtrType) ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAppdynamicsQueryDelayPtrOutput) } -type DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } +type DirectAppdynamicsQueryDelayOutput struct{ *pulumi.OutputState } -func (DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectDatadogHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (DirectAppdynamicsQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAppdynamicsQueryDelay)(nil)).Elem() } -func (o DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { +func (o DirectAppdynamicsQueryDelayOutput) ToDirectAppdynamicsQueryDelayOutput() DirectAppdynamicsQueryDelayOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { +func (o DirectAppdynamicsQueryDelayOutput) ToDirectAppdynamicsQueryDelayOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayOutput { return o } -func (o DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectDatadogHistoricalDataRetrievalMaxDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectDatadogHistoricalDataRetrievalMaxDuration { - return vs[0].([]DirectDatadogHistoricalDataRetrievalMaxDuration)[vs[1].(int)] - }).(DirectDatadogHistoricalDataRetrievalMaxDurationOutput) +func (o DirectAppdynamicsQueryDelayOutput) ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput { + return o.ToDirectAppdynamicsQueryDelayPtrOutputWithContext(context.Background()) } -type DirectDatadogQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +func (o DirectAppdynamicsQueryDelayOutput) ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectAppdynamicsQueryDelay) *DirectAppdynamicsQueryDelay { + return &v + }).(DirectAppdynamicsQueryDelayPtrOutput) } -// DirectDatadogQueryDelayInput is an input type that accepts DirectDatadogQueryDelayArgs and DirectDatadogQueryDelayOutput values. -// You can construct a concrete instance of `DirectDatadogQueryDelayInput` via: -// -// DirectDatadogQueryDelayArgs{...} -type DirectDatadogQueryDelayInput interface { - pulumi.Input - - ToDirectDatadogQueryDelayOutput() DirectDatadogQueryDelayOutput - ToDirectDatadogQueryDelayOutputWithContext(context.Context) DirectDatadogQueryDelayOutput +// Must be one of Minute or Second. +func (o DirectAppdynamicsQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectAppdynamicsQueryDelay) string { return v.Unit }).(pulumi.StringOutput) } -type DirectDatadogQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +// Must be an integer greater than or equal to 0. +func (o DirectAppdynamicsQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectAppdynamicsQueryDelay) int { return v.Value }).(pulumi.IntOutput) } -func (DirectDatadogQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDatadogQueryDelay)(nil)).Elem() +type DirectAppdynamicsQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectAppdynamicsQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAppdynamicsQueryDelay)(nil)).Elem() } -func (i DirectDatadogQueryDelayArgs) ToDirectDatadogQueryDelayOutput() DirectDatadogQueryDelayOutput { - return i.ToDirectDatadogQueryDelayOutputWithContext(context.Background()) +func (o DirectAppdynamicsQueryDelayPtrOutput) ToDirectAppdynamicsQueryDelayPtrOutput() DirectAppdynamicsQueryDelayPtrOutput { + return o } -func (i DirectDatadogQueryDelayArgs) ToDirectDatadogQueryDelayOutputWithContext(ctx context.Context) DirectDatadogQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogQueryDelayOutput) +func (o DirectAppdynamicsQueryDelayPtrOutput) ToDirectAppdynamicsQueryDelayPtrOutputWithContext(ctx context.Context) DirectAppdynamicsQueryDelayPtrOutput { + return o } -func (i DirectDatadogQueryDelayArgs) ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput { - return i.ToDirectDatadogQueryDelayPtrOutputWithContext(context.Background()) -} - -func (i DirectDatadogQueryDelayArgs) ToDirectDatadogQueryDelayPtrOutputWithContext(ctx context.Context) DirectDatadogQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogQueryDelayOutput).ToDirectDatadogQueryDelayPtrOutputWithContext(ctx) -} - -// DirectDatadogQueryDelayPtrInput is an input type that accepts DirectDatadogQueryDelayArgs, DirectDatadogQueryDelayPtr and DirectDatadogQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectDatadogQueryDelayPtrInput` via: -// -// DirectDatadogQueryDelayArgs{...} -// -// or: -// -// nil -type DirectDatadogQueryDelayPtrInput interface { - pulumi.Input - - ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput - ToDirectDatadogQueryDelayPtrOutputWithContext(context.Context) DirectDatadogQueryDelayPtrOutput -} - -type directDatadogQueryDelayPtrType DirectDatadogQueryDelayArgs - -func DirectDatadogQueryDelayPtr(v *DirectDatadogQueryDelayArgs) DirectDatadogQueryDelayPtrInput { - return (*directDatadogQueryDelayPtrType)(v) -} - -func (*directDatadogQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectDatadogQueryDelay)(nil)).Elem() -} - -func (i *directDatadogQueryDelayPtrType) ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput { - return i.ToDirectDatadogQueryDelayPtrOutputWithContext(context.Background()) -} - -func (i *directDatadogQueryDelayPtrType) ToDirectDatadogQueryDelayPtrOutputWithContext(ctx context.Context) DirectDatadogQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogQueryDelayPtrOutput) -} - -type DirectDatadogQueryDelayOutput struct{ *pulumi.OutputState } - -func (DirectDatadogQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDatadogQueryDelay)(nil)).Elem() -} - -func (o DirectDatadogQueryDelayOutput) ToDirectDatadogQueryDelayOutput() DirectDatadogQueryDelayOutput { - return o -} - -func (o DirectDatadogQueryDelayOutput) ToDirectDatadogQueryDelayOutputWithContext(ctx context.Context) DirectDatadogQueryDelayOutput { - return o -} - -func (o DirectDatadogQueryDelayOutput) ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput { - return o.ToDirectDatadogQueryDelayPtrOutputWithContext(context.Background()) -} - -func (o DirectDatadogQueryDelayOutput) ToDirectDatadogQueryDelayPtrOutputWithContext(ctx context.Context) DirectDatadogQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectDatadogQueryDelay) *DirectDatadogQueryDelay { - return &v - }).(DirectDatadogQueryDelayPtrOutput) -} - -// Must be one of Minute or Second. -func (o DirectDatadogQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectDatadogQueryDelay) string { return v.Unit }).(pulumi.StringOutput) -} - -// Must be an integer greater than or equal to 0. -func (o DirectDatadogQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectDatadogQueryDelay) int { return v.Value }).(pulumi.IntOutput) -} - -type DirectDatadogQueryDelayPtrOutput struct{ *pulumi.OutputState } - -func (DirectDatadogQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectDatadogQueryDelay)(nil)).Elem() -} - -func (o DirectDatadogQueryDelayPtrOutput) ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput { - return o -} - -func (o DirectDatadogQueryDelayPtrOutput) ToDirectDatadogQueryDelayPtrOutputWithContext(ctx context.Context) DirectDatadogQueryDelayPtrOutput { - return o -} - -func (o DirectDatadogQueryDelayPtrOutput) Elem() DirectDatadogQueryDelayOutput { - return o.ApplyT(func(v *DirectDatadogQueryDelay) DirectDatadogQueryDelay { - if v != nil { - return *v - } - var ret DirectDatadogQueryDelay - return ret - }).(DirectDatadogQueryDelayOutput) +func (o DirectAppdynamicsQueryDelayPtrOutput) Elem() DirectAppdynamicsQueryDelayOutput { + return o.ApplyT(func(v *DirectAppdynamicsQueryDelay) DirectAppdynamicsQueryDelay { + if v != nil { + return *v + } + var ret DirectAppdynamicsQueryDelay + return ret + }).(DirectAppdynamicsQueryDelayOutput) } // Must be one of Minute or Second. -func (o DirectDatadogQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectDatadogQueryDelay) *string { +func (o DirectAppdynamicsQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectAppdynamicsQueryDelay) *string { if v == nil { return nil } @@ -4669,8 +4646,8 @@ func (o DirectDatadogQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { } // Must be an integer greater than or equal to 0. -func (o DirectDatadogQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectDatadogQueryDelay) *int { +func (o DirectAppdynamicsQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectAppdynamicsQueryDelay) *int { if v == nil { return nil } @@ -4678,505 +4655,517 @@ func (o DirectDatadogQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -type DirectDynatraceHistoricalDataRetrieval struct { +type DirectAzureMonitorHistoricalDataRetrieval struct { // Used by default for any SLOs connected to this data source. - DefaultDurations []DirectDynatraceHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + DefaultDurations []DirectAzureMonitorHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` // Defines the maximum period for which data can be retrieved. - MaxDurations []DirectDynatraceHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` + MaxDurations []DirectAzureMonitorHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` } -// DirectDynatraceHistoricalDataRetrievalInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalArgs and DirectDynatraceHistoricalDataRetrievalOutput values. -// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalInput` via: +// DirectAzureMonitorHistoricalDataRetrievalInput is an input type that accepts DirectAzureMonitorHistoricalDataRetrievalArgs and DirectAzureMonitorHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectAzureMonitorHistoricalDataRetrievalInput` via: // -// DirectDynatraceHistoricalDataRetrievalArgs{...} -type DirectDynatraceHistoricalDataRetrievalInput interface { +// DirectAzureMonitorHistoricalDataRetrievalArgs{...} +type DirectAzureMonitorHistoricalDataRetrievalInput interface { pulumi.Input - ToDirectDynatraceHistoricalDataRetrievalOutput() DirectDynatraceHistoricalDataRetrievalOutput - ToDirectDynatraceHistoricalDataRetrievalOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalOutput + ToDirectAzureMonitorHistoricalDataRetrievalOutput() DirectAzureMonitorHistoricalDataRetrievalOutput + ToDirectAzureMonitorHistoricalDataRetrievalOutputWithContext(context.Context) DirectAzureMonitorHistoricalDataRetrievalOutput } -type DirectDynatraceHistoricalDataRetrievalArgs struct { +type DirectAzureMonitorHistoricalDataRetrievalArgs struct { // Used by default for any SLOs connected to this data source. - DefaultDurations DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + DefaultDurations DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` // Defines the maximum period for which data can be retrieved. - MaxDurations DirectDynatraceHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` + MaxDurations DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` } -func (DirectDynatraceHistoricalDataRetrievalArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrieval)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrieval)(nil)).Elem() } -func (i DirectDynatraceHistoricalDataRetrievalArgs) ToDirectDynatraceHistoricalDataRetrievalOutput() DirectDynatraceHistoricalDataRetrievalOutput { - return i.ToDirectDynatraceHistoricalDataRetrievalOutputWithContext(context.Background()) +func (i DirectAzureMonitorHistoricalDataRetrievalArgs) ToDirectAzureMonitorHistoricalDataRetrievalOutput() DirectAzureMonitorHistoricalDataRetrievalOutput { + return i.ToDirectAzureMonitorHistoricalDataRetrievalOutputWithContext(context.Background()) } -func (i DirectDynatraceHistoricalDataRetrievalArgs) ToDirectDynatraceHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalOutput) +func (i DirectAzureMonitorHistoricalDataRetrievalArgs) ToDirectAzureMonitorHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorHistoricalDataRetrievalOutput) } -func (i DirectDynatraceHistoricalDataRetrievalArgs) ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput { - return i.ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i DirectAzureMonitorHistoricalDataRetrievalArgs) ToDirectAzureMonitorHistoricalDataRetrievalPtrOutput() DirectAzureMonitorHistoricalDataRetrievalPtrOutput { + return i.ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (i DirectDynatraceHistoricalDataRetrievalArgs) ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalOutput).ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx) +func (i DirectAzureMonitorHistoricalDataRetrievalArgs) ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorHistoricalDataRetrievalOutput).ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(ctx) } -// DirectDynatraceHistoricalDataRetrievalPtrInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalArgs, DirectDynatraceHistoricalDataRetrievalPtr and DirectDynatraceHistoricalDataRetrievalPtrOutput values. -// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalPtrInput` via: +// DirectAzureMonitorHistoricalDataRetrievalPtrInput is an input type that accepts DirectAzureMonitorHistoricalDataRetrievalArgs, DirectAzureMonitorHistoricalDataRetrievalPtr and DirectAzureMonitorHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectAzureMonitorHistoricalDataRetrievalPtrInput` via: // -// DirectDynatraceHistoricalDataRetrievalArgs{...} +// DirectAzureMonitorHistoricalDataRetrievalArgs{...} // -// or: +// or: // -// nil -type DirectDynatraceHistoricalDataRetrievalPtrInput interface { +// nil +type DirectAzureMonitorHistoricalDataRetrievalPtrInput interface { pulumi.Input - ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput - ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput + ToDirectAzureMonitorHistoricalDataRetrievalPtrOutput() DirectAzureMonitorHistoricalDataRetrievalPtrOutput + ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectAzureMonitorHistoricalDataRetrievalPtrOutput } -type directDynatraceHistoricalDataRetrievalPtrType DirectDynatraceHistoricalDataRetrievalArgs +type directAzureMonitorHistoricalDataRetrievalPtrType DirectAzureMonitorHistoricalDataRetrievalArgs -func DirectDynatraceHistoricalDataRetrievalPtr(v *DirectDynatraceHistoricalDataRetrievalArgs) DirectDynatraceHistoricalDataRetrievalPtrInput { - return (*directDynatraceHistoricalDataRetrievalPtrType)(v) +func DirectAzureMonitorHistoricalDataRetrievalPtr(v *DirectAzureMonitorHistoricalDataRetrievalArgs) DirectAzureMonitorHistoricalDataRetrievalPtrInput { + return (*directAzureMonitorHistoricalDataRetrievalPtrType)(v) } -func (*directDynatraceHistoricalDataRetrievalPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectDynatraceHistoricalDataRetrieval)(nil)).Elem() +func (*directAzureMonitorHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAzureMonitorHistoricalDataRetrieval)(nil)).Elem() } -func (i *directDynatraceHistoricalDataRetrievalPtrType) ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput { - return i.ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i *directAzureMonitorHistoricalDataRetrievalPtrType) ToDirectAzureMonitorHistoricalDataRetrievalPtrOutput() DirectAzureMonitorHistoricalDataRetrievalPtrOutput { + return i.ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (i *directDynatraceHistoricalDataRetrievalPtrType) ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalPtrOutput) +func (i *directAzureMonitorHistoricalDataRetrievalPtrType) ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorHistoricalDataRetrievalPtrOutput) } -type DirectDynatraceHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } +type DirectAzureMonitorHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } -func (DirectDynatraceHistoricalDataRetrievalOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrieval)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrieval)(nil)).Elem() } -func (o DirectDynatraceHistoricalDataRetrievalOutput) ToDirectDynatraceHistoricalDataRetrievalOutput() DirectDynatraceHistoricalDataRetrievalOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalOutput) ToDirectAzureMonitorHistoricalDataRetrievalOutput() DirectAzureMonitorHistoricalDataRetrievalOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalOutput) ToDirectDynatraceHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalOutput) ToDirectAzureMonitorHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalOutput) ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput { - return o.ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (o DirectAzureMonitorHistoricalDataRetrievalOutput) ToDirectAzureMonitorHistoricalDataRetrievalPtrOutput() DirectAzureMonitorHistoricalDataRetrievalPtrOutput { + return o.ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (o DirectDynatraceHistoricalDataRetrievalOutput) ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectDynatraceHistoricalDataRetrieval) *DirectDynatraceHistoricalDataRetrieval { +func (o DirectAzureMonitorHistoricalDataRetrievalOutput) ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectAzureMonitorHistoricalDataRetrieval) *DirectAzureMonitorHistoricalDataRetrieval { return &v - }).(DirectDynatraceHistoricalDataRetrievalPtrOutput) + }).(DirectAzureMonitorHistoricalDataRetrievalPtrOutput) } // Used by default for any SLOs connected to this data source. -func (o DirectDynatraceHistoricalDataRetrievalOutput) DefaultDurations() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrieval) []DirectDynatraceHistoricalDataRetrievalDefaultDuration { +func (o DirectAzureMonitorHistoricalDataRetrievalOutput) DefaultDurations() DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectAzureMonitorHistoricalDataRetrieval) []DirectAzureMonitorHistoricalDataRetrievalDefaultDuration { return v.DefaultDurations - }).(DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) + }).(DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput) } // Defines the maximum period for which data can be retrieved. -func (o DirectDynatraceHistoricalDataRetrievalOutput) MaxDurations() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrieval) []DirectDynatraceHistoricalDataRetrievalMaxDuration { +func (o DirectAzureMonitorHistoricalDataRetrievalOutput) MaxDurations() DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectAzureMonitorHistoricalDataRetrieval) []DirectAzureMonitorHistoricalDataRetrievalMaxDuration { return v.MaxDurations - }).(DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) + }).(DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput) } -type DirectDynatraceHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } +type DirectAzureMonitorHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } -func (DirectDynatraceHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectDynatraceHistoricalDataRetrieval)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAzureMonitorHistoricalDataRetrieval)(nil)).Elem() } -func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalPtrOutput) ToDirectAzureMonitorHistoricalDataRetrievalPtrOutput() DirectAzureMonitorHistoricalDataRetrievalPtrOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalPtrOutput) ToDirectAzureMonitorHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalPtrOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) Elem() DirectDynatraceHistoricalDataRetrievalOutput { - return o.ApplyT(func(v *DirectDynatraceHistoricalDataRetrieval) DirectDynatraceHistoricalDataRetrieval { +func (o DirectAzureMonitorHistoricalDataRetrievalPtrOutput) Elem() DirectAzureMonitorHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectAzureMonitorHistoricalDataRetrieval) DirectAzureMonitorHistoricalDataRetrieval { if v != nil { return *v } - var ret DirectDynatraceHistoricalDataRetrieval + var ret DirectAzureMonitorHistoricalDataRetrieval return ret - }).(DirectDynatraceHistoricalDataRetrievalOutput) + }).(DirectAzureMonitorHistoricalDataRetrievalOutput) } // Used by default for any SLOs connected to this data source. -func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v *DirectDynatraceHistoricalDataRetrieval) []DirectDynatraceHistoricalDataRetrievalDefaultDuration { +func (o DirectAzureMonitorHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectAzureMonitorHistoricalDataRetrieval) []DirectAzureMonitorHistoricalDataRetrievalDefaultDuration { if v == nil { return nil } return v.DefaultDurations - }).(DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) + }).(DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput) } // Defines the maximum period for which data can be retrieved. -func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) MaxDurations() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v *DirectDynatraceHistoricalDataRetrieval) []DirectDynatraceHistoricalDataRetrievalMaxDuration { +func (o DirectAzureMonitorHistoricalDataRetrievalPtrOutput) MaxDurations() DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectAzureMonitorHistoricalDataRetrieval) []DirectAzureMonitorHistoricalDataRetrievalMaxDuration { if v == nil { return nil } return v.MaxDurations - }).(DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) + }).(DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput) } -type DirectDynatraceHistoricalDataRetrievalDefaultDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type DirectAzureMonitorHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` } -// DirectDynatraceHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs and DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput values. -// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalDefaultDurationInput` via: +// DirectAzureMonitorHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs and DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectAzureMonitorHistoricalDataRetrievalDefaultDurationInput` via: // -// DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs{...} -type DirectDynatraceHistoricalDataRetrievalDefaultDurationInput interface { +// DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectAzureMonitorHistoricalDataRetrievalDefaultDurationInput interface { pulumi.Input - ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput - ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput + ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput() DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput + ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput } -type DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` } -func (DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (i DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { - return i.ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +func (i DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs) ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput() DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) } -func (i DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) +func (i DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs) ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput) } -// DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalDefaultDurationArray and DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput values. -// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayInput` via: +// DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArray and DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayInput` via: // -// DirectDynatraceHistoricalDataRetrievalDefaultDurationArray{ DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs{...} } -type DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayInput interface { +// DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArray{ DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayInput interface { pulumi.Input - ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput - ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput() DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput } -type DirectDynatraceHistoricalDataRetrievalDefaultDurationArray []DirectDynatraceHistoricalDataRetrievalDefaultDurationInput +type DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArray []DirectAzureMonitorHistoricalDataRetrievalDefaultDurationInput -func (DirectDynatraceHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectDynatraceHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectAzureMonitorHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (i DirectDynatraceHistoricalDataRetrievalDefaultDurationArray) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { - return i.ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +func (i DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArray) ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput() DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) } -func (i DirectDynatraceHistoricalDataRetrievalDefaultDurationArray) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) +func (i DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArray) ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput) } -type DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } +type DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } -func (DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput) ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput() DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput) ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +// Must be one of Minute, Hour, or Day. +func (o DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectAzureMonitorHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) } -func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +// Must be an integer greater than or equal to 0. +func (o DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectAzureMonitorHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) } -type DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } +type DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } -func (DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectDynatraceHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectAzureMonitorHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput() DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectDynatraceHistoricalDataRetrievalDefaultDuration { - return vs[0].([]DirectDynatraceHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] - }).(DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) +func (o DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectAzureMonitorHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectAzureMonitorHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput) } -type DirectDynatraceHistoricalDataRetrievalMaxDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type DirectAzureMonitorHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` } -// DirectDynatraceHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalMaxDurationArgs and DirectDynatraceHistoricalDataRetrievalMaxDurationOutput values. -// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalMaxDurationInput` via: +// DirectAzureMonitorHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs and DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectAzureMonitorHistoricalDataRetrievalMaxDurationInput` via: // -// DirectDynatraceHistoricalDataRetrievalMaxDurationArgs{...} -type DirectDynatraceHistoricalDataRetrievalMaxDurationInput interface { +// DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs{...} +type DirectAzureMonitorHistoricalDataRetrievalMaxDurationInput interface { pulumi.Input - ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationOutput - ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationOutput + ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput() DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput + ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput } -type DirectDynatraceHistoricalDataRetrievalMaxDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` } -func (DirectDynatraceHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (i DirectDynatraceHistoricalDataRetrievalMaxDurationArgs) ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { - return i.ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +func (i DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs) ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput() DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) } -func (i DirectDynatraceHistoricalDataRetrievalMaxDurationArgs) ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) +func (i DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs) ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput) } -// DirectDynatraceHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalMaxDurationArray and DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput values. -// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalMaxDurationArrayInput` via: +// DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectAzureMonitorHistoricalDataRetrievalMaxDurationArray and DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayInput` via: // -// DirectDynatraceHistoricalDataRetrievalMaxDurationArray{ DirectDynatraceHistoricalDataRetrievalMaxDurationArgs{...} } -type DirectDynatraceHistoricalDataRetrievalMaxDurationArrayInput interface { +// DirectAzureMonitorHistoricalDataRetrievalMaxDurationArray{ DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayInput interface { pulumi.Input - ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput - ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput() DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput } -type DirectDynatraceHistoricalDataRetrievalMaxDurationArray []DirectDynatraceHistoricalDataRetrievalMaxDurationInput +type DirectAzureMonitorHistoricalDataRetrievalMaxDurationArray []DirectAzureMonitorHistoricalDataRetrievalMaxDurationInput -func (DirectDynatraceHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectDynatraceHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectAzureMonitorHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (i DirectDynatraceHistoricalDataRetrievalMaxDurationArray) ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { - return i.ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +func (i DirectAzureMonitorHistoricalDataRetrievalMaxDurationArray) ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput() DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) } -func (i DirectDynatraceHistoricalDataRetrievalMaxDurationArray) ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) +func (i DirectAzureMonitorHistoricalDataRetrievalMaxDurationArray) ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput) } -type DirectDynatraceHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } +type DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } -func (DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (o DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput) ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput() DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput) ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +// Must be one of Minute, Hour, or Day. +func (o DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectAzureMonitorHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) } -func (o DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +// Must be an integer greater than or equal to 0. +func (o DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectAzureMonitorHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) } -type DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } +type DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } -func (DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectDynatraceHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectAzureMonitorHistoricalDataRetrievalMaxDuration)(nil)).Elem() } -func (o DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput() DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { +func (o DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput { return o } -func (o DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectDynatraceHistoricalDataRetrievalMaxDuration { - return vs[0].([]DirectDynatraceHistoricalDataRetrievalMaxDuration)[vs[1].(int)] - }).(DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) +func (o DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectAzureMonitorHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectAzureMonitorHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput) } -type DirectDynatraceQueryDelay struct { +type DirectAzureMonitorQueryDelay struct { // Must be one of Minute or Second. Unit string `pulumi:"unit"` // Must be an integer greater than or equal to 0. Value int `pulumi:"value"` } -// DirectDynatraceQueryDelayInput is an input type that accepts DirectDynatraceQueryDelayArgs and DirectDynatraceQueryDelayOutput values. -// You can construct a concrete instance of `DirectDynatraceQueryDelayInput` via: +// DirectAzureMonitorQueryDelayInput is an input type that accepts DirectAzureMonitorQueryDelayArgs and DirectAzureMonitorQueryDelayOutput values. +// You can construct a concrete instance of `DirectAzureMonitorQueryDelayInput` via: // -// DirectDynatraceQueryDelayArgs{...} -type DirectDynatraceQueryDelayInput interface { +// DirectAzureMonitorQueryDelayArgs{...} +type DirectAzureMonitorQueryDelayInput interface { pulumi.Input - ToDirectDynatraceQueryDelayOutput() DirectDynatraceQueryDelayOutput - ToDirectDynatraceQueryDelayOutputWithContext(context.Context) DirectDynatraceQueryDelayOutput + ToDirectAzureMonitorQueryDelayOutput() DirectAzureMonitorQueryDelayOutput + ToDirectAzureMonitorQueryDelayOutputWithContext(context.Context) DirectAzureMonitorQueryDelayOutput } -type DirectDynatraceQueryDelayArgs struct { +type DirectAzureMonitorQueryDelayArgs struct { // Must be one of Minute or Second. Unit pulumi.StringInput `pulumi:"unit"` // Must be an integer greater than or equal to 0. Value pulumi.IntInput `pulumi:"value"` } -func (DirectDynatraceQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDynatraceQueryDelay)(nil)).Elem() +func (DirectAzureMonitorQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAzureMonitorQueryDelay)(nil)).Elem() } -func (i DirectDynatraceQueryDelayArgs) ToDirectDynatraceQueryDelayOutput() DirectDynatraceQueryDelayOutput { - return i.ToDirectDynatraceQueryDelayOutputWithContext(context.Background()) +func (i DirectAzureMonitorQueryDelayArgs) ToDirectAzureMonitorQueryDelayOutput() DirectAzureMonitorQueryDelayOutput { + return i.ToDirectAzureMonitorQueryDelayOutputWithContext(context.Background()) } -func (i DirectDynatraceQueryDelayArgs) ToDirectDynatraceQueryDelayOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceQueryDelayOutput) +func (i DirectAzureMonitorQueryDelayArgs) ToDirectAzureMonitorQueryDelayOutputWithContext(ctx context.Context) DirectAzureMonitorQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorQueryDelayOutput) } -func (i DirectDynatraceQueryDelayArgs) ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput { - return i.ToDirectDynatraceQueryDelayPtrOutputWithContext(context.Background()) +func (i DirectAzureMonitorQueryDelayArgs) ToDirectAzureMonitorQueryDelayPtrOutput() DirectAzureMonitorQueryDelayPtrOutput { + return i.ToDirectAzureMonitorQueryDelayPtrOutputWithContext(context.Background()) } -func (i DirectDynatraceQueryDelayArgs) ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceQueryDelayOutput).ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx) +func (i DirectAzureMonitorQueryDelayArgs) ToDirectAzureMonitorQueryDelayPtrOutputWithContext(ctx context.Context) DirectAzureMonitorQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorQueryDelayOutput).ToDirectAzureMonitorQueryDelayPtrOutputWithContext(ctx) } -// DirectDynatraceQueryDelayPtrInput is an input type that accepts DirectDynatraceQueryDelayArgs, DirectDynatraceQueryDelayPtr and DirectDynatraceQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectDynatraceQueryDelayPtrInput` via: +// DirectAzureMonitorQueryDelayPtrInput is an input type that accepts DirectAzureMonitorQueryDelayArgs, DirectAzureMonitorQueryDelayPtr and DirectAzureMonitorQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectAzureMonitorQueryDelayPtrInput` via: // -// DirectDynatraceQueryDelayArgs{...} +// DirectAzureMonitorQueryDelayArgs{...} // -// or: +// or: // -// nil -type DirectDynatraceQueryDelayPtrInput interface { +// nil +type DirectAzureMonitorQueryDelayPtrInput interface { pulumi.Input - ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput - ToDirectDynatraceQueryDelayPtrOutputWithContext(context.Context) DirectDynatraceQueryDelayPtrOutput + ToDirectAzureMonitorQueryDelayPtrOutput() DirectAzureMonitorQueryDelayPtrOutput + ToDirectAzureMonitorQueryDelayPtrOutputWithContext(context.Context) DirectAzureMonitorQueryDelayPtrOutput } -type directDynatraceQueryDelayPtrType DirectDynatraceQueryDelayArgs +type directAzureMonitorQueryDelayPtrType DirectAzureMonitorQueryDelayArgs -func DirectDynatraceQueryDelayPtr(v *DirectDynatraceQueryDelayArgs) DirectDynatraceQueryDelayPtrInput { - return (*directDynatraceQueryDelayPtrType)(v) +func DirectAzureMonitorQueryDelayPtr(v *DirectAzureMonitorQueryDelayArgs) DirectAzureMonitorQueryDelayPtrInput { + return (*directAzureMonitorQueryDelayPtrType)(v) } -func (*directDynatraceQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectDynatraceQueryDelay)(nil)).Elem() +func (*directAzureMonitorQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAzureMonitorQueryDelay)(nil)).Elem() } -func (i *directDynatraceQueryDelayPtrType) ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput { - return i.ToDirectDynatraceQueryDelayPtrOutputWithContext(context.Background()) +func (i *directAzureMonitorQueryDelayPtrType) ToDirectAzureMonitorQueryDelayPtrOutput() DirectAzureMonitorQueryDelayPtrOutput { + return i.ToDirectAzureMonitorQueryDelayPtrOutputWithContext(context.Background()) } -func (i *directDynatraceQueryDelayPtrType) ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceQueryDelayPtrOutput) +func (i *directAzureMonitorQueryDelayPtrType) ToDirectAzureMonitorQueryDelayPtrOutputWithContext(ctx context.Context) DirectAzureMonitorQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectAzureMonitorQueryDelayPtrOutput) } -type DirectDynatraceQueryDelayOutput struct{ *pulumi.OutputState } +type DirectAzureMonitorQueryDelayOutput struct{ *pulumi.OutputState } -func (DirectDynatraceQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectDynatraceQueryDelay)(nil)).Elem() +func (DirectAzureMonitorQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectAzureMonitorQueryDelay)(nil)).Elem() } -func (o DirectDynatraceQueryDelayOutput) ToDirectDynatraceQueryDelayOutput() DirectDynatraceQueryDelayOutput { +func (o DirectAzureMonitorQueryDelayOutput) ToDirectAzureMonitorQueryDelayOutput() DirectAzureMonitorQueryDelayOutput { return o } -func (o DirectDynatraceQueryDelayOutput) ToDirectDynatraceQueryDelayOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayOutput { +func (o DirectAzureMonitorQueryDelayOutput) ToDirectAzureMonitorQueryDelayOutputWithContext(ctx context.Context) DirectAzureMonitorQueryDelayOutput { return o } -func (o DirectDynatraceQueryDelayOutput) ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput { - return o.ToDirectDynatraceQueryDelayPtrOutputWithContext(context.Background()) +func (o DirectAzureMonitorQueryDelayOutput) ToDirectAzureMonitorQueryDelayPtrOutput() DirectAzureMonitorQueryDelayPtrOutput { + return o.ToDirectAzureMonitorQueryDelayPtrOutputWithContext(context.Background()) } -func (o DirectDynatraceQueryDelayOutput) ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectDynatraceQueryDelay) *DirectDynatraceQueryDelay { +func (o DirectAzureMonitorQueryDelayOutput) ToDirectAzureMonitorQueryDelayPtrOutputWithContext(ctx context.Context) DirectAzureMonitorQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectAzureMonitorQueryDelay) *DirectAzureMonitorQueryDelay { return &v - }).(DirectDynatraceQueryDelayPtrOutput) + }).(DirectAzureMonitorQueryDelayPtrOutput) } // Must be one of Minute or Second. -func (o DirectDynatraceQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectDynatraceQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +func (o DirectAzureMonitorQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectAzureMonitorQueryDelay) string { return v.Unit }).(pulumi.StringOutput) } // Must be an integer greater than or equal to 0. -func (o DirectDynatraceQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectDynatraceQueryDelay) int { return v.Value }).(pulumi.IntOutput) +func (o DirectAzureMonitorQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectAzureMonitorQueryDelay) int { return v.Value }).(pulumi.IntOutput) } -type DirectDynatraceQueryDelayPtrOutput struct{ *pulumi.OutputState } +type DirectAzureMonitorQueryDelayPtrOutput struct{ *pulumi.OutputState } -func (DirectDynatraceQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectDynatraceQueryDelay)(nil)).Elem() +func (DirectAzureMonitorQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectAzureMonitorQueryDelay)(nil)).Elem() } -func (o DirectDynatraceQueryDelayPtrOutput) ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput { +func (o DirectAzureMonitorQueryDelayPtrOutput) ToDirectAzureMonitorQueryDelayPtrOutput() DirectAzureMonitorQueryDelayPtrOutput { return o } -func (o DirectDynatraceQueryDelayPtrOutput) ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayPtrOutput { +func (o DirectAzureMonitorQueryDelayPtrOutput) ToDirectAzureMonitorQueryDelayPtrOutputWithContext(ctx context.Context) DirectAzureMonitorQueryDelayPtrOutput { return o } -func (o DirectDynatraceQueryDelayPtrOutput) Elem() DirectDynatraceQueryDelayOutput { - return o.ApplyT(func(v *DirectDynatraceQueryDelay) DirectDynatraceQueryDelay { +func (o DirectAzureMonitorQueryDelayPtrOutput) Elem() DirectAzureMonitorQueryDelayOutput { + return o.ApplyT(func(v *DirectAzureMonitorQueryDelay) DirectAzureMonitorQueryDelay { if v != nil { return *v } - var ret DirectDynatraceQueryDelay + var ret DirectAzureMonitorQueryDelay return ret - }).(DirectDynatraceQueryDelayOutput) + }).(DirectAzureMonitorQueryDelayOutput) } // Must be one of Minute or Second. -func (o DirectDynatraceQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectDynatraceQueryDelay) *string { +func (o DirectAzureMonitorQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectAzureMonitorQueryDelay) *string { if v == nil { return nil } @@ -5185,8 +5174,8 @@ func (o DirectDynatraceQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { } // Must be an integer greater than or equal to 0. -func (o DirectDynatraceQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectDynatraceQueryDelay) *int { +func (o DirectAzureMonitorQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectAzureMonitorQueryDelay) *int { if v == nil { return nil } @@ -5194,145 +5183,145 @@ func (o DirectDynatraceQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -type DirectGcmQueryDelay struct { +type DirectBigqueryQueryDelay struct { // Must be one of Minute or Second. Unit string `pulumi:"unit"` // Must be an integer greater than or equal to 0. Value int `pulumi:"value"` } -// DirectGcmQueryDelayInput is an input type that accepts DirectGcmQueryDelayArgs and DirectGcmQueryDelayOutput values. -// You can construct a concrete instance of `DirectGcmQueryDelayInput` via: +// DirectBigqueryQueryDelayInput is an input type that accepts DirectBigqueryQueryDelayArgs and DirectBigqueryQueryDelayOutput values. +// You can construct a concrete instance of `DirectBigqueryQueryDelayInput` via: // -// DirectGcmQueryDelayArgs{...} -type DirectGcmQueryDelayInput interface { +// DirectBigqueryQueryDelayArgs{...} +type DirectBigqueryQueryDelayInput interface { pulumi.Input - ToDirectGcmQueryDelayOutput() DirectGcmQueryDelayOutput - ToDirectGcmQueryDelayOutputWithContext(context.Context) DirectGcmQueryDelayOutput + ToDirectBigqueryQueryDelayOutput() DirectBigqueryQueryDelayOutput + ToDirectBigqueryQueryDelayOutputWithContext(context.Context) DirectBigqueryQueryDelayOutput } -type DirectGcmQueryDelayArgs struct { +type DirectBigqueryQueryDelayArgs struct { // Must be one of Minute or Second. Unit pulumi.StringInput `pulumi:"unit"` // Must be an integer greater than or equal to 0. Value pulumi.IntInput `pulumi:"value"` } -func (DirectGcmQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectGcmQueryDelay)(nil)).Elem() +func (DirectBigqueryQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectBigqueryQueryDelay)(nil)).Elem() } -func (i DirectGcmQueryDelayArgs) ToDirectGcmQueryDelayOutput() DirectGcmQueryDelayOutput { - return i.ToDirectGcmQueryDelayOutputWithContext(context.Background()) +func (i DirectBigqueryQueryDelayArgs) ToDirectBigqueryQueryDelayOutput() DirectBigqueryQueryDelayOutput { + return i.ToDirectBigqueryQueryDelayOutputWithContext(context.Background()) } -func (i DirectGcmQueryDelayArgs) ToDirectGcmQueryDelayOutputWithContext(ctx context.Context) DirectGcmQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectGcmQueryDelayOutput) +func (i DirectBigqueryQueryDelayArgs) ToDirectBigqueryQueryDelayOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectBigqueryQueryDelayOutput) } -func (i DirectGcmQueryDelayArgs) ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput { - return i.ToDirectGcmQueryDelayPtrOutputWithContext(context.Background()) +func (i DirectBigqueryQueryDelayArgs) ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput { + return i.ToDirectBigqueryQueryDelayPtrOutputWithContext(context.Background()) } -func (i DirectGcmQueryDelayArgs) ToDirectGcmQueryDelayPtrOutputWithContext(ctx context.Context) DirectGcmQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectGcmQueryDelayOutput).ToDirectGcmQueryDelayPtrOutputWithContext(ctx) +func (i DirectBigqueryQueryDelayArgs) ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectBigqueryQueryDelayOutput).ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx) } -// DirectGcmQueryDelayPtrInput is an input type that accepts DirectGcmQueryDelayArgs, DirectGcmQueryDelayPtr and DirectGcmQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectGcmQueryDelayPtrInput` via: +// DirectBigqueryQueryDelayPtrInput is an input type that accepts DirectBigqueryQueryDelayArgs, DirectBigqueryQueryDelayPtr and DirectBigqueryQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectBigqueryQueryDelayPtrInput` via: // -// DirectGcmQueryDelayArgs{...} +// DirectBigqueryQueryDelayArgs{...} // -// or: +// or: // -// nil -type DirectGcmQueryDelayPtrInput interface { +// nil +type DirectBigqueryQueryDelayPtrInput interface { pulumi.Input - ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput - ToDirectGcmQueryDelayPtrOutputWithContext(context.Context) DirectGcmQueryDelayPtrOutput + ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput + ToDirectBigqueryQueryDelayPtrOutputWithContext(context.Context) DirectBigqueryQueryDelayPtrOutput } -type directGcmQueryDelayPtrType DirectGcmQueryDelayArgs +type directBigqueryQueryDelayPtrType DirectBigqueryQueryDelayArgs -func DirectGcmQueryDelayPtr(v *DirectGcmQueryDelayArgs) DirectGcmQueryDelayPtrInput { - return (*directGcmQueryDelayPtrType)(v) +func DirectBigqueryQueryDelayPtr(v *DirectBigqueryQueryDelayArgs) DirectBigqueryQueryDelayPtrInput { + return (*directBigqueryQueryDelayPtrType)(v) } -func (*directGcmQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectGcmQueryDelay)(nil)).Elem() +func (*directBigqueryQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectBigqueryQueryDelay)(nil)).Elem() } -func (i *directGcmQueryDelayPtrType) ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput { - return i.ToDirectGcmQueryDelayPtrOutputWithContext(context.Background()) +func (i *directBigqueryQueryDelayPtrType) ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput { + return i.ToDirectBigqueryQueryDelayPtrOutputWithContext(context.Background()) } -func (i *directGcmQueryDelayPtrType) ToDirectGcmQueryDelayPtrOutputWithContext(ctx context.Context) DirectGcmQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectGcmQueryDelayPtrOutput) +func (i *directBigqueryQueryDelayPtrType) ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectBigqueryQueryDelayPtrOutput) } -type DirectGcmQueryDelayOutput struct{ *pulumi.OutputState } +type DirectBigqueryQueryDelayOutput struct{ *pulumi.OutputState } -func (DirectGcmQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectGcmQueryDelay)(nil)).Elem() +func (DirectBigqueryQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectBigqueryQueryDelay)(nil)).Elem() } -func (o DirectGcmQueryDelayOutput) ToDirectGcmQueryDelayOutput() DirectGcmQueryDelayOutput { +func (o DirectBigqueryQueryDelayOutput) ToDirectBigqueryQueryDelayOutput() DirectBigqueryQueryDelayOutput { return o } -func (o DirectGcmQueryDelayOutput) ToDirectGcmQueryDelayOutputWithContext(ctx context.Context) DirectGcmQueryDelayOutput { +func (o DirectBigqueryQueryDelayOutput) ToDirectBigqueryQueryDelayOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayOutput { return o } -func (o DirectGcmQueryDelayOutput) ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput { - return o.ToDirectGcmQueryDelayPtrOutputWithContext(context.Background()) +func (o DirectBigqueryQueryDelayOutput) ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput { + return o.ToDirectBigqueryQueryDelayPtrOutputWithContext(context.Background()) } -func (o DirectGcmQueryDelayOutput) ToDirectGcmQueryDelayPtrOutputWithContext(ctx context.Context) DirectGcmQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectGcmQueryDelay) *DirectGcmQueryDelay { +func (o DirectBigqueryQueryDelayOutput) ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectBigqueryQueryDelay) *DirectBigqueryQueryDelay { return &v - }).(DirectGcmQueryDelayPtrOutput) + }).(DirectBigqueryQueryDelayPtrOutput) } // Must be one of Minute or Second. -func (o DirectGcmQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectGcmQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +func (o DirectBigqueryQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectBigqueryQueryDelay) string { return v.Unit }).(pulumi.StringOutput) } // Must be an integer greater than or equal to 0. -func (o DirectGcmQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectGcmQueryDelay) int { return v.Value }).(pulumi.IntOutput) +func (o DirectBigqueryQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectBigqueryQueryDelay) int { return v.Value }).(pulumi.IntOutput) } -type DirectGcmQueryDelayPtrOutput struct{ *pulumi.OutputState } +type DirectBigqueryQueryDelayPtrOutput struct{ *pulumi.OutputState } -func (DirectGcmQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectGcmQueryDelay)(nil)).Elem() +func (DirectBigqueryQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectBigqueryQueryDelay)(nil)).Elem() } -func (o DirectGcmQueryDelayPtrOutput) ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput { +func (o DirectBigqueryQueryDelayPtrOutput) ToDirectBigqueryQueryDelayPtrOutput() DirectBigqueryQueryDelayPtrOutput { return o } -func (o DirectGcmQueryDelayPtrOutput) ToDirectGcmQueryDelayPtrOutputWithContext(ctx context.Context) DirectGcmQueryDelayPtrOutput { +func (o DirectBigqueryQueryDelayPtrOutput) ToDirectBigqueryQueryDelayPtrOutputWithContext(ctx context.Context) DirectBigqueryQueryDelayPtrOutput { return o } -func (o DirectGcmQueryDelayPtrOutput) Elem() DirectGcmQueryDelayOutput { - return o.ApplyT(func(v *DirectGcmQueryDelay) DirectGcmQueryDelay { +func (o DirectBigqueryQueryDelayPtrOutput) Elem() DirectBigqueryQueryDelayOutput { + return o.ApplyT(func(v *DirectBigqueryQueryDelay) DirectBigqueryQueryDelay { if v != nil { return *v } - var ret DirectGcmQueryDelay + var ret DirectBigqueryQueryDelay return ret - }).(DirectGcmQueryDelayOutput) + }).(DirectBigqueryQueryDelayOutput) } // Must be one of Minute or Second. -func (o DirectGcmQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectGcmQueryDelay) *string { +func (o DirectBigqueryQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectBigqueryQueryDelay) *string { if v == nil { return nil } @@ -5341,8 +5330,8 @@ func (o DirectGcmQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { } // Must be an integer greater than or equal to 0. -func (o DirectGcmQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectGcmQueryDelay) *int { +func (o DirectBigqueryQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectBigqueryQueryDelay) *int { if v == nil { return nil } @@ -5350,3796 +5339,10189 @@ func (o DirectGcmQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -type DirectInfluxdbQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type DirectCloudwatchHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []DirectCloudwatchHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []DirectCloudwatchHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` } -// DirectInfluxdbQueryDelayInput is an input type that accepts DirectInfluxdbQueryDelayArgs and DirectInfluxdbQueryDelayOutput values. -// You can construct a concrete instance of `DirectInfluxdbQueryDelayInput` via: +// DirectCloudwatchHistoricalDataRetrievalInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalArgs and DirectCloudwatchHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalInput` via: // -// DirectInfluxdbQueryDelayArgs{...} -type DirectInfluxdbQueryDelayInput interface { +// DirectCloudwatchHistoricalDataRetrievalArgs{...} +type DirectCloudwatchHistoricalDataRetrievalInput interface { pulumi.Input - ToDirectInfluxdbQueryDelayOutput() DirectInfluxdbQueryDelayOutput - ToDirectInfluxdbQueryDelayOutputWithContext(context.Context) DirectInfluxdbQueryDelayOutput + ToDirectCloudwatchHistoricalDataRetrievalOutput() DirectCloudwatchHistoricalDataRetrievalOutput + ToDirectCloudwatchHistoricalDataRetrievalOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalOutput } -type DirectInfluxdbQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type DirectCloudwatchHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` } -func (DirectInfluxdbQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectInfluxdbQueryDelay)(nil)).Elem() +func (DirectCloudwatchHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrieval)(nil)).Elem() } -func (i DirectInfluxdbQueryDelayArgs) ToDirectInfluxdbQueryDelayOutput() DirectInfluxdbQueryDelayOutput { - return i.ToDirectInfluxdbQueryDelayOutputWithContext(context.Background()) +func (i DirectCloudwatchHistoricalDataRetrievalArgs) ToDirectCloudwatchHistoricalDataRetrievalOutput() DirectCloudwatchHistoricalDataRetrievalOutput { + return i.ToDirectCloudwatchHistoricalDataRetrievalOutputWithContext(context.Background()) } -func (i DirectInfluxdbQueryDelayArgs) ToDirectInfluxdbQueryDelayOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectInfluxdbQueryDelayOutput) +func (i DirectCloudwatchHistoricalDataRetrievalArgs) ToDirectCloudwatchHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalOutput) } -func (i DirectInfluxdbQueryDelayArgs) ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput { - return i.ToDirectInfluxdbQueryDelayPtrOutputWithContext(context.Background()) +func (i DirectCloudwatchHistoricalDataRetrievalArgs) ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput { + return i.ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (i DirectInfluxdbQueryDelayArgs) ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectInfluxdbQueryDelayOutput).ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx) +func (i DirectCloudwatchHistoricalDataRetrievalArgs) ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalOutput).ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx) } -// DirectInfluxdbQueryDelayPtrInput is an input type that accepts DirectInfluxdbQueryDelayArgs, DirectInfluxdbQueryDelayPtr and DirectInfluxdbQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectInfluxdbQueryDelayPtrInput` via: +// DirectCloudwatchHistoricalDataRetrievalPtrInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalArgs, DirectCloudwatchHistoricalDataRetrievalPtr and DirectCloudwatchHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalPtrInput` via: // -// DirectInfluxdbQueryDelayArgs{...} +// DirectCloudwatchHistoricalDataRetrievalArgs{...} // -// or: +// or: // -// nil -type DirectInfluxdbQueryDelayPtrInput interface { +// nil +type DirectCloudwatchHistoricalDataRetrievalPtrInput interface { pulumi.Input - ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput - ToDirectInfluxdbQueryDelayPtrOutputWithContext(context.Context) DirectInfluxdbQueryDelayPtrOutput + ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput + ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput } -type directInfluxdbQueryDelayPtrType DirectInfluxdbQueryDelayArgs +type directCloudwatchHistoricalDataRetrievalPtrType DirectCloudwatchHistoricalDataRetrievalArgs -func DirectInfluxdbQueryDelayPtr(v *DirectInfluxdbQueryDelayArgs) DirectInfluxdbQueryDelayPtrInput { - return (*directInfluxdbQueryDelayPtrType)(v) +func DirectCloudwatchHistoricalDataRetrievalPtr(v *DirectCloudwatchHistoricalDataRetrievalArgs) DirectCloudwatchHistoricalDataRetrievalPtrInput { + return (*directCloudwatchHistoricalDataRetrievalPtrType)(v) } -func (*directInfluxdbQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectInfluxdbQueryDelay)(nil)).Elem() +func (*directCloudwatchHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectCloudwatchHistoricalDataRetrieval)(nil)).Elem() } -func (i *directInfluxdbQueryDelayPtrType) ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput { - return i.ToDirectInfluxdbQueryDelayPtrOutputWithContext(context.Background()) -} +func (i *directCloudwatchHistoricalDataRetrievalPtrType) ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput { + return i.ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} -func (i *directInfluxdbQueryDelayPtrType) ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectInfluxdbQueryDelayPtrOutput) +func (i *directCloudwatchHistoricalDataRetrievalPtrType) ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalPtrOutput) } -type DirectInfluxdbQueryDelayOutput struct{ *pulumi.OutputState } +type DirectCloudwatchHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } -func (DirectInfluxdbQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectInfluxdbQueryDelay)(nil)).Elem() +func (DirectCloudwatchHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrieval)(nil)).Elem() } -func (o DirectInfluxdbQueryDelayOutput) ToDirectInfluxdbQueryDelayOutput() DirectInfluxdbQueryDelayOutput { +func (o DirectCloudwatchHistoricalDataRetrievalOutput) ToDirectCloudwatchHistoricalDataRetrievalOutput() DirectCloudwatchHistoricalDataRetrievalOutput { return o } -func (o DirectInfluxdbQueryDelayOutput) ToDirectInfluxdbQueryDelayOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayOutput { +func (o DirectCloudwatchHistoricalDataRetrievalOutput) ToDirectCloudwatchHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalOutput { return o } -func (o DirectInfluxdbQueryDelayOutput) ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput { - return o.ToDirectInfluxdbQueryDelayPtrOutputWithContext(context.Background()) +func (o DirectCloudwatchHistoricalDataRetrievalOutput) ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput { + return o.ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(context.Background()) } -func (o DirectInfluxdbQueryDelayOutput) ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectInfluxdbQueryDelay) *DirectInfluxdbQueryDelay { +func (o DirectCloudwatchHistoricalDataRetrievalOutput) ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectCloudwatchHistoricalDataRetrieval) *DirectCloudwatchHistoricalDataRetrieval { return &v - }).(DirectInfluxdbQueryDelayPtrOutput) + }).(DirectCloudwatchHistoricalDataRetrievalPtrOutput) } -// Must be one of Minute or Second. -func (o DirectInfluxdbQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectInfluxdbQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +// Used by default for any SLOs connected to this data source. +func (o DirectCloudwatchHistoricalDataRetrievalOutput) DefaultDurations() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrieval) []DirectCloudwatchHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectInfluxdbQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectInfluxdbQueryDelay) int { return v.Value }).(pulumi.IntOutput) +// Defines the maximum period for which data can be retrieved. +func (o DirectCloudwatchHistoricalDataRetrievalOutput) MaxDurations() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrieval) []DirectCloudwatchHistoricalDataRetrievalMaxDuration { + return v.MaxDurations + }).(DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) } -type DirectInfluxdbQueryDelayPtrOutput struct{ *pulumi.OutputState } +type DirectCloudwatchHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } -func (DirectInfluxdbQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectInfluxdbQueryDelay)(nil)).Elem() +func (DirectCloudwatchHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectCloudwatchHistoricalDataRetrieval)(nil)).Elem() } -func (o DirectInfluxdbQueryDelayPtrOutput) ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput { +func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) ToDirectCloudwatchHistoricalDataRetrievalPtrOutput() DirectCloudwatchHistoricalDataRetrievalPtrOutput { return o } -func (o DirectInfluxdbQueryDelayPtrOutput) ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayPtrOutput { +func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) ToDirectCloudwatchHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalPtrOutput { return o } -func (o DirectInfluxdbQueryDelayPtrOutput) Elem() DirectInfluxdbQueryDelayOutput { - return o.ApplyT(func(v *DirectInfluxdbQueryDelay) DirectInfluxdbQueryDelay { +func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) Elem() DirectCloudwatchHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectCloudwatchHistoricalDataRetrieval) DirectCloudwatchHistoricalDataRetrieval { if v != nil { return *v } - var ret DirectInfluxdbQueryDelay + var ret DirectCloudwatchHistoricalDataRetrieval return ret - }).(DirectInfluxdbQueryDelayOutput) + }).(DirectCloudwatchHistoricalDataRetrievalOutput) } -// Must be one of Minute or Second. -func (o DirectInfluxdbQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectInfluxdbQueryDelay) *string { +// Used by default for any SLOs connected to this data source. +func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectCloudwatchHistoricalDataRetrieval) []DirectCloudwatchHistoricalDataRetrievalDefaultDuration { if v == nil { return nil } - return &v.Unit - }).(pulumi.StringPtrOutput) + return v.DefaultDurations + }).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectInfluxdbQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectInfluxdbQueryDelay) *int { +// Defines the maximum period for which data can be retrieved. +func (o DirectCloudwatchHistoricalDataRetrievalPtrOutput) MaxDurations() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectCloudwatchHistoricalDataRetrieval) []DirectCloudwatchHistoricalDataRetrievalMaxDuration { if v == nil { return nil } - return &v.Value - }).(pulumi.IntPtrOutput) + return v.MaxDurations + }).(DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) } -type DirectInstanaQueryDelay struct { - // Must be one of Minute or Second. +type DirectCloudwatchHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. Unit string `pulumi:"unit"` // Must be an integer greater than or equal to 0. Value int `pulumi:"value"` } -// DirectInstanaQueryDelayInput is an input type that accepts DirectInstanaQueryDelayArgs and DirectInstanaQueryDelayOutput values. -// You can construct a concrete instance of `DirectInstanaQueryDelayInput` via: +// DirectCloudwatchHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs and DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalDefaultDurationInput` via: // -// DirectInstanaQueryDelayArgs{...} -type DirectInstanaQueryDelayInput interface { +// DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectCloudwatchHistoricalDataRetrievalDefaultDurationInput interface { pulumi.Input - ToDirectInstanaQueryDelayOutput() DirectInstanaQueryDelayOutput - ToDirectInstanaQueryDelayOutputWithContext(context.Context) DirectInstanaQueryDelayOutput + ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput + ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput } -type DirectInstanaQueryDelayArgs struct { - // Must be one of Minute or Second. +type DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. Unit pulumi.StringInput `pulumi:"unit"` // Must be an integer greater than or equal to 0. Value pulumi.IntInput `pulumi:"value"` } -func (DirectInstanaQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectInstanaQueryDelay)(nil)).Elem() +func (DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalDefaultDuration)(nil)).Elem() } -func (i DirectInstanaQueryDelayArgs) ToDirectInstanaQueryDelayOutput() DirectInstanaQueryDelayOutput { - return i.ToDirectInstanaQueryDelayOutputWithContext(context.Background()) +func (i DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +} + +func (i DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) +} + +// DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray and DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayInput` via: +// +// DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray{ DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayInput interface { + pulumi.Input + + ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput +} + +type DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray []DirectCloudwatchHistoricalDataRetrievalDefaultDurationInput + +func (DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectCloudwatchHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectCloudwatchHistoricalDataRetrievalDefaultDurationArray) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +type DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } + +func (DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectCloudwatchHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectCloudwatchHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectCloudwatchHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectCloudwatchHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectCloudwatchHistoricalDataRetrievalDefaultDurationOutput) +} + +type DirectCloudwatchHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectCloudwatchHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs and DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalMaxDurationInput` via: +// +// DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs{...} +type DirectCloudwatchHistoricalDataRetrievalMaxDurationInput interface { + pulumi.Input + + ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput + ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput +} + +type DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +} + +func (i DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) +} + +// DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectCloudwatchHistoricalDataRetrievalMaxDurationArray and DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayInput` via: +// +// DirectCloudwatchHistoricalDataRetrievalMaxDurationArray{ DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayInput interface { + pulumi.Input + + ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput +} + +type DirectCloudwatchHistoricalDataRetrievalMaxDurationArray []DirectCloudwatchHistoricalDataRetrievalMaxDurationInput + +func (DirectCloudwatchHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectCloudwatchHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectCloudwatchHistoricalDataRetrievalMaxDurationArray) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectCloudwatchHistoricalDataRetrievalMaxDurationArray) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } + +func (DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { + return o +} + +func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectCloudwatchHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectCloudwatchHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput() DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectCloudwatchHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectCloudwatchHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectCloudwatchHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectCloudwatchHistoricalDataRetrievalMaxDurationOutput) +} + +type DirectCloudwatchQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectCloudwatchQueryDelayInput is an input type that accepts DirectCloudwatchQueryDelayArgs and DirectCloudwatchQueryDelayOutput values. +// You can construct a concrete instance of `DirectCloudwatchQueryDelayInput` via: +// +// DirectCloudwatchQueryDelayArgs{...} +type DirectCloudwatchQueryDelayInput interface { + pulumi.Input + + ToDirectCloudwatchQueryDelayOutput() DirectCloudwatchQueryDelayOutput + ToDirectCloudwatchQueryDelayOutputWithContext(context.Context) DirectCloudwatchQueryDelayOutput +} + +type DirectCloudwatchQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectCloudwatchQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectCloudwatchQueryDelay)(nil)).Elem() +} + +func (i DirectCloudwatchQueryDelayArgs) ToDirectCloudwatchQueryDelayOutput() DirectCloudwatchQueryDelayOutput { + return i.ToDirectCloudwatchQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectCloudwatchQueryDelayArgs) ToDirectCloudwatchQueryDelayOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchQueryDelayOutput) +} + +func (i DirectCloudwatchQueryDelayArgs) ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput { + return i.ToDirectCloudwatchQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectCloudwatchQueryDelayArgs) ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchQueryDelayOutput).ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx) +} + +// DirectCloudwatchQueryDelayPtrInput is an input type that accepts DirectCloudwatchQueryDelayArgs, DirectCloudwatchQueryDelayPtr and DirectCloudwatchQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectCloudwatchQueryDelayPtrInput` via: +// +// DirectCloudwatchQueryDelayArgs{...} +// +// or: +// +// nil +type DirectCloudwatchQueryDelayPtrInput interface { + pulumi.Input + + ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput + ToDirectCloudwatchQueryDelayPtrOutputWithContext(context.Context) DirectCloudwatchQueryDelayPtrOutput +} + +type directCloudwatchQueryDelayPtrType DirectCloudwatchQueryDelayArgs + +func DirectCloudwatchQueryDelayPtr(v *DirectCloudwatchQueryDelayArgs) DirectCloudwatchQueryDelayPtrInput { + return (*directCloudwatchQueryDelayPtrType)(v) +} + +func (*directCloudwatchQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectCloudwatchQueryDelay)(nil)).Elem() +} + +func (i *directCloudwatchQueryDelayPtrType) ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput { + return i.ToDirectCloudwatchQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directCloudwatchQueryDelayPtrType) ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectCloudwatchQueryDelayPtrOutput) +} + +type DirectCloudwatchQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectCloudwatchQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectCloudwatchQueryDelay)(nil)).Elem() +} + +func (o DirectCloudwatchQueryDelayOutput) ToDirectCloudwatchQueryDelayOutput() DirectCloudwatchQueryDelayOutput { + return o +} + +func (o DirectCloudwatchQueryDelayOutput) ToDirectCloudwatchQueryDelayOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayOutput { + return o +} + +func (o DirectCloudwatchQueryDelayOutput) ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput { + return o.ToDirectCloudwatchQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectCloudwatchQueryDelayOutput) ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectCloudwatchQueryDelay) *DirectCloudwatchQueryDelay { + return &v + }).(DirectCloudwatchQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectCloudwatchQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectCloudwatchQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectCloudwatchQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectCloudwatchQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectCloudwatchQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectCloudwatchQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectCloudwatchQueryDelay)(nil)).Elem() +} + +func (o DirectCloudwatchQueryDelayPtrOutput) ToDirectCloudwatchQueryDelayPtrOutput() DirectCloudwatchQueryDelayPtrOutput { + return o +} + +func (o DirectCloudwatchQueryDelayPtrOutput) ToDirectCloudwatchQueryDelayPtrOutputWithContext(ctx context.Context) DirectCloudwatchQueryDelayPtrOutput { + return o +} + +func (o DirectCloudwatchQueryDelayPtrOutput) Elem() DirectCloudwatchQueryDelayOutput { + return o.ApplyT(func(v *DirectCloudwatchQueryDelay) DirectCloudwatchQueryDelay { + if v != nil { + return *v + } + var ret DirectCloudwatchQueryDelay + return ret + }).(DirectCloudwatchQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectCloudwatchQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectCloudwatchQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectCloudwatchQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectCloudwatchQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectDatadogHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []DirectDatadogHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []DirectDatadogHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +} + +// DirectDatadogHistoricalDataRetrievalInput is an input type that accepts DirectDatadogHistoricalDataRetrievalArgs and DirectDatadogHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalInput` via: +// +// DirectDatadogHistoricalDataRetrievalArgs{...} +type DirectDatadogHistoricalDataRetrievalInput interface { + pulumi.Input + + ToDirectDatadogHistoricalDataRetrievalOutput() DirectDatadogHistoricalDataRetrievalOutput + ToDirectDatadogHistoricalDataRetrievalOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalOutput +} + +type DirectDatadogHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations DirectDatadogHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations DirectDatadogHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +} + +func (DirectDatadogHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDatadogHistoricalDataRetrieval)(nil)).Elem() +} + +func (i DirectDatadogHistoricalDataRetrievalArgs) ToDirectDatadogHistoricalDataRetrievalOutput() DirectDatadogHistoricalDataRetrievalOutput { + return i.ToDirectDatadogHistoricalDataRetrievalOutputWithContext(context.Background()) +} + +func (i DirectDatadogHistoricalDataRetrievalArgs) ToDirectDatadogHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalOutput) +} + +func (i DirectDatadogHistoricalDataRetrievalArgs) ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput { + return i.ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i DirectDatadogHistoricalDataRetrievalArgs) ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalOutput).ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx) +} + +// DirectDatadogHistoricalDataRetrievalPtrInput is an input type that accepts DirectDatadogHistoricalDataRetrievalArgs, DirectDatadogHistoricalDataRetrievalPtr and DirectDatadogHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalPtrInput` via: +// +// DirectDatadogHistoricalDataRetrievalArgs{...} +// +// or: +// +// nil +type DirectDatadogHistoricalDataRetrievalPtrInput interface { + pulumi.Input + + ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput + ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput +} + +type directDatadogHistoricalDataRetrievalPtrType DirectDatadogHistoricalDataRetrievalArgs + +func DirectDatadogHistoricalDataRetrievalPtr(v *DirectDatadogHistoricalDataRetrievalArgs) DirectDatadogHistoricalDataRetrievalPtrInput { + return (*directDatadogHistoricalDataRetrievalPtrType)(v) +} + +func (*directDatadogHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectDatadogHistoricalDataRetrieval)(nil)).Elem() +} + +func (i *directDatadogHistoricalDataRetrievalPtrType) ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput { + return i.ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i *directDatadogHistoricalDataRetrievalPtrType) ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalPtrOutput) +} + +type DirectDatadogHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } + +func (DirectDatadogHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDatadogHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectDatadogHistoricalDataRetrievalOutput) ToDirectDatadogHistoricalDataRetrievalOutput() DirectDatadogHistoricalDataRetrievalOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalOutput) ToDirectDatadogHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalOutput) ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput { + return o.ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (o DirectDatadogHistoricalDataRetrievalOutput) ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectDatadogHistoricalDataRetrieval) *DirectDatadogHistoricalDataRetrieval { + return &v + }).(DirectDatadogHistoricalDataRetrievalPtrOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectDatadogHistoricalDataRetrievalOutput) DefaultDurations() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectDatadogHistoricalDataRetrieval) []DirectDatadogHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectDatadogHistoricalDataRetrievalOutput) MaxDurations() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectDatadogHistoricalDataRetrieval) []DirectDatadogHistoricalDataRetrievalMaxDuration { + return v.MaxDurations + }).(DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectDatadogHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } + +func (DirectDatadogHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectDatadogHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectDatadogHistoricalDataRetrievalPtrOutput) ToDirectDatadogHistoricalDataRetrievalPtrOutput() DirectDatadogHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalPtrOutput) ToDirectDatadogHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalPtrOutput) Elem() DirectDatadogHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectDatadogHistoricalDataRetrieval) DirectDatadogHistoricalDataRetrieval { + if v != nil { + return *v + } + var ret DirectDatadogHistoricalDataRetrieval + return ret + }).(DirectDatadogHistoricalDataRetrievalOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectDatadogHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectDatadogHistoricalDataRetrieval) []DirectDatadogHistoricalDataRetrievalDefaultDuration { + if v == nil { + return nil + } + return v.DefaultDurations + }).(DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectDatadogHistoricalDataRetrievalPtrOutput) MaxDurations() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectDatadogHistoricalDataRetrieval) []DirectDatadogHistoricalDataRetrievalMaxDuration { + if v == nil { + return nil + } + return v.MaxDurations + }).(DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectDatadogHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectDatadogHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectDatadogHistoricalDataRetrievalDefaultDurationArgs and DirectDatadogHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalDefaultDurationInput` via: +// +// DirectDatadogHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectDatadogHistoricalDataRetrievalDefaultDurationInput interface { + pulumi.Input + + ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationOutput + ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationOutput +} + +type DirectDatadogHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectDatadogHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDatadogHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectDatadogHistoricalDataRetrievalDefaultDurationArgs) ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +} + +func (i DirectDatadogHistoricalDataRetrievalDefaultDurationArgs) ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) +} + +// DirectDatadogHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectDatadogHistoricalDataRetrievalDefaultDurationArray and DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalDefaultDurationArrayInput` via: +// +// DirectDatadogHistoricalDataRetrievalDefaultDurationArray{ DirectDatadogHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectDatadogHistoricalDataRetrievalDefaultDurationArrayInput interface { + pulumi.Input + + ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput +} + +type DirectDatadogHistoricalDataRetrievalDefaultDurationArray []DirectDatadogHistoricalDataRetrievalDefaultDurationInput + +func (DirectDatadogHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectDatadogHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectDatadogHistoricalDataRetrievalDefaultDurationArray) ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectDatadogHistoricalDataRetrievalDefaultDurationArray) ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +type DirectDatadogHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } + +func (DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDatadogHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) ToDirectDatadogHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectDatadogHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectDatadogHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectDatadogHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectDatadogHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectDatadogHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectDatadogHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectDatadogHistoricalDataRetrievalDefaultDurationOutput) +} + +type DirectDatadogHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectDatadogHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectDatadogHistoricalDataRetrievalMaxDurationArgs and DirectDatadogHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalMaxDurationInput` via: +// +// DirectDatadogHistoricalDataRetrievalMaxDurationArgs{...} +type DirectDatadogHistoricalDataRetrievalMaxDurationInput interface { + pulumi.Input + + ToDirectDatadogHistoricalDataRetrievalMaxDurationOutput() DirectDatadogHistoricalDataRetrievalMaxDurationOutput + ToDirectDatadogHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationOutput +} + +type DirectDatadogHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectDatadogHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDatadogHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectDatadogHistoricalDataRetrievalMaxDurationArgs) ToDirectDatadogHistoricalDataRetrievalMaxDurationOutput() DirectDatadogHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectDatadogHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +} + +func (i DirectDatadogHistoricalDataRetrievalMaxDurationArgs) ToDirectDatadogHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalMaxDurationOutput) +} + +// DirectDatadogHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectDatadogHistoricalDataRetrievalMaxDurationArray and DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectDatadogHistoricalDataRetrievalMaxDurationArrayInput` via: +// +// DirectDatadogHistoricalDataRetrievalMaxDurationArray{ DirectDatadogHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectDatadogHistoricalDataRetrievalMaxDurationArrayInput interface { + pulumi.Input + + ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput +} + +type DirectDatadogHistoricalDataRetrievalMaxDurationArray []DirectDatadogHistoricalDataRetrievalMaxDurationInput + +func (DirectDatadogHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectDatadogHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectDatadogHistoricalDataRetrievalMaxDurationArray) ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectDatadogHistoricalDataRetrievalMaxDurationArray) ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectDatadogHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } + +func (DirectDatadogHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDatadogHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectDatadogHistoricalDataRetrievalMaxDurationOutput) ToDirectDatadogHistoricalDataRetrievalMaxDurationOutput() DirectDatadogHistoricalDataRetrievalMaxDurationOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalMaxDurationOutput) ToDirectDatadogHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectDatadogHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectDatadogHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectDatadogHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectDatadogHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectDatadogHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput() DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectDatadogHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectDatadogHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectDatadogHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectDatadogHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectDatadogHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectDatadogHistoricalDataRetrievalMaxDurationOutput) +} + +type DirectDatadogQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectDatadogQueryDelayInput is an input type that accepts DirectDatadogQueryDelayArgs and DirectDatadogQueryDelayOutput values. +// You can construct a concrete instance of `DirectDatadogQueryDelayInput` via: +// +// DirectDatadogQueryDelayArgs{...} +type DirectDatadogQueryDelayInput interface { + pulumi.Input + + ToDirectDatadogQueryDelayOutput() DirectDatadogQueryDelayOutput + ToDirectDatadogQueryDelayOutputWithContext(context.Context) DirectDatadogQueryDelayOutput +} + +type DirectDatadogQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectDatadogQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDatadogQueryDelay)(nil)).Elem() +} + +func (i DirectDatadogQueryDelayArgs) ToDirectDatadogQueryDelayOutput() DirectDatadogQueryDelayOutput { + return i.ToDirectDatadogQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectDatadogQueryDelayArgs) ToDirectDatadogQueryDelayOutputWithContext(ctx context.Context) DirectDatadogQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogQueryDelayOutput) +} + +func (i DirectDatadogQueryDelayArgs) ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput { + return i.ToDirectDatadogQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectDatadogQueryDelayArgs) ToDirectDatadogQueryDelayPtrOutputWithContext(ctx context.Context) DirectDatadogQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogQueryDelayOutput).ToDirectDatadogQueryDelayPtrOutputWithContext(ctx) +} + +// DirectDatadogQueryDelayPtrInput is an input type that accepts DirectDatadogQueryDelayArgs, DirectDatadogQueryDelayPtr and DirectDatadogQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectDatadogQueryDelayPtrInput` via: +// +// DirectDatadogQueryDelayArgs{...} +// +// or: +// +// nil +type DirectDatadogQueryDelayPtrInput interface { + pulumi.Input + + ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput + ToDirectDatadogQueryDelayPtrOutputWithContext(context.Context) DirectDatadogQueryDelayPtrOutput +} + +type directDatadogQueryDelayPtrType DirectDatadogQueryDelayArgs + +func DirectDatadogQueryDelayPtr(v *DirectDatadogQueryDelayArgs) DirectDatadogQueryDelayPtrInput { + return (*directDatadogQueryDelayPtrType)(v) +} + +func (*directDatadogQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectDatadogQueryDelay)(nil)).Elem() +} + +func (i *directDatadogQueryDelayPtrType) ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput { + return i.ToDirectDatadogQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directDatadogQueryDelayPtrType) ToDirectDatadogQueryDelayPtrOutputWithContext(ctx context.Context) DirectDatadogQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDatadogQueryDelayPtrOutput) +} + +type DirectDatadogQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectDatadogQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDatadogQueryDelay)(nil)).Elem() +} + +func (o DirectDatadogQueryDelayOutput) ToDirectDatadogQueryDelayOutput() DirectDatadogQueryDelayOutput { + return o +} + +func (o DirectDatadogQueryDelayOutput) ToDirectDatadogQueryDelayOutputWithContext(ctx context.Context) DirectDatadogQueryDelayOutput { + return o +} + +func (o DirectDatadogQueryDelayOutput) ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput { + return o.ToDirectDatadogQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectDatadogQueryDelayOutput) ToDirectDatadogQueryDelayPtrOutputWithContext(ctx context.Context) DirectDatadogQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectDatadogQueryDelay) *DirectDatadogQueryDelay { + return &v + }).(DirectDatadogQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectDatadogQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectDatadogQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectDatadogQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectDatadogQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectDatadogQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectDatadogQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectDatadogQueryDelay)(nil)).Elem() +} + +func (o DirectDatadogQueryDelayPtrOutput) ToDirectDatadogQueryDelayPtrOutput() DirectDatadogQueryDelayPtrOutput { + return o +} + +func (o DirectDatadogQueryDelayPtrOutput) ToDirectDatadogQueryDelayPtrOutputWithContext(ctx context.Context) DirectDatadogQueryDelayPtrOutput { + return o +} + +func (o DirectDatadogQueryDelayPtrOutput) Elem() DirectDatadogQueryDelayOutput { + return o.ApplyT(func(v *DirectDatadogQueryDelay) DirectDatadogQueryDelay { + if v != nil { + return *v + } + var ret DirectDatadogQueryDelay + return ret + }).(DirectDatadogQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectDatadogQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectDatadogQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectDatadogQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectDatadogQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectDynatraceHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []DirectDynatraceHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []DirectDynatraceHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +} + +// DirectDynatraceHistoricalDataRetrievalInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalArgs and DirectDynatraceHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalInput` via: +// +// DirectDynatraceHistoricalDataRetrievalArgs{...} +type DirectDynatraceHistoricalDataRetrievalInput interface { + pulumi.Input + + ToDirectDynatraceHistoricalDataRetrievalOutput() DirectDynatraceHistoricalDataRetrievalOutput + ToDirectDynatraceHistoricalDataRetrievalOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalOutput +} + +type DirectDynatraceHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations DirectDynatraceHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +} + +func (DirectDynatraceHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrieval)(nil)).Elem() +} + +func (i DirectDynatraceHistoricalDataRetrievalArgs) ToDirectDynatraceHistoricalDataRetrievalOutput() DirectDynatraceHistoricalDataRetrievalOutput { + return i.ToDirectDynatraceHistoricalDataRetrievalOutputWithContext(context.Background()) +} + +func (i DirectDynatraceHistoricalDataRetrievalArgs) ToDirectDynatraceHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalOutput) +} + +func (i DirectDynatraceHistoricalDataRetrievalArgs) ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput { + return i.ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i DirectDynatraceHistoricalDataRetrievalArgs) ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalOutput).ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx) +} + +// DirectDynatraceHistoricalDataRetrievalPtrInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalArgs, DirectDynatraceHistoricalDataRetrievalPtr and DirectDynatraceHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalPtrInput` via: +// +// DirectDynatraceHistoricalDataRetrievalArgs{...} +// +// or: +// +// nil +type DirectDynatraceHistoricalDataRetrievalPtrInput interface { + pulumi.Input + + ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput + ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput +} + +type directDynatraceHistoricalDataRetrievalPtrType DirectDynatraceHistoricalDataRetrievalArgs + +func DirectDynatraceHistoricalDataRetrievalPtr(v *DirectDynatraceHistoricalDataRetrievalArgs) DirectDynatraceHistoricalDataRetrievalPtrInput { + return (*directDynatraceHistoricalDataRetrievalPtrType)(v) +} + +func (*directDynatraceHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectDynatraceHistoricalDataRetrieval)(nil)).Elem() +} + +func (i *directDynatraceHistoricalDataRetrievalPtrType) ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput { + return i.ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i *directDynatraceHistoricalDataRetrievalPtrType) ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalPtrOutput) +} + +type DirectDynatraceHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } + +func (DirectDynatraceHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectDynatraceHistoricalDataRetrievalOutput) ToDirectDynatraceHistoricalDataRetrievalOutput() DirectDynatraceHistoricalDataRetrievalOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalOutput) ToDirectDynatraceHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalOutput) ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput { + return o.ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (o DirectDynatraceHistoricalDataRetrievalOutput) ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectDynatraceHistoricalDataRetrieval) *DirectDynatraceHistoricalDataRetrieval { + return &v + }).(DirectDynatraceHistoricalDataRetrievalPtrOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectDynatraceHistoricalDataRetrievalOutput) DefaultDurations() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrieval) []DirectDynatraceHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectDynatraceHistoricalDataRetrievalOutput) MaxDurations() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrieval) []DirectDynatraceHistoricalDataRetrievalMaxDuration { + return v.MaxDurations + }).(DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectDynatraceHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } + +func (DirectDynatraceHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectDynatraceHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) ToDirectDynatraceHistoricalDataRetrievalPtrOutput() DirectDynatraceHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) ToDirectDynatraceHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) Elem() DirectDynatraceHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectDynatraceHistoricalDataRetrieval) DirectDynatraceHistoricalDataRetrieval { + if v != nil { + return *v + } + var ret DirectDynatraceHistoricalDataRetrieval + return ret + }).(DirectDynatraceHistoricalDataRetrievalOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectDynatraceHistoricalDataRetrieval) []DirectDynatraceHistoricalDataRetrievalDefaultDuration { + if v == nil { + return nil + } + return v.DefaultDurations + }).(DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectDynatraceHistoricalDataRetrievalPtrOutput) MaxDurations() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectDynatraceHistoricalDataRetrieval) []DirectDynatraceHistoricalDataRetrievalMaxDuration { + if v == nil { + return nil + } + return v.MaxDurations + }).(DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectDynatraceHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectDynatraceHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs and DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalDefaultDurationInput` via: +// +// DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectDynatraceHistoricalDataRetrievalDefaultDurationInput interface { + pulumi.Input + + ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput + ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput +} + +type DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +} + +func (i DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) +} + +// DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalDefaultDurationArray and DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayInput` via: +// +// DirectDynatraceHistoricalDataRetrievalDefaultDurationArray{ DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayInput interface { + pulumi.Input + + ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput +} + +type DirectDynatraceHistoricalDataRetrievalDefaultDurationArray []DirectDynatraceHistoricalDataRetrievalDefaultDurationInput + +func (DirectDynatraceHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectDynatraceHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectDynatraceHistoricalDataRetrievalDefaultDurationArray) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectDynatraceHistoricalDataRetrievalDefaultDurationArray) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +type DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } + +func (DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectDynatraceHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectDynatraceHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectDynatraceHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectDynatraceHistoricalDataRetrievalDefaultDurationOutput) +} + +type DirectDynatraceHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectDynatraceHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalMaxDurationArgs and DirectDynatraceHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalMaxDurationInput` via: +// +// DirectDynatraceHistoricalDataRetrievalMaxDurationArgs{...} +type DirectDynatraceHistoricalDataRetrievalMaxDurationInput interface { + pulumi.Input + + ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationOutput + ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationOutput +} + +type DirectDynatraceHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectDynatraceHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectDynatraceHistoricalDataRetrievalMaxDurationArgs) ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +} + +func (i DirectDynatraceHistoricalDataRetrievalMaxDurationArgs) ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) +} + +// DirectDynatraceHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectDynatraceHistoricalDataRetrievalMaxDurationArray and DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectDynatraceHistoricalDataRetrievalMaxDurationArrayInput` via: +// +// DirectDynatraceHistoricalDataRetrievalMaxDurationArray{ DirectDynatraceHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectDynatraceHistoricalDataRetrievalMaxDurationArrayInput interface { + pulumi.Input + + ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput +} + +type DirectDynatraceHistoricalDataRetrievalMaxDurationArray []DirectDynatraceHistoricalDataRetrievalMaxDurationInput + +func (DirectDynatraceHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectDynatraceHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectDynatraceHistoricalDataRetrievalMaxDurationArray) ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectDynatraceHistoricalDataRetrievalMaxDurationArray) ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectDynatraceHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } + +func (DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDynatraceHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) ToDirectDynatraceHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectDynatraceHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectDynatraceHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput() DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectDynatraceHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectDynatraceHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectDynatraceHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectDynatraceHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectDynatraceHistoricalDataRetrievalMaxDurationOutput) +} + +type DirectDynatraceQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectDynatraceQueryDelayInput is an input type that accepts DirectDynatraceQueryDelayArgs and DirectDynatraceQueryDelayOutput values. +// You can construct a concrete instance of `DirectDynatraceQueryDelayInput` via: +// +// DirectDynatraceQueryDelayArgs{...} +type DirectDynatraceQueryDelayInput interface { + pulumi.Input + + ToDirectDynatraceQueryDelayOutput() DirectDynatraceQueryDelayOutput + ToDirectDynatraceQueryDelayOutputWithContext(context.Context) DirectDynatraceQueryDelayOutput +} + +type DirectDynatraceQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectDynatraceQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDynatraceQueryDelay)(nil)).Elem() +} + +func (i DirectDynatraceQueryDelayArgs) ToDirectDynatraceQueryDelayOutput() DirectDynatraceQueryDelayOutput { + return i.ToDirectDynatraceQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectDynatraceQueryDelayArgs) ToDirectDynatraceQueryDelayOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceQueryDelayOutput) +} + +func (i DirectDynatraceQueryDelayArgs) ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput { + return i.ToDirectDynatraceQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectDynatraceQueryDelayArgs) ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceQueryDelayOutput).ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx) +} + +// DirectDynatraceQueryDelayPtrInput is an input type that accepts DirectDynatraceQueryDelayArgs, DirectDynatraceQueryDelayPtr and DirectDynatraceQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectDynatraceQueryDelayPtrInput` via: +// +// DirectDynatraceQueryDelayArgs{...} +// +// or: +// +// nil +type DirectDynatraceQueryDelayPtrInput interface { + pulumi.Input + + ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput + ToDirectDynatraceQueryDelayPtrOutputWithContext(context.Context) DirectDynatraceQueryDelayPtrOutput +} + +type directDynatraceQueryDelayPtrType DirectDynatraceQueryDelayArgs + +func DirectDynatraceQueryDelayPtr(v *DirectDynatraceQueryDelayArgs) DirectDynatraceQueryDelayPtrInput { + return (*directDynatraceQueryDelayPtrType)(v) +} + +func (*directDynatraceQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectDynatraceQueryDelay)(nil)).Elem() +} + +func (i *directDynatraceQueryDelayPtrType) ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput { + return i.ToDirectDynatraceQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directDynatraceQueryDelayPtrType) ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectDynatraceQueryDelayPtrOutput) +} + +type DirectDynatraceQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectDynatraceQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectDynatraceQueryDelay)(nil)).Elem() +} + +func (o DirectDynatraceQueryDelayOutput) ToDirectDynatraceQueryDelayOutput() DirectDynatraceQueryDelayOutput { + return o +} + +func (o DirectDynatraceQueryDelayOutput) ToDirectDynatraceQueryDelayOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayOutput { + return o +} + +func (o DirectDynatraceQueryDelayOutput) ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput { + return o.ToDirectDynatraceQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectDynatraceQueryDelayOutput) ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectDynatraceQueryDelay) *DirectDynatraceQueryDelay { + return &v + }).(DirectDynatraceQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectDynatraceQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectDynatraceQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectDynatraceQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectDynatraceQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectDynatraceQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectDynatraceQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectDynatraceQueryDelay)(nil)).Elem() +} + +func (o DirectDynatraceQueryDelayPtrOutput) ToDirectDynatraceQueryDelayPtrOutput() DirectDynatraceQueryDelayPtrOutput { + return o +} + +func (o DirectDynatraceQueryDelayPtrOutput) ToDirectDynatraceQueryDelayPtrOutputWithContext(ctx context.Context) DirectDynatraceQueryDelayPtrOutput { + return o +} + +func (o DirectDynatraceQueryDelayPtrOutput) Elem() DirectDynatraceQueryDelayOutput { + return o.ApplyT(func(v *DirectDynatraceQueryDelay) DirectDynatraceQueryDelay { + if v != nil { + return *v + } + var ret DirectDynatraceQueryDelay + return ret + }).(DirectDynatraceQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectDynatraceQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectDynatraceQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectDynatraceQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectDynatraceQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectGcmQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectGcmQueryDelayInput is an input type that accepts DirectGcmQueryDelayArgs and DirectGcmQueryDelayOutput values. +// You can construct a concrete instance of `DirectGcmQueryDelayInput` via: +// +// DirectGcmQueryDelayArgs{...} +type DirectGcmQueryDelayInput interface { + pulumi.Input + + ToDirectGcmQueryDelayOutput() DirectGcmQueryDelayOutput + ToDirectGcmQueryDelayOutputWithContext(context.Context) DirectGcmQueryDelayOutput +} + +type DirectGcmQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectGcmQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectGcmQueryDelay)(nil)).Elem() +} + +func (i DirectGcmQueryDelayArgs) ToDirectGcmQueryDelayOutput() DirectGcmQueryDelayOutput { + return i.ToDirectGcmQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectGcmQueryDelayArgs) ToDirectGcmQueryDelayOutputWithContext(ctx context.Context) DirectGcmQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectGcmQueryDelayOutput) +} + +func (i DirectGcmQueryDelayArgs) ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput { + return i.ToDirectGcmQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectGcmQueryDelayArgs) ToDirectGcmQueryDelayPtrOutputWithContext(ctx context.Context) DirectGcmQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectGcmQueryDelayOutput).ToDirectGcmQueryDelayPtrOutputWithContext(ctx) +} + +// DirectGcmQueryDelayPtrInput is an input type that accepts DirectGcmQueryDelayArgs, DirectGcmQueryDelayPtr and DirectGcmQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectGcmQueryDelayPtrInput` via: +// +// DirectGcmQueryDelayArgs{...} +// +// or: +// +// nil +type DirectGcmQueryDelayPtrInput interface { + pulumi.Input + + ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput + ToDirectGcmQueryDelayPtrOutputWithContext(context.Context) DirectGcmQueryDelayPtrOutput +} + +type directGcmQueryDelayPtrType DirectGcmQueryDelayArgs + +func DirectGcmQueryDelayPtr(v *DirectGcmQueryDelayArgs) DirectGcmQueryDelayPtrInput { + return (*directGcmQueryDelayPtrType)(v) +} + +func (*directGcmQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectGcmQueryDelay)(nil)).Elem() +} + +func (i *directGcmQueryDelayPtrType) ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput { + return i.ToDirectGcmQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directGcmQueryDelayPtrType) ToDirectGcmQueryDelayPtrOutputWithContext(ctx context.Context) DirectGcmQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectGcmQueryDelayPtrOutput) +} + +type DirectGcmQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectGcmQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectGcmQueryDelay)(nil)).Elem() +} + +func (o DirectGcmQueryDelayOutput) ToDirectGcmQueryDelayOutput() DirectGcmQueryDelayOutput { + return o +} + +func (o DirectGcmQueryDelayOutput) ToDirectGcmQueryDelayOutputWithContext(ctx context.Context) DirectGcmQueryDelayOutput { + return o +} + +func (o DirectGcmQueryDelayOutput) ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput { + return o.ToDirectGcmQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectGcmQueryDelayOutput) ToDirectGcmQueryDelayPtrOutputWithContext(ctx context.Context) DirectGcmQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectGcmQueryDelay) *DirectGcmQueryDelay { + return &v + }).(DirectGcmQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectGcmQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectGcmQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectGcmQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectGcmQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectGcmQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectGcmQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectGcmQueryDelay)(nil)).Elem() +} + +func (o DirectGcmQueryDelayPtrOutput) ToDirectGcmQueryDelayPtrOutput() DirectGcmQueryDelayPtrOutput { + return o +} + +func (o DirectGcmQueryDelayPtrOutput) ToDirectGcmQueryDelayPtrOutputWithContext(ctx context.Context) DirectGcmQueryDelayPtrOutput { + return o +} + +func (o DirectGcmQueryDelayPtrOutput) Elem() DirectGcmQueryDelayOutput { + return o.ApplyT(func(v *DirectGcmQueryDelay) DirectGcmQueryDelay { + if v != nil { + return *v + } + var ret DirectGcmQueryDelay + return ret + }).(DirectGcmQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectGcmQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectGcmQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectGcmQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectGcmQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectHoneycombHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []DirectHoneycombHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []DirectHoneycombHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +} + +// DirectHoneycombHistoricalDataRetrievalInput is an input type that accepts DirectHoneycombHistoricalDataRetrievalArgs and DirectHoneycombHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectHoneycombHistoricalDataRetrievalInput` via: +// +// DirectHoneycombHistoricalDataRetrievalArgs{...} +type DirectHoneycombHistoricalDataRetrievalInput interface { + pulumi.Input + + ToDirectHoneycombHistoricalDataRetrievalOutput() DirectHoneycombHistoricalDataRetrievalOutput + ToDirectHoneycombHistoricalDataRetrievalOutputWithContext(context.Context) DirectHoneycombHistoricalDataRetrievalOutput +} + +type DirectHoneycombHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations DirectHoneycombHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +} + +func (DirectHoneycombHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectHoneycombHistoricalDataRetrieval)(nil)).Elem() +} + +func (i DirectHoneycombHistoricalDataRetrievalArgs) ToDirectHoneycombHistoricalDataRetrievalOutput() DirectHoneycombHistoricalDataRetrievalOutput { + return i.ToDirectHoneycombHistoricalDataRetrievalOutputWithContext(context.Background()) +} + +func (i DirectHoneycombHistoricalDataRetrievalArgs) ToDirectHoneycombHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombHistoricalDataRetrievalOutput) +} + +func (i DirectHoneycombHistoricalDataRetrievalArgs) ToDirectHoneycombHistoricalDataRetrievalPtrOutput() DirectHoneycombHistoricalDataRetrievalPtrOutput { + return i.ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i DirectHoneycombHistoricalDataRetrievalArgs) ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombHistoricalDataRetrievalOutput).ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(ctx) +} + +// DirectHoneycombHistoricalDataRetrievalPtrInput is an input type that accepts DirectHoneycombHistoricalDataRetrievalArgs, DirectHoneycombHistoricalDataRetrievalPtr and DirectHoneycombHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectHoneycombHistoricalDataRetrievalPtrInput` via: +// +// DirectHoneycombHistoricalDataRetrievalArgs{...} +// +// or: +// +// nil +type DirectHoneycombHistoricalDataRetrievalPtrInput interface { + pulumi.Input + + ToDirectHoneycombHistoricalDataRetrievalPtrOutput() DirectHoneycombHistoricalDataRetrievalPtrOutput + ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectHoneycombHistoricalDataRetrievalPtrOutput +} + +type directHoneycombHistoricalDataRetrievalPtrType DirectHoneycombHistoricalDataRetrievalArgs + +func DirectHoneycombHistoricalDataRetrievalPtr(v *DirectHoneycombHistoricalDataRetrievalArgs) DirectHoneycombHistoricalDataRetrievalPtrInput { + return (*directHoneycombHistoricalDataRetrievalPtrType)(v) +} + +func (*directHoneycombHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectHoneycombHistoricalDataRetrieval)(nil)).Elem() +} + +func (i *directHoneycombHistoricalDataRetrievalPtrType) ToDirectHoneycombHistoricalDataRetrievalPtrOutput() DirectHoneycombHistoricalDataRetrievalPtrOutput { + return i.ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i *directHoneycombHistoricalDataRetrievalPtrType) ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombHistoricalDataRetrievalPtrOutput) +} + +type DirectHoneycombHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectHoneycombHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectHoneycombHistoricalDataRetrievalOutput) ToDirectHoneycombHistoricalDataRetrievalOutput() DirectHoneycombHistoricalDataRetrievalOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalOutput) ToDirectHoneycombHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalOutput) ToDirectHoneycombHistoricalDataRetrievalPtrOutput() DirectHoneycombHistoricalDataRetrievalPtrOutput { + return o.ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (o DirectHoneycombHistoricalDataRetrievalOutput) ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectHoneycombHistoricalDataRetrieval) *DirectHoneycombHistoricalDataRetrieval { + return &v + }).(DirectHoneycombHistoricalDataRetrievalPtrOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectHoneycombHistoricalDataRetrievalOutput) DefaultDurations() DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectHoneycombHistoricalDataRetrieval) []DirectHoneycombHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectHoneycombHistoricalDataRetrievalOutput) MaxDurations() DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectHoneycombHistoricalDataRetrieval) []DirectHoneycombHistoricalDataRetrievalMaxDuration { + return v.MaxDurations + }).(DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectHoneycombHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectHoneycombHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectHoneycombHistoricalDataRetrievalPtrOutput) ToDirectHoneycombHistoricalDataRetrievalPtrOutput() DirectHoneycombHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalPtrOutput) ToDirectHoneycombHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalPtrOutput) Elem() DirectHoneycombHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectHoneycombHistoricalDataRetrieval) DirectHoneycombHistoricalDataRetrieval { + if v != nil { + return *v + } + var ret DirectHoneycombHistoricalDataRetrieval + return ret + }).(DirectHoneycombHistoricalDataRetrievalOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectHoneycombHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectHoneycombHistoricalDataRetrieval) []DirectHoneycombHistoricalDataRetrievalDefaultDuration { + if v == nil { + return nil + } + return v.DefaultDurations + }).(DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectHoneycombHistoricalDataRetrievalPtrOutput) MaxDurations() DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectHoneycombHistoricalDataRetrieval) []DirectHoneycombHistoricalDataRetrievalMaxDuration { + if v == nil { + return nil + } + return v.MaxDurations + }).(DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectHoneycombHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectHoneycombHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs and DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectHoneycombHistoricalDataRetrievalDefaultDurationInput` via: +// +// DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectHoneycombHistoricalDataRetrievalDefaultDurationInput interface { + pulumi.Input + + ToDirectHoneycombHistoricalDataRetrievalDefaultDurationOutput() DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput + ToDirectHoneycombHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput +} + +type DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs) ToDirectHoneycombHistoricalDataRetrievalDefaultDurationOutput() DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectHoneycombHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +} + +func (i DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs) ToDirectHoneycombHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput) +} + +// DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectHoneycombHistoricalDataRetrievalDefaultDurationArray and DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayInput` via: +// +// DirectHoneycombHistoricalDataRetrievalDefaultDurationArray{ DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayInput interface { + pulumi.Input + + ToDirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput() DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput +} + +type DirectHoneycombHistoricalDataRetrievalDefaultDurationArray []DirectHoneycombHistoricalDataRetrievalDefaultDurationInput + +func (DirectHoneycombHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectHoneycombHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectHoneycombHistoricalDataRetrievalDefaultDurationArray) ToDirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput() DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectHoneycombHistoricalDataRetrievalDefaultDurationArray) ToDirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +type DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput) ToDirectHoneycombHistoricalDataRetrievalDefaultDurationOutput() DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput) ToDirectHoneycombHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectHoneycombHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectHoneycombHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectHoneycombHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput() DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectHoneycombHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectHoneycombHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput) +} + +type DirectHoneycombHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectHoneycombHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectHoneycombHistoricalDataRetrievalMaxDurationArgs and DirectHoneycombHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectHoneycombHistoricalDataRetrievalMaxDurationInput` via: +// +// DirectHoneycombHistoricalDataRetrievalMaxDurationArgs{...} +type DirectHoneycombHistoricalDataRetrievalMaxDurationInput interface { + pulumi.Input + + ToDirectHoneycombHistoricalDataRetrievalMaxDurationOutput() DirectHoneycombHistoricalDataRetrievalMaxDurationOutput + ToDirectHoneycombHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectHoneycombHistoricalDataRetrievalMaxDurationOutput +} + +type DirectHoneycombHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectHoneycombHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectHoneycombHistoricalDataRetrievalMaxDurationArgs) ToDirectHoneycombHistoricalDataRetrievalMaxDurationOutput() DirectHoneycombHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectHoneycombHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +} + +func (i DirectHoneycombHistoricalDataRetrievalMaxDurationArgs) ToDirectHoneycombHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombHistoricalDataRetrievalMaxDurationOutput) +} + +// DirectHoneycombHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectHoneycombHistoricalDataRetrievalMaxDurationArray and DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectHoneycombHistoricalDataRetrievalMaxDurationArrayInput` via: +// +// DirectHoneycombHistoricalDataRetrievalMaxDurationArray{ DirectHoneycombHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectHoneycombHistoricalDataRetrievalMaxDurationArrayInput interface { + pulumi.Input + + ToDirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput() DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput +} + +type DirectHoneycombHistoricalDataRetrievalMaxDurationArray []DirectHoneycombHistoricalDataRetrievalMaxDurationInput + +func (DirectHoneycombHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectHoneycombHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectHoneycombHistoricalDataRetrievalMaxDurationArray) ToDirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput() DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectHoneycombHistoricalDataRetrievalMaxDurationArray) ToDirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectHoneycombHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectHoneycombHistoricalDataRetrievalMaxDurationOutput) ToDirectHoneycombHistoricalDataRetrievalMaxDurationOutput() DirectHoneycombHistoricalDataRetrievalMaxDurationOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalMaxDurationOutput) ToDirectHoneycombHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalMaxDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectHoneycombHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectHoneycombHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectHoneycombHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectHoneycombHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectHoneycombHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput() DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectHoneycombHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectHoneycombHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectHoneycombHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectHoneycombHistoricalDataRetrievalMaxDurationOutput) +} + +type DirectHoneycombQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectHoneycombQueryDelayInput is an input type that accepts DirectHoneycombQueryDelayArgs and DirectHoneycombQueryDelayOutput values. +// You can construct a concrete instance of `DirectHoneycombQueryDelayInput` via: +// +// DirectHoneycombQueryDelayArgs{...} +type DirectHoneycombQueryDelayInput interface { + pulumi.Input + + ToDirectHoneycombQueryDelayOutput() DirectHoneycombQueryDelayOutput + ToDirectHoneycombQueryDelayOutputWithContext(context.Context) DirectHoneycombQueryDelayOutput +} + +type DirectHoneycombQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectHoneycombQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectHoneycombQueryDelay)(nil)).Elem() +} + +func (i DirectHoneycombQueryDelayArgs) ToDirectHoneycombQueryDelayOutput() DirectHoneycombQueryDelayOutput { + return i.ToDirectHoneycombQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectHoneycombQueryDelayArgs) ToDirectHoneycombQueryDelayOutputWithContext(ctx context.Context) DirectHoneycombQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombQueryDelayOutput) +} + +func (i DirectHoneycombQueryDelayArgs) ToDirectHoneycombQueryDelayPtrOutput() DirectHoneycombQueryDelayPtrOutput { + return i.ToDirectHoneycombQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectHoneycombQueryDelayArgs) ToDirectHoneycombQueryDelayPtrOutputWithContext(ctx context.Context) DirectHoneycombQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombQueryDelayOutput).ToDirectHoneycombQueryDelayPtrOutputWithContext(ctx) +} + +// DirectHoneycombQueryDelayPtrInput is an input type that accepts DirectHoneycombQueryDelayArgs, DirectHoneycombQueryDelayPtr and DirectHoneycombQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectHoneycombQueryDelayPtrInput` via: +// +// DirectHoneycombQueryDelayArgs{...} +// +// or: +// +// nil +type DirectHoneycombQueryDelayPtrInput interface { + pulumi.Input + + ToDirectHoneycombQueryDelayPtrOutput() DirectHoneycombQueryDelayPtrOutput + ToDirectHoneycombQueryDelayPtrOutputWithContext(context.Context) DirectHoneycombQueryDelayPtrOutput +} + +type directHoneycombQueryDelayPtrType DirectHoneycombQueryDelayArgs + +func DirectHoneycombQueryDelayPtr(v *DirectHoneycombQueryDelayArgs) DirectHoneycombQueryDelayPtrInput { + return (*directHoneycombQueryDelayPtrType)(v) +} + +func (*directHoneycombQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectHoneycombQueryDelay)(nil)).Elem() +} + +func (i *directHoneycombQueryDelayPtrType) ToDirectHoneycombQueryDelayPtrOutput() DirectHoneycombQueryDelayPtrOutput { + return i.ToDirectHoneycombQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directHoneycombQueryDelayPtrType) ToDirectHoneycombQueryDelayPtrOutputWithContext(ctx context.Context) DirectHoneycombQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectHoneycombQueryDelayPtrOutput) +} + +type DirectHoneycombQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectHoneycombQueryDelay)(nil)).Elem() +} + +func (o DirectHoneycombQueryDelayOutput) ToDirectHoneycombQueryDelayOutput() DirectHoneycombQueryDelayOutput { + return o +} + +func (o DirectHoneycombQueryDelayOutput) ToDirectHoneycombQueryDelayOutputWithContext(ctx context.Context) DirectHoneycombQueryDelayOutput { + return o +} + +func (o DirectHoneycombQueryDelayOutput) ToDirectHoneycombQueryDelayPtrOutput() DirectHoneycombQueryDelayPtrOutput { + return o.ToDirectHoneycombQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectHoneycombQueryDelayOutput) ToDirectHoneycombQueryDelayPtrOutputWithContext(ctx context.Context) DirectHoneycombQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectHoneycombQueryDelay) *DirectHoneycombQueryDelay { + return &v + }).(DirectHoneycombQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectHoneycombQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectHoneycombQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectHoneycombQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectHoneycombQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectHoneycombQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectHoneycombQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectHoneycombQueryDelay)(nil)).Elem() +} + +func (o DirectHoneycombQueryDelayPtrOutput) ToDirectHoneycombQueryDelayPtrOutput() DirectHoneycombQueryDelayPtrOutput { + return o +} + +func (o DirectHoneycombQueryDelayPtrOutput) ToDirectHoneycombQueryDelayPtrOutputWithContext(ctx context.Context) DirectHoneycombQueryDelayPtrOutput { + return o +} + +func (o DirectHoneycombQueryDelayPtrOutput) Elem() DirectHoneycombQueryDelayOutput { + return o.ApplyT(func(v *DirectHoneycombQueryDelay) DirectHoneycombQueryDelay { + if v != nil { + return *v + } + var ret DirectHoneycombQueryDelay + return ret + }).(DirectHoneycombQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectHoneycombQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectHoneycombQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectHoneycombQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectHoneycombQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectInfluxdbQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectInfluxdbQueryDelayInput is an input type that accepts DirectInfluxdbQueryDelayArgs and DirectInfluxdbQueryDelayOutput values. +// You can construct a concrete instance of `DirectInfluxdbQueryDelayInput` via: +// +// DirectInfluxdbQueryDelayArgs{...} +type DirectInfluxdbQueryDelayInput interface { + pulumi.Input + + ToDirectInfluxdbQueryDelayOutput() DirectInfluxdbQueryDelayOutput + ToDirectInfluxdbQueryDelayOutputWithContext(context.Context) DirectInfluxdbQueryDelayOutput +} + +type DirectInfluxdbQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectInfluxdbQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectInfluxdbQueryDelay)(nil)).Elem() +} + +func (i DirectInfluxdbQueryDelayArgs) ToDirectInfluxdbQueryDelayOutput() DirectInfluxdbQueryDelayOutput { + return i.ToDirectInfluxdbQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectInfluxdbQueryDelayArgs) ToDirectInfluxdbQueryDelayOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectInfluxdbQueryDelayOutput) +} + +func (i DirectInfluxdbQueryDelayArgs) ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput { + return i.ToDirectInfluxdbQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectInfluxdbQueryDelayArgs) ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectInfluxdbQueryDelayOutput).ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx) +} + +// DirectInfluxdbQueryDelayPtrInput is an input type that accepts DirectInfluxdbQueryDelayArgs, DirectInfluxdbQueryDelayPtr and DirectInfluxdbQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectInfluxdbQueryDelayPtrInput` via: +// +// DirectInfluxdbQueryDelayArgs{...} +// +// or: +// +// nil +type DirectInfluxdbQueryDelayPtrInput interface { + pulumi.Input + + ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput + ToDirectInfluxdbQueryDelayPtrOutputWithContext(context.Context) DirectInfluxdbQueryDelayPtrOutput +} + +type directInfluxdbQueryDelayPtrType DirectInfluxdbQueryDelayArgs + +func DirectInfluxdbQueryDelayPtr(v *DirectInfluxdbQueryDelayArgs) DirectInfluxdbQueryDelayPtrInput { + return (*directInfluxdbQueryDelayPtrType)(v) +} + +func (*directInfluxdbQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectInfluxdbQueryDelay)(nil)).Elem() +} + +func (i *directInfluxdbQueryDelayPtrType) ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput { + return i.ToDirectInfluxdbQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directInfluxdbQueryDelayPtrType) ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectInfluxdbQueryDelayPtrOutput) +} + +type DirectInfluxdbQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectInfluxdbQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectInfluxdbQueryDelay)(nil)).Elem() +} + +func (o DirectInfluxdbQueryDelayOutput) ToDirectInfluxdbQueryDelayOutput() DirectInfluxdbQueryDelayOutput { + return o +} + +func (o DirectInfluxdbQueryDelayOutput) ToDirectInfluxdbQueryDelayOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayOutput { + return o +} + +func (o DirectInfluxdbQueryDelayOutput) ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput { + return o.ToDirectInfluxdbQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectInfluxdbQueryDelayOutput) ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectInfluxdbQueryDelay) *DirectInfluxdbQueryDelay { + return &v + }).(DirectInfluxdbQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectInfluxdbQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectInfluxdbQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectInfluxdbQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectInfluxdbQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectInfluxdbQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectInfluxdbQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectInfluxdbQueryDelay)(nil)).Elem() +} + +func (o DirectInfluxdbQueryDelayPtrOutput) ToDirectInfluxdbQueryDelayPtrOutput() DirectInfluxdbQueryDelayPtrOutput { + return o +} + +func (o DirectInfluxdbQueryDelayPtrOutput) ToDirectInfluxdbQueryDelayPtrOutputWithContext(ctx context.Context) DirectInfluxdbQueryDelayPtrOutput { + return o +} + +func (o DirectInfluxdbQueryDelayPtrOutput) Elem() DirectInfluxdbQueryDelayOutput { + return o.ApplyT(func(v *DirectInfluxdbQueryDelay) DirectInfluxdbQueryDelay { + if v != nil { + return *v + } + var ret DirectInfluxdbQueryDelay + return ret + }).(DirectInfluxdbQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectInfluxdbQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectInfluxdbQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectInfluxdbQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectInfluxdbQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectInstanaQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectInstanaQueryDelayInput is an input type that accepts DirectInstanaQueryDelayArgs and DirectInstanaQueryDelayOutput values. +// You can construct a concrete instance of `DirectInstanaQueryDelayInput` via: +// +// DirectInstanaQueryDelayArgs{...} +type DirectInstanaQueryDelayInput interface { + pulumi.Input + + ToDirectInstanaQueryDelayOutput() DirectInstanaQueryDelayOutput + ToDirectInstanaQueryDelayOutputWithContext(context.Context) DirectInstanaQueryDelayOutput +} + +type DirectInstanaQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectInstanaQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectInstanaQueryDelay)(nil)).Elem() +} + +func (i DirectInstanaQueryDelayArgs) ToDirectInstanaQueryDelayOutput() DirectInstanaQueryDelayOutput { + return i.ToDirectInstanaQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectInstanaQueryDelayArgs) ToDirectInstanaQueryDelayOutputWithContext(ctx context.Context) DirectInstanaQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectInstanaQueryDelayOutput) +} + +func (i DirectInstanaQueryDelayArgs) ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput { + return i.ToDirectInstanaQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectInstanaQueryDelayArgs) ToDirectInstanaQueryDelayPtrOutputWithContext(ctx context.Context) DirectInstanaQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectInstanaQueryDelayOutput).ToDirectInstanaQueryDelayPtrOutputWithContext(ctx) +} + +// DirectInstanaQueryDelayPtrInput is an input type that accepts DirectInstanaQueryDelayArgs, DirectInstanaQueryDelayPtr and DirectInstanaQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectInstanaQueryDelayPtrInput` via: +// +// DirectInstanaQueryDelayArgs{...} +// +// or: +// +// nil +type DirectInstanaQueryDelayPtrInput interface { + pulumi.Input + + ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput + ToDirectInstanaQueryDelayPtrOutputWithContext(context.Context) DirectInstanaQueryDelayPtrOutput +} + +type directInstanaQueryDelayPtrType DirectInstanaQueryDelayArgs + +func DirectInstanaQueryDelayPtr(v *DirectInstanaQueryDelayArgs) DirectInstanaQueryDelayPtrInput { + return (*directInstanaQueryDelayPtrType)(v) +} + +func (*directInstanaQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectInstanaQueryDelay)(nil)).Elem() +} + +func (i *directInstanaQueryDelayPtrType) ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput { + return i.ToDirectInstanaQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directInstanaQueryDelayPtrType) ToDirectInstanaQueryDelayPtrOutputWithContext(ctx context.Context) DirectInstanaQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectInstanaQueryDelayPtrOutput) +} + +type DirectInstanaQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectInstanaQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectInstanaQueryDelay)(nil)).Elem() +} + +func (o DirectInstanaQueryDelayOutput) ToDirectInstanaQueryDelayOutput() DirectInstanaQueryDelayOutput { + return o +} + +func (o DirectInstanaQueryDelayOutput) ToDirectInstanaQueryDelayOutputWithContext(ctx context.Context) DirectInstanaQueryDelayOutput { + return o +} + +func (o DirectInstanaQueryDelayOutput) ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput { + return o.ToDirectInstanaQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectInstanaQueryDelayOutput) ToDirectInstanaQueryDelayPtrOutputWithContext(ctx context.Context) DirectInstanaQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectInstanaQueryDelay) *DirectInstanaQueryDelay { + return &v + }).(DirectInstanaQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectInstanaQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectInstanaQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectInstanaQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectInstanaQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectInstanaQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectInstanaQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectInstanaQueryDelay)(nil)).Elem() +} + +func (o DirectInstanaQueryDelayPtrOutput) ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput { + return o +} + +func (o DirectInstanaQueryDelayPtrOutput) ToDirectInstanaQueryDelayPtrOutputWithContext(ctx context.Context) DirectInstanaQueryDelayPtrOutput { + return o +} + +func (o DirectInstanaQueryDelayPtrOutput) Elem() DirectInstanaQueryDelayOutput { + return o.ApplyT(func(v *DirectInstanaQueryDelay) DirectInstanaQueryDelay { + if v != nil { + return *v + } + var ret DirectInstanaQueryDelay + return ret + }).(DirectInstanaQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectInstanaQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectInstanaQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectInstanaQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectInstanaQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectLightstepHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []DirectLightstepHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []DirectLightstepHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +} + +// DirectLightstepHistoricalDataRetrievalInput is an input type that accepts DirectLightstepHistoricalDataRetrievalArgs and DirectLightstepHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalInput` via: +// +// DirectLightstepHistoricalDataRetrievalArgs{...} +type DirectLightstepHistoricalDataRetrievalInput interface { + pulumi.Input + + ToDirectLightstepHistoricalDataRetrievalOutput() DirectLightstepHistoricalDataRetrievalOutput + ToDirectLightstepHistoricalDataRetrievalOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalOutput +} + +type DirectLightstepHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations DirectLightstepHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations DirectLightstepHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +} + +func (DirectLightstepHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectLightstepHistoricalDataRetrieval)(nil)).Elem() +} + +func (i DirectLightstepHistoricalDataRetrievalArgs) ToDirectLightstepHistoricalDataRetrievalOutput() DirectLightstepHistoricalDataRetrievalOutput { + return i.ToDirectLightstepHistoricalDataRetrievalOutputWithContext(context.Background()) +} + +func (i DirectLightstepHistoricalDataRetrievalArgs) ToDirectLightstepHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalOutput) +} + +func (i DirectLightstepHistoricalDataRetrievalArgs) ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput { + return i.ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i DirectLightstepHistoricalDataRetrievalArgs) ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalOutput).ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx) +} + +// DirectLightstepHistoricalDataRetrievalPtrInput is an input type that accepts DirectLightstepHistoricalDataRetrievalArgs, DirectLightstepHistoricalDataRetrievalPtr and DirectLightstepHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalPtrInput` via: +// +// DirectLightstepHistoricalDataRetrievalArgs{...} +// +// or: +// +// nil +type DirectLightstepHistoricalDataRetrievalPtrInput interface { + pulumi.Input + + ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput + ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput +} + +type directLightstepHistoricalDataRetrievalPtrType DirectLightstepHistoricalDataRetrievalArgs + +func DirectLightstepHistoricalDataRetrievalPtr(v *DirectLightstepHistoricalDataRetrievalArgs) DirectLightstepHistoricalDataRetrievalPtrInput { + return (*directLightstepHistoricalDataRetrievalPtrType)(v) +} + +func (*directLightstepHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectLightstepHistoricalDataRetrieval)(nil)).Elem() +} + +func (i *directLightstepHistoricalDataRetrievalPtrType) ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput { + return i.ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i *directLightstepHistoricalDataRetrievalPtrType) ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalPtrOutput) +} + +type DirectLightstepHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } + +func (DirectLightstepHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectLightstepHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectLightstepHistoricalDataRetrievalOutput) ToDirectLightstepHistoricalDataRetrievalOutput() DirectLightstepHistoricalDataRetrievalOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalOutput) ToDirectLightstepHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalOutput) ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput { + return o.ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (o DirectLightstepHistoricalDataRetrievalOutput) ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectLightstepHistoricalDataRetrieval) *DirectLightstepHistoricalDataRetrieval { + return &v + }).(DirectLightstepHistoricalDataRetrievalPtrOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectLightstepHistoricalDataRetrievalOutput) DefaultDurations() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectLightstepHistoricalDataRetrieval) []DirectLightstepHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectLightstepHistoricalDataRetrievalOutput) MaxDurations() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectLightstepHistoricalDataRetrieval) []DirectLightstepHistoricalDataRetrievalMaxDuration { + return v.MaxDurations + }).(DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectLightstepHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } + +func (DirectLightstepHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectLightstepHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectLightstepHistoricalDataRetrievalPtrOutput) ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalPtrOutput) ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalPtrOutput) Elem() DirectLightstepHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectLightstepHistoricalDataRetrieval) DirectLightstepHistoricalDataRetrieval { + if v != nil { + return *v + } + var ret DirectLightstepHistoricalDataRetrieval + return ret + }).(DirectLightstepHistoricalDataRetrievalOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectLightstepHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectLightstepHistoricalDataRetrieval) []DirectLightstepHistoricalDataRetrievalDefaultDuration { + if v == nil { + return nil + } + return v.DefaultDurations + }).(DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectLightstepHistoricalDataRetrievalPtrOutput) MaxDurations() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectLightstepHistoricalDataRetrieval) []DirectLightstepHistoricalDataRetrievalMaxDuration { + if v == nil { + return nil + } + return v.MaxDurations + }).(DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectLightstepHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectLightstepHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectLightstepHistoricalDataRetrievalDefaultDurationArgs and DirectLightstepHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalDefaultDurationInput` via: +// +// DirectLightstepHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectLightstepHistoricalDataRetrievalDefaultDurationInput interface { + pulumi.Input + + ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationOutput + ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationOutput +} + +type DirectLightstepHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectLightstepHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectLightstepHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectLightstepHistoricalDataRetrievalDefaultDurationArgs) ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +} + +func (i DirectLightstepHistoricalDataRetrievalDefaultDurationArgs) ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) +} + +// DirectLightstepHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectLightstepHistoricalDataRetrievalDefaultDurationArray and DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalDefaultDurationArrayInput` via: +// +// DirectLightstepHistoricalDataRetrievalDefaultDurationArray{ DirectLightstepHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectLightstepHistoricalDataRetrievalDefaultDurationArrayInput interface { + pulumi.Input + + ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput +} + +type DirectLightstepHistoricalDataRetrievalDefaultDurationArray []DirectLightstepHistoricalDataRetrievalDefaultDurationInput + +func (DirectLightstepHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectLightstepHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectLightstepHistoricalDataRetrievalDefaultDurationArray) ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectLightstepHistoricalDataRetrievalDefaultDurationArray) ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +type DirectLightstepHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } + +func (DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectLightstepHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectLightstepHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectLightstepHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectLightstepHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectLightstepHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectLightstepHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) +} + +type DirectLightstepHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectLightstepHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectLightstepHistoricalDataRetrievalMaxDurationArgs and DirectLightstepHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalMaxDurationInput` via: +// +// DirectLightstepHistoricalDataRetrievalMaxDurationArgs{...} +type DirectLightstepHistoricalDataRetrievalMaxDurationInput interface { + pulumi.Input + + ToDirectLightstepHistoricalDataRetrievalMaxDurationOutput() DirectLightstepHistoricalDataRetrievalMaxDurationOutput + ToDirectLightstepHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationOutput +} + +type DirectLightstepHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectLightstepHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectLightstepHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectLightstepHistoricalDataRetrievalMaxDurationArgs) ToDirectLightstepHistoricalDataRetrievalMaxDurationOutput() DirectLightstepHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectLightstepHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +} + +func (i DirectLightstepHistoricalDataRetrievalMaxDurationArgs) ToDirectLightstepHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalMaxDurationOutput) +} + +// DirectLightstepHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectLightstepHistoricalDataRetrievalMaxDurationArray and DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalMaxDurationArrayInput` via: +// +// DirectLightstepHistoricalDataRetrievalMaxDurationArray{ DirectLightstepHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectLightstepHistoricalDataRetrievalMaxDurationArrayInput interface { + pulumi.Input + + ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput +} + +type DirectLightstepHistoricalDataRetrievalMaxDurationArray []DirectLightstepHistoricalDataRetrievalMaxDurationInput + +func (DirectLightstepHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectLightstepHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectLightstepHistoricalDataRetrievalMaxDurationArray) ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectLightstepHistoricalDataRetrievalMaxDurationArray) ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectLightstepHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } + +func (DirectLightstepHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectLightstepHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectLightstepHistoricalDataRetrievalMaxDurationOutput) ToDirectLightstepHistoricalDataRetrievalMaxDurationOutput() DirectLightstepHistoricalDataRetrievalMaxDurationOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalMaxDurationOutput) ToDirectLightstepHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectLightstepHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectLightstepHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectLightstepHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectLightstepHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectLightstepHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectLightstepHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectLightstepHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectLightstepHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectLightstepHistoricalDataRetrievalMaxDurationOutput) +} + +type DirectLightstepQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectLightstepQueryDelayInput is an input type that accepts DirectLightstepQueryDelayArgs and DirectLightstepQueryDelayOutput values. +// You can construct a concrete instance of `DirectLightstepQueryDelayInput` via: +// +// DirectLightstepQueryDelayArgs{...} +type DirectLightstepQueryDelayInput interface { + pulumi.Input + + ToDirectLightstepQueryDelayOutput() DirectLightstepQueryDelayOutput + ToDirectLightstepQueryDelayOutputWithContext(context.Context) DirectLightstepQueryDelayOutput +} + +type DirectLightstepQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectLightstepQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectLightstepQueryDelay)(nil)).Elem() +} + +func (i DirectLightstepQueryDelayArgs) ToDirectLightstepQueryDelayOutput() DirectLightstepQueryDelayOutput { + return i.ToDirectLightstepQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectLightstepQueryDelayArgs) ToDirectLightstepQueryDelayOutputWithContext(ctx context.Context) DirectLightstepQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepQueryDelayOutput) +} + +func (i DirectLightstepQueryDelayArgs) ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput { + return i.ToDirectLightstepQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectLightstepQueryDelayArgs) ToDirectLightstepQueryDelayPtrOutputWithContext(ctx context.Context) DirectLightstepQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepQueryDelayOutput).ToDirectLightstepQueryDelayPtrOutputWithContext(ctx) +} + +// DirectLightstepQueryDelayPtrInput is an input type that accepts DirectLightstepQueryDelayArgs, DirectLightstepQueryDelayPtr and DirectLightstepQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectLightstepQueryDelayPtrInput` via: +// +// DirectLightstepQueryDelayArgs{...} +// +// or: +// +// nil +type DirectLightstepQueryDelayPtrInput interface { + pulumi.Input + + ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput + ToDirectLightstepQueryDelayPtrOutputWithContext(context.Context) DirectLightstepQueryDelayPtrOutput +} + +type directLightstepQueryDelayPtrType DirectLightstepQueryDelayArgs + +func DirectLightstepQueryDelayPtr(v *DirectLightstepQueryDelayArgs) DirectLightstepQueryDelayPtrInput { + return (*directLightstepQueryDelayPtrType)(v) +} + +func (*directLightstepQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectLightstepQueryDelay)(nil)).Elem() +} + +func (i *directLightstepQueryDelayPtrType) ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput { + return i.ToDirectLightstepQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directLightstepQueryDelayPtrType) ToDirectLightstepQueryDelayPtrOutputWithContext(ctx context.Context) DirectLightstepQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepQueryDelayPtrOutput) +} + +type DirectLightstepQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectLightstepQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectLightstepQueryDelay)(nil)).Elem() +} + +func (o DirectLightstepQueryDelayOutput) ToDirectLightstepQueryDelayOutput() DirectLightstepQueryDelayOutput { + return o +} + +func (o DirectLightstepQueryDelayOutput) ToDirectLightstepQueryDelayOutputWithContext(ctx context.Context) DirectLightstepQueryDelayOutput { + return o +} + +func (o DirectLightstepQueryDelayOutput) ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput { + return o.ToDirectLightstepQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectLightstepQueryDelayOutput) ToDirectLightstepQueryDelayPtrOutputWithContext(ctx context.Context) DirectLightstepQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectLightstepQueryDelay) *DirectLightstepQueryDelay { + return &v + }).(DirectLightstepQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectLightstepQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectLightstepQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectLightstepQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectLightstepQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectLightstepQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectLightstepQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectLightstepQueryDelay)(nil)).Elem() +} + +func (o DirectLightstepQueryDelayPtrOutput) ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput { + return o +} + +func (o DirectLightstepQueryDelayPtrOutput) ToDirectLightstepQueryDelayPtrOutputWithContext(ctx context.Context) DirectLightstepQueryDelayPtrOutput { + return o +} + +func (o DirectLightstepQueryDelayPtrOutput) Elem() DirectLightstepQueryDelayOutput { + return o.ApplyT(func(v *DirectLightstepQueryDelay) DirectLightstepQueryDelay { + if v != nil { + return *v + } + var ret DirectLightstepQueryDelay + return ret + }).(DirectLightstepQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectLightstepQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectLightstepQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectLightstepQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectLightstepQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectNewrelicHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []DirectNewrelicHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []DirectNewrelicHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +} + +// DirectNewrelicHistoricalDataRetrievalInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalArgs and DirectNewrelicHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalInput` via: +// +// DirectNewrelicHistoricalDataRetrievalArgs{...} +type DirectNewrelicHistoricalDataRetrievalInput interface { + pulumi.Input + + ToDirectNewrelicHistoricalDataRetrievalOutput() DirectNewrelicHistoricalDataRetrievalOutput + ToDirectNewrelicHistoricalDataRetrievalOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalOutput +} + +type DirectNewrelicHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations DirectNewrelicHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +} + +func (DirectNewrelicHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrieval)(nil)).Elem() +} + +func (i DirectNewrelicHistoricalDataRetrievalArgs) ToDirectNewrelicHistoricalDataRetrievalOutput() DirectNewrelicHistoricalDataRetrievalOutput { + return i.ToDirectNewrelicHistoricalDataRetrievalOutputWithContext(context.Background()) +} + +func (i DirectNewrelicHistoricalDataRetrievalArgs) ToDirectNewrelicHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalOutput) +} + +func (i DirectNewrelicHistoricalDataRetrievalArgs) ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput { + return i.ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i DirectNewrelicHistoricalDataRetrievalArgs) ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalOutput).ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx) +} + +// DirectNewrelicHistoricalDataRetrievalPtrInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalArgs, DirectNewrelicHistoricalDataRetrievalPtr and DirectNewrelicHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalPtrInput` via: +// +// DirectNewrelicHistoricalDataRetrievalArgs{...} +// +// or: +// +// nil +type DirectNewrelicHistoricalDataRetrievalPtrInput interface { + pulumi.Input + + ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput + ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput +} + +type directNewrelicHistoricalDataRetrievalPtrType DirectNewrelicHistoricalDataRetrievalArgs + +func DirectNewrelicHistoricalDataRetrievalPtr(v *DirectNewrelicHistoricalDataRetrievalArgs) DirectNewrelicHistoricalDataRetrievalPtrInput { + return (*directNewrelicHistoricalDataRetrievalPtrType)(v) +} + +func (*directNewrelicHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectNewrelicHistoricalDataRetrieval)(nil)).Elem() +} + +func (i *directNewrelicHistoricalDataRetrievalPtrType) ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput { + return i.ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i *directNewrelicHistoricalDataRetrievalPtrType) ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalPtrOutput) +} + +type DirectNewrelicHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } + +func (DirectNewrelicHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectNewrelicHistoricalDataRetrievalOutput) ToDirectNewrelicHistoricalDataRetrievalOutput() DirectNewrelicHistoricalDataRetrievalOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalOutput) ToDirectNewrelicHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalOutput) ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput { + return o.ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (o DirectNewrelicHistoricalDataRetrievalOutput) ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectNewrelicHistoricalDataRetrieval) *DirectNewrelicHistoricalDataRetrieval { + return &v + }).(DirectNewrelicHistoricalDataRetrievalPtrOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectNewrelicHistoricalDataRetrievalOutput) DefaultDurations() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrieval) []DirectNewrelicHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectNewrelicHistoricalDataRetrievalOutput) MaxDurations() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrieval) []DirectNewrelicHistoricalDataRetrievalMaxDuration { + return v.MaxDurations + }).(DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectNewrelicHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } + +func (DirectNewrelicHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectNewrelicHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) Elem() DirectNewrelicHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectNewrelicHistoricalDataRetrieval) DirectNewrelicHistoricalDataRetrieval { + if v != nil { + return *v + } + var ret DirectNewrelicHistoricalDataRetrieval + return ret + }).(DirectNewrelicHistoricalDataRetrievalOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectNewrelicHistoricalDataRetrieval) []DirectNewrelicHistoricalDataRetrievalDefaultDuration { + if v == nil { + return nil + } + return v.DefaultDurations + }).(DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) MaxDurations() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectNewrelicHistoricalDataRetrieval) []DirectNewrelicHistoricalDataRetrievalMaxDuration { + if v == nil { + return nil + } + return v.MaxDurations + }).(DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectNewrelicHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectNewrelicHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs and DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalDefaultDurationInput` via: +// +// DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectNewrelicHistoricalDataRetrievalDefaultDurationInput interface { + pulumi.Input + + ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput + ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput +} + +type DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +} + +func (i DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) +} + +// DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalDefaultDurationArray and DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayInput` via: +// +// DirectNewrelicHistoricalDataRetrievalDefaultDurationArray{ DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayInput interface { + pulumi.Input + + ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput +} + +type DirectNewrelicHistoricalDataRetrievalDefaultDurationArray []DirectNewrelicHistoricalDataRetrievalDefaultDurationInput + +func (DirectNewrelicHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectNewrelicHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectNewrelicHistoricalDataRetrievalDefaultDurationArray) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectNewrelicHistoricalDataRetrievalDefaultDurationArray) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +type DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } + +func (DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectNewrelicHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectNewrelicHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectNewrelicHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) +} + +type DirectNewrelicHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectNewrelicHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalMaxDurationArgs and DirectNewrelicHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalMaxDurationInput` via: +// +// DirectNewrelicHistoricalDataRetrievalMaxDurationArgs{...} +type DirectNewrelicHistoricalDataRetrievalMaxDurationInput interface { + pulumi.Input + + ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationOutput + ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationOutput +} + +type DirectNewrelicHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectNewrelicHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectNewrelicHistoricalDataRetrievalMaxDurationArgs) ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +} + +func (i DirectNewrelicHistoricalDataRetrievalMaxDurationArgs) ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) +} + +// DirectNewrelicHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalMaxDurationArray and DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalMaxDurationArrayInput` via: +// +// DirectNewrelicHistoricalDataRetrievalMaxDurationArray{ DirectNewrelicHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectNewrelicHistoricalDataRetrievalMaxDurationArrayInput interface { + pulumi.Input + + ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput +} + +type DirectNewrelicHistoricalDataRetrievalMaxDurationArray []DirectNewrelicHistoricalDataRetrievalMaxDurationInput + +func (DirectNewrelicHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectNewrelicHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectNewrelicHistoricalDataRetrievalMaxDurationArray) ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectNewrelicHistoricalDataRetrievalMaxDurationArray) ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectNewrelicHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } + +func (DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectNewrelicHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectNewrelicHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectNewrelicHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) +} + +type DirectNewrelicQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectNewrelicQueryDelayInput is an input type that accepts DirectNewrelicQueryDelayArgs and DirectNewrelicQueryDelayOutput values. +// You can construct a concrete instance of `DirectNewrelicQueryDelayInput` via: +// +// DirectNewrelicQueryDelayArgs{...} +type DirectNewrelicQueryDelayInput interface { + pulumi.Input + + ToDirectNewrelicQueryDelayOutput() DirectNewrelicQueryDelayOutput + ToDirectNewrelicQueryDelayOutputWithContext(context.Context) DirectNewrelicQueryDelayOutput +} + +type DirectNewrelicQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectNewrelicQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectNewrelicQueryDelay)(nil)).Elem() +} + +func (i DirectNewrelicQueryDelayArgs) ToDirectNewrelicQueryDelayOutput() DirectNewrelicQueryDelayOutput { + return i.ToDirectNewrelicQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectNewrelicQueryDelayArgs) ToDirectNewrelicQueryDelayOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicQueryDelayOutput) +} + +func (i DirectNewrelicQueryDelayArgs) ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput { + return i.ToDirectNewrelicQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectNewrelicQueryDelayArgs) ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicQueryDelayOutput).ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx) +} + +// DirectNewrelicQueryDelayPtrInput is an input type that accepts DirectNewrelicQueryDelayArgs, DirectNewrelicQueryDelayPtr and DirectNewrelicQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectNewrelicQueryDelayPtrInput` via: +// +// DirectNewrelicQueryDelayArgs{...} +// +// or: +// +// nil +type DirectNewrelicQueryDelayPtrInput interface { + pulumi.Input + + ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput + ToDirectNewrelicQueryDelayPtrOutputWithContext(context.Context) DirectNewrelicQueryDelayPtrOutput +} + +type directNewrelicQueryDelayPtrType DirectNewrelicQueryDelayArgs + +func DirectNewrelicQueryDelayPtr(v *DirectNewrelicQueryDelayArgs) DirectNewrelicQueryDelayPtrInput { + return (*directNewrelicQueryDelayPtrType)(v) +} + +func (*directNewrelicQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectNewrelicQueryDelay)(nil)).Elem() +} + +func (i *directNewrelicQueryDelayPtrType) ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput { + return i.ToDirectNewrelicQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directNewrelicQueryDelayPtrType) ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicQueryDelayPtrOutput) +} + +type DirectNewrelicQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectNewrelicQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectNewrelicQueryDelay)(nil)).Elem() +} + +func (o DirectNewrelicQueryDelayOutput) ToDirectNewrelicQueryDelayOutput() DirectNewrelicQueryDelayOutput { + return o +} + +func (o DirectNewrelicQueryDelayOutput) ToDirectNewrelicQueryDelayOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayOutput { + return o +} + +func (o DirectNewrelicQueryDelayOutput) ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput { + return o.ToDirectNewrelicQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectNewrelicQueryDelayOutput) ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectNewrelicQueryDelay) *DirectNewrelicQueryDelay { + return &v + }).(DirectNewrelicQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectNewrelicQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectNewrelicQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectNewrelicQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectNewrelicQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectNewrelicQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectNewrelicQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectNewrelicQueryDelay)(nil)).Elem() +} + +func (o DirectNewrelicQueryDelayPtrOutput) ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput { + return o +} + +func (o DirectNewrelicQueryDelayPtrOutput) ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayPtrOutput { + return o +} + +func (o DirectNewrelicQueryDelayPtrOutput) Elem() DirectNewrelicQueryDelayOutput { + return o.ApplyT(func(v *DirectNewrelicQueryDelay) DirectNewrelicQueryDelay { + if v != nil { + return *v + } + var ret DirectNewrelicQueryDelay + return ret + }).(DirectNewrelicQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectNewrelicQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectNewrelicQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectNewrelicQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectNewrelicQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectPingdomQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectPingdomQueryDelayInput is an input type that accepts DirectPingdomQueryDelayArgs and DirectPingdomQueryDelayOutput values. +// You can construct a concrete instance of `DirectPingdomQueryDelayInput` via: +// +// DirectPingdomQueryDelayArgs{...} +type DirectPingdomQueryDelayInput interface { + pulumi.Input + + ToDirectPingdomQueryDelayOutput() DirectPingdomQueryDelayOutput + ToDirectPingdomQueryDelayOutputWithContext(context.Context) DirectPingdomQueryDelayOutput +} + +type DirectPingdomQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectPingdomQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectPingdomQueryDelay)(nil)).Elem() +} + +func (i DirectPingdomQueryDelayArgs) ToDirectPingdomQueryDelayOutput() DirectPingdomQueryDelayOutput { + return i.ToDirectPingdomQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectPingdomQueryDelayArgs) ToDirectPingdomQueryDelayOutputWithContext(ctx context.Context) DirectPingdomQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectPingdomQueryDelayOutput) +} + +func (i DirectPingdomQueryDelayArgs) ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput { + return i.ToDirectPingdomQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectPingdomQueryDelayArgs) ToDirectPingdomQueryDelayPtrOutputWithContext(ctx context.Context) DirectPingdomQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectPingdomQueryDelayOutput).ToDirectPingdomQueryDelayPtrOutputWithContext(ctx) +} + +// DirectPingdomQueryDelayPtrInput is an input type that accepts DirectPingdomQueryDelayArgs, DirectPingdomQueryDelayPtr and DirectPingdomQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectPingdomQueryDelayPtrInput` via: +// +// DirectPingdomQueryDelayArgs{...} +// +// or: +// +// nil +type DirectPingdomQueryDelayPtrInput interface { + pulumi.Input + + ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput + ToDirectPingdomQueryDelayPtrOutputWithContext(context.Context) DirectPingdomQueryDelayPtrOutput +} + +type directPingdomQueryDelayPtrType DirectPingdomQueryDelayArgs + +func DirectPingdomQueryDelayPtr(v *DirectPingdomQueryDelayArgs) DirectPingdomQueryDelayPtrInput { + return (*directPingdomQueryDelayPtrType)(v) +} + +func (*directPingdomQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectPingdomQueryDelay)(nil)).Elem() +} + +func (i *directPingdomQueryDelayPtrType) ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput { + return i.ToDirectPingdomQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directPingdomQueryDelayPtrType) ToDirectPingdomQueryDelayPtrOutputWithContext(ctx context.Context) DirectPingdomQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectPingdomQueryDelayPtrOutput) +} + +type DirectPingdomQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectPingdomQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectPingdomQueryDelay)(nil)).Elem() +} + +func (o DirectPingdomQueryDelayOutput) ToDirectPingdomQueryDelayOutput() DirectPingdomQueryDelayOutput { + return o +} + +func (o DirectPingdomQueryDelayOutput) ToDirectPingdomQueryDelayOutputWithContext(ctx context.Context) DirectPingdomQueryDelayOutput { + return o +} + +func (o DirectPingdomQueryDelayOutput) ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput { + return o.ToDirectPingdomQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectPingdomQueryDelayOutput) ToDirectPingdomQueryDelayPtrOutputWithContext(ctx context.Context) DirectPingdomQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectPingdomQueryDelay) *DirectPingdomQueryDelay { + return &v + }).(DirectPingdomQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectPingdomQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectPingdomQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectPingdomQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectPingdomQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectPingdomQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectPingdomQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectPingdomQueryDelay)(nil)).Elem() +} + +func (o DirectPingdomQueryDelayPtrOutput) ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput { + return o +} + +func (o DirectPingdomQueryDelayPtrOutput) ToDirectPingdomQueryDelayPtrOutputWithContext(ctx context.Context) DirectPingdomQueryDelayPtrOutput { + return o +} + +func (o DirectPingdomQueryDelayPtrOutput) Elem() DirectPingdomQueryDelayOutput { + return o.ApplyT(func(v *DirectPingdomQueryDelay) DirectPingdomQueryDelay { + if v != nil { + return *v + } + var ret DirectPingdomQueryDelay + return ret + }).(DirectPingdomQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectPingdomQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectPingdomQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectPingdomQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectPingdomQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectRedshiftQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectRedshiftQueryDelayInput is an input type that accepts DirectRedshiftQueryDelayArgs and DirectRedshiftQueryDelayOutput values. +// You can construct a concrete instance of `DirectRedshiftQueryDelayInput` via: +// +// DirectRedshiftQueryDelayArgs{...} +type DirectRedshiftQueryDelayInput interface { + pulumi.Input + + ToDirectRedshiftQueryDelayOutput() DirectRedshiftQueryDelayOutput + ToDirectRedshiftQueryDelayOutputWithContext(context.Context) DirectRedshiftQueryDelayOutput +} + +type DirectRedshiftQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectRedshiftQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectRedshiftQueryDelay)(nil)).Elem() +} + +func (i DirectRedshiftQueryDelayArgs) ToDirectRedshiftQueryDelayOutput() DirectRedshiftQueryDelayOutput { + return i.ToDirectRedshiftQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectRedshiftQueryDelayArgs) ToDirectRedshiftQueryDelayOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectRedshiftQueryDelayOutput) +} + +func (i DirectRedshiftQueryDelayArgs) ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput { + return i.ToDirectRedshiftQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectRedshiftQueryDelayArgs) ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectRedshiftQueryDelayOutput).ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx) +} + +// DirectRedshiftQueryDelayPtrInput is an input type that accepts DirectRedshiftQueryDelayArgs, DirectRedshiftQueryDelayPtr and DirectRedshiftQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectRedshiftQueryDelayPtrInput` via: +// +// DirectRedshiftQueryDelayArgs{...} +// +// or: +// +// nil +type DirectRedshiftQueryDelayPtrInput interface { + pulumi.Input + + ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput + ToDirectRedshiftQueryDelayPtrOutputWithContext(context.Context) DirectRedshiftQueryDelayPtrOutput +} + +type directRedshiftQueryDelayPtrType DirectRedshiftQueryDelayArgs + +func DirectRedshiftQueryDelayPtr(v *DirectRedshiftQueryDelayArgs) DirectRedshiftQueryDelayPtrInput { + return (*directRedshiftQueryDelayPtrType)(v) +} + +func (*directRedshiftQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectRedshiftQueryDelay)(nil)).Elem() +} + +func (i *directRedshiftQueryDelayPtrType) ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput { + return i.ToDirectRedshiftQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directRedshiftQueryDelayPtrType) ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectRedshiftQueryDelayPtrOutput) +} + +type DirectRedshiftQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectRedshiftQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectRedshiftQueryDelay)(nil)).Elem() +} + +func (o DirectRedshiftQueryDelayOutput) ToDirectRedshiftQueryDelayOutput() DirectRedshiftQueryDelayOutput { + return o +} + +func (o DirectRedshiftQueryDelayOutput) ToDirectRedshiftQueryDelayOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayOutput { + return o +} + +func (o DirectRedshiftQueryDelayOutput) ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput { + return o.ToDirectRedshiftQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectRedshiftQueryDelayOutput) ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectRedshiftQueryDelay) *DirectRedshiftQueryDelay { + return &v + }).(DirectRedshiftQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectRedshiftQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectRedshiftQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectRedshiftQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectRedshiftQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectRedshiftQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectRedshiftQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectRedshiftQueryDelay)(nil)).Elem() +} + +func (o DirectRedshiftQueryDelayPtrOutput) ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput { + return o +} + +func (o DirectRedshiftQueryDelayPtrOutput) ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayPtrOutput { + return o +} + +func (o DirectRedshiftQueryDelayPtrOutput) Elem() DirectRedshiftQueryDelayOutput { + return o.ApplyT(func(v *DirectRedshiftQueryDelay) DirectRedshiftQueryDelay { + if v != nil { + return *v + } + var ret DirectRedshiftQueryDelay + return ret + }).(DirectRedshiftQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectRedshiftQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectRedshiftQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectRedshiftQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectRedshiftQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectSplunkHistoricalDataRetrieval struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations []DirectSplunkHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations []DirectSplunkHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +} + +// DirectSplunkHistoricalDataRetrievalInput is an input type that accepts DirectSplunkHistoricalDataRetrievalArgs and DirectSplunkHistoricalDataRetrievalOutput values. +// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalInput` via: +// +// DirectSplunkHistoricalDataRetrievalArgs{...} +type DirectSplunkHistoricalDataRetrievalInput interface { + pulumi.Input + + ToDirectSplunkHistoricalDataRetrievalOutput() DirectSplunkHistoricalDataRetrievalOutput + ToDirectSplunkHistoricalDataRetrievalOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalOutput +} + +type DirectSplunkHistoricalDataRetrievalArgs struct { + // Used by default for any SLOs connected to this data source. + DefaultDurations DirectSplunkHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` + // Defines the maximum period for which data can be retrieved. + MaxDurations DirectSplunkHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +} + +func (DirectSplunkHistoricalDataRetrievalArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkHistoricalDataRetrieval)(nil)).Elem() +} + +func (i DirectSplunkHistoricalDataRetrievalArgs) ToDirectSplunkHistoricalDataRetrievalOutput() DirectSplunkHistoricalDataRetrievalOutput { + return i.ToDirectSplunkHistoricalDataRetrievalOutputWithContext(context.Background()) +} + +func (i DirectSplunkHistoricalDataRetrievalArgs) ToDirectSplunkHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalOutput) +} + +func (i DirectSplunkHistoricalDataRetrievalArgs) ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput { + return i.ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i DirectSplunkHistoricalDataRetrievalArgs) ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalOutput).ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx) +} + +// DirectSplunkHistoricalDataRetrievalPtrInput is an input type that accepts DirectSplunkHistoricalDataRetrievalArgs, DirectSplunkHistoricalDataRetrievalPtr and DirectSplunkHistoricalDataRetrievalPtrOutput values. +// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalPtrInput` via: +// +// DirectSplunkHistoricalDataRetrievalArgs{...} +// +// or: +// +// nil +type DirectSplunkHistoricalDataRetrievalPtrInput interface { + pulumi.Input + + ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput + ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput +} + +type directSplunkHistoricalDataRetrievalPtrType DirectSplunkHistoricalDataRetrievalArgs + +func DirectSplunkHistoricalDataRetrievalPtr(v *DirectSplunkHistoricalDataRetrievalArgs) DirectSplunkHistoricalDataRetrievalPtrInput { + return (*directSplunkHistoricalDataRetrievalPtrType)(v) +} + +func (*directSplunkHistoricalDataRetrievalPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectSplunkHistoricalDataRetrieval)(nil)).Elem() +} + +func (i *directSplunkHistoricalDataRetrievalPtrType) ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput { + return i.ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (i *directSplunkHistoricalDataRetrievalPtrType) ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalPtrOutput) +} + +type DirectSplunkHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } + +func (DirectSplunkHistoricalDataRetrievalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectSplunkHistoricalDataRetrievalOutput) ToDirectSplunkHistoricalDataRetrievalOutput() DirectSplunkHistoricalDataRetrievalOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalOutput) ToDirectSplunkHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalOutput) ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput { + return o.ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +} + +func (o DirectSplunkHistoricalDataRetrievalOutput) ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectSplunkHistoricalDataRetrieval) *DirectSplunkHistoricalDataRetrieval { + return &v + }).(DirectSplunkHistoricalDataRetrievalPtrOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectSplunkHistoricalDataRetrievalOutput) DefaultDurations() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v DirectSplunkHistoricalDataRetrieval) []DirectSplunkHistoricalDataRetrievalDefaultDuration { + return v.DefaultDurations + }).(DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectSplunkHistoricalDataRetrievalOutput) MaxDurations() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v DirectSplunkHistoricalDataRetrieval) []DirectSplunkHistoricalDataRetrievalMaxDuration { + return v.MaxDurations + }).(DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectSplunkHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } + +func (DirectSplunkHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectSplunkHistoricalDataRetrieval)(nil)).Elem() +} + +func (o DirectSplunkHistoricalDataRetrievalPtrOutput) ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalPtrOutput) ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalPtrOutput) Elem() DirectSplunkHistoricalDataRetrievalOutput { + return o.ApplyT(func(v *DirectSplunkHistoricalDataRetrieval) DirectSplunkHistoricalDataRetrieval { + if v != nil { + return *v + } + var ret DirectSplunkHistoricalDataRetrieval + return ret + }).(DirectSplunkHistoricalDataRetrievalOutput) +} + +// Used by default for any SLOs connected to this data source. +func (o DirectSplunkHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { + return o.ApplyT(func(v *DirectSplunkHistoricalDataRetrieval) []DirectSplunkHistoricalDataRetrievalDefaultDuration { + if v == nil { + return nil + } + return v.DefaultDurations + }).(DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +// Defines the maximum period for which data can be retrieved. +func (o DirectSplunkHistoricalDataRetrievalPtrOutput) MaxDurations() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { + return o.ApplyT(func(v *DirectSplunkHistoricalDataRetrieval) []DirectSplunkHistoricalDataRetrievalMaxDuration { + if v == nil { + return nil + } + return v.MaxDurations + }).(DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectSplunkHistoricalDataRetrievalDefaultDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectSplunkHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectSplunkHistoricalDataRetrievalDefaultDurationArgs and DirectSplunkHistoricalDataRetrievalDefaultDurationOutput values. +// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalDefaultDurationInput` via: +// +// DirectSplunkHistoricalDataRetrievalDefaultDurationArgs{...} +type DirectSplunkHistoricalDataRetrievalDefaultDurationInput interface { + pulumi.Input + + ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationOutput + ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationOutput +} + +type DirectSplunkHistoricalDataRetrievalDefaultDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectSplunkHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectSplunkHistoricalDataRetrievalDefaultDurationArgs) ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { + return i.ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +} + +func (i DirectSplunkHistoricalDataRetrievalDefaultDurationArgs) ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) +} + +// DirectSplunkHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectSplunkHistoricalDataRetrievalDefaultDurationArray and DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput values. +// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalDefaultDurationArrayInput` via: +// +// DirectSplunkHistoricalDataRetrievalDefaultDurationArray{ DirectSplunkHistoricalDataRetrievalDefaultDurationArgs{...} } +type DirectSplunkHistoricalDataRetrievalDefaultDurationArrayInput interface { + pulumi.Input + + ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput + ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput +} + +type DirectSplunkHistoricalDataRetrievalDefaultDurationArray []DirectSplunkHistoricalDataRetrievalDefaultDurationInput + +func (DirectSplunkHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectSplunkHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (i DirectSplunkHistoricalDataRetrievalDefaultDurationArray) ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { + return i.ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectSplunkHistoricalDataRetrievalDefaultDurationArray) ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) +} + +type DirectSplunkHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } + +func (DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectSplunkHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectSplunkHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectSplunkHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +} + +func (o DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectSplunkHistoricalDataRetrievalDefaultDuration { + return vs[0].([]DirectSplunkHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] + }).(DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) +} + +type DirectSplunkHistoricalDataRetrievalMaxDuration struct { + // Must be one of Minute, Hour, or Day. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectSplunkHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectSplunkHistoricalDataRetrievalMaxDurationArgs and DirectSplunkHistoricalDataRetrievalMaxDurationOutput values. +// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalMaxDurationInput` via: +// +// DirectSplunkHistoricalDataRetrievalMaxDurationArgs{...} +type DirectSplunkHistoricalDataRetrievalMaxDurationInput interface { + pulumi.Input + + ToDirectSplunkHistoricalDataRetrievalMaxDurationOutput() DirectSplunkHistoricalDataRetrievalMaxDurationOutput + ToDirectSplunkHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationOutput +} + +type DirectSplunkHistoricalDataRetrievalMaxDurationArgs struct { + // Must be one of Minute, Hour, or Day. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectSplunkHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectSplunkHistoricalDataRetrievalMaxDurationArgs) ToDirectSplunkHistoricalDataRetrievalMaxDurationOutput() DirectSplunkHistoricalDataRetrievalMaxDurationOutput { + return i.ToDirectSplunkHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +} + +func (i DirectSplunkHistoricalDataRetrievalMaxDurationArgs) ToDirectSplunkHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalMaxDurationOutput) +} + +// DirectSplunkHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectSplunkHistoricalDataRetrievalMaxDurationArray and DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput values. +// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalMaxDurationArrayInput` via: +// +// DirectSplunkHistoricalDataRetrievalMaxDurationArray{ DirectSplunkHistoricalDataRetrievalMaxDurationArgs{...} } +type DirectSplunkHistoricalDataRetrievalMaxDurationArrayInput interface { + pulumi.Input + + ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput + ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput +} + +type DirectSplunkHistoricalDataRetrievalMaxDurationArray []DirectSplunkHistoricalDataRetrievalMaxDurationInput + +func (DirectSplunkHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectSplunkHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (i DirectSplunkHistoricalDataRetrievalMaxDurationArray) ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { + return i.ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +} + +func (i DirectSplunkHistoricalDataRetrievalMaxDurationArray) ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) +} + +type DirectSplunkHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } + +func (DirectSplunkHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectSplunkHistoricalDataRetrievalMaxDurationOutput) ToDirectSplunkHistoricalDataRetrievalMaxDurationOutput() DirectSplunkHistoricalDataRetrievalMaxDurationOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalMaxDurationOutput) ToDirectSplunkHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationOutput { + return o +} + +// Must be one of Minute, Hour, or Day. +func (o DirectSplunkHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectSplunkHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectSplunkHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectSplunkHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } + +func (DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DirectSplunkHistoricalDataRetrievalMaxDuration)(nil)).Elem() +} + +func (o DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { + return o +} + +func (o DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectSplunkHistoricalDataRetrievalMaxDurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectSplunkHistoricalDataRetrievalMaxDuration { + return vs[0].([]DirectSplunkHistoricalDataRetrievalMaxDuration)[vs[1].(int)] + }).(DirectSplunkHistoricalDataRetrievalMaxDurationOutput) +} + +type DirectSplunkObservabilityQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectSplunkObservabilityQueryDelayInput is an input type that accepts DirectSplunkObservabilityQueryDelayArgs and DirectSplunkObservabilityQueryDelayOutput values. +// You can construct a concrete instance of `DirectSplunkObservabilityQueryDelayInput` via: +// +// DirectSplunkObservabilityQueryDelayArgs{...} +type DirectSplunkObservabilityQueryDelayInput interface { + pulumi.Input + + ToDirectSplunkObservabilityQueryDelayOutput() DirectSplunkObservabilityQueryDelayOutput + ToDirectSplunkObservabilityQueryDelayOutputWithContext(context.Context) DirectSplunkObservabilityQueryDelayOutput +} + +type DirectSplunkObservabilityQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectSplunkObservabilityQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkObservabilityQueryDelay)(nil)).Elem() +} + +func (i DirectSplunkObservabilityQueryDelayArgs) ToDirectSplunkObservabilityQueryDelayOutput() DirectSplunkObservabilityQueryDelayOutput { + return i.ToDirectSplunkObservabilityQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectSplunkObservabilityQueryDelayArgs) ToDirectSplunkObservabilityQueryDelayOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkObservabilityQueryDelayOutput) +} + +func (i DirectSplunkObservabilityQueryDelayArgs) ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput { + return i.ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectSplunkObservabilityQueryDelayArgs) ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkObservabilityQueryDelayOutput).ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx) +} + +// DirectSplunkObservabilityQueryDelayPtrInput is an input type that accepts DirectSplunkObservabilityQueryDelayArgs, DirectSplunkObservabilityQueryDelayPtr and DirectSplunkObservabilityQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectSplunkObservabilityQueryDelayPtrInput` via: +// +// DirectSplunkObservabilityQueryDelayArgs{...} +// +// or: +// +// nil +type DirectSplunkObservabilityQueryDelayPtrInput interface { + pulumi.Input + + ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput + ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(context.Context) DirectSplunkObservabilityQueryDelayPtrOutput +} + +type directSplunkObservabilityQueryDelayPtrType DirectSplunkObservabilityQueryDelayArgs + +func DirectSplunkObservabilityQueryDelayPtr(v *DirectSplunkObservabilityQueryDelayArgs) DirectSplunkObservabilityQueryDelayPtrInput { + return (*directSplunkObservabilityQueryDelayPtrType)(v) +} + +func (*directSplunkObservabilityQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectSplunkObservabilityQueryDelay)(nil)).Elem() +} + +func (i *directSplunkObservabilityQueryDelayPtrType) ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput { + return i.ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directSplunkObservabilityQueryDelayPtrType) ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkObservabilityQueryDelayPtrOutput) +} + +type DirectSplunkObservabilityQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectSplunkObservabilityQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkObservabilityQueryDelay)(nil)).Elem() +} + +func (o DirectSplunkObservabilityQueryDelayOutput) ToDirectSplunkObservabilityQueryDelayOutput() DirectSplunkObservabilityQueryDelayOutput { + return o +} + +func (o DirectSplunkObservabilityQueryDelayOutput) ToDirectSplunkObservabilityQueryDelayOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayOutput { + return o +} + +func (o DirectSplunkObservabilityQueryDelayOutput) ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput { + return o.ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectSplunkObservabilityQueryDelayOutput) ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectSplunkObservabilityQueryDelay) *DirectSplunkObservabilityQueryDelay { + return &v + }).(DirectSplunkObservabilityQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectSplunkObservabilityQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectSplunkObservabilityQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectSplunkObservabilityQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectSplunkObservabilityQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectSplunkObservabilityQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectSplunkObservabilityQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectSplunkObservabilityQueryDelay)(nil)).Elem() +} + +func (o DirectSplunkObservabilityQueryDelayPtrOutput) ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput { + return o +} + +func (o DirectSplunkObservabilityQueryDelayPtrOutput) ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayPtrOutput { + return o +} + +func (o DirectSplunkObservabilityQueryDelayPtrOutput) Elem() DirectSplunkObservabilityQueryDelayOutput { + return o.ApplyT(func(v *DirectSplunkObservabilityQueryDelay) DirectSplunkObservabilityQueryDelay { + if v != nil { + return *v + } + var ret DirectSplunkObservabilityQueryDelay + return ret + }).(DirectSplunkObservabilityQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectSplunkObservabilityQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectSplunkObservabilityQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectSplunkObservabilityQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectSplunkObservabilityQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectSplunkQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectSplunkQueryDelayInput is an input type that accepts DirectSplunkQueryDelayArgs and DirectSplunkQueryDelayOutput values. +// You can construct a concrete instance of `DirectSplunkQueryDelayInput` via: +// +// DirectSplunkQueryDelayArgs{...} +type DirectSplunkQueryDelayInput interface { + pulumi.Input + + ToDirectSplunkQueryDelayOutput() DirectSplunkQueryDelayOutput + ToDirectSplunkQueryDelayOutputWithContext(context.Context) DirectSplunkQueryDelayOutput +} + +type DirectSplunkQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectSplunkQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkQueryDelay)(nil)).Elem() +} + +func (i DirectSplunkQueryDelayArgs) ToDirectSplunkQueryDelayOutput() DirectSplunkQueryDelayOutput { + return i.ToDirectSplunkQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectSplunkQueryDelayArgs) ToDirectSplunkQueryDelayOutputWithContext(ctx context.Context) DirectSplunkQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkQueryDelayOutput) +} + +func (i DirectSplunkQueryDelayArgs) ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput { + return i.ToDirectSplunkQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectSplunkQueryDelayArgs) ToDirectSplunkQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkQueryDelayOutput).ToDirectSplunkQueryDelayPtrOutputWithContext(ctx) +} + +// DirectSplunkQueryDelayPtrInput is an input type that accepts DirectSplunkQueryDelayArgs, DirectSplunkQueryDelayPtr and DirectSplunkQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectSplunkQueryDelayPtrInput` via: +// +// DirectSplunkQueryDelayArgs{...} +// +// or: +// +// nil +type DirectSplunkQueryDelayPtrInput interface { + pulumi.Input + + ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput + ToDirectSplunkQueryDelayPtrOutputWithContext(context.Context) DirectSplunkQueryDelayPtrOutput +} + +type directSplunkQueryDelayPtrType DirectSplunkQueryDelayArgs + +func DirectSplunkQueryDelayPtr(v *DirectSplunkQueryDelayArgs) DirectSplunkQueryDelayPtrInput { + return (*directSplunkQueryDelayPtrType)(v) +} + +func (*directSplunkQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectSplunkQueryDelay)(nil)).Elem() +} + +func (i *directSplunkQueryDelayPtrType) ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput { + return i.ToDirectSplunkQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directSplunkQueryDelayPtrType) ToDirectSplunkQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkQueryDelayPtrOutput) +} + +type DirectSplunkQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectSplunkQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSplunkQueryDelay)(nil)).Elem() +} + +func (o DirectSplunkQueryDelayOutput) ToDirectSplunkQueryDelayOutput() DirectSplunkQueryDelayOutput { + return o +} + +func (o DirectSplunkQueryDelayOutput) ToDirectSplunkQueryDelayOutputWithContext(ctx context.Context) DirectSplunkQueryDelayOutput { + return o +} + +func (o DirectSplunkQueryDelayOutput) ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput { + return o.ToDirectSplunkQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectSplunkQueryDelayOutput) ToDirectSplunkQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectSplunkQueryDelay) *DirectSplunkQueryDelay { + return &v + }).(DirectSplunkQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectSplunkQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectSplunkQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectSplunkQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectSplunkQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectSplunkQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectSplunkQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectSplunkQueryDelay)(nil)).Elem() +} + +func (o DirectSplunkQueryDelayPtrOutput) ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput { + return o +} + +func (o DirectSplunkQueryDelayPtrOutput) ToDirectSplunkQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkQueryDelayPtrOutput { + return o +} + +func (o DirectSplunkQueryDelayPtrOutput) Elem() DirectSplunkQueryDelayOutput { + return o.ApplyT(func(v *DirectSplunkQueryDelay) DirectSplunkQueryDelay { + if v != nil { + return *v + } + var ret DirectSplunkQueryDelay + return ret + }).(DirectSplunkQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectSplunkQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectSplunkQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectSplunkQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectSplunkQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectSumologicQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectSumologicQueryDelayInput is an input type that accepts DirectSumologicQueryDelayArgs and DirectSumologicQueryDelayOutput values. +// You can construct a concrete instance of `DirectSumologicQueryDelayInput` via: +// +// DirectSumologicQueryDelayArgs{...} +type DirectSumologicQueryDelayInput interface { + pulumi.Input + + ToDirectSumologicQueryDelayOutput() DirectSumologicQueryDelayOutput + ToDirectSumologicQueryDelayOutputWithContext(context.Context) DirectSumologicQueryDelayOutput +} + +type DirectSumologicQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectSumologicQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSumologicQueryDelay)(nil)).Elem() +} + +func (i DirectSumologicQueryDelayArgs) ToDirectSumologicQueryDelayOutput() DirectSumologicQueryDelayOutput { + return i.ToDirectSumologicQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectSumologicQueryDelayArgs) ToDirectSumologicQueryDelayOutputWithContext(ctx context.Context) DirectSumologicQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSumologicQueryDelayOutput) +} + +func (i DirectSumologicQueryDelayArgs) ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput { + return i.ToDirectSumologicQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectSumologicQueryDelayArgs) ToDirectSumologicQueryDelayPtrOutputWithContext(ctx context.Context) DirectSumologicQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSumologicQueryDelayOutput).ToDirectSumologicQueryDelayPtrOutputWithContext(ctx) +} + +// DirectSumologicQueryDelayPtrInput is an input type that accepts DirectSumologicQueryDelayArgs, DirectSumologicQueryDelayPtr and DirectSumologicQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectSumologicQueryDelayPtrInput` via: +// +// DirectSumologicQueryDelayArgs{...} +// +// or: +// +// nil +type DirectSumologicQueryDelayPtrInput interface { + pulumi.Input + + ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput + ToDirectSumologicQueryDelayPtrOutputWithContext(context.Context) DirectSumologicQueryDelayPtrOutput +} + +type directSumologicQueryDelayPtrType DirectSumologicQueryDelayArgs + +func DirectSumologicQueryDelayPtr(v *DirectSumologicQueryDelayArgs) DirectSumologicQueryDelayPtrInput { + return (*directSumologicQueryDelayPtrType)(v) +} + +func (*directSumologicQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectSumologicQueryDelay)(nil)).Elem() +} + +func (i *directSumologicQueryDelayPtrType) ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput { + return i.ToDirectSumologicQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directSumologicQueryDelayPtrType) ToDirectSumologicQueryDelayPtrOutputWithContext(ctx context.Context) DirectSumologicQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectSumologicQueryDelayPtrOutput) +} + +type DirectSumologicQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectSumologicQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectSumologicQueryDelay)(nil)).Elem() +} + +func (o DirectSumologicQueryDelayOutput) ToDirectSumologicQueryDelayOutput() DirectSumologicQueryDelayOutput { + return o +} + +func (o DirectSumologicQueryDelayOutput) ToDirectSumologicQueryDelayOutputWithContext(ctx context.Context) DirectSumologicQueryDelayOutput { + return o +} + +func (o DirectSumologicQueryDelayOutput) ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput { + return o.ToDirectSumologicQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectSumologicQueryDelayOutput) ToDirectSumologicQueryDelayPtrOutputWithContext(ctx context.Context) DirectSumologicQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectSumologicQueryDelay) *DirectSumologicQueryDelay { + return &v + }).(DirectSumologicQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectSumologicQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectSumologicQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectSumologicQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectSumologicQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectSumologicQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectSumologicQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectSumologicQueryDelay)(nil)).Elem() +} + +func (o DirectSumologicQueryDelayPtrOutput) ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput { + return o +} + +func (o DirectSumologicQueryDelayPtrOutput) ToDirectSumologicQueryDelayPtrOutputWithContext(ctx context.Context) DirectSumologicQueryDelayPtrOutput { + return o +} + +func (o DirectSumologicQueryDelayPtrOutput) Elem() DirectSumologicQueryDelayOutput { + return o.ApplyT(func(v *DirectSumologicQueryDelay) DirectSumologicQueryDelay { + if v != nil { + return *v + } + var ret DirectSumologicQueryDelay + return ret + }).(DirectSumologicQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectSumologicQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectSumologicQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectSumologicQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectSumologicQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type DirectThousandeyesQueryDelay struct { + // Must be one of Minute or Second. + Unit string `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value int `pulumi:"value"` +} + +// DirectThousandeyesQueryDelayInput is an input type that accepts DirectThousandeyesQueryDelayArgs and DirectThousandeyesQueryDelayOutput values. +// You can construct a concrete instance of `DirectThousandeyesQueryDelayInput` via: +// +// DirectThousandeyesQueryDelayArgs{...} +type DirectThousandeyesQueryDelayInput interface { + pulumi.Input + + ToDirectThousandeyesQueryDelayOutput() DirectThousandeyesQueryDelayOutput + ToDirectThousandeyesQueryDelayOutputWithContext(context.Context) DirectThousandeyesQueryDelayOutput +} + +type DirectThousandeyesQueryDelayArgs struct { + // Must be one of Minute or Second. + Unit pulumi.StringInput `pulumi:"unit"` + // Must be an integer greater than or equal to 0. + Value pulumi.IntInput `pulumi:"value"` +} + +func (DirectThousandeyesQueryDelayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DirectThousandeyesQueryDelay)(nil)).Elem() +} + +func (i DirectThousandeyesQueryDelayArgs) ToDirectThousandeyesQueryDelayOutput() DirectThousandeyesQueryDelayOutput { + return i.ToDirectThousandeyesQueryDelayOutputWithContext(context.Background()) +} + +func (i DirectThousandeyesQueryDelayArgs) ToDirectThousandeyesQueryDelayOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectThousandeyesQueryDelayOutput) +} + +func (i DirectThousandeyesQueryDelayArgs) ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput { + return i.ToDirectThousandeyesQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i DirectThousandeyesQueryDelayArgs) ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectThousandeyesQueryDelayOutput).ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx) +} + +// DirectThousandeyesQueryDelayPtrInput is an input type that accepts DirectThousandeyesQueryDelayArgs, DirectThousandeyesQueryDelayPtr and DirectThousandeyesQueryDelayPtrOutput values. +// You can construct a concrete instance of `DirectThousandeyesQueryDelayPtrInput` via: +// +// DirectThousandeyesQueryDelayArgs{...} +// +// or: +// +// nil +type DirectThousandeyesQueryDelayPtrInput interface { + pulumi.Input + + ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput + ToDirectThousandeyesQueryDelayPtrOutputWithContext(context.Context) DirectThousandeyesQueryDelayPtrOutput +} + +type directThousandeyesQueryDelayPtrType DirectThousandeyesQueryDelayArgs + +func DirectThousandeyesQueryDelayPtr(v *DirectThousandeyesQueryDelayArgs) DirectThousandeyesQueryDelayPtrInput { + return (*directThousandeyesQueryDelayPtrType)(v) +} + +func (*directThousandeyesQueryDelayPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DirectThousandeyesQueryDelay)(nil)).Elem() +} + +func (i *directThousandeyesQueryDelayPtrType) ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput { + return i.ToDirectThousandeyesQueryDelayPtrOutputWithContext(context.Background()) +} + +func (i *directThousandeyesQueryDelayPtrType) ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DirectThousandeyesQueryDelayPtrOutput) +} + +type DirectThousandeyesQueryDelayOutput struct{ *pulumi.OutputState } + +func (DirectThousandeyesQueryDelayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DirectThousandeyesQueryDelay)(nil)).Elem() +} + +func (o DirectThousandeyesQueryDelayOutput) ToDirectThousandeyesQueryDelayOutput() DirectThousandeyesQueryDelayOutput { + return o +} + +func (o DirectThousandeyesQueryDelayOutput) ToDirectThousandeyesQueryDelayOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayOutput { + return o +} + +func (o DirectThousandeyesQueryDelayOutput) ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput { + return o.ToDirectThousandeyesQueryDelayPtrOutputWithContext(context.Background()) +} + +func (o DirectThousandeyesQueryDelayOutput) ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectThousandeyesQueryDelay) *DirectThousandeyesQueryDelay { + return &v + }).(DirectThousandeyesQueryDelayPtrOutput) +} + +// Must be one of Minute or Second. +func (o DirectThousandeyesQueryDelayOutput) Unit() pulumi.StringOutput { + return o.ApplyT(func(v DirectThousandeyesQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectThousandeyesQueryDelayOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DirectThousandeyesQueryDelay) int { return v.Value }).(pulumi.IntOutput) +} + +type DirectThousandeyesQueryDelayPtrOutput struct{ *pulumi.OutputState } + +func (DirectThousandeyesQueryDelayPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DirectThousandeyesQueryDelay)(nil)).Elem() +} + +func (o DirectThousandeyesQueryDelayPtrOutput) ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput { + return o +} + +func (o DirectThousandeyesQueryDelayPtrOutput) ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayPtrOutput { + return o +} + +func (o DirectThousandeyesQueryDelayPtrOutput) Elem() DirectThousandeyesQueryDelayOutput { + return o.ApplyT(func(v *DirectThousandeyesQueryDelay) DirectThousandeyesQueryDelay { + if v != nil { + return *v + } + var ret DirectThousandeyesQueryDelay + return ret + }).(DirectThousandeyesQueryDelayOutput) +} + +// Must be one of Minute or Second. +func (o DirectThousandeyesQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DirectThousandeyesQueryDelay) *string { + if v == nil { + return nil + } + return &v.Unit + }).(pulumi.StringPtrOutput) +} + +// Must be an integer greater than or equal to 0. +func (o DirectThousandeyesQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DirectThousandeyesQueryDelay) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + +type ProjectLabel struct { + // A key for the label, unique within the associated resource. + Key string `pulumi:"key"` + // A list of unique values for a single key. + Values []string `pulumi:"values"` +} + +// ProjectLabelInput is an input type that accepts ProjectLabelArgs and ProjectLabelOutput values. +// You can construct a concrete instance of `ProjectLabelInput` via: +// +// ProjectLabelArgs{...} +type ProjectLabelInput interface { + pulumi.Input + + ToProjectLabelOutput() ProjectLabelOutput + ToProjectLabelOutputWithContext(context.Context) ProjectLabelOutput +} + +type ProjectLabelArgs struct { + // A key for the label, unique within the associated resource. + Key pulumi.StringInput `pulumi:"key"` + // A list of unique values for a single key. + Values pulumi.StringArrayInput `pulumi:"values"` +} + +func (ProjectLabelArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ProjectLabel)(nil)).Elem() +} + +func (i ProjectLabelArgs) ToProjectLabelOutput() ProjectLabelOutput { + return i.ToProjectLabelOutputWithContext(context.Background()) +} + +func (i ProjectLabelArgs) ToProjectLabelOutputWithContext(ctx context.Context) ProjectLabelOutput { + return pulumi.ToOutputWithContext(ctx, i).(ProjectLabelOutput) +} + +// ProjectLabelArrayInput is an input type that accepts ProjectLabelArray and ProjectLabelArrayOutput values. +// You can construct a concrete instance of `ProjectLabelArrayInput` via: +// +// ProjectLabelArray{ ProjectLabelArgs{...} } +type ProjectLabelArrayInput interface { + pulumi.Input + + ToProjectLabelArrayOutput() ProjectLabelArrayOutput + ToProjectLabelArrayOutputWithContext(context.Context) ProjectLabelArrayOutput +} + +type ProjectLabelArray []ProjectLabelInput + +func (ProjectLabelArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ProjectLabel)(nil)).Elem() +} + +func (i ProjectLabelArray) ToProjectLabelArrayOutput() ProjectLabelArrayOutput { + return i.ToProjectLabelArrayOutputWithContext(context.Background()) +} + +func (i ProjectLabelArray) ToProjectLabelArrayOutputWithContext(ctx context.Context) ProjectLabelArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ProjectLabelArrayOutput) +} + +type ProjectLabelOutput struct{ *pulumi.OutputState } + +func (ProjectLabelOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ProjectLabel)(nil)).Elem() +} + +func (o ProjectLabelOutput) ToProjectLabelOutput() ProjectLabelOutput { + return o +} + +func (o ProjectLabelOutput) ToProjectLabelOutputWithContext(ctx context.Context) ProjectLabelOutput { + return o +} + +// A key for the label, unique within the associated resource. +func (o ProjectLabelOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v ProjectLabel) string { return v.Key }).(pulumi.StringOutput) +} + +// A list of unique values for a single key. +func (o ProjectLabelOutput) Values() pulumi.StringArrayOutput { + return o.ApplyT(func(v ProjectLabel) []string { return v.Values }).(pulumi.StringArrayOutput) +} + +type ProjectLabelArrayOutput struct{ *pulumi.OutputState } + +func (ProjectLabelArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ProjectLabel)(nil)).Elem() +} + +func (o ProjectLabelArrayOutput) ToProjectLabelArrayOutput() ProjectLabelArrayOutput { + return o +} + +func (o ProjectLabelArrayOutput) ToProjectLabelArrayOutputWithContext(ctx context.Context) ProjectLabelArrayOutput { + return o +} + +func (o ProjectLabelArrayOutput) Index(i pulumi.IntInput) ProjectLabelOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ProjectLabel { + return vs[0].([]ProjectLabel)[vs[1].(int)] + }).(ProjectLabelOutput) +} + +type ServiceLabel struct { + // A key for the label, unique within the associated resource. + Key string `pulumi:"key"` + // A list of unique values for a single key. + Values []string `pulumi:"values"` +} + +// ServiceLabelInput is an input type that accepts ServiceLabelArgs and ServiceLabelOutput values. +// You can construct a concrete instance of `ServiceLabelInput` via: +// +// ServiceLabelArgs{...} +type ServiceLabelInput interface { + pulumi.Input + + ToServiceLabelOutput() ServiceLabelOutput + ToServiceLabelOutputWithContext(context.Context) ServiceLabelOutput +} + +type ServiceLabelArgs struct { + // A key for the label, unique within the associated resource. + Key pulumi.StringInput `pulumi:"key"` + // A list of unique values for a single key. + Values pulumi.StringArrayInput `pulumi:"values"` +} + +func (ServiceLabelArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceLabel)(nil)).Elem() +} + +func (i ServiceLabelArgs) ToServiceLabelOutput() ServiceLabelOutput { + return i.ToServiceLabelOutputWithContext(context.Background()) +} + +func (i ServiceLabelArgs) ToServiceLabelOutputWithContext(ctx context.Context) ServiceLabelOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceLabelOutput) +} + +// ServiceLabelArrayInput is an input type that accepts ServiceLabelArray and ServiceLabelArrayOutput values. +// You can construct a concrete instance of `ServiceLabelArrayInput` via: +// +// ServiceLabelArray{ ServiceLabelArgs{...} } +type ServiceLabelArrayInput interface { + pulumi.Input + + ToServiceLabelArrayOutput() ServiceLabelArrayOutput + ToServiceLabelArrayOutputWithContext(context.Context) ServiceLabelArrayOutput +} + +type ServiceLabelArray []ServiceLabelInput + +func (ServiceLabelArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ServiceLabel)(nil)).Elem() +} + +func (i ServiceLabelArray) ToServiceLabelArrayOutput() ServiceLabelArrayOutput { + return i.ToServiceLabelArrayOutputWithContext(context.Background()) +} + +func (i ServiceLabelArray) ToServiceLabelArrayOutputWithContext(ctx context.Context) ServiceLabelArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceLabelArrayOutput) +} + +type ServiceLabelOutput struct{ *pulumi.OutputState } + +func (ServiceLabelOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceLabel)(nil)).Elem() +} + +func (o ServiceLabelOutput) ToServiceLabelOutput() ServiceLabelOutput { + return o +} + +func (o ServiceLabelOutput) ToServiceLabelOutputWithContext(ctx context.Context) ServiceLabelOutput { + return o +} + +// A key for the label, unique within the associated resource. +func (o ServiceLabelOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v ServiceLabel) string { return v.Key }).(pulumi.StringOutput) +} + +// A list of unique values for a single key. +func (o ServiceLabelOutput) Values() pulumi.StringArrayOutput { + return o.ApplyT(func(v ServiceLabel) []string { return v.Values }).(pulumi.StringArrayOutput) +} + +type ServiceLabelArrayOutput struct{ *pulumi.OutputState } + +func (ServiceLabelArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ServiceLabel)(nil)).Elem() +} + +func (o ServiceLabelArrayOutput) ToServiceLabelArrayOutput() ServiceLabelArrayOutput { + return o +} + +func (o ServiceLabelArrayOutput) ToServiceLabelArrayOutputWithContext(ctx context.Context) ServiceLabelArrayOutput { + return o +} + +func (o ServiceLabelArrayOutput) Index(i pulumi.IntInput) ServiceLabelOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ServiceLabel { + return vs[0].([]ServiceLabel)[vs[1].(int)] + }).(ServiceLabelOutput) +} + +type SloAnomalyConfig struct { + // Alert Policies attached to SLO + NoData SloAnomalyConfigNoData `pulumi:"noData"` +} + +// SloAnomalyConfigInput is an input type that accepts SloAnomalyConfigArgs and SloAnomalyConfigOutput values. +// You can construct a concrete instance of `SloAnomalyConfigInput` via: +// +// SloAnomalyConfigArgs{...} +type SloAnomalyConfigInput interface { + pulumi.Input + + ToSloAnomalyConfigOutput() SloAnomalyConfigOutput + ToSloAnomalyConfigOutputWithContext(context.Context) SloAnomalyConfigOutput +} + +type SloAnomalyConfigArgs struct { + // Alert Policies attached to SLO + NoData SloAnomalyConfigNoDataInput `pulumi:"noData"` +} + +func (SloAnomalyConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloAnomalyConfig)(nil)).Elem() +} + +func (i SloAnomalyConfigArgs) ToSloAnomalyConfigOutput() SloAnomalyConfigOutput { + return i.ToSloAnomalyConfigOutputWithContext(context.Background()) +} + +func (i SloAnomalyConfigArgs) ToSloAnomalyConfigOutputWithContext(ctx context.Context) SloAnomalyConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAnomalyConfigOutput) +} + +func (i SloAnomalyConfigArgs) ToSloAnomalyConfigPtrOutput() SloAnomalyConfigPtrOutput { + return i.ToSloAnomalyConfigPtrOutputWithContext(context.Background()) +} + +func (i SloAnomalyConfigArgs) ToSloAnomalyConfigPtrOutputWithContext(ctx context.Context) SloAnomalyConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAnomalyConfigOutput).ToSloAnomalyConfigPtrOutputWithContext(ctx) +} + +// SloAnomalyConfigPtrInput is an input type that accepts SloAnomalyConfigArgs, SloAnomalyConfigPtr and SloAnomalyConfigPtrOutput values. +// You can construct a concrete instance of `SloAnomalyConfigPtrInput` via: +// +// SloAnomalyConfigArgs{...} +// +// or: +// +// nil +type SloAnomalyConfigPtrInput interface { + pulumi.Input + + ToSloAnomalyConfigPtrOutput() SloAnomalyConfigPtrOutput + ToSloAnomalyConfigPtrOutputWithContext(context.Context) SloAnomalyConfigPtrOutput +} + +type sloAnomalyConfigPtrType SloAnomalyConfigArgs + +func SloAnomalyConfigPtr(v *SloAnomalyConfigArgs) SloAnomalyConfigPtrInput { + return (*sloAnomalyConfigPtrType)(v) +} + +func (*sloAnomalyConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SloAnomalyConfig)(nil)).Elem() +} + +func (i *sloAnomalyConfigPtrType) ToSloAnomalyConfigPtrOutput() SloAnomalyConfigPtrOutput { + return i.ToSloAnomalyConfigPtrOutputWithContext(context.Background()) +} + +func (i *sloAnomalyConfigPtrType) ToSloAnomalyConfigPtrOutputWithContext(ctx context.Context) SloAnomalyConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAnomalyConfigPtrOutput) +} + +type SloAnomalyConfigOutput struct{ *pulumi.OutputState } + +func (SloAnomalyConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloAnomalyConfig)(nil)).Elem() +} + +func (o SloAnomalyConfigOutput) ToSloAnomalyConfigOutput() SloAnomalyConfigOutput { + return o +} + +func (o SloAnomalyConfigOutput) ToSloAnomalyConfigOutputWithContext(ctx context.Context) SloAnomalyConfigOutput { + return o +} + +func (o SloAnomalyConfigOutput) ToSloAnomalyConfigPtrOutput() SloAnomalyConfigPtrOutput { + return o.ToSloAnomalyConfigPtrOutputWithContext(context.Background()) +} + +func (o SloAnomalyConfigOutput) ToSloAnomalyConfigPtrOutputWithContext(ctx context.Context) SloAnomalyConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SloAnomalyConfig) *SloAnomalyConfig { + return &v + }).(SloAnomalyConfigPtrOutput) +} + +// Alert Policies attached to SLO +func (o SloAnomalyConfigOutput) NoData() SloAnomalyConfigNoDataOutput { + return o.ApplyT(func(v SloAnomalyConfig) SloAnomalyConfigNoData { return v.NoData }).(SloAnomalyConfigNoDataOutput) +} + +type SloAnomalyConfigPtrOutput struct{ *pulumi.OutputState } + +func (SloAnomalyConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SloAnomalyConfig)(nil)).Elem() +} + +func (o SloAnomalyConfigPtrOutput) ToSloAnomalyConfigPtrOutput() SloAnomalyConfigPtrOutput { + return o +} + +func (o SloAnomalyConfigPtrOutput) ToSloAnomalyConfigPtrOutputWithContext(ctx context.Context) SloAnomalyConfigPtrOutput { + return o +} + +func (o SloAnomalyConfigPtrOutput) Elem() SloAnomalyConfigOutput { + return o.ApplyT(func(v *SloAnomalyConfig) SloAnomalyConfig { + if v != nil { + return *v + } + var ret SloAnomalyConfig + return ret + }).(SloAnomalyConfigOutput) +} + +// Alert Policies attached to SLO +func (o SloAnomalyConfigPtrOutput) NoData() SloAnomalyConfigNoDataPtrOutput { + return o.ApplyT(func(v *SloAnomalyConfig) *SloAnomalyConfigNoData { + if v == nil { + return nil + } + return &v.NoData + }).(SloAnomalyConfigNoDataPtrOutput) +} + +type SloAnomalyConfigNoData struct { + // Alert methods attached to Anomaly Config + AlertMethods []SloAnomalyConfigNoDataAlertMethod `pulumi:"alertMethods"` +} + +// SloAnomalyConfigNoDataInput is an input type that accepts SloAnomalyConfigNoDataArgs and SloAnomalyConfigNoDataOutput values. +// You can construct a concrete instance of `SloAnomalyConfigNoDataInput` via: +// +// SloAnomalyConfigNoDataArgs{...} +type SloAnomalyConfigNoDataInput interface { + pulumi.Input + + ToSloAnomalyConfigNoDataOutput() SloAnomalyConfigNoDataOutput + ToSloAnomalyConfigNoDataOutputWithContext(context.Context) SloAnomalyConfigNoDataOutput +} + +type SloAnomalyConfigNoDataArgs struct { + // Alert methods attached to Anomaly Config + AlertMethods SloAnomalyConfigNoDataAlertMethodArrayInput `pulumi:"alertMethods"` +} + +func (SloAnomalyConfigNoDataArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloAnomalyConfigNoData)(nil)).Elem() +} + +func (i SloAnomalyConfigNoDataArgs) ToSloAnomalyConfigNoDataOutput() SloAnomalyConfigNoDataOutput { + return i.ToSloAnomalyConfigNoDataOutputWithContext(context.Background()) +} + +func (i SloAnomalyConfigNoDataArgs) ToSloAnomalyConfigNoDataOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAnomalyConfigNoDataOutput) +} + +func (i SloAnomalyConfigNoDataArgs) ToSloAnomalyConfigNoDataPtrOutput() SloAnomalyConfigNoDataPtrOutput { + return i.ToSloAnomalyConfigNoDataPtrOutputWithContext(context.Background()) +} + +func (i SloAnomalyConfigNoDataArgs) ToSloAnomalyConfigNoDataPtrOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAnomalyConfigNoDataOutput).ToSloAnomalyConfigNoDataPtrOutputWithContext(ctx) +} + +// SloAnomalyConfigNoDataPtrInput is an input type that accepts SloAnomalyConfigNoDataArgs, SloAnomalyConfigNoDataPtr and SloAnomalyConfigNoDataPtrOutput values. +// You can construct a concrete instance of `SloAnomalyConfigNoDataPtrInput` via: +// +// SloAnomalyConfigNoDataArgs{...} +// +// or: +// +// nil +type SloAnomalyConfigNoDataPtrInput interface { + pulumi.Input + + ToSloAnomalyConfigNoDataPtrOutput() SloAnomalyConfigNoDataPtrOutput + ToSloAnomalyConfigNoDataPtrOutputWithContext(context.Context) SloAnomalyConfigNoDataPtrOutput +} + +type sloAnomalyConfigNoDataPtrType SloAnomalyConfigNoDataArgs + +func SloAnomalyConfigNoDataPtr(v *SloAnomalyConfigNoDataArgs) SloAnomalyConfigNoDataPtrInput { + return (*sloAnomalyConfigNoDataPtrType)(v) +} + +func (*sloAnomalyConfigNoDataPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SloAnomalyConfigNoData)(nil)).Elem() +} + +func (i *sloAnomalyConfigNoDataPtrType) ToSloAnomalyConfigNoDataPtrOutput() SloAnomalyConfigNoDataPtrOutput { + return i.ToSloAnomalyConfigNoDataPtrOutputWithContext(context.Background()) +} + +func (i *sloAnomalyConfigNoDataPtrType) ToSloAnomalyConfigNoDataPtrOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAnomalyConfigNoDataPtrOutput) +} + +type SloAnomalyConfigNoDataOutput struct{ *pulumi.OutputState } + +func (SloAnomalyConfigNoDataOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloAnomalyConfigNoData)(nil)).Elem() +} + +func (o SloAnomalyConfigNoDataOutput) ToSloAnomalyConfigNoDataOutput() SloAnomalyConfigNoDataOutput { + return o +} + +func (o SloAnomalyConfigNoDataOutput) ToSloAnomalyConfigNoDataOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataOutput { + return o +} + +func (o SloAnomalyConfigNoDataOutput) ToSloAnomalyConfigNoDataPtrOutput() SloAnomalyConfigNoDataPtrOutput { + return o.ToSloAnomalyConfigNoDataPtrOutputWithContext(context.Background()) +} + +func (o SloAnomalyConfigNoDataOutput) ToSloAnomalyConfigNoDataPtrOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SloAnomalyConfigNoData) *SloAnomalyConfigNoData { + return &v + }).(SloAnomalyConfigNoDataPtrOutput) +} + +// Alert methods attached to Anomaly Config +func (o SloAnomalyConfigNoDataOutput) AlertMethods() SloAnomalyConfigNoDataAlertMethodArrayOutput { + return o.ApplyT(func(v SloAnomalyConfigNoData) []SloAnomalyConfigNoDataAlertMethod { return v.AlertMethods }).(SloAnomalyConfigNoDataAlertMethodArrayOutput) +} + +type SloAnomalyConfigNoDataPtrOutput struct{ *pulumi.OutputState } + +func (SloAnomalyConfigNoDataPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SloAnomalyConfigNoData)(nil)).Elem() +} + +func (o SloAnomalyConfigNoDataPtrOutput) ToSloAnomalyConfigNoDataPtrOutput() SloAnomalyConfigNoDataPtrOutput { + return o +} + +func (o SloAnomalyConfigNoDataPtrOutput) ToSloAnomalyConfigNoDataPtrOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataPtrOutput { + return o +} + +func (o SloAnomalyConfigNoDataPtrOutput) Elem() SloAnomalyConfigNoDataOutput { + return o.ApplyT(func(v *SloAnomalyConfigNoData) SloAnomalyConfigNoData { + if v != nil { + return *v + } + var ret SloAnomalyConfigNoData + return ret + }).(SloAnomalyConfigNoDataOutput) +} + +// Alert methods attached to Anomaly Config +func (o SloAnomalyConfigNoDataPtrOutput) AlertMethods() SloAnomalyConfigNoDataAlertMethodArrayOutput { + return o.ApplyT(func(v *SloAnomalyConfigNoData) []SloAnomalyConfigNoDataAlertMethod { + if v == nil { + return nil + } + return v.AlertMethods + }).(SloAnomalyConfigNoDataAlertMethodArrayOutput) +} + +type SloAnomalyConfigNoDataAlertMethod struct { + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + Project string `pulumi:"project"` +} + +// SloAnomalyConfigNoDataAlertMethodInput is an input type that accepts SloAnomalyConfigNoDataAlertMethodArgs and SloAnomalyConfigNoDataAlertMethodOutput values. +// You can construct a concrete instance of `SloAnomalyConfigNoDataAlertMethodInput` via: +// +// SloAnomalyConfigNoDataAlertMethodArgs{...} +type SloAnomalyConfigNoDataAlertMethodInput interface { + pulumi.Input + + ToSloAnomalyConfigNoDataAlertMethodOutput() SloAnomalyConfigNoDataAlertMethodOutput + ToSloAnomalyConfigNoDataAlertMethodOutputWithContext(context.Context) SloAnomalyConfigNoDataAlertMethodOutput +} + +type SloAnomalyConfigNoDataAlertMethodArgs struct { + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + Project pulumi.StringInput `pulumi:"project"` +} + +func (SloAnomalyConfigNoDataAlertMethodArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloAnomalyConfigNoDataAlertMethod)(nil)).Elem() +} + +func (i SloAnomalyConfigNoDataAlertMethodArgs) ToSloAnomalyConfigNoDataAlertMethodOutput() SloAnomalyConfigNoDataAlertMethodOutput { + return i.ToSloAnomalyConfigNoDataAlertMethodOutputWithContext(context.Background()) +} + +func (i SloAnomalyConfigNoDataAlertMethodArgs) ToSloAnomalyConfigNoDataAlertMethodOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataAlertMethodOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAnomalyConfigNoDataAlertMethodOutput) +} + +// SloAnomalyConfigNoDataAlertMethodArrayInput is an input type that accepts SloAnomalyConfigNoDataAlertMethodArray and SloAnomalyConfigNoDataAlertMethodArrayOutput values. +// You can construct a concrete instance of `SloAnomalyConfigNoDataAlertMethodArrayInput` via: +// +// SloAnomalyConfigNoDataAlertMethodArray{ SloAnomalyConfigNoDataAlertMethodArgs{...} } +type SloAnomalyConfigNoDataAlertMethodArrayInput interface { + pulumi.Input + + ToSloAnomalyConfigNoDataAlertMethodArrayOutput() SloAnomalyConfigNoDataAlertMethodArrayOutput + ToSloAnomalyConfigNoDataAlertMethodArrayOutputWithContext(context.Context) SloAnomalyConfigNoDataAlertMethodArrayOutput +} + +type SloAnomalyConfigNoDataAlertMethodArray []SloAnomalyConfigNoDataAlertMethodInput + +func (SloAnomalyConfigNoDataAlertMethodArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloAnomalyConfigNoDataAlertMethod)(nil)).Elem() +} + +func (i SloAnomalyConfigNoDataAlertMethodArray) ToSloAnomalyConfigNoDataAlertMethodArrayOutput() SloAnomalyConfigNoDataAlertMethodArrayOutput { + return i.ToSloAnomalyConfigNoDataAlertMethodArrayOutputWithContext(context.Background()) +} + +func (i SloAnomalyConfigNoDataAlertMethodArray) ToSloAnomalyConfigNoDataAlertMethodArrayOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataAlertMethodArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAnomalyConfigNoDataAlertMethodArrayOutput) +} + +type SloAnomalyConfigNoDataAlertMethodOutput struct{ *pulumi.OutputState } + +func (SloAnomalyConfigNoDataAlertMethodOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloAnomalyConfigNoDataAlertMethod)(nil)).Elem() +} + +func (o SloAnomalyConfigNoDataAlertMethodOutput) ToSloAnomalyConfigNoDataAlertMethodOutput() SloAnomalyConfigNoDataAlertMethodOutput { + return o +} + +func (o SloAnomalyConfigNoDataAlertMethodOutput) ToSloAnomalyConfigNoDataAlertMethodOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataAlertMethodOutput { + return o +} + +// The name of the previously defined alert method. +func (o SloAnomalyConfigNoDataAlertMethodOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v SloAnomalyConfigNoDataAlertMethod) string { return v.Name }).(pulumi.StringOutput) +} + +// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. +func (o SloAnomalyConfigNoDataAlertMethodOutput) Project() pulumi.StringOutput { + return o.ApplyT(func(v SloAnomalyConfigNoDataAlertMethod) string { return v.Project }).(pulumi.StringOutput) +} + +type SloAnomalyConfigNoDataAlertMethodArrayOutput struct{ *pulumi.OutputState } + +func (SloAnomalyConfigNoDataAlertMethodArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloAnomalyConfigNoDataAlertMethod)(nil)).Elem() +} + +func (o SloAnomalyConfigNoDataAlertMethodArrayOutput) ToSloAnomalyConfigNoDataAlertMethodArrayOutput() SloAnomalyConfigNoDataAlertMethodArrayOutput { + return o +} + +func (o SloAnomalyConfigNoDataAlertMethodArrayOutput) ToSloAnomalyConfigNoDataAlertMethodArrayOutputWithContext(ctx context.Context) SloAnomalyConfigNoDataAlertMethodArrayOutput { + return o +} + +func (o SloAnomalyConfigNoDataAlertMethodArrayOutput) Index(i pulumi.IntInput) SloAnomalyConfigNoDataAlertMethodOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloAnomalyConfigNoDataAlertMethod { + return vs[0].([]SloAnomalyConfigNoDataAlertMethod)[vs[1].(int)] + }).(SloAnomalyConfigNoDataAlertMethodOutput) +} + +type SloAttachment struct { + // Name displayed for the attachment. Max. length: 63 characters. + DisplayName *string `pulumi:"displayName"` + // URL to the attachment + Url string `pulumi:"url"` +} + +// SloAttachmentInput is an input type that accepts SloAttachmentArgs and SloAttachmentOutput values. +// You can construct a concrete instance of `SloAttachmentInput` via: +// +// SloAttachmentArgs{...} +type SloAttachmentInput interface { + pulumi.Input + + ToSloAttachmentOutput() SloAttachmentOutput + ToSloAttachmentOutputWithContext(context.Context) SloAttachmentOutput +} + +type SloAttachmentArgs struct { + // Name displayed for the attachment. Max. length: 63 characters. + DisplayName pulumi.StringPtrInput `pulumi:"displayName"` + // URL to the attachment + Url pulumi.StringInput `pulumi:"url"` +} + +func (SloAttachmentArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloAttachment)(nil)).Elem() +} + +func (i SloAttachmentArgs) ToSloAttachmentOutput() SloAttachmentOutput { + return i.ToSloAttachmentOutputWithContext(context.Background()) +} + +func (i SloAttachmentArgs) ToSloAttachmentOutputWithContext(ctx context.Context) SloAttachmentOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAttachmentOutput) +} + +// SloAttachmentArrayInput is an input type that accepts SloAttachmentArray and SloAttachmentArrayOutput values. +// You can construct a concrete instance of `SloAttachmentArrayInput` via: +// +// SloAttachmentArray{ SloAttachmentArgs{...} } +type SloAttachmentArrayInput interface { + pulumi.Input + + ToSloAttachmentArrayOutput() SloAttachmentArrayOutput + ToSloAttachmentArrayOutputWithContext(context.Context) SloAttachmentArrayOutput +} + +type SloAttachmentArray []SloAttachmentInput + +func (SloAttachmentArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloAttachment)(nil)).Elem() +} + +func (i SloAttachmentArray) ToSloAttachmentArrayOutput() SloAttachmentArrayOutput { + return i.ToSloAttachmentArrayOutputWithContext(context.Background()) +} + +func (i SloAttachmentArray) ToSloAttachmentArrayOutputWithContext(ctx context.Context) SloAttachmentArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloAttachmentArrayOutput) +} + +type SloAttachmentOutput struct{ *pulumi.OutputState } + +func (SloAttachmentOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloAttachment)(nil)).Elem() +} + +func (o SloAttachmentOutput) ToSloAttachmentOutput() SloAttachmentOutput { + return o +} + +func (o SloAttachmentOutput) ToSloAttachmentOutputWithContext(ctx context.Context) SloAttachmentOutput { + return o +} + +// Name displayed for the attachment. Max. length: 63 characters. +func (o SloAttachmentOutput) DisplayName() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloAttachment) *string { return v.DisplayName }).(pulumi.StringPtrOutput) +} + +// URL to the attachment +func (o SloAttachmentOutput) Url() pulumi.StringOutput { + return o.ApplyT(func(v SloAttachment) string { return v.Url }).(pulumi.StringOutput) +} + +type SloAttachmentArrayOutput struct{ *pulumi.OutputState } + +func (SloAttachmentArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloAttachment)(nil)).Elem() +} + +func (o SloAttachmentArrayOutput) ToSloAttachmentArrayOutput() SloAttachmentArrayOutput { + return o +} + +func (o SloAttachmentArrayOutput) ToSloAttachmentArrayOutputWithContext(ctx context.Context) SloAttachmentArrayOutput { + return o +} + +func (o SloAttachmentArrayOutput) Index(i pulumi.IntInput) SloAttachmentOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloAttachment { + return vs[0].([]SloAttachment)[vs[1].(int)] + }).(SloAttachmentOutput) +} + +type SloComposite struct { + // Condition when the Composite SLO’s error budget is burning. + BurnRateConditions []SloCompositeBurnRateCondition `pulumi:"burnRateConditions"` + // Designated value + Target float64 `pulumi:"target"` +} + +// SloCompositeInput is an input type that accepts SloCompositeArgs and SloCompositeOutput values. +// You can construct a concrete instance of `SloCompositeInput` via: +// +// SloCompositeArgs{...} +type SloCompositeInput interface { + pulumi.Input + + ToSloCompositeOutput() SloCompositeOutput + ToSloCompositeOutputWithContext(context.Context) SloCompositeOutput +} + +type SloCompositeArgs struct { + // Condition when the Composite SLO’s error budget is burning. + BurnRateConditions SloCompositeBurnRateConditionArrayInput `pulumi:"burnRateConditions"` + // Designated value + Target pulumi.Float64Input `pulumi:"target"` +} + +func (SloCompositeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloComposite)(nil)).Elem() +} + +func (i SloCompositeArgs) ToSloCompositeOutput() SloCompositeOutput { + return i.ToSloCompositeOutputWithContext(context.Background()) +} + +func (i SloCompositeArgs) ToSloCompositeOutputWithContext(ctx context.Context) SloCompositeOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloCompositeOutput) +} + +func (i SloCompositeArgs) ToSloCompositePtrOutput() SloCompositePtrOutput { + return i.ToSloCompositePtrOutputWithContext(context.Background()) +} + +func (i SloCompositeArgs) ToSloCompositePtrOutputWithContext(ctx context.Context) SloCompositePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloCompositeOutput).ToSloCompositePtrOutputWithContext(ctx) +} + +// SloCompositePtrInput is an input type that accepts SloCompositeArgs, SloCompositePtr and SloCompositePtrOutput values. +// You can construct a concrete instance of `SloCompositePtrInput` via: +// +// SloCompositeArgs{...} +// +// or: +// +// nil +type SloCompositePtrInput interface { + pulumi.Input + + ToSloCompositePtrOutput() SloCompositePtrOutput + ToSloCompositePtrOutputWithContext(context.Context) SloCompositePtrOutput +} + +type sloCompositePtrType SloCompositeArgs + +func SloCompositePtr(v *SloCompositeArgs) SloCompositePtrInput { + return (*sloCompositePtrType)(v) +} + +func (*sloCompositePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SloComposite)(nil)).Elem() +} + +func (i *sloCompositePtrType) ToSloCompositePtrOutput() SloCompositePtrOutput { + return i.ToSloCompositePtrOutputWithContext(context.Background()) +} + +func (i *sloCompositePtrType) ToSloCompositePtrOutputWithContext(ctx context.Context) SloCompositePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloCompositePtrOutput) +} + +type SloCompositeOutput struct{ *pulumi.OutputState } + +func (SloCompositeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloComposite)(nil)).Elem() +} + +func (o SloCompositeOutput) ToSloCompositeOutput() SloCompositeOutput { + return o +} + +func (o SloCompositeOutput) ToSloCompositeOutputWithContext(ctx context.Context) SloCompositeOutput { + return o +} + +func (o SloCompositeOutput) ToSloCompositePtrOutput() SloCompositePtrOutput { + return o.ToSloCompositePtrOutputWithContext(context.Background()) +} + +func (o SloCompositeOutput) ToSloCompositePtrOutputWithContext(ctx context.Context) SloCompositePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SloComposite) *SloComposite { + return &v + }).(SloCompositePtrOutput) +} + +// Condition when the Composite SLO’s error budget is burning. +func (o SloCompositeOutput) BurnRateConditions() SloCompositeBurnRateConditionArrayOutput { + return o.ApplyT(func(v SloComposite) []SloCompositeBurnRateCondition { return v.BurnRateConditions }).(SloCompositeBurnRateConditionArrayOutput) +} + +// Designated value +func (o SloCompositeOutput) Target() pulumi.Float64Output { + return o.ApplyT(func(v SloComposite) float64 { return v.Target }).(pulumi.Float64Output) +} + +type SloCompositePtrOutput struct{ *pulumi.OutputState } + +func (SloCompositePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SloComposite)(nil)).Elem() +} + +func (o SloCompositePtrOutput) ToSloCompositePtrOutput() SloCompositePtrOutput { + return o +} + +func (o SloCompositePtrOutput) ToSloCompositePtrOutputWithContext(ctx context.Context) SloCompositePtrOutput { + return o +} + +func (o SloCompositePtrOutput) Elem() SloCompositeOutput { + return o.ApplyT(func(v *SloComposite) SloComposite { + if v != nil { + return *v + } + var ret SloComposite + return ret + }).(SloCompositeOutput) +} + +// Condition when the Composite SLO’s error budget is burning. +func (o SloCompositePtrOutput) BurnRateConditions() SloCompositeBurnRateConditionArrayOutput { + return o.ApplyT(func(v *SloComposite) []SloCompositeBurnRateCondition { + if v == nil { + return nil + } + return v.BurnRateConditions + }).(SloCompositeBurnRateConditionArrayOutput) +} + +// Designated value +func (o SloCompositePtrOutput) Target() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *SloComposite) *float64 { + if v == nil { + return nil + } + return &v.Target + }).(pulumi.Float64PtrOutput) +} + +type SloCompositeBurnRateCondition struct { + // Type of logical operation + Op string `pulumi:"op"` + // Burn rate value. + Value float64 `pulumi:"value"` +} + +// SloCompositeBurnRateConditionInput is an input type that accepts SloCompositeBurnRateConditionArgs and SloCompositeBurnRateConditionOutput values. +// You can construct a concrete instance of `SloCompositeBurnRateConditionInput` via: +// +// SloCompositeBurnRateConditionArgs{...} +type SloCompositeBurnRateConditionInput interface { + pulumi.Input + + ToSloCompositeBurnRateConditionOutput() SloCompositeBurnRateConditionOutput + ToSloCompositeBurnRateConditionOutputWithContext(context.Context) SloCompositeBurnRateConditionOutput +} + +type SloCompositeBurnRateConditionArgs struct { + // Type of logical operation + Op pulumi.StringInput `pulumi:"op"` + // Burn rate value. + Value pulumi.Float64Input `pulumi:"value"` +} + +func (SloCompositeBurnRateConditionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloCompositeBurnRateCondition)(nil)).Elem() +} + +func (i SloCompositeBurnRateConditionArgs) ToSloCompositeBurnRateConditionOutput() SloCompositeBurnRateConditionOutput { + return i.ToSloCompositeBurnRateConditionOutputWithContext(context.Background()) +} + +func (i SloCompositeBurnRateConditionArgs) ToSloCompositeBurnRateConditionOutputWithContext(ctx context.Context) SloCompositeBurnRateConditionOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloCompositeBurnRateConditionOutput) +} + +// SloCompositeBurnRateConditionArrayInput is an input type that accepts SloCompositeBurnRateConditionArray and SloCompositeBurnRateConditionArrayOutput values. +// You can construct a concrete instance of `SloCompositeBurnRateConditionArrayInput` via: +// +// SloCompositeBurnRateConditionArray{ SloCompositeBurnRateConditionArgs{...} } +type SloCompositeBurnRateConditionArrayInput interface { + pulumi.Input + + ToSloCompositeBurnRateConditionArrayOutput() SloCompositeBurnRateConditionArrayOutput + ToSloCompositeBurnRateConditionArrayOutputWithContext(context.Context) SloCompositeBurnRateConditionArrayOutput +} + +type SloCompositeBurnRateConditionArray []SloCompositeBurnRateConditionInput + +func (SloCompositeBurnRateConditionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloCompositeBurnRateCondition)(nil)).Elem() +} + +func (i SloCompositeBurnRateConditionArray) ToSloCompositeBurnRateConditionArrayOutput() SloCompositeBurnRateConditionArrayOutput { + return i.ToSloCompositeBurnRateConditionArrayOutputWithContext(context.Background()) +} + +func (i SloCompositeBurnRateConditionArray) ToSloCompositeBurnRateConditionArrayOutputWithContext(ctx context.Context) SloCompositeBurnRateConditionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloCompositeBurnRateConditionArrayOutput) +} + +type SloCompositeBurnRateConditionOutput struct{ *pulumi.OutputState } + +func (SloCompositeBurnRateConditionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloCompositeBurnRateCondition)(nil)).Elem() +} + +func (o SloCompositeBurnRateConditionOutput) ToSloCompositeBurnRateConditionOutput() SloCompositeBurnRateConditionOutput { + return o +} + +func (o SloCompositeBurnRateConditionOutput) ToSloCompositeBurnRateConditionOutputWithContext(ctx context.Context) SloCompositeBurnRateConditionOutput { + return o +} + +// Type of logical operation +func (o SloCompositeBurnRateConditionOutput) Op() pulumi.StringOutput { + return o.ApplyT(func(v SloCompositeBurnRateCondition) string { return v.Op }).(pulumi.StringOutput) +} + +// Burn rate value. +func (o SloCompositeBurnRateConditionOutput) Value() pulumi.Float64Output { + return o.ApplyT(func(v SloCompositeBurnRateCondition) float64 { return v.Value }).(pulumi.Float64Output) +} + +type SloCompositeBurnRateConditionArrayOutput struct{ *pulumi.OutputState } + +func (SloCompositeBurnRateConditionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloCompositeBurnRateCondition)(nil)).Elem() +} + +func (o SloCompositeBurnRateConditionArrayOutput) ToSloCompositeBurnRateConditionArrayOutput() SloCompositeBurnRateConditionArrayOutput { + return o +} + +func (o SloCompositeBurnRateConditionArrayOutput) ToSloCompositeBurnRateConditionArrayOutputWithContext(ctx context.Context) SloCompositeBurnRateConditionArrayOutput { + return o +} + +func (o SloCompositeBurnRateConditionArrayOutput) Index(i pulumi.IntInput) SloCompositeBurnRateConditionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloCompositeBurnRateCondition { + return vs[0].([]SloCompositeBurnRateCondition)[vs[1].(int)] + }).(SloCompositeBurnRateConditionOutput) +} + +type SloIndicator struct { + // Kind of the metric source. One of {Agent, Direct}. + Kind *string `pulumi:"kind"` + // Name of the metric source (agent). + Name string `pulumi:"name"` + // Name of the metric source project. + Project *string `pulumi:"project"` +} + +// SloIndicatorInput is an input type that accepts SloIndicatorArgs and SloIndicatorOutput values. +// You can construct a concrete instance of `SloIndicatorInput` via: +// +// SloIndicatorArgs{...} +type SloIndicatorInput interface { + pulumi.Input + + ToSloIndicatorOutput() SloIndicatorOutput + ToSloIndicatorOutputWithContext(context.Context) SloIndicatorOutput +} + +type SloIndicatorArgs struct { + // Kind of the metric source. One of {Agent, Direct}. + Kind pulumi.StringPtrInput `pulumi:"kind"` + // Name of the metric source (agent). + Name pulumi.StringInput `pulumi:"name"` + // Name of the metric source project. + Project pulumi.StringPtrInput `pulumi:"project"` +} + +func (SloIndicatorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloIndicator)(nil)).Elem() +} + +func (i SloIndicatorArgs) ToSloIndicatorOutput() SloIndicatorOutput { + return i.ToSloIndicatorOutputWithContext(context.Background()) +} + +func (i SloIndicatorArgs) ToSloIndicatorOutputWithContext(ctx context.Context) SloIndicatorOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloIndicatorOutput) +} + +func (i SloIndicatorArgs) ToSloIndicatorPtrOutput() SloIndicatorPtrOutput { + return i.ToSloIndicatorPtrOutputWithContext(context.Background()) +} + +func (i SloIndicatorArgs) ToSloIndicatorPtrOutputWithContext(ctx context.Context) SloIndicatorPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloIndicatorOutput).ToSloIndicatorPtrOutputWithContext(ctx) +} + +// SloIndicatorPtrInput is an input type that accepts SloIndicatorArgs, SloIndicatorPtr and SloIndicatorPtrOutput values. +// You can construct a concrete instance of `SloIndicatorPtrInput` via: +// +// SloIndicatorArgs{...} +// +// or: +// +// nil +type SloIndicatorPtrInput interface { + pulumi.Input + + ToSloIndicatorPtrOutput() SloIndicatorPtrOutput + ToSloIndicatorPtrOutputWithContext(context.Context) SloIndicatorPtrOutput +} + +type sloIndicatorPtrType SloIndicatorArgs + +func SloIndicatorPtr(v *SloIndicatorArgs) SloIndicatorPtrInput { + return (*sloIndicatorPtrType)(v) +} + +func (*sloIndicatorPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SloIndicator)(nil)).Elem() +} + +func (i *sloIndicatorPtrType) ToSloIndicatorPtrOutput() SloIndicatorPtrOutput { + return i.ToSloIndicatorPtrOutputWithContext(context.Background()) +} + +func (i *sloIndicatorPtrType) ToSloIndicatorPtrOutputWithContext(ctx context.Context) SloIndicatorPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloIndicatorPtrOutput) +} + +type SloIndicatorOutput struct{ *pulumi.OutputState } + +func (SloIndicatorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloIndicator)(nil)).Elem() +} + +func (o SloIndicatorOutput) ToSloIndicatorOutput() SloIndicatorOutput { + return o +} + +func (o SloIndicatorOutput) ToSloIndicatorOutputWithContext(ctx context.Context) SloIndicatorOutput { + return o +} + +func (o SloIndicatorOutput) ToSloIndicatorPtrOutput() SloIndicatorPtrOutput { + return o.ToSloIndicatorPtrOutputWithContext(context.Background()) +} + +func (o SloIndicatorOutput) ToSloIndicatorPtrOutputWithContext(ctx context.Context) SloIndicatorPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SloIndicator) *SloIndicator { + return &v + }).(SloIndicatorPtrOutput) +} + +// Kind of the metric source. One of {Agent, Direct}. +func (o SloIndicatorOutput) Kind() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloIndicator) *string { return v.Kind }).(pulumi.StringPtrOutput) +} + +// Name of the metric source (agent). +func (o SloIndicatorOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v SloIndicator) string { return v.Name }).(pulumi.StringOutput) +} + +// Name of the metric source project. +func (o SloIndicatorOutput) Project() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloIndicator) *string { return v.Project }).(pulumi.StringPtrOutput) +} + +type SloIndicatorPtrOutput struct{ *pulumi.OutputState } + +func (SloIndicatorPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SloIndicator)(nil)).Elem() +} + +func (o SloIndicatorPtrOutput) ToSloIndicatorPtrOutput() SloIndicatorPtrOutput { + return o +} + +func (o SloIndicatorPtrOutput) ToSloIndicatorPtrOutputWithContext(ctx context.Context) SloIndicatorPtrOutput { + return o +} + +func (o SloIndicatorPtrOutput) Elem() SloIndicatorOutput { + return o.ApplyT(func(v *SloIndicator) SloIndicator { + if v != nil { + return *v + } + var ret SloIndicator + return ret + }).(SloIndicatorOutput) +} + +// Kind of the metric source. One of {Agent, Direct}. +func (o SloIndicatorPtrOutput) Kind() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SloIndicator) *string { + if v == nil { + return nil + } + return v.Kind + }).(pulumi.StringPtrOutput) +} + +// Name of the metric source (agent). +func (o SloIndicatorPtrOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SloIndicator) *string { + if v == nil { + return nil + } + return &v.Name + }).(pulumi.StringPtrOutput) +} + +// Name of the metric source project. +func (o SloIndicatorPtrOutput) Project() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SloIndicator) *string { + if v == nil { + return nil + } + return v.Project + }).(pulumi.StringPtrOutput) +} + +type SloLabel struct { + // A key for the label, unique within the associated resource. + Key string `pulumi:"key"` + // A list of unique values for a single key. + Values []string `pulumi:"values"` +} + +// SloLabelInput is an input type that accepts SloLabelArgs and SloLabelOutput values. +// You can construct a concrete instance of `SloLabelInput` via: +// +// SloLabelArgs{...} +type SloLabelInput interface { + pulumi.Input + + ToSloLabelOutput() SloLabelOutput + ToSloLabelOutputWithContext(context.Context) SloLabelOutput +} + +type SloLabelArgs struct { + // A key for the label, unique within the associated resource. + Key pulumi.StringInput `pulumi:"key"` + // A list of unique values for a single key. + Values pulumi.StringArrayInput `pulumi:"values"` +} + +func (SloLabelArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloLabel)(nil)).Elem() +} + +func (i SloLabelArgs) ToSloLabelOutput() SloLabelOutput { + return i.ToSloLabelOutputWithContext(context.Background()) +} + +func (i SloLabelArgs) ToSloLabelOutputWithContext(ctx context.Context) SloLabelOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloLabelOutput) +} + +// SloLabelArrayInput is an input type that accepts SloLabelArray and SloLabelArrayOutput values. +// You can construct a concrete instance of `SloLabelArrayInput` via: +// +// SloLabelArray{ SloLabelArgs{...} } +type SloLabelArrayInput interface { + pulumi.Input + + ToSloLabelArrayOutput() SloLabelArrayOutput + ToSloLabelArrayOutputWithContext(context.Context) SloLabelArrayOutput +} + +type SloLabelArray []SloLabelInput + +func (SloLabelArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloLabel)(nil)).Elem() +} + +func (i SloLabelArray) ToSloLabelArrayOutput() SloLabelArrayOutput { + return i.ToSloLabelArrayOutputWithContext(context.Background()) +} + +func (i SloLabelArray) ToSloLabelArrayOutputWithContext(ctx context.Context) SloLabelArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloLabelArrayOutput) +} + +type SloLabelOutput struct{ *pulumi.OutputState } + +func (SloLabelOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloLabel)(nil)).Elem() +} + +func (o SloLabelOutput) ToSloLabelOutput() SloLabelOutput { + return o +} + +func (o SloLabelOutput) ToSloLabelOutputWithContext(ctx context.Context) SloLabelOutput { + return o +} + +// A key for the label, unique within the associated resource. +func (o SloLabelOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v SloLabel) string { return v.Key }).(pulumi.StringOutput) +} + +// A list of unique values for a single key. +func (o SloLabelOutput) Values() pulumi.StringArrayOutput { + return o.ApplyT(func(v SloLabel) []string { return v.Values }).(pulumi.StringArrayOutput) +} + +type SloLabelArrayOutput struct{ *pulumi.OutputState } + +func (SloLabelArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloLabel)(nil)).Elem() +} + +func (o SloLabelArrayOutput) ToSloLabelArrayOutput() SloLabelArrayOutput { + return o +} + +func (o SloLabelArrayOutput) ToSloLabelArrayOutputWithContext(ctx context.Context) SloLabelArrayOutput { + return o +} + +func (o SloLabelArrayOutput) Index(i pulumi.IntInput) SloLabelOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloLabel { + return vs[0].([]SloLabel)[vs[1].(int)] + }).(SloLabelOutput) +} + +type SloObjective struct { + // Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. + CountMetrics []SloObjectiveCountMetric `pulumi:"countMetrics"` + // Name to be displayed + DisplayName string `pulumi:"displayName"` + // Objective's name. This field is computed if not provided. + Name *string `pulumi:"name"` + // Type of logical operation + Op *string `pulumi:"op"` + // Raw data is used to compare objective values. + RawMetrics []SloObjectiveRawMetric `pulumi:"rawMetrics"` + // Designated value + Target float64 `pulumi:"target"` + // Designated value for slice + TimeSliceTarget *float64 `pulumi:"timeSliceTarget"` + // Value + Value float64 `pulumi:"value"` +} + +// SloObjectiveInput is an input type that accepts SloObjectiveArgs and SloObjectiveOutput values. +// You can construct a concrete instance of `SloObjectiveInput` via: +// +// SloObjectiveArgs{...} +type SloObjectiveInput interface { + pulumi.Input + + ToSloObjectiveOutput() SloObjectiveOutput + ToSloObjectiveOutputWithContext(context.Context) SloObjectiveOutput +} + +type SloObjectiveArgs struct { + // Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. + CountMetrics SloObjectiveCountMetricArrayInput `pulumi:"countMetrics"` + // Name to be displayed + DisplayName pulumi.StringInput `pulumi:"displayName"` + // Objective's name. This field is computed if not provided. + Name pulumi.StringPtrInput `pulumi:"name"` + // Type of logical operation + Op pulumi.StringPtrInput `pulumi:"op"` + // Raw data is used to compare objective values. + RawMetrics SloObjectiveRawMetricArrayInput `pulumi:"rawMetrics"` + // Designated value + Target pulumi.Float64Input `pulumi:"target"` + // Designated value for slice + TimeSliceTarget pulumi.Float64PtrInput `pulumi:"timeSliceTarget"` + // Value + Value pulumi.Float64Input `pulumi:"value"` +} + +func (SloObjectiveArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjective)(nil)).Elem() +} + +func (i SloObjectiveArgs) ToSloObjectiveOutput() SloObjectiveOutput { + return i.ToSloObjectiveOutputWithContext(context.Background()) +} + +func (i SloObjectiveArgs) ToSloObjectiveOutputWithContext(ctx context.Context) SloObjectiveOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveOutput) +} + +// SloObjectiveArrayInput is an input type that accepts SloObjectiveArray and SloObjectiveArrayOutput values. +// You can construct a concrete instance of `SloObjectiveArrayInput` via: +// +// SloObjectiveArray{ SloObjectiveArgs{...} } +type SloObjectiveArrayInput interface { + pulumi.Input + + ToSloObjectiveArrayOutput() SloObjectiveArrayOutput + ToSloObjectiveArrayOutputWithContext(context.Context) SloObjectiveArrayOutput +} + +type SloObjectiveArray []SloObjectiveInput + +func (SloObjectiveArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjective)(nil)).Elem() +} + +func (i SloObjectiveArray) ToSloObjectiveArrayOutput() SloObjectiveArrayOutput { + return i.ToSloObjectiveArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveArray) ToSloObjectiveArrayOutputWithContext(ctx context.Context) SloObjectiveArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveArrayOutput) +} + +type SloObjectiveOutput struct{ *pulumi.OutputState } + +func (SloObjectiveOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjective)(nil)).Elem() +} + +func (o SloObjectiveOutput) ToSloObjectiveOutput() SloObjectiveOutput { + return o +} + +func (o SloObjectiveOutput) ToSloObjectiveOutputWithContext(ctx context.Context) SloObjectiveOutput { + return o +} + +// Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. +func (o SloObjectiveOutput) CountMetrics() SloObjectiveCountMetricArrayOutput { + return o.ApplyT(func(v SloObjective) []SloObjectiveCountMetric { return v.CountMetrics }).(SloObjectiveCountMetricArrayOutput) +} + +// Name to be displayed +func (o SloObjectiveOutput) DisplayName() pulumi.StringOutput { + return o.ApplyT(func(v SloObjective) string { return v.DisplayName }).(pulumi.StringOutput) +} + +// Objective's name. This field is computed if not provided. +func (o SloObjectiveOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjective) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// Type of logical operation +func (o SloObjectiveOutput) Op() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjective) *string { return v.Op }).(pulumi.StringPtrOutput) +} + +// Raw data is used to compare objective values. +func (o SloObjectiveOutput) RawMetrics() SloObjectiveRawMetricArrayOutput { + return o.ApplyT(func(v SloObjective) []SloObjectiveRawMetric { return v.RawMetrics }).(SloObjectiveRawMetricArrayOutput) +} + +// Designated value +func (o SloObjectiveOutput) Target() pulumi.Float64Output { + return o.ApplyT(func(v SloObjective) float64 { return v.Target }).(pulumi.Float64Output) +} + +// Designated value for slice +func (o SloObjectiveOutput) TimeSliceTarget() pulumi.Float64PtrOutput { + return o.ApplyT(func(v SloObjective) *float64 { return v.TimeSliceTarget }).(pulumi.Float64PtrOutput) +} + +// Value +func (o SloObjectiveOutput) Value() pulumi.Float64Output { + return o.ApplyT(func(v SloObjective) float64 { return v.Value }).(pulumi.Float64Output) +} + +type SloObjectiveArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjective)(nil)).Elem() +} + +func (o SloObjectiveArrayOutput) ToSloObjectiveArrayOutput() SloObjectiveArrayOutput { + return o +} + +func (o SloObjectiveArrayOutput) ToSloObjectiveArrayOutputWithContext(ctx context.Context) SloObjectiveArrayOutput { + return o +} + +func (o SloObjectiveArrayOutput) Index(i pulumi.IntInput) SloObjectiveOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjective { + return vs[0].([]SloObjective)[vs[1].(int)] + }).(SloObjectiveOutput) +} + +type SloObjectiveCountMetric struct { + // Configuration for bad time series metrics. + Bads []SloObjectiveCountMetricBad `pulumi:"bads"` + // Configuration for good time series metrics. + Goods []SloObjectiveCountMetricGood `pulumi:"goods"` + // Should the metrics be incrementing or not + Incremental bool `pulumi:"incremental"` + // Configuration for metric source + Totals []SloObjectiveCountMetricTotal `pulumi:"totals"` +} + +// SloObjectiveCountMetricInput is an input type that accepts SloObjectiveCountMetricArgs and SloObjectiveCountMetricOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricInput` via: +// +// SloObjectiveCountMetricArgs{...} +type SloObjectiveCountMetricInput interface { + pulumi.Input + + ToSloObjectiveCountMetricOutput() SloObjectiveCountMetricOutput + ToSloObjectiveCountMetricOutputWithContext(context.Context) SloObjectiveCountMetricOutput +} + +type SloObjectiveCountMetricArgs struct { + // Configuration for bad time series metrics. + Bads SloObjectiveCountMetricBadArrayInput `pulumi:"bads"` + // Configuration for good time series metrics. + Goods SloObjectiveCountMetricGoodArrayInput `pulumi:"goods"` + // Should the metrics be incrementing or not + Incremental pulumi.BoolInput `pulumi:"incremental"` + // Configuration for metric source + Totals SloObjectiveCountMetricTotalArrayInput `pulumi:"totals"` +} + +func (SloObjectiveCountMetricArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetric)(nil)).Elem() +} + +func (i SloObjectiveCountMetricArgs) ToSloObjectiveCountMetricOutput() SloObjectiveCountMetricOutput { + return i.ToSloObjectiveCountMetricOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricArgs) ToSloObjectiveCountMetricOutputWithContext(ctx context.Context) SloObjectiveCountMetricOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricOutput) +} + +// SloObjectiveCountMetricArrayInput is an input type that accepts SloObjectiveCountMetricArray and SloObjectiveCountMetricArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricArrayInput` via: +// +// SloObjectiveCountMetricArray{ SloObjectiveCountMetricArgs{...} } +type SloObjectiveCountMetricArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricArrayOutput() SloObjectiveCountMetricArrayOutput + ToSloObjectiveCountMetricArrayOutputWithContext(context.Context) SloObjectiveCountMetricArrayOutput +} + +type SloObjectiveCountMetricArray []SloObjectiveCountMetricInput + +func (SloObjectiveCountMetricArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetric)(nil)).Elem() +} + +func (i SloObjectiveCountMetricArray) ToSloObjectiveCountMetricArrayOutput() SloObjectiveCountMetricArrayOutput { + return i.ToSloObjectiveCountMetricArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricArray) ToSloObjectiveCountMetricArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricArrayOutput) +} + +type SloObjectiveCountMetricOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetric)(nil)).Elem() +} + +func (o SloObjectiveCountMetricOutput) ToSloObjectiveCountMetricOutput() SloObjectiveCountMetricOutput { + return o } -func (i DirectInstanaQueryDelayArgs) ToDirectInstanaQueryDelayOutputWithContext(ctx context.Context) DirectInstanaQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectInstanaQueryDelayOutput) +func (o SloObjectiveCountMetricOutput) ToSloObjectiveCountMetricOutputWithContext(ctx context.Context) SloObjectiveCountMetricOutput { + return o } -func (i DirectInstanaQueryDelayArgs) ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput { - return i.ToDirectInstanaQueryDelayPtrOutputWithContext(context.Background()) +// Configuration for bad time series metrics. +func (o SloObjectiveCountMetricOutput) Bads() SloObjectiveCountMetricBadArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetric) []SloObjectiveCountMetricBad { return v.Bads }).(SloObjectiveCountMetricBadArrayOutput) } -func (i DirectInstanaQueryDelayArgs) ToDirectInstanaQueryDelayPtrOutputWithContext(ctx context.Context) DirectInstanaQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectInstanaQueryDelayOutput).ToDirectInstanaQueryDelayPtrOutputWithContext(ctx) +// Configuration for good time series metrics. +func (o SloObjectiveCountMetricOutput) Goods() SloObjectiveCountMetricGoodArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetric) []SloObjectiveCountMetricGood { return v.Goods }).(SloObjectiveCountMetricGoodArrayOutput) } -// DirectInstanaQueryDelayPtrInput is an input type that accepts DirectInstanaQueryDelayArgs, DirectInstanaQueryDelayPtr and DirectInstanaQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectInstanaQueryDelayPtrInput` via: -// -// DirectInstanaQueryDelayArgs{...} -// -// or: -// -// nil -type DirectInstanaQueryDelayPtrInput interface { - pulumi.Input +// Should the metrics be incrementing or not +func (o SloObjectiveCountMetricOutput) Incremental() pulumi.BoolOutput { + return o.ApplyT(func(v SloObjectiveCountMetric) bool { return v.Incremental }).(pulumi.BoolOutput) +} - ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput - ToDirectInstanaQueryDelayPtrOutputWithContext(context.Context) DirectInstanaQueryDelayPtrOutput +// Configuration for metric source +func (o SloObjectiveCountMetricOutput) Totals() SloObjectiveCountMetricTotalArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetric) []SloObjectiveCountMetricTotal { return v.Totals }).(SloObjectiveCountMetricTotalArrayOutput) } -type directInstanaQueryDelayPtrType DirectInstanaQueryDelayArgs +type SloObjectiveCountMetricArrayOutput struct{ *pulumi.OutputState } -func DirectInstanaQueryDelayPtr(v *DirectInstanaQueryDelayArgs) DirectInstanaQueryDelayPtrInput { - return (*directInstanaQueryDelayPtrType)(v) +func (SloObjectiveCountMetricArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetric)(nil)).Elem() } -func (*directInstanaQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectInstanaQueryDelay)(nil)).Elem() +func (o SloObjectiveCountMetricArrayOutput) ToSloObjectiveCountMetricArrayOutput() SloObjectiveCountMetricArrayOutput { + return o } -func (i *directInstanaQueryDelayPtrType) ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput { - return i.ToDirectInstanaQueryDelayPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricArrayOutput) ToSloObjectiveCountMetricArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricArrayOutput { + return o } -func (i *directInstanaQueryDelayPtrType) ToDirectInstanaQueryDelayPtrOutputWithContext(ctx context.Context) DirectInstanaQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectInstanaQueryDelayPtrOutput) +func (o SloObjectiveCountMetricArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetric { + return vs[0].([]SloObjectiveCountMetric)[vs[1].(int)] + }).(SloObjectiveCountMetricOutput) } -type DirectInstanaQueryDelayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBad struct { + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + AmazonPrometheuses []SloObjectiveCountMetricBadAmazonPrometheus `pulumi:"amazonPrometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + Appdynamics []SloObjectiveCountMetricBadAppdynamic `pulumi:"appdynamics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + AzureMonitors []SloObjectiveCountMetricBadAzureMonitor `pulumi:"azureMonitors"` + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + Bigqueries []SloObjectiveCountMetricBadBigquery `pulumi:"bigqueries"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + Cloudwatches []SloObjectiveCountMetricBadCloudwatch `pulumi:"cloudwatches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + Datadogs []SloObjectiveCountMetricBadDatadog `pulumi:"datadogs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + Dynatraces []SloObjectiveCountMetricBadDynatrace `pulumi:"dynatraces"` + // [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + Elasticsearches []SloObjectiveCountMetricBadElasticsearch `pulumi:"elasticsearches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + Gcms []SloObjectiveCountMetricBadGcm `pulumi:"gcms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + GrafanaLokis []SloObjectiveCountMetricBadGrafanaLoki `pulumi:"grafanaLokis"` + // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + Graphites []SloObjectiveCountMetricBadGraphite `pulumi:"graphites"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + Honeycombs []SloObjectiveCountMetricBadHoneycomb `pulumi:"honeycombs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + Influxdbs []SloObjectiveCountMetricBadInfluxdb `pulumi:"influxdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + Instanas []SloObjectiveCountMetricBadInstana `pulumi:"instanas"` + // [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + Lightsteps []SloObjectiveCountMetricBadLightstep `pulumi:"lightsteps"` + // [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + Newrelics []SloObjectiveCountMetricBadNewrelic `pulumi:"newrelics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + Opentsdbs []SloObjectiveCountMetricBadOpentsdb `pulumi:"opentsdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + Pingdoms []SloObjectiveCountMetricBadPingdom `pulumi:"pingdoms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + Prometheuses []SloObjectiveCountMetricBadPrometheus `pulumi:"prometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + Redshifts []SloObjectiveCountMetricBadRedshift `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + SplunkObservabilities []SloObjectiveCountMetricBadSplunkObservability `pulumi:"splunkObservabilities"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + Splunks []SloObjectiveCountMetricBadSplunk `pulumi:"splunks"` + // [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + Sumologics []SloObjectiveCountMetricBadSumologic `pulumi:"sumologics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + Thousandeyes []SloObjectiveCountMetricBadThousandeye `pulumi:"thousandeyes"` +} + +// SloObjectiveCountMetricBadInput is an input type that accepts SloObjectiveCountMetricBadArgs and SloObjectiveCountMetricBadOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInput` via: +// +// SloObjectiveCountMetricBadArgs{...} +type SloObjectiveCountMetricBadInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadOutput() SloObjectiveCountMetricBadOutput + ToSloObjectiveCountMetricBadOutputWithContext(context.Context) SloObjectiveCountMetricBadOutput +} + +type SloObjectiveCountMetricBadArgs struct { + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + AmazonPrometheuses SloObjectiveCountMetricBadAmazonPrometheusArrayInput `pulumi:"amazonPrometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + Appdynamics SloObjectiveCountMetricBadAppdynamicArrayInput `pulumi:"appdynamics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + AzureMonitors SloObjectiveCountMetricBadAzureMonitorArrayInput `pulumi:"azureMonitors"` + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + Bigqueries SloObjectiveCountMetricBadBigqueryArrayInput `pulumi:"bigqueries"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + Cloudwatches SloObjectiveCountMetricBadCloudwatchArrayInput `pulumi:"cloudwatches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + Datadogs SloObjectiveCountMetricBadDatadogArrayInput `pulumi:"datadogs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + Dynatraces SloObjectiveCountMetricBadDynatraceArrayInput `pulumi:"dynatraces"` + // [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + Elasticsearches SloObjectiveCountMetricBadElasticsearchArrayInput `pulumi:"elasticsearches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + Gcms SloObjectiveCountMetricBadGcmArrayInput `pulumi:"gcms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + GrafanaLokis SloObjectiveCountMetricBadGrafanaLokiArrayInput `pulumi:"grafanaLokis"` + // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + Graphites SloObjectiveCountMetricBadGraphiteArrayInput `pulumi:"graphites"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + Honeycombs SloObjectiveCountMetricBadHoneycombArrayInput `pulumi:"honeycombs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + Influxdbs SloObjectiveCountMetricBadInfluxdbArrayInput `pulumi:"influxdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + Instanas SloObjectiveCountMetricBadInstanaArrayInput `pulumi:"instanas"` + // [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + Lightsteps SloObjectiveCountMetricBadLightstepArrayInput `pulumi:"lightsteps"` + // [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + Newrelics SloObjectiveCountMetricBadNewrelicArrayInput `pulumi:"newrelics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + Opentsdbs SloObjectiveCountMetricBadOpentsdbArrayInput `pulumi:"opentsdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + Pingdoms SloObjectiveCountMetricBadPingdomArrayInput `pulumi:"pingdoms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + Prometheuses SloObjectiveCountMetricBadPrometheusArrayInput `pulumi:"prometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + Redshifts SloObjectiveCountMetricBadRedshiftArrayInput `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + SplunkObservabilities SloObjectiveCountMetricBadSplunkObservabilityArrayInput `pulumi:"splunkObservabilities"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + Splunks SloObjectiveCountMetricBadSplunkArrayInput `pulumi:"splunks"` + // [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + Sumologics SloObjectiveCountMetricBadSumologicArrayInput `pulumi:"sumologics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + Thousandeyes SloObjectiveCountMetricBadThousandeyeArrayInput `pulumi:"thousandeyes"` +} + +func (SloObjectiveCountMetricBadArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBad)(nil)).Elem() +} + +func (i SloObjectiveCountMetricBadArgs) ToSloObjectiveCountMetricBadOutput() SloObjectiveCountMetricBadOutput { + return i.ToSloObjectiveCountMetricBadOutputWithContext(context.Background()) +} -func (DirectInstanaQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectInstanaQueryDelay)(nil)).Elem() +func (i SloObjectiveCountMetricBadArgs) ToSloObjectiveCountMetricBadOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadOutput) } -func (o DirectInstanaQueryDelayOutput) ToDirectInstanaQueryDelayOutput() DirectInstanaQueryDelayOutput { - return o -} +// SloObjectiveCountMetricBadArrayInput is an input type that accepts SloObjectiveCountMetricBadArray and SloObjectiveCountMetricBadArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadArrayInput` via: +// +// SloObjectiveCountMetricBadArray{ SloObjectiveCountMetricBadArgs{...} } +type SloObjectiveCountMetricBadArrayInput interface { + pulumi.Input -func (o DirectInstanaQueryDelayOutput) ToDirectInstanaQueryDelayOutputWithContext(ctx context.Context) DirectInstanaQueryDelayOutput { - return o + ToSloObjectiveCountMetricBadArrayOutput() SloObjectiveCountMetricBadArrayOutput + ToSloObjectiveCountMetricBadArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadArrayOutput } -func (o DirectInstanaQueryDelayOutput) ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput { - return o.ToDirectInstanaQueryDelayPtrOutputWithContext(context.Background()) -} +type SloObjectiveCountMetricBadArray []SloObjectiveCountMetricBadInput -func (o DirectInstanaQueryDelayOutput) ToDirectInstanaQueryDelayPtrOutputWithContext(ctx context.Context) DirectInstanaQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectInstanaQueryDelay) *DirectInstanaQueryDelay { - return &v - }).(DirectInstanaQueryDelayPtrOutput) +func (SloObjectiveCountMetricBadArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBad)(nil)).Elem() } -// Must be one of Minute or Second. -func (o DirectInstanaQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectInstanaQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +func (i SloObjectiveCountMetricBadArray) ToSloObjectiveCountMetricBadArrayOutput() SloObjectiveCountMetricBadArrayOutput { + return i.ToSloObjectiveCountMetricBadArrayOutputWithContext(context.Background()) } -// Must be an integer greater than or equal to 0. -func (o DirectInstanaQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectInstanaQueryDelay) int { return v.Value }).(pulumi.IntOutput) +func (i SloObjectiveCountMetricBadArray) ToSloObjectiveCountMetricBadArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadArrayOutput) } -type DirectInstanaQueryDelayPtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadOutput struct{ *pulumi.OutputState } -func (DirectInstanaQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectInstanaQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBad)(nil)).Elem() } -func (o DirectInstanaQueryDelayPtrOutput) ToDirectInstanaQueryDelayPtrOutput() DirectInstanaQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadOutput) ToSloObjectiveCountMetricBadOutput() SloObjectiveCountMetricBadOutput { return o } -func (o DirectInstanaQueryDelayPtrOutput) ToDirectInstanaQueryDelayPtrOutputWithContext(ctx context.Context) DirectInstanaQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadOutput) ToSloObjectiveCountMetricBadOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadOutput { return o } -func (o DirectInstanaQueryDelayPtrOutput) Elem() DirectInstanaQueryDelayOutput { - return o.ApplyT(func(v *DirectInstanaQueryDelay) DirectInstanaQueryDelay { - if v != nil { - return *v - } - var ret DirectInstanaQueryDelay - return ret - }).(DirectInstanaQueryDelayOutput) +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) +func (o SloObjectiveCountMetricBadOutput) AmazonPrometheuses() SloObjectiveCountMetricBadAmazonPrometheusArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadAmazonPrometheus { + return v.AmazonPrometheuses + }).(SloObjectiveCountMetricBadAmazonPrometheusArrayOutput) } -// Must be one of Minute or Second. -func (o DirectInstanaQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectInstanaQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) +// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) +func (o SloObjectiveCountMetricBadOutput) Appdynamics() SloObjectiveCountMetricBadAppdynamicArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadAppdynamic { return v.Appdynamics }).(SloObjectiveCountMetricBadAppdynamicArrayOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectInstanaQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectInstanaQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) +func (o SloObjectiveCountMetricBadOutput) AzureMonitors() SloObjectiveCountMetricBadAzureMonitorArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadAzureMonitor { return v.AzureMonitors }).(SloObjectiveCountMetricBadAzureMonitorArrayOutput) } -type DirectLightstepHistoricalDataRetrieval struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations []DirectLightstepHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations []DirectLightstepHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) +func (o SloObjectiveCountMetricBadOutput) Bigqueries() SloObjectiveCountMetricBadBigqueryArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadBigquery { return v.Bigqueries }).(SloObjectiveCountMetricBadBigqueryArrayOutput) } -// DirectLightstepHistoricalDataRetrievalInput is an input type that accepts DirectLightstepHistoricalDataRetrievalArgs and DirectLightstepHistoricalDataRetrievalOutput values. -// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalInput` via: -// -// DirectLightstepHistoricalDataRetrievalArgs{...} -type DirectLightstepHistoricalDataRetrievalInput interface { - pulumi.Input - - ToDirectLightstepHistoricalDataRetrievalOutput() DirectLightstepHistoricalDataRetrievalOutput - ToDirectLightstepHistoricalDataRetrievalOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalOutput +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) +func (o SloObjectiveCountMetricBadOutput) Cloudwatches() SloObjectiveCountMetricBadCloudwatchArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadCloudwatch { return v.Cloudwatches }).(SloObjectiveCountMetricBadCloudwatchArrayOutput) } -type DirectLightstepHistoricalDataRetrievalArgs struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations DirectLightstepHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations DirectLightstepHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) +func (o SloObjectiveCountMetricBadOutput) Datadogs() SloObjectiveCountMetricBadDatadogArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadDatadog { return v.Datadogs }).(SloObjectiveCountMetricBadDatadogArrayOutput) } -func (DirectLightstepHistoricalDataRetrievalArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectLightstepHistoricalDataRetrieval)(nil)).Elem() +// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) +func (o SloObjectiveCountMetricBadOutput) Dynatraces() SloObjectiveCountMetricBadDynatraceArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadDynatrace { return v.Dynatraces }).(SloObjectiveCountMetricBadDynatraceArrayOutput) } -func (i DirectLightstepHistoricalDataRetrievalArgs) ToDirectLightstepHistoricalDataRetrievalOutput() DirectLightstepHistoricalDataRetrievalOutput { - return i.ToDirectLightstepHistoricalDataRetrievalOutputWithContext(context.Background()) +// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) +func (o SloObjectiveCountMetricBadOutput) Elasticsearches() SloObjectiveCountMetricBadElasticsearchArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadElasticsearch { return v.Elasticsearches }).(SloObjectiveCountMetricBadElasticsearchArrayOutput) } -func (i DirectLightstepHistoricalDataRetrievalArgs) ToDirectLightstepHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalOutput) +// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) +func (o SloObjectiveCountMetricBadOutput) Gcms() SloObjectiveCountMetricBadGcmArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadGcm { return v.Gcms }).(SloObjectiveCountMetricBadGcmArrayOutput) } -func (i DirectLightstepHistoricalDataRetrievalArgs) ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput { - return i.ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) +func (o SloObjectiveCountMetricBadOutput) GrafanaLokis() SloObjectiveCountMetricBadGrafanaLokiArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadGrafanaLoki { return v.GrafanaLokis }).(SloObjectiveCountMetricBadGrafanaLokiArrayOutput) } -func (i DirectLightstepHistoricalDataRetrievalArgs) ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalOutput).ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx) +// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) +func (o SloObjectiveCountMetricBadOutput) Graphites() SloObjectiveCountMetricBadGraphiteArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadGraphite { return v.Graphites }).(SloObjectiveCountMetricBadGraphiteArrayOutput) } -// DirectLightstepHistoricalDataRetrievalPtrInput is an input type that accepts DirectLightstepHistoricalDataRetrievalArgs, DirectLightstepHistoricalDataRetrievalPtr and DirectLightstepHistoricalDataRetrievalPtrOutput values. -// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalPtrInput` via: -// -// DirectLightstepHistoricalDataRetrievalArgs{...} -// -// or: -// -// nil -type DirectLightstepHistoricalDataRetrievalPtrInput interface { - pulumi.Input - - ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput - ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput +// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) +func (o SloObjectiveCountMetricBadOutput) Honeycombs() SloObjectiveCountMetricBadHoneycombArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadHoneycomb { return v.Honeycombs }).(SloObjectiveCountMetricBadHoneycombArrayOutput) } -type directLightstepHistoricalDataRetrievalPtrType DirectLightstepHistoricalDataRetrievalArgs - -func DirectLightstepHistoricalDataRetrievalPtr(v *DirectLightstepHistoricalDataRetrievalArgs) DirectLightstepHistoricalDataRetrievalPtrInput { - return (*directLightstepHistoricalDataRetrievalPtrType)(v) +// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) +func (o SloObjectiveCountMetricBadOutput) Influxdbs() SloObjectiveCountMetricBadInfluxdbArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadInfluxdb { return v.Influxdbs }).(SloObjectiveCountMetricBadInfluxdbArrayOutput) } -func (*directLightstepHistoricalDataRetrievalPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectLightstepHistoricalDataRetrieval)(nil)).Elem() +// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) +func (o SloObjectiveCountMetricBadOutput) Instanas() SloObjectiveCountMetricBadInstanaArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadInstana { return v.Instanas }).(SloObjectiveCountMetricBadInstanaArrayOutput) } -func (i *directLightstepHistoricalDataRetrievalPtrType) ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput { - return i.ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) +func (o SloObjectiveCountMetricBadOutput) Lightsteps() SloObjectiveCountMetricBadLightstepArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadLightstep { return v.Lightsteps }).(SloObjectiveCountMetricBadLightstepArrayOutput) } -func (i *directLightstepHistoricalDataRetrievalPtrType) ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalPtrOutput) +// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) +func (o SloObjectiveCountMetricBadOutput) Newrelics() SloObjectiveCountMetricBadNewrelicArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadNewrelic { return v.Newrelics }).(SloObjectiveCountMetricBadNewrelicArrayOutput) } -type DirectLightstepHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } +// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) +func (o SloObjectiveCountMetricBadOutput) Opentsdbs() SloObjectiveCountMetricBadOpentsdbArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadOpentsdb { return v.Opentsdbs }).(SloObjectiveCountMetricBadOpentsdbArrayOutput) +} -func (DirectLightstepHistoricalDataRetrievalOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectLightstepHistoricalDataRetrieval)(nil)).Elem() +// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) +func (o SloObjectiveCountMetricBadOutput) Pingdoms() SloObjectiveCountMetricBadPingdomArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadPingdom { return v.Pingdoms }).(SloObjectiveCountMetricBadPingdomArrayOutput) } -func (o DirectLightstepHistoricalDataRetrievalOutput) ToDirectLightstepHistoricalDataRetrievalOutput() DirectLightstepHistoricalDataRetrievalOutput { - return o +// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) +func (o SloObjectiveCountMetricBadOutput) Prometheuses() SloObjectiveCountMetricBadPrometheusArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadPrometheus { return v.Prometheuses }).(SloObjectiveCountMetricBadPrometheusArrayOutput) } -func (o DirectLightstepHistoricalDataRetrievalOutput) ToDirectLightstepHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalOutput { - return o +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) +func (o SloObjectiveCountMetricBadOutput) Redshifts() SloObjectiveCountMetricBadRedshiftArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadRedshift { return v.Redshifts }).(SloObjectiveCountMetricBadRedshiftArrayOutput) } -func (o DirectLightstepHistoricalDataRetrievalOutput) ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput { - return o.ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) +func (o SloObjectiveCountMetricBadOutput) SplunkObservabilities() SloObjectiveCountMetricBadSplunkObservabilityArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadSplunkObservability { + return v.SplunkObservabilities + }).(SloObjectiveCountMetricBadSplunkObservabilityArrayOutput) } -func (o DirectLightstepHistoricalDataRetrievalOutput) ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectLightstepHistoricalDataRetrieval) *DirectLightstepHistoricalDataRetrieval { - return &v - }).(DirectLightstepHistoricalDataRetrievalPtrOutput) +// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) +func (o SloObjectiveCountMetricBadOutput) Splunks() SloObjectiveCountMetricBadSplunkArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadSplunk { return v.Splunks }).(SloObjectiveCountMetricBadSplunkArrayOutput) } -// Used by default for any SLOs connected to this data source. -func (o DirectLightstepHistoricalDataRetrievalOutput) DefaultDurations() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v DirectLightstepHistoricalDataRetrieval) []DirectLightstepHistoricalDataRetrievalDefaultDuration { - return v.DefaultDurations - }).(DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) +// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) +func (o SloObjectiveCountMetricBadOutput) Sumologics() SloObjectiveCountMetricBadSumologicArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadSumologic { return v.Sumologics }).(SloObjectiveCountMetricBadSumologicArrayOutput) } -// Defines the maximum period for which data can be retrieved. -func (o DirectLightstepHistoricalDataRetrievalOutput) MaxDurations() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v DirectLightstepHistoricalDataRetrieval) []DirectLightstepHistoricalDataRetrievalMaxDuration { - return v.MaxDurations - }).(DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) +// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) +func (o SloObjectiveCountMetricBadOutput) Thousandeyes() SloObjectiveCountMetricBadThousandeyeArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBad) []SloObjectiveCountMetricBadThousandeye { return v.Thousandeyes }).(SloObjectiveCountMetricBadThousandeyeArrayOutput) } -type DirectLightstepHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadArrayOutput struct{ *pulumi.OutputState } -func (DirectLightstepHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectLightstepHistoricalDataRetrieval)(nil)).Elem() +func (SloObjectiveCountMetricBadArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBad)(nil)).Elem() } -func (o DirectLightstepHistoricalDataRetrievalPtrOutput) ToDirectLightstepHistoricalDataRetrievalPtrOutput() DirectLightstepHistoricalDataRetrievalPtrOutput { +func (o SloObjectiveCountMetricBadArrayOutput) ToSloObjectiveCountMetricBadArrayOutput() SloObjectiveCountMetricBadArrayOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalPtrOutput) ToDirectLightstepHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalPtrOutput { +func (o SloObjectiveCountMetricBadArrayOutput) ToSloObjectiveCountMetricBadArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadArrayOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalPtrOutput) Elem() DirectLightstepHistoricalDataRetrievalOutput { - return o.ApplyT(func(v *DirectLightstepHistoricalDataRetrieval) DirectLightstepHistoricalDataRetrieval { - if v != nil { - return *v - } - var ret DirectLightstepHistoricalDataRetrieval - return ret - }).(DirectLightstepHistoricalDataRetrievalOutput) -} - -// Used by default for any SLOs connected to this data source. -func (o DirectLightstepHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v *DirectLightstepHistoricalDataRetrieval) []DirectLightstepHistoricalDataRetrievalDefaultDuration { - if v == nil { - return nil - } - return v.DefaultDurations - }).(DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) -} - -// Defines the maximum period for which data can be retrieved. -func (o DirectLightstepHistoricalDataRetrievalPtrOutput) MaxDurations() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v *DirectLightstepHistoricalDataRetrieval) []DirectLightstepHistoricalDataRetrievalMaxDuration { - if v == nil { - return nil - } - return v.MaxDurations - }).(DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) +func (o SloObjectiveCountMetricBadArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBad { + return vs[0].([]SloObjectiveCountMetricBad)[vs[1].(int)] + }).(SloObjectiveCountMetricBadOutput) } -type DirectLightstepHistoricalDataRetrievalDefaultDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadAmazonPrometheus struct { + // Query for the metrics + Promql string `pulumi:"promql"` } -// DirectLightstepHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectLightstepHistoricalDataRetrievalDefaultDurationArgs and DirectLightstepHistoricalDataRetrievalDefaultDurationOutput values. -// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalDefaultDurationInput` via: +// SloObjectiveCountMetricBadAmazonPrometheusInput is an input type that accepts SloObjectiveCountMetricBadAmazonPrometheusArgs and SloObjectiveCountMetricBadAmazonPrometheusOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAmazonPrometheusInput` via: // -// DirectLightstepHistoricalDataRetrievalDefaultDurationArgs{...} -type DirectLightstepHistoricalDataRetrievalDefaultDurationInput interface { +// SloObjectiveCountMetricBadAmazonPrometheusArgs{...} +type SloObjectiveCountMetricBadAmazonPrometheusInput interface { pulumi.Input - ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationOutput - ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationOutput + ToSloObjectiveCountMetricBadAmazonPrometheusOutput() SloObjectiveCountMetricBadAmazonPrometheusOutput + ToSloObjectiveCountMetricBadAmazonPrometheusOutputWithContext(context.Context) SloObjectiveCountMetricBadAmazonPrometheusOutput } -type DirectLightstepHistoricalDataRetrievalDefaultDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadAmazonPrometheusArgs struct { + // Query for the metrics + Promql pulumi.StringInput `pulumi:"promql"` } -func (DirectLightstepHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectLightstepHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAmazonPrometheusArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAmazonPrometheus)(nil)).Elem() } -func (i DirectLightstepHistoricalDataRetrievalDefaultDurationArgs) ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { - return i.ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAmazonPrometheusArgs) ToSloObjectiveCountMetricBadAmazonPrometheusOutput() SloObjectiveCountMetricBadAmazonPrometheusOutput { + return i.ToSloObjectiveCountMetricBadAmazonPrometheusOutputWithContext(context.Background()) } -func (i DirectLightstepHistoricalDataRetrievalDefaultDurationArgs) ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) +func (i SloObjectiveCountMetricBadAmazonPrometheusArgs) ToSloObjectiveCountMetricBadAmazonPrometheusOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAmazonPrometheusOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAmazonPrometheusOutput) } -// DirectLightstepHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectLightstepHistoricalDataRetrievalDefaultDurationArray and DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput values. -// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalDefaultDurationArrayInput` via: +// SloObjectiveCountMetricBadAmazonPrometheusArrayInput is an input type that accepts SloObjectiveCountMetricBadAmazonPrometheusArray and SloObjectiveCountMetricBadAmazonPrometheusArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAmazonPrometheusArrayInput` via: // -// DirectLightstepHistoricalDataRetrievalDefaultDurationArray{ DirectLightstepHistoricalDataRetrievalDefaultDurationArgs{...} } -type DirectLightstepHistoricalDataRetrievalDefaultDurationArrayInput interface { +// SloObjectiveCountMetricBadAmazonPrometheusArray{ SloObjectiveCountMetricBadAmazonPrometheusArgs{...} } +type SloObjectiveCountMetricBadAmazonPrometheusArrayInput interface { pulumi.Input - ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput - ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput + ToSloObjectiveCountMetricBadAmazonPrometheusArrayOutput() SloObjectiveCountMetricBadAmazonPrometheusArrayOutput + ToSloObjectiveCountMetricBadAmazonPrometheusArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadAmazonPrometheusArrayOutput } -type DirectLightstepHistoricalDataRetrievalDefaultDurationArray []DirectLightstepHistoricalDataRetrievalDefaultDurationInput +type SloObjectiveCountMetricBadAmazonPrometheusArray []SloObjectiveCountMetricBadAmazonPrometheusInput -func (DirectLightstepHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectLightstepHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAmazonPrometheusArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAmazonPrometheus)(nil)).Elem() } -func (i DirectLightstepHistoricalDataRetrievalDefaultDurationArray) ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { - return i.ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAmazonPrometheusArray) ToSloObjectiveCountMetricBadAmazonPrometheusArrayOutput() SloObjectiveCountMetricBadAmazonPrometheusArrayOutput { + return i.ToSloObjectiveCountMetricBadAmazonPrometheusArrayOutputWithContext(context.Background()) } -func (i DirectLightstepHistoricalDataRetrievalDefaultDurationArray) ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) +func (i SloObjectiveCountMetricBadAmazonPrometheusArray) ToSloObjectiveCountMetricBadAmazonPrometheusArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAmazonPrometheusArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAmazonPrometheusArrayOutput) } -type DirectLightstepHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadAmazonPrometheusOutput struct{ *pulumi.OutputState } -func (DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectLightstepHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAmazonPrometheusOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAmazonPrometheus)(nil)).Elem() } -func (o DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { +func (o SloObjectiveCountMetricBadAmazonPrometheusOutput) ToSloObjectiveCountMetricBadAmazonPrometheusOutput() SloObjectiveCountMetricBadAmazonPrometheusOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) ToDirectLightstepHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { +func (o SloObjectiveCountMetricBadAmazonPrometheusOutput) ToSloObjectiveCountMetricBadAmazonPrometheusOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAmazonPrometheusOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectLightstepHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) -} - -func (o DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectLightstepHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +// Query for the metrics +func (o SloObjectiveCountMetricBadAmazonPrometheusOutput) Promql() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAmazonPrometheus) string { return v.Promql }).(pulumi.StringOutput) } -type DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadAmazonPrometheusArrayOutput struct{ *pulumi.OutputState } -func (DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectLightstepHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAmazonPrometheusArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAmazonPrometheus)(nil)).Elem() } -func (o DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput() DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o SloObjectiveCountMetricBadAmazonPrometheusArrayOutput) ToSloObjectiveCountMetricBadAmazonPrometheusArrayOutput() SloObjectiveCountMetricBadAmazonPrometheusArrayOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o SloObjectiveCountMetricBadAmazonPrometheusArrayOutput) ToSloObjectiveCountMetricBadAmazonPrometheusArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAmazonPrometheusArrayOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectLightstepHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectLightstepHistoricalDataRetrievalDefaultDuration { - return vs[0].([]DirectLightstepHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] - }).(DirectLightstepHistoricalDataRetrievalDefaultDurationOutput) +func (o SloObjectiveCountMetricBadAmazonPrometheusArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadAmazonPrometheusOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadAmazonPrometheus { + return vs[0].([]SloObjectiveCountMetricBadAmazonPrometheus)[vs[1].(int)] + }).(SloObjectiveCountMetricBadAmazonPrometheusOutput) } -type DirectLightstepHistoricalDataRetrievalMaxDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadAppdynamic struct { + // Name of the added application + ApplicationName string `pulumi:"applicationName"` + // Path to the metrics + MetricPath string `pulumi:"metricPath"` } -// DirectLightstepHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectLightstepHistoricalDataRetrievalMaxDurationArgs and DirectLightstepHistoricalDataRetrievalMaxDurationOutput values. -// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalMaxDurationInput` via: +// SloObjectiveCountMetricBadAppdynamicInput is an input type that accepts SloObjectiveCountMetricBadAppdynamicArgs and SloObjectiveCountMetricBadAppdynamicOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAppdynamicInput` via: // -// DirectLightstepHistoricalDataRetrievalMaxDurationArgs{...} -type DirectLightstepHistoricalDataRetrievalMaxDurationInput interface { +// SloObjectiveCountMetricBadAppdynamicArgs{...} +type SloObjectiveCountMetricBadAppdynamicInput interface { pulumi.Input - ToDirectLightstepHistoricalDataRetrievalMaxDurationOutput() DirectLightstepHistoricalDataRetrievalMaxDurationOutput - ToDirectLightstepHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationOutput + ToSloObjectiveCountMetricBadAppdynamicOutput() SloObjectiveCountMetricBadAppdynamicOutput + ToSloObjectiveCountMetricBadAppdynamicOutputWithContext(context.Context) SloObjectiveCountMetricBadAppdynamicOutput } -type DirectLightstepHistoricalDataRetrievalMaxDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadAppdynamicArgs struct { + // Name of the added application + ApplicationName pulumi.StringInput `pulumi:"applicationName"` + // Path to the metrics + MetricPath pulumi.StringInput `pulumi:"metricPath"` } -func (DirectLightstepHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectLightstepHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAppdynamicArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAppdynamic)(nil)).Elem() } -func (i DirectLightstepHistoricalDataRetrievalMaxDurationArgs) ToDirectLightstepHistoricalDataRetrievalMaxDurationOutput() DirectLightstepHistoricalDataRetrievalMaxDurationOutput { - return i.ToDirectLightstepHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAppdynamicArgs) ToSloObjectiveCountMetricBadAppdynamicOutput() SloObjectiveCountMetricBadAppdynamicOutput { + return i.ToSloObjectiveCountMetricBadAppdynamicOutputWithContext(context.Background()) } -func (i DirectLightstepHistoricalDataRetrievalMaxDurationArgs) ToDirectLightstepHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalMaxDurationOutput) +func (i SloObjectiveCountMetricBadAppdynamicArgs) ToSloObjectiveCountMetricBadAppdynamicOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAppdynamicOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAppdynamicOutput) } -// DirectLightstepHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectLightstepHistoricalDataRetrievalMaxDurationArray and DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput values. -// You can construct a concrete instance of `DirectLightstepHistoricalDataRetrievalMaxDurationArrayInput` via: +// SloObjectiveCountMetricBadAppdynamicArrayInput is an input type that accepts SloObjectiveCountMetricBadAppdynamicArray and SloObjectiveCountMetricBadAppdynamicArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAppdynamicArrayInput` via: // -// DirectLightstepHistoricalDataRetrievalMaxDurationArray{ DirectLightstepHistoricalDataRetrievalMaxDurationArgs{...} } -type DirectLightstepHistoricalDataRetrievalMaxDurationArrayInput interface { +// SloObjectiveCountMetricBadAppdynamicArray{ SloObjectiveCountMetricBadAppdynamicArgs{...} } +type SloObjectiveCountMetricBadAppdynamicArrayInput interface { pulumi.Input - ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput - ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput + ToSloObjectiveCountMetricBadAppdynamicArrayOutput() SloObjectiveCountMetricBadAppdynamicArrayOutput + ToSloObjectiveCountMetricBadAppdynamicArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadAppdynamicArrayOutput } -type DirectLightstepHistoricalDataRetrievalMaxDurationArray []DirectLightstepHistoricalDataRetrievalMaxDurationInput +type SloObjectiveCountMetricBadAppdynamicArray []SloObjectiveCountMetricBadAppdynamicInput -func (DirectLightstepHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectLightstepHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAppdynamicArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAppdynamic)(nil)).Elem() } -func (i DirectLightstepHistoricalDataRetrievalMaxDurationArray) ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { - return i.ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAppdynamicArray) ToSloObjectiveCountMetricBadAppdynamicArrayOutput() SloObjectiveCountMetricBadAppdynamicArrayOutput { + return i.ToSloObjectiveCountMetricBadAppdynamicArrayOutputWithContext(context.Background()) } -func (i DirectLightstepHistoricalDataRetrievalMaxDurationArray) ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) +func (i SloObjectiveCountMetricBadAppdynamicArray) ToSloObjectiveCountMetricBadAppdynamicArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAppdynamicArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAppdynamicArrayOutput) } -type DirectLightstepHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadAppdynamicOutput struct{ *pulumi.OutputState } -func (DirectLightstepHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectLightstepHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAppdynamicOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAppdynamic)(nil)).Elem() } -func (o DirectLightstepHistoricalDataRetrievalMaxDurationOutput) ToDirectLightstepHistoricalDataRetrievalMaxDurationOutput() DirectLightstepHistoricalDataRetrievalMaxDurationOutput { +func (o SloObjectiveCountMetricBadAppdynamicOutput) ToSloObjectiveCountMetricBadAppdynamicOutput() SloObjectiveCountMetricBadAppdynamicOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalMaxDurationOutput) ToDirectLightstepHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationOutput { +func (o SloObjectiveCountMetricBadAppdynamicOutput) ToSloObjectiveCountMetricBadAppdynamicOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAppdynamicOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectLightstepHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +// Name of the added application +func (o SloObjectiveCountMetricBadAppdynamicOutput) ApplicationName() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAppdynamic) string { return v.ApplicationName }).(pulumi.StringOutput) } -func (o DirectLightstepHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectLightstepHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +// Path to the metrics +func (o SloObjectiveCountMetricBadAppdynamicOutput) MetricPath() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAppdynamic) string { return v.MetricPath }).(pulumi.StringOutput) } -type DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadAppdynamicArrayOutput struct{ *pulumi.OutputState } -func (DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectLightstepHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAppdynamicArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAppdynamic)(nil)).Elem() } -func (o DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput() DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { +func (o SloObjectiveCountMetricBadAppdynamicArrayOutput) ToSloObjectiveCountMetricBadAppdynamicArrayOutput() SloObjectiveCountMetricBadAppdynamicArrayOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectLightstepHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput { +func (o SloObjectiveCountMetricBadAppdynamicArrayOutput) ToSloObjectiveCountMetricBadAppdynamicArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAppdynamicArrayOutput { return o } -func (o DirectLightstepHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectLightstepHistoricalDataRetrievalMaxDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectLightstepHistoricalDataRetrievalMaxDuration { - return vs[0].([]DirectLightstepHistoricalDataRetrievalMaxDuration)[vs[1].(int)] - }).(DirectLightstepHistoricalDataRetrievalMaxDurationOutput) +func (o SloObjectiveCountMetricBadAppdynamicArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadAppdynamicOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadAppdynamic { + return vs[0].([]SloObjectiveCountMetricBadAppdynamic)[vs[1].(int)] + }).(SloObjectiveCountMetricBadAppdynamicOutput) } -type DirectLightstepQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadAzureMonitor struct { + // Aggregation type [Required for metrics] + Aggregation *string `pulumi:"aggregation"` + // Specifies source: 'metrics' or 'logs' + DataType string `pulumi:"dataType"` + // Dimensions of the metric [Optional for metrics] + Dimensions []SloObjectiveCountMetricBadAzureMonitorDimension `pulumi:"dimensions"` + // Logs query in Kusto Query Language [Required for logs] + KqlQuery *string `pulumi:"kqlQuery"` + // Name of the metric [Required for metrics] + MetricName *string `pulumi:"metricName"` + // Namespace of the metric [Optional for metrics] + MetricNamespace *string `pulumi:"metricNamespace"` + // Identifier of the Azure Cloud resource [Required for metrics] + ResourceId *string `pulumi:"resourceId"` + // Log analytics workspace [Required for logs] + Workspaces []SloObjectiveCountMetricBadAzureMonitorWorkspace `pulumi:"workspaces"` } -// DirectLightstepQueryDelayInput is an input type that accepts DirectLightstepQueryDelayArgs and DirectLightstepQueryDelayOutput values. -// You can construct a concrete instance of `DirectLightstepQueryDelayInput` via: +// SloObjectiveCountMetricBadAzureMonitorInput is an input type that accepts SloObjectiveCountMetricBadAzureMonitorArgs and SloObjectiveCountMetricBadAzureMonitorOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAzureMonitorInput` via: // -// DirectLightstepQueryDelayArgs{...} -type DirectLightstepQueryDelayInput interface { +// SloObjectiveCountMetricBadAzureMonitorArgs{...} +type SloObjectiveCountMetricBadAzureMonitorInput interface { pulumi.Input - ToDirectLightstepQueryDelayOutput() DirectLightstepQueryDelayOutput - ToDirectLightstepQueryDelayOutputWithContext(context.Context) DirectLightstepQueryDelayOutput -} - -type DirectLightstepQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` -} - -func (DirectLightstepQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectLightstepQueryDelay)(nil)).Elem() + ToSloObjectiveCountMetricBadAzureMonitorOutput() SloObjectiveCountMetricBadAzureMonitorOutput + ToSloObjectiveCountMetricBadAzureMonitorOutputWithContext(context.Context) SloObjectiveCountMetricBadAzureMonitorOutput } -func (i DirectLightstepQueryDelayArgs) ToDirectLightstepQueryDelayOutput() DirectLightstepQueryDelayOutput { - return i.ToDirectLightstepQueryDelayOutputWithContext(context.Background()) +type SloObjectiveCountMetricBadAzureMonitorArgs struct { + // Aggregation type [Required for metrics] + Aggregation pulumi.StringPtrInput `pulumi:"aggregation"` + // Specifies source: 'metrics' or 'logs' + DataType pulumi.StringInput `pulumi:"dataType"` + // Dimensions of the metric [Optional for metrics] + Dimensions SloObjectiveCountMetricBadAzureMonitorDimensionArrayInput `pulumi:"dimensions"` + // Logs query in Kusto Query Language [Required for logs] + KqlQuery pulumi.StringPtrInput `pulumi:"kqlQuery"` + // Name of the metric [Required for metrics] + MetricName pulumi.StringPtrInput `pulumi:"metricName"` + // Namespace of the metric [Optional for metrics] + MetricNamespace pulumi.StringPtrInput `pulumi:"metricNamespace"` + // Identifier of the Azure Cloud resource [Required for metrics] + ResourceId pulumi.StringPtrInput `pulumi:"resourceId"` + // Log analytics workspace [Required for logs] + Workspaces SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayInput `pulumi:"workspaces"` } -func (i DirectLightstepQueryDelayArgs) ToDirectLightstepQueryDelayOutputWithContext(ctx context.Context) DirectLightstepQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepQueryDelayOutput) +func (SloObjectiveCountMetricBadAzureMonitorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitor)(nil)).Elem() } -func (i DirectLightstepQueryDelayArgs) ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput { - return i.ToDirectLightstepQueryDelayPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAzureMonitorArgs) ToSloObjectiveCountMetricBadAzureMonitorOutput() SloObjectiveCountMetricBadAzureMonitorOutput { + return i.ToSloObjectiveCountMetricBadAzureMonitorOutputWithContext(context.Background()) } -func (i DirectLightstepQueryDelayArgs) ToDirectLightstepQueryDelayPtrOutputWithContext(ctx context.Context) DirectLightstepQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepQueryDelayOutput).ToDirectLightstepQueryDelayPtrOutputWithContext(ctx) +func (i SloObjectiveCountMetricBadAzureMonitorArgs) ToSloObjectiveCountMetricBadAzureMonitorOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAzureMonitorOutput) } -// DirectLightstepQueryDelayPtrInput is an input type that accepts DirectLightstepQueryDelayArgs, DirectLightstepQueryDelayPtr and DirectLightstepQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectLightstepQueryDelayPtrInput` via: -// -// DirectLightstepQueryDelayArgs{...} +// SloObjectiveCountMetricBadAzureMonitorArrayInput is an input type that accepts SloObjectiveCountMetricBadAzureMonitorArray and SloObjectiveCountMetricBadAzureMonitorArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAzureMonitorArrayInput` via: // -// or: -// -// nil -type DirectLightstepQueryDelayPtrInput interface { +// SloObjectiveCountMetricBadAzureMonitorArray{ SloObjectiveCountMetricBadAzureMonitorArgs{...} } +type SloObjectiveCountMetricBadAzureMonitorArrayInput interface { pulumi.Input - ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput - ToDirectLightstepQueryDelayPtrOutputWithContext(context.Context) DirectLightstepQueryDelayPtrOutput + ToSloObjectiveCountMetricBadAzureMonitorArrayOutput() SloObjectiveCountMetricBadAzureMonitorArrayOutput + ToSloObjectiveCountMetricBadAzureMonitorArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadAzureMonitorArrayOutput } -type directLightstepQueryDelayPtrType DirectLightstepQueryDelayArgs - -func DirectLightstepQueryDelayPtr(v *DirectLightstepQueryDelayArgs) DirectLightstepQueryDelayPtrInput { - return (*directLightstepQueryDelayPtrType)(v) -} +type SloObjectiveCountMetricBadAzureMonitorArray []SloObjectiveCountMetricBadAzureMonitorInput -func (*directLightstepQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectLightstepQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadAzureMonitorArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAzureMonitor)(nil)).Elem() } -func (i *directLightstepQueryDelayPtrType) ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput { - return i.ToDirectLightstepQueryDelayPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAzureMonitorArray) ToSloObjectiveCountMetricBadAzureMonitorArrayOutput() SloObjectiveCountMetricBadAzureMonitorArrayOutput { + return i.ToSloObjectiveCountMetricBadAzureMonitorArrayOutputWithContext(context.Background()) } -func (i *directLightstepQueryDelayPtrType) ToDirectLightstepQueryDelayPtrOutputWithContext(ctx context.Context) DirectLightstepQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectLightstepQueryDelayPtrOutput) +func (i SloObjectiveCountMetricBadAzureMonitorArray) ToSloObjectiveCountMetricBadAzureMonitorArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAzureMonitorArrayOutput) } -type DirectLightstepQueryDelayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadAzureMonitorOutput struct{ *pulumi.OutputState } -func (DirectLightstepQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectLightstepQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadAzureMonitorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitor)(nil)).Elem() } -func (o DirectLightstepQueryDelayOutput) ToDirectLightstepQueryDelayOutput() DirectLightstepQueryDelayOutput { +func (o SloObjectiveCountMetricBadAzureMonitorOutput) ToSloObjectiveCountMetricBadAzureMonitorOutput() SloObjectiveCountMetricBadAzureMonitorOutput { return o } -func (o DirectLightstepQueryDelayOutput) ToDirectLightstepQueryDelayOutputWithContext(ctx context.Context) DirectLightstepQueryDelayOutput { +func (o SloObjectiveCountMetricBadAzureMonitorOutput) ToSloObjectiveCountMetricBadAzureMonitorOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorOutput { return o } -func (o DirectLightstepQueryDelayOutput) ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput { - return o.ToDirectLightstepQueryDelayPtrOutputWithContext(context.Background()) +// Aggregation type [Required for metrics] +func (o SloObjectiveCountMetricBadAzureMonitorOutput) Aggregation() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitor) *string { return v.Aggregation }).(pulumi.StringPtrOutput) } -func (o DirectLightstepQueryDelayOutput) ToDirectLightstepQueryDelayPtrOutputWithContext(ctx context.Context) DirectLightstepQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectLightstepQueryDelay) *DirectLightstepQueryDelay { - return &v - }).(DirectLightstepQueryDelayPtrOutput) +// Specifies source: 'metrics' or 'logs' +func (o SloObjectiveCountMetricBadAzureMonitorOutput) DataType() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitor) string { return v.DataType }).(pulumi.StringOutput) } -// Must be one of Minute or Second. -func (o DirectLightstepQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectLightstepQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +// Dimensions of the metric [Optional for metrics] +func (o SloObjectiveCountMetricBadAzureMonitorOutput) Dimensions() SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitor) []SloObjectiveCountMetricBadAzureMonitorDimension { + return v.Dimensions + }).(SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectLightstepQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectLightstepQueryDelay) int { return v.Value }).(pulumi.IntOutput) +// Logs query in Kusto Query Language [Required for logs] +func (o SloObjectiveCountMetricBadAzureMonitorOutput) KqlQuery() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitor) *string { return v.KqlQuery }).(pulumi.StringPtrOutput) } -type DirectLightstepQueryDelayPtrOutput struct{ *pulumi.OutputState } - -func (DirectLightstepQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectLightstepQueryDelay)(nil)).Elem() +// Name of the metric [Required for metrics] +func (o SloObjectiveCountMetricBadAzureMonitorOutput) MetricName() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitor) *string { return v.MetricName }).(pulumi.StringPtrOutput) } -func (o DirectLightstepQueryDelayPtrOutput) ToDirectLightstepQueryDelayPtrOutput() DirectLightstepQueryDelayPtrOutput { - return o +// Namespace of the metric [Optional for metrics] +func (o SloObjectiveCountMetricBadAzureMonitorOutput) MetricNamespace() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitor) *string { return v.MetricNamespace }).(pulumi.StringPtrOutput) } -func (o DirectLightstepQueryDelayPtrOutput) ToDirectLightstepQueryDelayPtrOutputWithContext(ctx context.Context) DirectLightstepQueryDelayPtrOutput { - return o +// Identifier of the Azure Cloud resource [Required for metrics] +func (o SloObjectiveCountMetricBadAzureMonitorOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitor) *string { return v.ResourceId }).(pulumi.StringPtrOutput) } -func (o DirectLightstepQueryDelayPtrOutput) Elem() DirectLightstepQueryDelayOutput { - return o.ApplyT(func(v *DirectLightstepQueryDelay) DirectLightstepQueryDelay { - if v != nil { - return *v - } - var ret DirectLightstepQueryDelay - return ret - }).(DirectLightstepQueryDelayOutput) +// Log analytics workspace [Required for logs] +func (o SloObjectiveCountMetricBadAzureMonitorOutput) Workspaces() SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitor) []SloObjectiveCountMetricBadAzureMonitorWorkspace { + return v.Workspaces + }).(SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput) } -// Must be one of Minute or Second. -func (o DirectLightstepQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectLightstepQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) -} +type SloObjectiveCountMetricBadAzureMonitorArrayOutput struct{ *pulumi.OutputState } -// Must be an integer greater than or equal to 0. -func (o DirectLightstepQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectLightstepQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +func (SloObjectiveCountMetricBadAzureMonitorArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAzureMonitor)(nil)).Elem() } -type DirectNewrelicHistoricalDataRetrieval struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations []DirectNewrelicHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations []DirectNewrelicHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +func (o SloObjectiveCountMetricBadAzureMonitorArrayOutput) ToSloObjectiveCountMetricBadAzureMonitorArrayOutput() SloObjectiveCountMetricBadAzureMonitorArrayOutput { + return o } -// DirectNewrelicHistoricalDataRetrievalInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalArgs and DirectNewrelicHistoricalDataRetrievalOutput values. -// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalInput` via: -// -// DirectNewrelicHistoricalDataRetrievalArgs{...} -type DirectNewrelicHistoricalDataRetrievalInput interface { - pulumi.Input +func (o SloObjectiveCountMetricBadAzureMonitorArrayOutput) ToSloObjectiveCountMetricBadAzureMonitorArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorArrayOutput { + return o +} - ToDirectNewrelicHistoricalDataRetrievalOutput() DirectNewrelicHistoricalDataRetrievalOutput - ToDirectNewrelicHistoricalDataRetrievalOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalOutput +func (o SloObjectiveCountMetricBadAzureMonitorArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadAzureMonitorOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadAzureMonitor { + return vs[0].([]SloObjectiveCountMetricBadAzureMonitor)[vs[1].(int)] + }).(SloObjectiveCountMetricBadAzureMonitorOutput) } -type DirectNewrelicHistoricalDataRetrievalArgs struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations DirectNewrelicHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +type SloObjectiveCountMetricBadAzureMonitorDimension struct { + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Burn rate value. + Value string `pulumi:"value"` } -func (DirectNewrelicHistoricalDataRetrievalArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrieval)(nil)).Elem() +// SloObjectiveCountMetricBadAzureMonitorDimensionInput is an input type that accepts SloObjectiveCountMetricBadAzureMonitorDimensionArgs and SloObjectiveCountMetricBadAzureMonitorDimensionOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAzureMonitorDimensionInput` via: +// +// SloObjectiveCountMetricBadAzureMonitorDimensionArgs{...} +type SloObjectiveCountMetricBadAzureMonitorDimensionInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadAzureMonitorDimensionOutput() SloObjectiveCountMetricBadAzureMonitorDimensionOutput + ToSloObjectiveCountMetricBadAzureMonitorDimensionOutputWithContext(context.Context) SloObjectiveCountMetricBadAzureMonitorDimensionOutput } -func (i DirectNewrelicHistoricalDataRetrievalArgs) ToDirectNewrelicHistoricalDataRetrievalOutput() DirectNewrelicHistoricalDataRetrievalOutput { - return i.ToDirectNewrelicHistoricalDataRetrievalOutputWithContext(context.Background()) +type SloObjectiveCountMetricBadAzureMonitorDimensionArgs struct { + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Burn rate value. + Value pulumi.StringInput `pulumi:"value"` } -func (i DirectNewrelicHistoricalDataRetrievalArgs) ToDirectNewrelicHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalOutput) +func (SloObjectiveCountMetricBadAzureMonitorDimensionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorDimension)(nil)).Elem() } -func (i DirectNewrelicHistoricalDataRetrievalArgs) ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput { - return i.ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAzureMonitorDimensionArgs) ToSloObjectiveCountMetricBadAzureMonitorDimensionOutput() SloObjectiveCountMetricBadAzureMonitorDimensionOutput { + return i.ToSloObjectiveCountMetricBadAzureMonitorDimensionOutputWithContext(context.Background()) } -func (i DirectNewrelicHistoricalDataRetrievalArgs) ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalOutput).ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx) +func (i SloObjectiveCountMetricBadAzureMonitorDimensionArgs) ToSloObjectiveCountMetricBadAzureMonitorDimensionOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorDimensionOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAzureMonitorDimensionOutput) } -// DirectNewrelicHistoricalDataRetrievalPtrInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalArgs, DirectNewrelicHistoricalDataRetrievalPtr and DirectNewrelicHistoricalDataRetrievalPtrOutput values. -// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalPtrInput` via: -// -// DirectNewrelicHistoricalDataRetrievalArgs{...} +// SloObjectiveCountMetricBadAzureMonitorDimensionArrayInput is an input type that accepts SloObjectiveCountMetricBadAzureMonitorDimensionArray and SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAzureMonitorDimensionArrayInput` via: // -// or: -// -// nil -type DirectNewrelicHistoricalDataRetrievalPtrInput interface { +// SloObjectiveCountMetricBadAzureMonitorDimensionArray{ SloObjectiveCountMetricBadAzureMonitorDimensionArgs{...} } +type SloObjectiveCountMetricBadAzureMonitorDimensionArrayInput interface { pulumi.Input - ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput - ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput + ToSloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput + ToSloObjectiveCountMetricBadAzureMonitorDimensionArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput } -type directNewrelicHistoricalDataRetrievalPtrType DirectNewrelicHistoricalDataRetrievalArgs - -func DirectNewrelicHistoricalDataRetrievalPtr(v *DirectNewrelicHistoricalDataRetrievalArgs) DirectNewrelicHistoricalDataRetrievalPtrInput { - return (*directNewrelicHistoricalDataRetrievalPtrType)(v) -} +type SloObjectiveCountMetricBadAzureMonitorDimensionArray []SloObjectiveCountMetricBadAzureMonitorDimensionInput -func (*directNewrelicHistoricalDataRetrievalPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectNewrelicHistoricalDataRetrieval)(nil)).Elem() +func (SloObjectiveCountMetricBadAzureMonitorDimensionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAzureMonitorDimension)(nil)).Elem() } -func (i *directNewrelicHistoricalDataRetrievalPtrType) ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput { - return i.ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAzureMonitorDimensionArray) ToSloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput { + return i.ToSloObjectiveCountMetricBadAzureMonitorDimensionArrayOutputWithContext(context.Background()) } -func (i *directNewrelicHistoricalDataRetrievalPtrType) ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalPtrOutput) +func (i SloObjectiveCountMetricBadAzureMonitorDimensionArray) ToSloObjectiveCountMetricBadAzureMonitorDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput) } -type DirectNewrelicHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadAzureMonitorDimensionOutput struct{ *pulumi.OutputState } -func (DirectNewrelicHistoricalDataRetrievalOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrieval)(nil)).Elem() +func (SloObjectiveCountMetricBadAzureMonitorDimensionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorDimension)(nil)).Elem() } -func (o DirectNewrelicHistoricalDataRetrievalOutput) ToDirectNewrelicHistoricalDataRetrievalOutput() DirectNewrelicHistoricalDataRetrievalOutput { +func (o SloObjectiveCountMetricBadAzureMonitorDimensionOutput) ToSloObjectiveCountMetricBadAzureMonitorDimensionOutput() SloObjectiveCountMetricBadAzureMonitorDimensionOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalOutput) ToDirectNewrelicHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalOutput { +func (o SloObjectiveCountMetricBadAzureMonitorDimensionOutput) ToSloObjectiveCountMetricBadAzureMonitorDimensionOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorDimensionOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalOutput) ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput { - return o.ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(context.Background()) -} - -func (o DirectNewrelicHistoricalDataRetrievalOutput) ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectNewrelicHistoricalDataRetrieval) *DirectNewrelicHistoricalDataRetrieval { - return &v - }).(DirectNewrelicHistoricalDataRetrievalPtrOutput) -} - -// Used by default for any SLOs connected to this data source. -func (o DirectNewrelicHistoricalDataRetrievalOutput) DefaultDurations() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrieval) []DirectNewrelicHistoricalDataRetrievalDefaultDuration { - return v.DefaultDurations - }).(DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) +// The name of the previously defined alert method. +func (o SloObjectiveCountMetricBadAzureMonitorDimensionOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitorDimension) string { return v.Name }).(pulumi.StringOutput) } -// Defines the maximum period for which data can be retrieved. -func (o DirectNewrelicHistoricalDataRetrievalOutput) MaxDurations() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrieval) []DirectNewrelicHistoricalDataRetrievalMaxDuration { - return v.MaxDurations - }).(DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) +// Burn rate value. +func (o SloObjectiveCountMetricBadAzureMonitorDimensionOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitorDimension) string { return v.Value }).(pulumi.StringOutput) } -type DirectNewrelicHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput struct{ *pulumi.OutputState } -func (DirectNewrelicHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectNewrelicHistoricalDataRetrieval)(nil)).Elem() +func (SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAzureMonitorDimension)(nil)).Elem() } -func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) ToDirectNewrelicHistoricalDataRetrievalPtrOutput() DirectNewrelicHistoricalDataRetrievalPtrOutput { +func (o SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput) ToSloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) ToDirectNewrelicHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalPtrOutput { +func (o SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput) ToSloObjectiveCountMetricBadAzureMonitorDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) Elem() DirectNewrelicHistoricalDataRetrievalOutput { - return o.ApplyT(func(v *DirectNewrelicHistoricalDataRetrieval) DirectNewrelicHistoricalDataRetrieval { - if v != nil { - return *v - } - var ret DirectNewrelicHistoricalDataRetrieval - return ret - }).(DirectNewrelicHistoricalDataRetrievalOutput) -} - -// Used by default for any SLOs connected to this data source. -func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v *DirectNewrelicHistoricalDataRetrieval) []DirectNewrelicHistoricalDataRetrievalDefaultDuration { - if v == nil { - return nil - } - return v.DefaultDurations - }).(DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) -} - -// Defines the maximum period for which data can be retrieved. -func (o DirectNewrelicHistoricalDataRetrievalPtrOutput) MaxDurations() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v *DirectNewrelicHistoricalDataRetrieval) []DirectNewrelicHistoricalDataRetrievalMaxDuration { - if v == nil { - return nil - } - return v.MaxDurations - }).(DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) +func (o SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadAzureMonitorDimensionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadAzureMonitorDimension { + return vs[0].([]SloObjectiveCountMetricBadAzureMonitorDimension)[vs[1].(int)] + }).(SloObjectiveCountMetricBadAzureMonitorDimensionOutput) } -type DirectNewrelicHistoricalDataRetrievalDefaultDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadAzureMonitorWorkspace struct { + // Resource group of the workspace + ResourceGroup string `pulumi:"resourceGroup"` + // Subscription ID of the workspace + SubscriptionId string `pulumi:"subscriptionId"` + // ID of the workspace + WorkspaceId string `pulumi:"workspaceId"` } -// DirectNewrelicHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs and DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput values. -// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalDefaultDurationInput` via: +// SloObjectiveCountMetricBadAzureMonitorWorkspaceInput is an input type that accepts SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs and SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAzureMonitorWorkspaceInput` via: // -// DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs{...} -type DirectNewrelicHistoricalDataRetrievalDefaultDurationInput interface { +// SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs{...} +type SloObjectiveCountMetricBadAzureMonitorWorkspaceInput interface { pulumi.Input - ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput - ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput + ToSloObjectiveCountMetricBadAzureMonitorWorkspaceOutput() SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput + ToSloObjectiveCountMetricBadAzureMonitorWorkspaceOutputWithContext(context.Context) SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput } -type DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs struct { + // Resource group of the workspace + ResourceGroup pulumi.StringInput `pulumi:"resourceGroup"` + // Subscription ID of the workspace + SubscriptionId pulumi.StringInput `pulumi:"subscriptionId"` + // ID of the workspace + WorkspaceId pulumi.StringInput `pulumi:"workspaceId"` } -func (DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorWorkspace)(nil)).Elem() } -func (i DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { - return i.ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs) ToSloObjectiveCountMetricBadAzureMonitorWorkspaceOutput() SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput { + return i.ToSloObjectiveCountMetricBadAzureMonitorWorkspaceOutputWithContext(context.Background()) } -func (i DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) +func (i SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs) ToSloObjectiveCountMetricBadAzureMonitorWorkspaceOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput) } -// DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalDefaultDurationArray and DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput values. -// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayInput` via: +// SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayInput is an input type that accepts SloObjectiveCountMetricBadAzureMonitorWorkspaceArray and SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayInput` via: // -// DirectNewrelicHistoricalDataRetrievalDefaultDurationArray{ DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs{...} } -type DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayInput interface { +// SloObjectiveCountMetricBadAzureMonitorWorkspaceArray{ SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs{...} } +type SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayInput interface { pulumi.Input - ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput - ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput + ToSloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput + ToSloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput } -type DirectNewrelicHistoricalDataRetrievalDefaultDurationArray []DirectNewrelicHistoricalDataRetrievalDefaultDurationInput +type SloObjectiveCountMetricBadAzureMonitorWorkspaceArray []SloObjectiveCountMetricBadAzureMonitorWorkspaceInput -func (DirectNewrelicHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectNewrelicHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAzureMonitorWorkspaceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAzureMonitorWorkspace)(nil)).Elem() } -func (i DirectNewrelicHistoricalDataRetrievalDefaultDurationArray) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { - return i.ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadAzureMonitorWorkspaceArray) ToSloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput { + return i.ToSloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutputWithContext(context.Background()) } -func (i DirectNewrelicHistoricalDataRetrievalDefaultDurationArray) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) +func (i SloObjectiveCountMetricBadAzureMonitorWorkspaceArray) ToSloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput) } -type DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput struct{ *pulumi.OutputState } -func (DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorWorkspace)(nil)).Elem() } -func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { +func (o SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput) ToSloObjectiveCountMetricBadAzureMonitorWorkspaceOutput() SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { +func (o SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput) ToSloObjectiveCountMetricBadAzureMonitorWorkspaceOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) +// Resource group of the workspace +func (o SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput) ResourceGroup() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitorWorkspace) string { return v.ResourceGroup }).(pulumi.StringOutput) } -func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +// Subscription ID of the workspace +func (o SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput) SubscriptionId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitorWorkspace) string { return v.SubscriptionId }).(pulumi.StringOutput) } -type DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } +// ID of the workspace +func (o SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput) WorkspaceId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadAzureMonitorWorkspace) string { return v.WorkspaceId }).(pulumi.StringOutput) +} -func (DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectNewrelicHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +type SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadAzureMonitorWorkspace)(nil)).Elem() } -func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput) ToSloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput) ToSloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectNewrelicHistoricalDataRetrievalDefaultDuration { - return vs[0].([]DirectNewrelicHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] - }).(DirectNewrelicHistoricalDataRetrievalDefaultDurationOutput) +func (o SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadAzureMonitorWorkspace { + return vs[0].([]SloObjectiveCountMetricBadAzureMonitorWorkspace)[vs[1].(int)] + }).(SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput) } -type DirectNewrelicHistoricalDataRetrievalMaxDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadBigquery struct { + // Location of you BigQuery + Location string `pulumi:"location"` + // Project ID + ProjectId string `pulumi:"projectId"` + // Query for the metrics + Query string `pulumi:"query"` } -// DirectNewrelicHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalMaxDurationArgs and DirectNewrelicHistoricalDataRetrievalMaxDurationOutput values. -// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalMaxDurationInput` via: +// SloObjectiveCountMetricBadBigqueryInput is an input type that accepts SloObjectiveCountMetricBadBigqueryArgs and SloObjectiveCountMetricBadBigqueryOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadBigqueryInput` via: // -// DirectNewrelicHistoricalDataRetrievalMaxDurationArgs{...} -type DirectNewrelicHistoricalDataRetrievalMaxDurationInput interface { +// SloObjectiveCountMetricBadBigqueryArgs{...} +type SloObjectiveCountMetricBadBigqueryInput interface { pulumi.Input - ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationOutput - ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationOutput + ToSloObjectiveCountMetricBadBigqueryOutput() SloObjectiveCountMetricBadBigqueryOutput + ToSloObjectiveCountMetricBadBigqueryOutputWithContext(context.Context) SloObjectiveCountMetricBadBigqueryOutput } -type DirectNewrelicHistoricalDataRetrievalMaxDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadBigqueryArgs struct { + // Location of you BigQuery + Location pulumi.StringInput `pulumi:"location"` + // Project ID + ProjectId pulumi.StringInput `pulumi:"projectId"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } -func (DirectNewrelicHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadBigqueryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadBigquery)(nil)).Elem() } -func (i DirectNewrelicHistoricalDataRetrievalMaxDurationArgs) ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { - return i.ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadBigqueryArgs) ToSloObjectiveCountMetricBadBigqueryOutput() SloObjectiveCountMetricBadBigqueryOutput { + return i.ToSloObjectiveCountMetricBadBigqueryOutputWithContext(context.Background()) } -func (i DirectNewrelicHistoricalDataRetrievalMaxDurationArgs) ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) +func (i SloObjectiveCountMetricBadBigqueryArgs) ToSloObjectiveCountMetricBadBigqueryOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadBigqueryOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadBigqueryOutput) } -// DirectNewrelicHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectNewrelicHistoricalDataRetrievalMaxDurationArray and DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput values. -// You can construct a concrete instance of `DirectNewrelicHistoricalDataRetrievalMaxDurationArrayInput` via: +// SloObjectiveCountMetricBadBigqueryArrayInput is an input type that accepts SloObjectiveCountMetricBadBigqueryArray and SloObjectiveCountMetricBadBigqueryArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadBigqueryArrayInput` via: // -// DirectNewrelicHistoricalDataRetrievalMaxDurationArray{ DirectNewrelicHistoricalDataRetrievalMaxDurationArgs{...} } -type DirectNewrelicHistoricalDataRetrievalMaxDurationArrayInput interface { +// SloObjectiveCountMetricBadBigqueryArray{ SloObjectiveCountMetricBadBigqueryArgs{...} } +type SloObjectiveCountMetricBadBigqueryArrayInput interface { pulumi.Input - ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput - ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput + ToSloObjectiveCountMetricBadBigqueryArrayOutput() SloObjectiveCountMetricBadBigqueryArrayOutput + ToSloObjectiveCountMetricBadBigqueryArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadBigqueryArrayOutput } -type DirectNewrelicHistoricalDataRetrievalMaxDurationArray []DirectNewrelicHistoricalDataRetrievalMaxDurationInput +type SloObjectiveCountMetricBadBigqueryArray []SloObjectiveCountMetricBadBigqueryInput -func (DirectNewrelicHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectNewrelicHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadBigqueryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadBigquery)(nil)).Elem() } -func (i DirectNewrelicHistoricalDataRetrievalMaxDurationArray) ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { - return i.ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadBigqueryArray) ToSloObjectiveCountMetricBadBigqueryArrayOutput() SloObjectiveCountMetricBadBigqueryArrayOutput { + return i.ToSloObjectiveCountMetricBadBigqueryArrayOutputWithContext(context.Background()) } -func (i DirectNewrelicHistoricalDataRetrievalMaxDurationArray) ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) +func (i SloObjectiveCountMetricBadBigqueryArray) ToSloObjectiveCountMetricBadBigqueryArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadBigqueryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadBigqueryArrayOutput) } -type DirectNewrelicHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadBigqueryOutput struct{ *pulumi.OutputState } -func (DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectNewrelicHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadBigqueryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadBigquery)(nil)).Elem() } -func (o DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { +func (o SloObjectiveCountMetricBadBigqueryOutput) ToSloObjectiveCountMetricBadBigqueryOutput() SloObjectiveCountMetricBadBigqueryOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) ToDirectNewrelicHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { +func (o SloObjectiveCountMetricBadBigqueryOutput) ToSloObjectiveCountMetricBadBigqueryOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadBigqueryOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) +// Location of you BigQuery +func (o SloObjectiveCountMetricBadBigqueryOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadBigquery) string { return v.Location }).(pulumi.StringOutput) } -func (o DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectNewrelicHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +// Project ID +func (o SloObjectiveCountMetricBadBigqueryOutput) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadBigquery) string { return v.ProjectId }).(pulumi.StringOutput) } -type DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } +// Query for the metrics +func (o SloObjectiveCountMetricBadBigqueryOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadBigquery) string { return v.Query }).(pulumi.StringOutput) +} -func (DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectNewrelicHistoricalDataRetrievalMaxDuration)(nil)).Elem() +type SloObjectiveCountMetricBadBigqueryArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadBigqueryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadBigquery)(nil)).Elem() } -func (o DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput() DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { +func (o SloObjectiveCountMetricBadBigqueryArrayOutput) ToSloObjectiveCountMetricBadBigqueryArrayOutput() SloObjectiveCountMetricBadBigqueryArrayOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput { +func (o SloObjectiveCountMetricBadBigqueryArrayOutput) ToSloObjectiveCountMetricBadBigqueryArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadBigqueryArrayOutput { return o } -func (o DirectNewrelicHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectNewrelicHistoricalDataRetrievalMaxDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectNewrelicHistoricalDataRetrievalMaxDuration { - return vs[0].([]DirectNewrelicHistoricalDataRetrievalMaxDuration)[vs[1].(int)] - }).(DirectNewrelicHistoricalDataRetrievalMaxDurationOutput) +func (o SloObjectiveCountMetricBadBigqueryArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadBigqueryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadBigquery { + return vs[0].([]SloObjectiveCountMetricBadBigquery)[vs[1].(int)] + }).(SloObjectiveCountMetricBadBigqueryOutput) } -type DirectNewrelicQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadCloudwatch struct { + // AccountID used with cross-account observability feature + AccountId *string `pulumi:"accountId"` + // Dimensions of the metric [Optional for metrics] + Dimensions []SloObjectiveCountMetricBadCloudwatchDimension `pulumi:"dimensions"` + // JSON query + Json *string `pulumi:"json"` + // Name of the metric [Required for metrics] + MetricName *string `pulumi:"metricName"` + // Namespace of the metric + Namespace *string `pulumi:"namespace"` + // Region of the CloudWatch instance + Region string `pulumi:"region"` + // SQL query + Sql *string `pulumi:"sql"` + // Metric data aggregations + Stat *string `pulumi:"stat"` } -// DirectNewrelicQueryDelayInput is an input type that accepts DirectNewrelicQueryDelayArgs and DirectNewrelicQueryDelayOutput values. -// You can construct a concrete instance of `DirectNewrelicQueryDelayInput` via: +// SloObjectiveCountMetricBadCloudwatchInput is an input type that accepts SloObjectiveCountMetricBadCloudwatchArgs and SloObjectiveCountMetricBadCloudwatchOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadCloudwatchInput` via: // -// DirectNewrelicQueryDelayArgs{...} -type DirectNewrelicQueryDelayInput interface { +// SloObjectiveCountMetricBadCloudwatchArgs{...} +type SloObjectiveCountMetricBadCloudwatchInput interface { pulumi.Input - ToDirectNewrelicQueryDelayOutput() DirectNewrelicQueryDelayOutput - ToDirectNewrelicQueryDelayOutputWithContext(context.Context) DirectNewrelicQueryDelayOutput + ToSloObjectiveCountMetricBadCloudwatchOutput() SloObjectiveCountMetricBadCloudwatchOutput + ToSloObjectiveCountMetricBadCloudwatchOutputWithContext(context.Context) SloObjectiveCountMetricBadCloudwatchOutput } -type DirectNewrelicQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadCloudwatchArgs struct { + // AccountID used with cross-account observability feature + AccountId pulumi.StringPtrInput `pulumi:"accountId"` + // Dimensions of the metric [Optional for metrics] + Dimensions SloObjectiveCountMetricBadCloudwatchDimensionArrayInput `pulumi:"dimensions"` + // JSON query + Json pulumi.StringPtrInput `pulumi:"json"` + // Name of the metric [Required for metrics] + MetricName pulumi.StringPtrInput `pulumi:"metricName"` + // Namespace of the metric + Namespace pulumi.StringPtrInput `pulumi:"namespace"` + // Region of the CloudWatch instance + Region pulumi.StringInput `pulumi:"region"` + // SQL query + Sql pulumi.StringPtrInput `pulumi:"sql"` + // Metric data aggregations + Stat pulumi.StringPtrInput `pulumi:"stat"` } -func (DirectNewrelicQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectNewrelicQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadCloudwatchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadCloudwatch)(nil)).Elem() } -func (i DirectNewrelicQueryDelayArgs) ToDirectNewrelicQueryDelayOutput() DirectNewrelicQueryDelayOutput { - return i.ToDirectNewrelicQueryDelayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadCloudwatchArgs) ToSloObjectiveCountMetricBadCloudwatchOutput() SloObjectiveCountMetricBadCloudwatchOutput { + return i.ToSloObjectiveCountMetricBadCloudwatchOutputWithContext(context.Background()) } -func (i DirectNewrelicQueryDelayArgs) ToDirectNewrelicQueryDelayOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicQueryDelayOutput) +func (i SloObjectiveCountMetricBadCloudwatchArgs) ToSloObjectiveCountMetricBadCloudwatchOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadCloudwatchOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadCloudwatchOutput) } -func (i DirectNewrelicQueryDelayArgs) ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput { - return i.ToDirectNewrelicQueryDelayPtrOutputWithContext(context.Background()) -} +// SloObjectiveCountMetricBadCloudwatchArrayInput is an input type that accepts SloObjectiveCountMetricBadCloudwatchArray and SloObjectiveCountMetricBadCloudwatchArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadCloudwatchArrayInput` via: +// +// SloObjectiveCountMetricBadCloudwatchArray{ SloObjectiveCountMetricBadCloudwatchArgs{...} } +type SloObjectiveCountMetricBadCloudwatchArrayInput interface { + pulumi.Input -func (i DirectNewrelicQueryDelayArgs) ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicQueryDelayOutput).ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx) + ToSloObjectiveCountMetricBadCloudwatchArrayOutput() SloObjectiveCountMetricBadCloudwatchArrayOutput + ToSloObjectiveCountMetricBadCloudwatchArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadCloudwatchArrayOutput } -// DirectNewrelicQueryDelayPtrInput is an input type that accepts DirectNewrelicQueryDelayArgs, DirectNewrelicQueryDelayPtr and DirectNewrelicQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectNewrelicQueryDelayPtrInput` via: -// -// DirectNewrelicQueryDelayArgs{...} -// -// or: -// -// nil -type DirectNewrelicQueryDelayPtrInput interface { - pulumi.Input +type SloObjectiveCountMetricBadCloudwatchArray []SloObjectiveCountMetricBadCloudwatchInput - ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput - ToDirectNewrelicQueryDelayPtrOutputWithContext(context.Context) DirectNewrelicQueryDelayPtrOutput +func (SloObjectiveCountMetricBadCloudwatchArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadCloudwatch)(nil)).Elem() } -type directNewrelicQueryDelayPtrType DirectNewrelicQueryDelayArgs +func (i SloObjectiveCountMetricBadCloudwatchArray) ToSloObjectiveCountMetricBadCloudwatchArrayOutput() SloObjectiveCountMetricBadCloudwatchArrayOutput { + return i.ToSloObjectiveCountMetricBadCloudwatchArrayOutputWithContext(context.Background()) +} -func DirectNewrelicQueryDelayPtr(v *DirectNewrelicQueryDelayArgs) DirectNewrelicQueryDelayPtrInput { - return (*directNewrelicQueryDelayPtrType)(v) +func (i SloObjectiveCountMetricBadCloudwatchArray) ToSloObjectiveCountMetricBadCloudwatchArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadCloudwatchArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadCloudwatchArrayOutput) } -func (*directNewrelicQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectNewrelicQueryDelay)(nil)).Elem() +type SloObjectiveCountMetricBadCloudwatchOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadCloudwatchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadCloudwatch)(nil)).Elem() } -func (i *directNewrelicQueryDelayPtrType) ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput { - return i.ToDirectNewrelicQueryDelayPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadCloudwatchOutput) ToSloObjectiveCountMetricBadCloudwatchOutput() SloObjectiveCountMetricBadCloudwatchOutput { + return o } -func (i *directNewrelicQueryDelayPtrType) ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectNewrelicQueryDelayPtrOutput) +func (o SloObjectiveCountMetricBadCloudwatchOutput) ToSloObjectiveCountMetricBadCloudwatchOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadCloudwatchOutput { + return o } -type DirectNewrelicQueryDelayOutput struct{ *pulumi.OutputState } +// AccountID used with cross-account observability feature +func (o SloObjectiveCountMetricBadCloudwatchOutput) AccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatch) *string { return v.AccountId }).(pulumi.StringPtrOutput) +} -func (DirectNewrelicQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectNewrelicQueryDelay)(nil)).Elem() +// Dimensions of the metric [Optional for metrics] +func (o SloObjectiveCountMetricBadCloudwatchOutput) Dimensions() SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatch) []SloObjectiveCountMetricBadCloudwatchDimension { + return v.Dimensions + }).(SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput) } -func (o DirectNewrelicQueryDelayOutput) ToDirectNewrelicQueryDelayOutput() DirectNewrelicQueryDelayOutput { - return o +// JSON query +func (o SloObjectiveCountMetricBadCloudwatchOutput) Json() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatch) *string { return v.Json }).(pulumi.StringPtrOutput) } -func (o DirectNewrelicQueryDelayOutput) ToDirectNewrelicQueryDelayOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayOutput { - return o +// Name of the metric [Required for metrics] +func (o SloObjectiveCountMetricBadCloudwatchOutput) MetricName() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatch) *string { return v.MetricName }).(pulumi.StringPtrOutput) } -func (o DirectNewrelicQueryDelayOutput) ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput { - return o.ToDirectNewrelicQueryDelayPtrOutputWithContext(context.Background()) +// Namespace of the metric +func (o SloObjectiveCountMetricBadCloudwatchOutput) Namespace() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatch) *string { return v.Namespace }).(pulumi.StringPtrOutput) } -func (o DirectNewrelicQueryDelayOutput) ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectNewrelicQueryDelay) *DirectNewrelicQueryDelay { - return &v - }).(DirectNewrelicQueryDelayPtrOutput) +// Region of the CloudWatch instance +func (o SloObjectiveCountMetricBadCloudwatchOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatch) string { return v.Region }).(pulumi.StringOutput) } -// Must be one of Minute or Second. -func (o DirectNewrelicQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectNewrelicQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +// SQL query +func (o SloObjectiveCountMetricBadCloudwatchOutput) Sql() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatch) *string { return v.Sql }).(pulumi.StringPtrOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectNewrelicQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectNewrelicQueryDelay) int { return v.Value }).(pulumi.IntOutput) +// Metric data aggregations +func (o SloObjectiveCountMetricBadCloudwatchOutput) Stat() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatch) *string { return v.Stat }).(pulumi.StringPtrOutput) } -type DirectNewrelicQueryDelayPtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadCloudwatchArrayOutput struct{ *pulumi.OutputState } -func (DirectNewrelicQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectNewrelicQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadCloudwatchArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadCloudwatch)(nil)).Elem() } -func (o DirectNewrelicQueryDelayPtrOutput) ToDirectNewrelicQueryDelayPtrOutput() DirectNewrelicQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadCloudwatchArrayOutput) ToSloObjectiveCountMetricBadCloudwatchArrayOutput() SloObjectiveCountMetricBadCloudwatchArrayOutput { return o } -func (o DirectNewrelicQueryDelayPtrOutput) ToDirectNewrelicQueryDelayPtrOutputWithContext(ctx context.Context) DirectNewrelicQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadCloudwatchArrayOutput) ToSloObjectiveCountMetricBadCloudwatchArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadCloudwatchArrayOutput { return o } -func (o DirectNewrelicQueryDelayPtrOutput) Elem() DirectNewrelicQueryDelayOutput { - return o.ApplyT(func(v *DirectNewrelicQueryDelay) DirectNewrelicQueryDelay { - if v != nil { - return *v - } - var ret DirectNewrelicQueryDelay - return ret - }).(DirectNewrelicQueryDelayOutput) +func (o SloObjectiveCountMetricBadCloudwatchArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadCloudwatchOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadCloudwatch { + return vs[0].([]SloObjectiveCountMetricBadCloudwatch)[vs[1].(int)] + }).(SloObjectiveCountMetricBadCloudwatchOutput) } -// Must be one of Minute or Second. -func (o DirectNewrelicQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectNewrelicQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) +type SloObjectiveCountMetricBadCloudwatchDimension struct { + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Burn rate value. + Value string `pulumi:"value"` } -// Must be an integer greater than or equal to 0. -func (o DirectNewrelicQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectNewrelicQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +// SloObjectiveCountMetricBadCloudwatchDimensionInput is an input type that accepts SloObjectiveCountMetricBadCloudwatchDimensionArgs and SloObjectiveCountMetricBadCloudwatchDimensionOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadCloudwatchDimensionInput` via: +// +// SloObjectiveCountMetricBadCloudwatchDimensionArgs{...} +type SloObjectiveCountMetricBadCloudwatchDimensionInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadCloudwatchDimensionOutput() SloObjectiveCountMetricBadCloudwatchDimensionOutput + ToSloObjectiveCountMetricBadCloudwatchDimensionOutputWithContext(context.Context) SloObjectiveCountMetricBadCloudwatchDimensionOutput } -type DirectPingdomQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadCloudwatchDimensionArgs struct { + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Burn rate value. + Value pulumi.StringInput `pulumi:"value"` } -// DirectPingdomQueryDelayInput is an input type that accepts DirectPingdomQueryDelayArgs and DirectPingdomQueryDelayOutput values. -// You can construct a concrete instance of `DirectPingdomQueryDelayInput` via: +func (SloObjectiveCountMetricBadCloudwatchDimensionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadCloudwatchDimension)(nil)).Elem() +} + +func (i SloObjectiveCountMetricBadCloudwatchDimensionArgs) ToSloObjectiveCountMetricBadCloudwatchDimensionOutput() SloObjectiveCountMetricBadCloudwatchDimensionOutput { + return i.ToSloObjectiveCountMetricBadCloudwatchDimensionOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricBadCloudwatchDimensionArgs) ToSloObjectiveCountMetricBadCloudwatchDimensionOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadCloudwatchDimensionOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadCloudwatchDimensionOutput) +} + +// SloObjectiveCountMetricBadCloudwatchDimensionArrayInput is an input type that accepts SloObjectiveCountMetricBadCloudwatchDimensionArray and SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadCloudwatchDimensionArrayInput` via: // -// DirectPingdomQueryDelayArgs{...} -type DirectPingdomQueryDelayInput interface { +// SloObjectiveCountMetricBadCloudwatchDimensionArray{ SloObjectiveCountMetricBadCloudwatchDimensionArgs{...} } +type SloObjectiveCountMetricBadCloudwatchDimensionArrayInput interface { pulumi.Input - ToDirectPingdomQueryDelayOutput() DirectPingdomQueryDelayOutput - ToDirectPingdomQueryDelayOutputWithContext(context.Context) DirectPingdomQueryDelayOutput + ToSloObjectiveCountMetricBadCloudwatchDimensionArrayOutput() SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput + ToSloObjectiveCountMetricBadCloudwatchDimensionArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput } -type DirectPingdomQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadCloudwatchDimensionArray []SloObjectiveCountMetricBadCloudwatchDimensionInput + +func (SloObjectiveCountMetricBadCloudwatchDimensionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadCloudwatchDimension)(nil)).Elem() } -func (DirectPingdomQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectPingdomQueryDelay)(nil)).Elem() +func (i SloObjectiveCountMetricBadCloudwatchDimensionArray) ToSloObjectiveCountMetricBadCloudwatchDimensionArrayOutput() SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput { + return i.ToSloObjectiveCountMetricBadCloudwatchDimensionArrayOutputWithContext(context.Background()) } -func (i DirectPingdomQueryDelayArgs) ToDirectPingdomQueryDelayOutput() DirectPingdomQueryDelayOutput { - return i.ToDirectPingdomQueryDelayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadCloudwatchDimensionArray) ToSloObjectiveCountMetricBadCloudwatchDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput) } -func (i DirectPingdomQueryDelayArgs) ToDirectPingdomQueryDelayOutputWithContext(ctx context.Context) DirectPingdomQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectPingdomQueryDelayOutput) +type SloObjectiveCountMetricBadCloudwatchDimensionOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadCloudwatchDimensionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadCloudwatchDimension)(nil)).Elem() } -func (i DirectPingdomQueryDelayArgs) ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput { - return i.ToDirectPingdomQueryDelayPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadCloudwatchDimensionOutput) ToSloObjectiveCountMetricBadCloudwatchDimensionOutput() SloObjectiveCountMetricBadCloudwatchDimensionOutput { + return o } -func (i DirectPingdomQueryDelayArgs) ToDirectPingdomQueryDelayPtrOutputWithContext(ctx context.Context) DirectPingdomQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectPingdomQueryDelayOutput).ToDirectPingdomQueryDelayPtrOutputWithContext(ctx) +func (o SloObjectiveCountMetricBadCloudwatchDimensionOutput) ToSloObjectiveCountMetricBadCloudwatchDimensionOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadCloudwatchDimensionOutput { + return o } -// DirectPingdomQueryDelayPtrInput is an input type that accepts DirectPingdomQueryDelayArgs, DirectPingdomQueryDelayPtr and DirectPingdomQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectPingdomQueryDelayPtrInput` via: -// -// DirectPingdomQueryDelayArgs{...} -// -// or: -// -// nil -type DirectPingdomQueryDelayPtrInput interface { - pulumi.Input +// The name of the previously defined alert method. +func (o SloObjectiveCountMetricBadCloudwatchDimensionOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatchDimension) string { return v.Name }).(pulumi.StringOutput) +} - ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput - ToDirectPingdomQueryDelayPtrOutputWithContext(context.Context) DirectPingdomQueryDelayPtrOutput +// Burn rate value. +func (o SloObjectiveCountMetricBadCloudwatchDimensionOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadCloudwatchDimension) string { return v.Value }).(pulumi.StringOutput) } -type directPingdomQueryDelayPtrType DirectPingdomQueryDelayArgs +type SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadCloudwatchDimension)(nil)).Elem() +} + +func (o SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput) ToSloObjectiveCountMetricBadCloudwatchDimensionArrayOutput() SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput { + return o +} -func DirectPingdomQueryDelayPtr(v *DirectPingdomQueryDelayArgs) DirectPingdomQueryDelayPtrInput { - return (*directPingdomQueryDelayPtrType)(v) +func (o SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput) ToSloObjectiveCountMetricBadCloudwatchDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput { + return o } -func (*directPingdomQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectPingdomQueryDelay)(nil)).Elem() +func (o SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadCloudwatchDimensionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadCloudwatchDimension { + return vs[0].([]SloObjectiveCountMetricBadCloudwatchDimension)[vs[1].(int)] + }).(SloObjectiveCountMetricBadCloudwatchDimensionOutput) } -func (i *directPingdomQueryDelayPtrType) ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput { - return i.ToDirectPingdomQueryDelayPtrOutputWithContext(context.Background()) +type SloObjectiveCountMetricBadDatadog struct { + // Query for the metrics + Query string `pulumi:"query"` } -func (i *directPingdomQueryDelayPtrType) ToDirectPingdomQueryDelayPtrOutputWithContext(ctx context.Context) DirectPingdomQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectPingdomQueryDelayPtrOutput) +// SloObjectiveCountMetricBadDatadogInput is an input type that accepts SloObjectiveCountMetricBadDatadogArgs and SloObjectiveCountMetricBadDatadogOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadDatadogInput` via: +// +// SloObjectiveCountMetricBadDatadogArgs{...} +type SloObjectiveCountMetricBadDatadogInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadDatadogOutput() SloObjectiveCountMetricBadDatadogOutput + ToSloObjectiveCountMetricBadDatadogOutputWithContext(context.Context) SloObjectiveCountMetricBadDatadogOutput } -type DirectPingdomQueryDelayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadDatadogArgs struct { + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` +} -func (DirectPingdomQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectPingdomQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadDatadogArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadDatadog)(nil)).Elem() } -func (o DirectPingdomQueryDelayOutput) ToDirectPingdomQueryDelayOutput() DirectPingdomQueryDelayOutput { - return o +func (i SloObjectiveCountMetricBadDatadogArgs) ToSloObjectiveCountMetricBadDatadogOutput() SloObjectiveCountMetricBadDatadogOutput { + return i.ToSloObjectiveCountMetricBadDatadogOutputWithContext(context.Background()) } -func (o DirectPingdomQueryDelayOutput) ToDirectPingdomQueryDelayOutputWithContext(ctx context.Context) DirectPingdomQueryDelayOutput { - return o +func (i SloObjectiveCountMetricBadDatadogArgs) ToSloObjectiveCountMetricBadDatadogOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadDatadogOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadDatadogOutput) } -func (o DirectPingdomQueryDelayOutput) ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput { - return o.ToDirectPingdomQueryDelayPtrOutputWithContext(context.Background()) +// SloObjectiveCountMetricBadDatadogArrayInput is an input type that accepts SloObjectiveCountMetricBadDatadogArray and SloObjectiveCountMetricBadDatadogArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadDatadogArrayInput` via: +// +// SloObjectiveCountMetricBadDatadogArray{ SloObjectiveCountMetricBadDatadogArgs{...} } +type SloObjectiveCountMetricBadDatadogArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadDatadogArrayOutput() SloObjectiveCountMetricBadDatadogArrayOutput + ToSloObjectiveCountMetricBadDatadogArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadDatadogArrayOutput } -func (o DirectPingdomQueryDelayOutput) ToDirectPingdomQueryDelayPtrOutputWithContext(ctx context.Context) DirectPingdomQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectPingdomQueryDelay) *DirectPingdomQueryDelay { - return &v - }).(DirectPingdomQueryDelayPtrOutput) +type SloObjectiveCountMetricBadDatadogArray []SloObjectiveCountMetricBadDatadogInput + +func (SloObjectiveCountMetricBadDatadogArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadDatadog)(nil)).Elem() } -// Must be one of Minute or Second. -func (o DirectPingdomQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectPingdomQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +func (i SloObjectiveCountMetricBadDatadogArray) ToSloObjectiveCountMetricBadDatadogArrayOutput() SloObjectiveCountMetricBadDatadogArrayOutput { + return i.ToSloObjectiveCountMetricBadDatadogArrayOutputWithContext(context.Background()) } -// Must be an integer greater than or equal to 0. -func (o DirectPingdomQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectPingdomQueryDelay) int { return v.Value }).(pulumi.IntOutput) +func (i SloObjectiveCountMetricBadDatadogArray) ToSloObjectiveCountMetricBadDatadogArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadDatadogArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadDatadogArrayOutput) } -type DirectPingdomQueryDelayPtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadDatadogOutput struct{ *pulumi.OutputState } -func (DirectPingdomQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectPingdomQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadDatadogOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadDatadog)(nil)).Elem() } -func (o DirectPingdomQueryDelayPtrOutput) ToDirectPingdomQueryDelayPtrOutput() DirectPingdomQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadDatadogOutput) ToSloObjectiveCountMetricBadDatadogOutput() SloObjectiveCountMetricBadDatadogOutput { return o } -func (o DirectPingdomQueryDelayPtrOutput) ToDirectPingdomQueryDelayPtrOutputWithContext(ctx context.Context) DirectPingdomQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadDatadogOutput) ToSloObjectiveCountMetricBadDatadogOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadDatadogOutput { return o } -func (o DirectPingdomQueryDelayPtrOutput) Elem() DirectPingdomQueryDelayOutput { - return o.ApplyT(func(v *DirectPingdomQueryDelay) DirectPingdomQueryDelay { - if v != nil { - return *v - } - var ret DirectPingdomQueryDelay - return ret - }).(DirectPingdomQueryDelayOutput) +// Query for the metrics +func (o SloObjectiveCountMetricBadDatadogOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadDatadog) string { return v.Query }).(pulumi.StringOutput) } -// Must be one of Minute or Second. -func (o DirectPingdomQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectPingdomQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) -} +type SloObjectiveCountMetricBadDatadogArrayOutput struct{ *pulumi.OutputState } -// Must be an integer greater than or equal to 0. -func (o DirectPingdomQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectPingdomQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +func (SloObjectiveCountMetricBadDatadogArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadDatadog)(nil)).Elem() } -type DirectRedshiftQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +func (o SloObjectiveCountMetricBadDatadogArrayOutput) ToSloObjectiveCountMetricBadDatadogArrayOutput() SloObjectiveCountMetricBadDatadogArrayOutput { + return o } -// DirectRedshiftQueryDelayInput is an input type that accepts DirectRedshiftQueryDelayArgs and DirectRedshiftQueryDelayOutput values. -// You can construct a concrete instance of `DirectRedshiftQueryDelayInput` via: -// -// DirectRedshiftQueryDelayArgs{...} -type DirectRedshiftQueryDelayInput interface { - pulumi.Input +func (o SloObjectiveCountMetricBadDatadogArrayOutput) ToSloObjectiveCountMetricBadDatadogArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadDatadogArrayOutput { + return o +} - ToDirectRedshiftQueryDelayOutput() DirectRedshiftQueryDelayOutput - ToDirectRedshiftQueryDelayOutputWithContext(context.Context) DirectRedshiftQueryDelayOutput +func (o SloObjectiveCountMetricBadDatadogArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadDatadogOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadDatadog { + return vs[0].([]SloObjectiveCountMetricBadDatadog)[vs[1].(int)] + }).(SloObjectiveCountMetricBadDatadogOutput) } -type DirectRedshiftQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadDynatrace struct { + // Selector for the metrics + MetricSelector string `pulumi:"metricSelector"` } -func (DirectRedshiftQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectRedshiftQueryDelay)(nil)).Elem() +// SloObjectiveCountMetricBadDynatraceInput is an input type that accepts SloObjectiveCountMetricBadDynatraceArgs and SloObjectiveCountMetricBadDynatraceOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadDynatraceInput` via: +// +// SloObjectiveCountMetricBadDynatraceArgs{...} +type SloObjectiveCountMetricBadDynatraceInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadDynatraceOutput() SloObjectiveCountMetricBadDynatraceOutput + ToSloObjectiveCountMetricBadDynatraceOutputWithContext(context.Context) SloObjectiveCountMetricBadDynatraceOutput } -func (i DirectRedshiftQueryDelayArgs) ToDirectRedshiftQueryDelayOutput() DirectRedshiftQueryDelayOutput { - return i.ToDirectRedshiftQueryDelayOutputWithContext(context.Background()) +type SloObjectiveCountMetricBadDynatraceArgs struct { + // Selector for the metrics + MetricSelector pulumi.StringInput `pulumi:"metricSelector"` } -func (i DirectRedshiftQueryDelayArgs) ToDirectRedshiftQueryDelayOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectRedshiftQueryDelayOutput) +func (SloObjectiveCountMetricBadDynatraceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadDynatrace)(nil)).Elem() } -func (i DirectRedshiftQueryDelayArgs) ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput { - return i.ToDirectRedshiftQueryDelayPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadDynatraceArgs) ToSloObjectiveCountMetricBadDynatraceOutput() SloObjectiveCountMetricBadDynatraceOutput { + return i.ToSloObjectiveCountMetricBadDynatraceOutputWithContext(context.Background()) } -func (i DirectRedshiftQueryDelayArgs) ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectRedshiftQueryDelayOutput).ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx) +func (i SloObjectiveCountMetricBadDynatraceArgs) ToSloObjectiveCountMetricBadDynatraceOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadDynatraceOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadDynatraceOutput) } -// DirectRedshiftQueryDelayPtrInput is an input type that accepts DirectRedshiftQueryDelayArgs, DirectRedshiftQueryDelayPtr and DirectRedshiftQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectRedshiftQueryDelayPtrInput` via: -// -// DirectRedshiftQueryDelayArgs{...} -// -// or: +// SloObjectiveCountMetricBadDynatraceArrayInput is an input type that accepts SloObjectiveCountMetricBadDynatraceArray and SloObjectiveCountMetricBadDynatraceArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadDynatraceArrayInput` via: // -// nil -type DirectRedshiftQueryDelayPtrInput interface { +// SloObjectiveCountMetricBadDynatraceArray{ SloObjectiveCountMetricBadDynatraceArgs{...} } +type SloObjectiveCountMetricBadDynatraceArrayInput interface { pulumi.Input - ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput - ToDirectRedshiftQueryDelayPtrOutputWithContext(context.Context) DirectRedshiftQueryDelayPtrOutput + ToSloObjectiveCountMetricBadDynatraceArrayOutput() SloObjectiveCountMetricBadDynatraceArrayOutput + ToSloObjectiveCountMetricBadDynatraceArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadDynatraceArrayOutput } -type directRedshiftQueryDelayPtrType DirectRedshiftQueryDelayArgs - -func DirectRedshiftQueryDelayPtr(v *DirectRedshiftQueryDelayArgs) DirectRedshiftQueryDelayPtrInput { - return (*directRedshiftQueryDelayPtrType)(v) -} +type SloObjectiveCountMetricBadDynatraceArray []SloObjectiveCountMetricBadDynatraceInput -func (*directRedshiftQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectRedshiftQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadDynatraceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadDynatrace)(nil)).Elem() } -func (i *directRedshiftQueryDelayPtrType) ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput { - return i.ToDirectRedshiftQueryDelayPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadDynatraceArray) ToSloObjectiveCountMetricBadDynatraceArrayOutput() SloObjectiveCountMetricBadDynatraceArrayOutput { + return i.ToSloObjectiveCountMetricBadDynatraceArrayOutputWithContext(context.Background()) } -func (i *directRedshiftQueryDelayPtrType) ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectRedshiftQueryDelayPtrOutput) +func (i SloObjectiveCountMetricBadDynatraceArray) ToSloObjectiveCountMetricBadDynatraceArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadDynatraceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadDynatraceArrayOutput) } -type DirectRedshiftQueryDelayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadDynatraceOutput struct{ *pulumi.OutputState } -func (DirectRedshiftQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectRedshiftQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadDynatraceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadDynatrace)(nil)).Elem() } -func (o DirectRedshiftQueryDelayOutput) ToDirectRedshiftQueryDelayOutput() DirectRedshiftQueryDelayOutput { +func (o SloObjectiveCountMetricBadDynatraceOutput) ToSloObjectiveCountMetricBadDynatraceOutput() SloObjectiveCountMetricBadDynatraceOutput { return o } -func (o DirectRedshiftQueryDelayOutput) ToDirectRedshiftQueryDelayOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayOutput { +func (o SloObjectiveCountMetricBadDynatraceOutput) ToSloObjectiveCountMetricBadDynatraceOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadDynatraceOutput { return o } -func (o DirectRedshiftQueryDelayOutput) ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput { - return o.ToDirectRedshiftQueryDelayPtrOutputWithContext(context.Background()) +// Selector for the metrics +func (o SloObjectiveCountMetricBadDynatraceOutput) MetricSelector() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadDynatrace) string { return v.MetricSelector }).(pulumi.StringOutput) } -func (o DirectRedshiftQueryDelayOutput) ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectRedshiftQueryDelay) *DirectRedshiftQueryDelay { - return &v - }).(DirectRedshiftQueryDelayPtrOutput) -} +type SloObjectiveCountMetricBadDynatraceArrayOutput struct{ *pulumi.OutputState } -// Must be one of Minute or Second. -func (o DirectRedshiftQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectRedshiftQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +func (SloObjectiveCountMetricBadDynatraceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadDynatrace)(nil)).Elem() } -// Must be an integer greater than or equal to 0. -func (o DirectRedshiftQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectRedshiftQueryDelay) int { return v.Value }).(pulumi.IntOutput) +func (o SloObjectiveCountMetricBadDynatraceArrayOutput) ToSloObjectiveCountMetricBadDynatraceArrayOutput() SloObjectiveCountMetricBadDynatraceArrayOutput { + return o } -type DirectRedshiftQueryDelayPtrOutput struct{ *pulumi.OutputState } +func (o SloObjectiveCountMetricBadDynatraceArrayOutput) ToSloObjectiveCountMetricBadDynatraceArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadDynatraceArrayOutput { + return o +} -func (DirectRedshiftQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectRedshiftQueryDelay)(nil)).Elem() +func (o SloObjectiveCountMetricBadDynatraceArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadDynatraceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadDynatrace { + return vs[0].([]SloObjectiveCountMetricBadDynatrace)[vs[1].(int)] + }).(SloObjectiveCountMetricBadDynatraceOutput) } -func (o DirectRedshiftQueryDelayPtrOutput) ToDirectRedshiftQueryDelayPtrOutput() DirectRedshiftQueryDelayPtrOutput { - return o +type SloObjectiveCountMetricBadElasticsearch struct { + // Index of metrics we want to query + Index string `pulumi:"index"` + // Query for the metrics + Query string `pulumi:"query"` } -func (o DirectRedshiftQueryDelayPtrOutput) ToDirectRedshiftQueryDelayPtrOutputWithContext(ctx context.Context) DirectRedshiftQueryDelayPtrOutput { - return o +// SloObjectiveCountMetricBadElasticsearchInput is an input type that accepts SloObjectiveCountMetricBadElasticsearchArgs and SloObjectiveCountMetricBadElasticsearchOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadElasticsearchInput` via: +// +// SloObjectiveCountMetricBadElasticsearchArgs{...} +type SloObjectiveCountMetricBadElasticsearchInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadElasticsearchOutput() SloObjectiveCountMetricBadElasticsearchOutput + ToSloObjectiveCountMetricBadElasticsearchOutputWithContext(context.Context) SloObjectiveCountMetricBadElasticsearchOutput } -func (o DirectRedshiftQueryDelayPtrOutput) Elem() DirectRedshiftQueryDelayOutput { - return o.ApplyT(func(v *DirectRedshiftQueryDelay) DirectRedshiftQueryDelay { - if v != nil { - return *v - } - var ret DirectRedshiftQueryDelay - return ret - }).(DirectRedshiftQueryDelayOutput) +type SloObjectiveCountMetricBadElasticsearchArgs struct { + // Index of metrics we want to query + Index pulumi.StringInput `pulumi:"index"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } -// Must be one of Minute or Second. -func (o DirectRedshiftQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectRedshiftQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) +func (SloObjectiveCountMetricBadElasticsearchArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadElasticsearch)(nil)).Elem() } -// Must be an integer greater than or equal to 0. -func (o DirectRedshiftQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectRedshiftQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +func (i SloObjectiveCountMetricBadElasticsearchArgs) ToSloObjectiveCountMetricBadElasticsearchOutput() SloObjectiveCountMetricBadElasticsearchOutput { + return i.ToSloObjectiveCountMetricBadElasticsearchOutputWithContext(context.Background()) } -type DirectSplunkHistoricalDataRetrieval struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations []DirectSplunkHistoricalDataRetrievalDefaultDuration `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations []DirectSplunkHistoricalDataRetrievalMaxDuration `pulumi:"maxDurations"` +func (i SloObjectiveCountMetricBadElasticsearchArgs) ToSloObjectiveCountMetricBadElasticsearchOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadElasticsearchOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadElasticsearchOutput) } -// DirectSplunkHistoricalDataRetrievalInput is an input type that accepts DirectSplunkHistoricalDataRetrievalArgs and DirectSplunkHistoricalDataRetrievalOutput values. -// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalInput` via: +// SloObjectiveCountMetricBadElasticsearchArrayInput is an input type that accepts SloObjectiveCountMetricBadElasticsearchArray and SloObjectiveCountMetricBadElasticsearchArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadElasticsearchArrayInput` via: // -// DirectSplunkHistoricalDataRetrievalArgs{...} -type DirectSplunkHistoricalDataRetrievalInput interface { +// SloObjectiveCountMetricBadElasticsearchArray{ SloObjectiveCountMetricBadElasticsearchArgs{...} } +type SloObjectiveCountMetricBadElasticsearchArrayInput interface { pulumi.Input - ToDirectSplunkHistoricalDataRetrievalOutput() DirectSplunkHistoricalDataRetrievalOutput - ToDirectSplunkHistoricalDataRetrievalOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalOutput + ToSloObjectiveCountMetricBadElasticsearchArrayOutput() SloObjectiveCountMetricBadElasticsearchArrayOutput + ToSloObjectiveCountMetricBadElasticsearchArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadElasticsearchArrayOutput } -type DirectSplunkHistoricalDataRetrievalArgs struct { - // Used by default for any SLOs connected to this data source. - DefaultDurations DirectSplunkHistoricalDataRetrievalDefaultDurationArrayInput `pulumi:"defaultDurations"` - // Defines the maximum period for which data can be retrieved. - MaxDurations DirectSplunkHistoricalDataRetrievalMaxDurationArrayInput `pulumi:"maxDurations"` +type SloObjectiveCountMetricBadElasticsearchArray []SloObjectiveCountMetricBadElasticsearchInput + +func (SloObjectiveCountMetricBadElasticsearchArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadElasticsearch)(nil)).Elem() } -func (DirectSplunkHistoricalDataRetrievalArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkHistoricalDataRetrieval)(nil)).Elem() +func (i SloObjectiveCountMetricBadElasticsearchArray) ToSloObjectiveCountMetricBadElasticsearchArrayOutput() SloObjectiveCountMetricBadElasticsearchArrayOutput { + return i.ToSloObjectiveCountMetricBadElasticsearchArrayOutputWithContext(context.Background()) } -func (i DirectSplunkHistoricalDataRetrievalArgs) ToDirectSplunkHistoricalDataRetrievalOutput() DirectSplunkHistoricalDataRetrievalOutput { - return i.ToDirectSplunkHistoricalDataRetrievalOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadElasticsearchArray) ToSloObjectiveCountMetricBadElasticsearchArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadElasticsearchArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadElasticsearchArrayOutput) } -func (i DirectSplunkHistoricalDataRetrievalArgs) ToDirectSplunkHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalOutput) +type SloObjectiveCountMetricBadElasticsearchOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadElasticsearchOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadElasticsearch)(nil)).Elem() } -func (i DirectSplunkHistoricalDataRetrievalArgs) ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput { - return i.ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadElasticsearchOutput) ToSloObjectiveCountMetricBadElasticsearchOutput() SloObjectiveCountMetricBadElasticsearchOutput { + return o } -func (i DirectSplunkHistoricalDataRetrievalArgs) ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalOutput).ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx) +func (o SloObjectiveCountMetricBadElasticsearchOutput) ToSloObjectiveCountMetricBadElasticsearchOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadElasticsearchOutput { + return o } -// DirectSplunkHistoricalDataRetrievalPtrInput is an input type that accepts DirectSplunkHistoricalDataRetrievalArgs, DirectSplunkHistoricalDataRetrievalPtr and DirectSplunkHistoricalDataRetrievalPtrOutput values. -// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalPtrInput` via: -// -// DirectSplunkHistoricalDataRetrievalArgs{...} -// -// or: -// -// nil -type DirectSplunkHistoricalDataRetrievalPtrInput interface { - pulumi.Input +// Index of metrics we want to query +func (o SloObjectiveCountMetricBadElasticsearchOutput) Index() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadElasticsearch) string { return v.Index }).(pulumi.StringOutput) +} - ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput - ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput +// Query for the metrics +func (o SloObjectiveCountMetricBadElasticsearchOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadElasticsearch) string { return v.Query }).(pulumi.StringOutput) } -type directSplunkHistoricalDataRetrievalPtrType DirectSplunkHistoricalDataRetrievalArgs +type SloObjectiveCountMetricBadElasticsearchArrayOutput struct{ *pulumi.OutputState } -func DirectSplunkHistoricalDataRetrievalPtr(v *DirectSplunkHistoricalDataRetrievalArgs) DirectSplunkHistoricalDataRetrievalPtrInput { - return (*directSplunkHistoricalDataRetrievalPtrType)(v) +func (SloObjectiveCountMetricBadElasticsearchArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadElasticsearch)(nil)).Elem() } -func (*directSplunkHistoricalDataRetrievalPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectSplunkHistoricalDataRetrieval)(nil)).Elem() +func (o SloObjectiveCountMetricBadElasticsearchArrayOutput) ToSloObjectiveCountMetricBadElasticsearchArrayOutput() SloObjectiveCountMetricBadElasticsearchArrayOutput { + return o } -func (i *directSplunkHistoricalDataRetrievalPtrType) ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput { - return i.ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadElasticsearchArrayOutput) ToSloObjectiveCountMetricBadElasticsearchArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadElasticsearchArrayOutput { + return o } -func (i *directSplunkHistoricalDataRetrievalPtrType) ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalPtrOutput) +func (o SloObjectiveCountMetricBadElasticsearchArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadElasticsearchOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadElasticsearch { + return vs[0].([]SloObjectiveCountMetricBadElasticsearch)[vs[1].(int)] + }).(SloObjectiveCountMetricBadElasticsearchOutput) } -type DirectSplunkHistoricalDataRetrievalOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadGcm struct { + // Project ID + ProjectId string `pulumi:"projectId"` + // Query for the metrics + Query string `pulumi:"query"` +} -func (DirectSplunkHistoricalDataRetrievalOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkHistoricalDataRetrieval)(nil)).Elem() +// SloObjectiveCountMetricBadGcmInput is an input type that accepts SloObjectiveCountMetricBadGcmArgs and SloObjectiveCountMetricBadGcmOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadGcmInput` via: +// +// SloObjectiveCountMetricBadGcmArgs{...} +type SloObjectiveCountMetricBadGcmInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadGcmOutput() SloObjectiveCountMetricBadGcmOutput + ToSloObjectiveCountMetricBadGcmOutputWithContext(context.Context) SloObjectiveCountMetricBadGcmOutput } -func (o DirectSplunkHistoricalDataRetrievalOutput) ToDirectSplunkHistoricalDataRetrievalOutput() DirectSplunkHistoricalDataRetrievalOutput { - return o +type SloObjectiveCountMetricBadGcmArgs struct { + // Project ID + ProjectId pulumi.StringInput `pulumi:"projectId"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } -func (o DirectSplunkHistoricalDataRetrievalOutput) ToDirectSplunkHistoricalDataRetrievalOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalOutput { - return o +func (SloObjectiveCountMetricBadGcmArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadGcm)(nil)).Elem() } -func (o DirectSplunkHistoricalDataRetrievalOutput) ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput { - return o.ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadGcmArgs) ToSloObjectiveCountMetricBadGcmOutput() SloObjectiveCountMetricBadGcmOutput { + return i.ToSloObjectiveCountMetricBadGcmOutputWithContext(context.Background()) } -func (o DirectSplunkHistoricalDataRetrievalOutput) ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectSplunkHistoricalDataRetrieval) *DirectSplunkHistoricalDataRetrieval { - return &v - }).(DirectSplunkHistoricalDataRetrievalPtrOutput) +func (i SloObjectiveCountMetricBadGcmArgs) ToSloObjectiveCountMetricBadGcmOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGcmOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadGcmOutput) +} + +// SloObjectiveCountMetricBadGcmArrayInput is an input type that accepts SloObjectiveCountMetricBadGcmArray and SloObjectiveCountMetricBadGcmArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadGcmArrayInput` via: +// +// SloObjectiveCountMetricBadGcmArray{ SloObjectiveCountMetricBadGcmArgs{...} } +type SloObjectiveCountMetricBadGcmArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadGcmArrayOutput() SloObjectiveCountMetricBadGcmArrayOutput + ToSloObjectiveCountMetricBadGcmArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadGcmArrayOutput +} + +type SloObjectiveCountMetricBadGcmArray []SloObjectiveCountMetricBadGcmInput + +func (SloObjectiveCountMetricBadGcmArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadGcm)(nil)).Elem() } -// Used by default for any SLOs connected to this data source. -func (o DirectSplunkHistoricalDataRetrievalOutput) DefaultDurations() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v DirectSplunkHistoricalDataRetrieval) []DirectSplunkHistoricalDataRetrievalDefaultDuration { - return v.DefaultDurations - }).(DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) +func (i SloObjectiveCountMetricBadGcmArray) ToSloObjectiveCountMetricBadGcmArrayOutput() SloObjectiveCountMetricBadGcmArrayOutput { + return i.ToSloObjectiveCountMetricBadGcmArrayOutputWithContext(context.Background()) } -// Defines the maximum period for which data can be retrieved. -func (o DirectSplunkHistoricalDataRetrievalOutput) MaxDurations() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v DirectSplunkHistoricalDataRetrieval) []DirectSplunkHistoricalDataRetrievalMaxDuration { - return v.MaxDurations - }).(DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) +func (i SloObjectiveCountMetricBadGcmArray) ToSloObjectiveCountMetricBadGcmArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGcmArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadGcmArrayOutput) } -type DirectSplunkHistoricalDataRetrievalPtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadGcmOutput struct{ *pulumi.OutputState } -func (DirectSplunkHistoricalDataRetrievalPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectSplunkHistoricalDataRetrieval)(nil)).Elem() +func (SloObjectiveCountMetricBadGcmOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadGcm)(nil)).Elem() } -func (o DirectSplunkHistoricalDataRetrievalPtrOutput) ToDirectSplunkHistoricalDataRetrievalPtrOutput() DirectSplunkHistoricalDataRetrievalPtrOutput { +func (o SloObjectiveCountMetricBadGcmOutput) ToSloObjectiveCountMetricBadGcmOutput() SloObjectiveCountMetricBadGcmOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalPtrOutput) ToDirectSplunkHistoricalDataRetrievalPtrOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalPtrOutput { +func (o SloObjectiveCountMetricBadGcmOutput) ToSloObjectiveCountMetricBadGcmOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGcmOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalPtrOutput) Elem() DirectSplunkHistoricalDataRetrievalOutput { - return o.ApplyT(func(v *DirectSplunkHistoricalDataRetrieval) DirectSplunkHistoricalDataRetrieval { - if v != nil { - return *v - } - var ret DirectSplunkHistoricalDataRetrieval - return ret - }).(DirectSplunkHistoricalDataRetrievalOutput) +// Project ID +func (o SloObjectiveCountMetricBadGcmOutput) ProjectId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadGcm) string { return v.ProjectId }).(pulumi.StringOutput) } -// Used by default for any SLOs connected to this data source. -func (o DirectSplunkHistoricalDataRetrievalPtrOutput) DefaultDurations() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { - return o.ApplyT(func(v *DirectSplunkHistoricalDataRetrieval) []DirectSplunkHistoricalDataRetrievalDefaultDuration { - if v == nil { - return nil - } - return v.DefaultDurations - }).(DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) +// Query for the metrics +func (o SloObjectiveCountMetricBadGcmOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadGcm) string { return v.Query }).(pulumi.StringOutput) } -// Defines the maximum period for which data can be retrieved. -func (o DirectSplunkHistoricalDataRetrievalPtrOutput) MaxDurations() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { - return o.ApplyT(func(v *DirectSplunkHistoricalDataRetrieval) []DirectSplunkHistoricalDataRetrievalMaxDuration { - if v == nil { - return nil - } - return v.MaxDurations - }).(DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) +type SloObjectiveCountMetricBadGcmArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadGcmArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadGcm)(nil)).Elem() } -type DirectSplunkHistoricalDataRetrievalDefaultDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +func (o SloObjectiveCountMetricBadGcmArrayOutput) ToSloObjectiveCountMetricBadGcmArrayOutput() SloObjectiveCountMetricBadGcmArrayOutput { + return o } -// DirectSplunkHistoricalDataRetrievalDefaultDurationInput is an input type that accepts DirectSplunkHistoricalDataRetrievalDefaultDurationArgs and DirectSplunkHistoricalDataRetrievalDefaultDurationOutput values. -// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalDefaultDurationInput` via: +func (o SloObjectiveCountMetricBadGcmArrayOutput) ToSloObjectiveCountMetricBadGcmArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGcmArrayOutput { + return o +} + +func (o SloObjectiveCountMetricBadGcmArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadGcmOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadGcm { + return vs[0].([]SloObjectiveCountMetricBadGcm)[vs[1].(int)] + }).(SloObjectiveCountMetricBadGcmOutput) +} + +type SloObjectiveCountMetricBadGrafanaLoki struct { + // Query for the logs + Logql string `pulumi:"logql"` +} + +// SloObjectiveCountMetricBadGrafanaLokiInput is an input type that accepts SloObjectiveCountMetricBadGrafanaLokiArgs and SloObjectiveCountMetricBadGrafanaLokiOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadGrafanaLokiInput` via: // -// DirectSplunkHistoricalDataRetrievalDefaultDurationArgs{...} -type DirectSplunkHistoricalDataRetrievalDefaultDurationInput interface { +// SloObjectiveCountMetricBadGrafanaLokiArgs{...} +type SloObjectiveCountMetricBadGrafanaLokiInput interface { pulumi.Input - ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationOutput - ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationOutput + ToSloObjectiveCountMetricBadGrafanaLokiOutput() SloObjectiveCountMetricBadGrafanaLokiOutput + ToSloObjectiveCountMetricBadGrafanaLokiOutputWithContext(context.Context) SloObjectiveCountMetricBadGrafanaLokiOutput } -type DirectSplunkHistoricalDataRetrievalDefaultDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadGrafanaLokiArgs struct { + // Query for the logs + Logql pulumi.StringInput `pulumi:"logql"` } -func (DirectSplunkHistoricalDataRetrievalDefaultDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadGrafanaLokiArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadGrafanaLoki)(nil)).Elem() } -func (i DirectSplunkHistoricalDataRetrievalDefaultDurationArgs) ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { - return i.ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadGrafanaLokiArgs) ToSloObjectiveCountMetricBadGrafanaLokiOutput() SloObjectiveCountMetricBadGrafanaLokiOutput { + return i.ToSloObjectiveCountMetricBadGrafanaLokiOutputWithContext(context.Background()) } -func (i DirectSplunkHistoricalDataRetrievalDefaultDurationArgs) ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) +func (i SloObjectiveCountMetricBadGrafanaLokiArgs) ToSloObjectiveCountMetricBadGrafanaLokiOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGrafanaLokiOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadGrafanaLokiOutput) } -// DirectSplunkHistoricalDataRetrievalDefaultDurationArrayInput is an input type that accepts DirectSplunkHistoricalDataRetrievalDefaultDurationArray and DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput values. -// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalDefaultDurationArrayInput` via: +// SloObjectiveCountMetricBadGrafanaLokiArrayInput is an input type that accepts SloObjectiveCountMetricBadGrafanaLokiArray and SloObjectiveCountMetricBadGrafanaLokiArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadGrafanaLokiArrayInput` via: // -// DirectSplunkHistoricalDataRetrievalDefaultDurationArray{ DirectSplunkHistoricalDataRetrievalDefaultDurationArgs{...} } -type DirectSplunkHistoricalDataRetrievalDefaultDurationArrayInput interface { +// SloObjectiveCountMetricBadGrafanaLokiArray{ SloObjectiveCountMetricBadGrafanaLokiArgs{...} } +type SloObjectiveCountMetricBadGrafanaLokiArrayInput interface { pulumi.Input - ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput - ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput + ToSloObjectiveCountMetricBadGrafanaLokiArrayOutput() SloObjectiveCountMetricBadGrafanaLokiArrayOutput + ToSloObjectiveCountMetricBadGrafanaLokiArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadGrafanaLokiArrayOutput } -type DirectSplunkHistoricalDataRetrievalDefaultDurationArray []DirectSplunkHistoricalDataRetrievalDefaultDurationInput +type SloObjectiveCountMetricBadGrafanaLokiArray []SloObjectiveCountMetricBadGrafanaLokiInput -func (DirectSplunkHistoricalDataRetrievalDefaultDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectSplunkHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadGrafanaLokiArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadGrafanaLoki)(nil)).Elem() } -func (i DirectSplunkHistoricalDataRetrievalDefaultDurationArray) ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { - return i.ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadGrafanaLokiArray) ToSloObjectiveCountMetricBadGrafanaLokiArrayOutput() SloObjectiveCountMetricBadGrafanaLokiArrayOutput { + return i.ToSloObjectiveCountMetricBadGrafanaLokiArrayOutputWithContext(context.Background()) } -func (i DirectSplunkHistoricalDataRetrievalDefaultDurationArray) ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) +func (i SloObjectiveCountMetricBadGrafanaLokiArray) ToSloObjectiveCountMetricBadGrafanaLokiArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGrafanaLokiArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadGrafanaLokiArrayOutput) } -type DirectSplunkHistoricalDataRetrievalDefaultDurationOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadGrafanaLokiOutput struct{ *pulumi.OutputState } -func (DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadGrafanaLokiOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadGrafanaLoki)(nil)).Elem() } -func (o DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { +func (o SloObjectiveCountMetricBadGrafanaLokiOutput) ToSloObjectiveCountMetricBadGrafanaLokiOutput() SloObjectiveCountMetricBadGrafanaLokiOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) ToDirectSplunkHistoricalDataRetrievalDefaultDurationOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { +func (o SloObjectiveCountMetricBadGrafanaLokiOutput) ToSloObjectiveCountMetricBadGrafanaLokiOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGrafanaLokiOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectSplunkHistoricalDataRetrievalDefaultDuration) string { return v.Unit }).(pulumi.StringOutput) -} - -func (o DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectSplunkHistoricalDataRetrievalDefaultDuration) int { return v.Value }).(pulumi.IntOutput) +// Query for the logs +func (o SloObjectiveCountMetricBadGrafanaLokiOutput) Logql() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadGrafanaLoki) string { return v.Logql }).(pulumi.StringOutput) } -type DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadGrafanaLokiArrayOutput struct{ *pulumi.OutputState } -func (DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectSplunkHistoricalDataRetrievalDefaultDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadGrafanaLokiArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadGrafanaLoki)(nil)).Elem() } -func (o DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput() DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o SloObjectiveCountMetricBadGrafanaLokiArrayOutput) ToSloObjectiveCountMetricBadGrafanaLokiArrayOutput() SloObjectiveCountMetricBadGrafanaLokiArrayOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) ToDirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput { +func (o SloObjectiveCountMetricBadGrafanaLokiArrayOutput) ToSloObjectiveCountMetricBadGrafanaLokiArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGrafanaLokiArrayOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalDefaultDurationArrayOutput) Index(i pulumi.IntInput) DirectSplunkHistoricalDataRetrievalDefaultDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectSplunkHistoricalDataRetrievalDefaultDuration { - return vs[0].([]DirectSplunkHistoricalDataRetrievalDefaultDuration)[vs[1].(int)] - }).(DirectSplunkHistoricalDataRetrievalDefaultDurationOutput) +func (o SloObjectiveCountMetricBadGrafanaLokiArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadGrafanaLokiOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadGrafanaLoki { + return vs[0].([]SloObjectiveCountMetricBadGrafanaLoki)[vs[1].(int)] + }).(SloObjectiveCountMetricBadGrafanaLokiOutput) } -type DirectSplunkHistoricalDataRetrievalMaxDuration struct { - Unit string `pulumi:"unit"` - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadGraphite struct { + // Path to the metrics + MetricPath string `pulumi:"metricPath"` } -// DirectSplunkHistoricalDataRetrievalMaxDurationInput is an input type that accepts DirectSplunkHistoricalDataRetrievalMaxDurationArgs and DirectSplunkHistoricalDataRetrievalMaxDurationOutput values. -// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalMaxDurationInput` via: +// SloObjectiveCountMetricBadGraphiteInput is an input type that accepts SloObjectiveCountMetricBadGraphiteArgs and SloObjectiveCountMetricBadGraphiteOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadGraphiteInput` via: // -// DirectSplunkHistoricalDataRetrievalMaxDurationArgs{...} -type DirectSplunkHistoricalDataRetrievalMaxDurationInput interface { +// SloObjectiveCountMetricBadGraphiteArgs{...} +type SloObjectiveCountMetricBadGraphiteInput interface { pulumi.Input - ToDirectSplunkHistoricalDataRetrievalMaxDurationOutput() DirectSplunkHistoricalDataRetrievalMaxDurationOutput - ToDirectSplunkHistoricalDataRetrievalMaxDurationOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationOutput + ToSloObjectiveCountMetricBadGraphiteOutput() SloObjectiveCountMetricBadGraphiteOutput + ToSloObjectiveCountMetricBadGraphiteOutputWithContext(context.Context) SloObjectiveCountMetricBadGraphiteOutput } -type DirectSplunkHistoricalDataRetrievalMaxDurationArgs struct { - Unit pulumi.StringInput `pulumi:"unit"` - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadGraphiteArgs struct { + // Path to the metrics + MetricPath pulumi.StringInput `pulumi:"metricPath"` } -func (DirectSplunkHistoricalDataRetrievalMaxDurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadGraphiteArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadGraphite)(nil)).Elem() } -func (i DirectSplunkHistoricalDataRetrievalMaxDurationArgs) ToDirectSplunkHistoricalDataRetrievalMaxDurationOutput() DirectSplunkHistoricalDataRetrievalMaxDurationOutput { - return i.ToDirectSplunkHistoricalDataRetrievalMaxDurationOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadGraphiteArgs) ToSloObjectiveCountMetricBadGraphiteOutput() SloObjectiveCountMetricBadGraphiteOutput { + return i.ToSloObjectiveCountMetricBadGraphiteOutputWithContext(context.Background()) } -func (i DirectSplunkHistoricalDataRetrievalMaxDurationArgs) ToDirectSplunkHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalMaxDurationOutput) +func (i SloObjectiveCountMetricBadGraphiteArgs) ToSloObjectiveCountMetricBadGraphiteOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGraphiteOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadGraphiteOutput) } -// DirectSplunkHistoricalDataRetrievalMaxDurationArrayInput is an input type that accepts DirectSplunkHistoricalDataRetrievalMaxDurationArray and DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput values. -// You can construct a concrete instance of `DirectSplunkHistoricalDataRetrievalMaxDurationArrayInput` via: +// SloObjectiveCountMetricBadGraphiteArrayInput is an input type that accepts SloObjectiveCountMetricBadGraphiteArray and SloObjectiveCountMetricBadGraphiteArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadGraphiteArrayInput` via: // -// DirectSplunkHistoricalDataRetrievalMaxDurationArray{ DirectSplunkHistoricalDataRetrievalMaxDurationArgs{...} } -type DirectSplunkHistoricalDataRetrievalMaxDurationArrayInput interface { +// SloObjectiveCountMetricBadGraphiteArray{ SloObjectiveCountMetricBadGraphiteArgs{...} } +type SloObjectiveCountMetricBadGraphiteArrayInput interface { pulumi.Input - ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput - ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput + ToSloObjectiveCountMetricBadGraphiteArrayOutput() SloObjectiveCountMetricBadGraphiteArrayOutput + ToSloObjectiveCountMetricBadGraphiteArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadGraphiteArrayOutput } -type DirectSplunkHistoricalDataRetrievalMaxDurationArray []DirectSplunkHistoricalDataRetrievalMaxDurationInput +type SloObjectiveCountMetricBadGraphiteArray []SloObjectiveCountMetricBadGraphiteInput -func (DirectSplunkHistoricalDataRetrievalMaxDurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectSplunkHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadGraphiteArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadGraphite)(nil)).Elem() } -func (i DirectSplunkHistoricalDataRetrievalMaxDurationArray) ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { - return i.ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadGraphiteArray) ToSloObjectiveCountMetricBadGraphiteArrayOutput() SloObjectiveCountMetricBadGraphiteArrayOutput { + return i.ToSloObjectiveCountMetricBadGraphiteArrayOutputWithContext(context.Background()) } -func (i DirectSplunkHistoricalDataRetrievalMaxDurationArray) ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) +func (i SloObjectiveCountMetricBadGraphiteArray) ToSloObjectiveCountMetricBadGraphiteArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGraphiteArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadGraphiteArrayOutput) } -type DirectSplunkHistoricalDataRetrievalMaxDurationOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadGraphiteOutput struct{ *pulumi.OutputState } -func (DirectSplunkHistoricalDataRetrievalMaxDurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadGraphiteOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadGraphite)(nil)).Elem() } -func (o DirectSplunkHistoricalDataRetrievalMaxDurationOutput) ToDirectSplunkHistoricalDataRetrievalMaxDurationOutput() DirectSplunkHistoricalDataRetrievalMaxDurationOutput { +func (o SloObjectiveCountMetricBadGraphiteOutput) ToSloObjectiveCountMetricBadGraphiteOutput() SloObjectiveCountMetricBadGraphiteOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalMaxDurationOutput) ToDirectSplunkHistoricalDataRetrievalMaxDurationOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationOutput { +func (o SloObjectiveCountMetricBadGraphiteOutput) ToSloObjectiveCountMetricBadGraphiteOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGraphiteOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalMaxDurationOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectSplunkHistoricalDataRetrievalMaxDuration) string { return v.Unit }).(pulumi.StringOutput) -} - -func (o DirectSplunkHistoricalDataRetrievalMaxDurationOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectSplunkHistoricalDataRetrievalMaxDuration) int { return v.Value }).(pulumi.IntOutput) +// Path to the metrics +func (o SloObjectiveCountMetricBadGraphiteOutput) MetricPath() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadGraphite) string { return v.MetricPath }).(pulumi.StringOutput) } -type DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadGraphiteArrayOutput struct{ *pulumi.OutputState } -func (DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]DirectSplunkHistoricalDataRetrievalMaxDuration)(nil)).Elem() +func (SloObjectiveCountMetricBadGraphiteArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadGraphite)(nil)).Elem() } -func (o DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput() DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { +func (o SloObjectiveCountMetricBadGraphiteArrayOutput) ToSloObjectiveCountMetricBadGraphiteArrayOutput() SloObjectiveCountMetricBadGraphiteArrayOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) ToDirectSplunkHistoricalDataRetrievalMaxDurationArrayOutputWithContext(ctx context.Context) DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput { +func (o SloObjectiveCountMetricBadGraphiteArrayOutput) ToSloObjectiveCountMetricBadGraphiteArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadGraphiteArrayOutput { return o } -func (o DirectSplunkHistoricalDataRetrievalMaxDurationArrayOutput) Index(i pulumi.IntInput) DirectSplunkHistoricalDataRetrievalMaxDurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) DirectSplunkHistoricalDataRetrievalMaxDuration { - return vs[0].([]DirectSplunkHistoricalDataRetrievalMaxDuration)[vs[1].(int)] - }).(DirectSplunkHistoricalDataRetrievalMaxDurationOutput) +func (o SloObjectiveCountMetricBadGraphiteArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadGraphiteOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadGraphite { + return vs[0].([]SloObjectiveCountMetricBadGraphite)[vs[1].(int)] + }).(SloObjectiveCountMetricBadGraphiteOutput) } -type DirectSplunkObservabilityQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadHoneycomb struct { + // Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + Attribute *string `pulumi:"attribute"` + // Calculation type + Calculation string `pulumi:"calculation"` } -// DirectSplunkObservabilityQueryDelayInput is an input type that accepts DirectSplunkObservabilityQueryDelayArgs and DirectSplunkObservabilityQueryDelayOutput values. -// You can construct a concrete instance of `DirectSplunkObservabilityQueryDelayInput` via: +// SloObjectiveCountMetricBadHoneycombInput is an input type that accepts SloObjectiveCountMetricBadHoneycombArgs and SloObjectiveCountMetricBadHoneycombOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadHoneycombInput` via: // -// DirectSplunkObservabilityQueryDelayArgs{...} -type DirectSplunkObservabilityQueryDelayInput interface { +// SloObjectiveCountMetricBadHoneycombArgs{...} +type SloObjectiveCountMetricBadHoneycombInput interface { pulumi.Input - ToDirectSplunkObservabilityQueryDelayOutput() DirectSplunkObservabilityQueryDelayOutput - ToDirectSplunkObservabilityQueryDelayOutputWithContext(context.Context) DirectSplunkObservabilityQueryDelayOutput + ToSloObjectiveCountMetricBadHoneycombOutput() SloObjectiveCountMetricBadHoneycombOutput + ToSloObjectiveCountMetricBadHoneycombOutputWithContext(context.Context) SloObjectiveCountMetricBadHoneycombOutput } -type DirectSplunkObservabilityQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadHoneycombArgs struct { + // Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + Attribute pulumi.StringPtrInput `pulumi:"attribute"` + // Calculation type + Calculation pulumi.StringInput `pulumi:"calculation"` } -func (DirectSplunkObservabilityQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkObservabilityQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadHoneycombArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadHoneycomb)(nil)).Elem() } -func (i DirectSplunkObservabilityQueryDelayArgs) ToDirectSplunkObservabilityQueryDelayOutput() DirectSplunkObservabilityQueryDelayOutput { - return i.ToDirectSplunkObservabilityQueryDelayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadHoneycombArgs) ToSloObjectiveCountMetricBadHoneycombOutput() SloObjectiveCountMetricBadHoneycombOutput { + return i.ToSloObjectiveCountMetricBadHoneycombOutputWithContext(context.Background()) } -func (i DirectSplunkObservabilityQueryDelayArgs) ToDirectSplunkObservabilityQueryDelayOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkObservabilityQueryDelayOutput) +func (i SloObjectiveCountMetricBadHoneycombArgs) ToSloObjectiveCountMetricBadHoneycombOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadHoneycombOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadHoneycombOutput) } -func (i DirectSplunkObservabilityQueryDelayArgs) ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput { - return i.ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(context.Background()) +// SloObjectiveCountMetricBadHoneycombArrayInput is an input type that accepts SloObjectiveCountMetricBadHoneycombArray and SloObjectiveCountMetricBadHoneycombArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadHoneycombArrayInput` via: +// +// SloObjectiveCountMetricBadHoneycombArray{ SloObjectiveCountMetricBadHoneycombArgs{...} } +type SloObjectiveCountMetricBadHoneycombArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadHoneycombArrayOutput() SloObjectiveCountMetricBadHoneycombArrayOutput + ToSloObjectiveCountMetricBadHoneycombArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadHoneycombArrayOutput } -func (i DirectSplunkObservabilityQueryDelayArgs) ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkObservabilityQueryDelayOutput).ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx) +type SloObjectiveCountMetricBadHoneycombArray []SloObjectiveCountMetricBadHoneycombInput + +func (SloObjectiveCountMetricBadHoneycombArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadHoneycomb)(nil)).Elem() } -// DirectSplunkObservabilityQueryDelayPtrInput is an input type that accepts DirectSplunkObservabilityQueryDelayArgs, DirectSplunkObservabilityQueryDelayPtr and DirectSplunkObservabilityQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectSplunkObservabilityQueryDelayPtrInput` via: -// -// DirectSplunkObservabilityQueryDelayArgs{...} -// -// or: -// -// nil -type DirectSplunkObservabilityQueryDelayPtrInput interface { - pulumi.Input +func (i SloObjectiveCountMetricBadHoneycombArray) ToSloObjectiveCountMetricBadHoneycombArrayOutput() SloObjectiveCountMetricBadHoneycombArrayOutput { + return i.ToSloObjectiveCountMetricBadHoneycombArrayOutputWithContext(context.Background()) +} - ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput - ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(context.Context) DirectSplunkObservabilityQueryDelayPtrOutput +func (i SloObjectiveCountMetricBadHoneycombArray) ToSloObjectiveCountMetricBadHoneycombArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadHoneycombArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadHoneycombArrayOutput) } -type directSplunkObservabilityQueryDelayPtrType DirectSplunkObservabilityQueryDelayArgs +type SloObjectiveCountMetricBadHoneycombOutput struct{ *pulumi.OutputState } -func DirectSplunkObservabilityQueryDelayPtr(v *DirectSplunkObservabilityQueryDelayArgs) DirectSplunkObservabilityQueryDelayPtrInput { - return (*directSplunkObservabilityQueryDelayPtrType)(v) +func (SloObjectiveCountMetricBadHoneycombOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadHoneycomb)(nil)).Elem() } -func (*directSplunkObservabilityQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectSplunkObservabilityQueryDelay)(nil)).Elem() +func (o SloObjectiveCountMetricBadHoneycombOutput) ToSloObjectiveCountMetricBadHoneycombOutput() SloObjectiveCountMetricBadHoneycombOutput { + return o } -func (i *directSplunkObservabilityQueryDelayPtrType) ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput { - return i.ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadHoneycombOutput) ToSloObjectiveCountMetricBadHoneycombOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadHoneycombOutput { + return o } -func (i *directSplunkObservabilityQueryDelayPtrType) ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkObservabilityQueryDelayPtrOutput) +// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' +func (o SloObjectiveCountMetricBadHoneycombOutput) Attribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadHoneycomb) *string { return v.Attribute }).(pulumi.StringPtrOutput) } -type DirectSplunkObservabilityQueryDelayOutput struct{ *pulumi.OutputState } +// Calculation type +func (o SloObjectiveCountMetricBadHoneycombOutput) Calculation() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadHoneycomb) string { return v.Calculation }).(pulumi.StringOutput) +} -func (DirectSplunkObservabilityQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkObservabilityQueryDelay)(nil)).Elem() +type SloObjectiveCountMetricBadHoneycombArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadHoneycombArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadHoneycomb)(nil)).Elem() } -func (o DirectSplunkObservabilityQueryDelayOutput) ToDirectSplunkObservabilityQueryDelayOutput() DirectSplunkObservabilityQueryDelayOutput { +func (o SloObjectiveCountMetricBadHoneycombArrayOutput) ToSloObjectiveCountMetricBadHoneycombArrayOutput() SloObjectiveCountMetricBadHoneycombArrayOutput { return o } -func (o DirectSplunkObservabilityQueryDelayOutput) ToDirectSplunkObservabilityQueryDelayOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayOutput { +func (o SloObjectiveCountMetricBadHoneycombArrayOutput) ToSloObjectiveCountMetricBadHoneycombArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadHoneycombArrayOutput { return o } -func (o DirectSplunkObservabilityQueryDelayOutput) ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput { - return o.ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadHoneycombArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadHoneycombOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadHoneycomb { + return vs[0].([]SloObjectiveCountMetricBadHoneycomb)[vs[1].(int)] + }).(SloObjectiveCountMetricBadHoneycombOutput) } -func (o DirectSplunkObservabilityQueryDelayOutput) ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectSplunkObservabilityQueryDelay) *DirectSplunkObservabilityQueryDelay { - return &v - }).(DirectSplunkObservabilityQueryDelayPtrOutput) +type SloObjectiveCountMetricBadInfluxdb struct { + // Query for the metrics + Query string `pulumi:"query"` } -// Must be one of Minute or Second. -func (o DirectSplunkObservabilityQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectSplunkObservabilityQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +// SloObjectiveCountMetricBadInfluxdbInput is an input type that accepts SloObjectiveCountMetricBadInfluxdbArgs and SloObjectiveCountMetricBadInfluxdbOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInfluxdbInput` via: +// +// SloObjectiveCountMetricBadInfluxdbArgs{...} +type SloObjectiveCountMetricBadInfluxdbInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadInfluxdbOutput() SloObjectiveCountMetricBadInfluxdbOutput + ToSloObjectiveCountMetricBadInfluxdbOutputWithContext(context.Context) SloObjectiveCountMetricBadInfluxdbOutput } -// Must be an integer greater than or equal to 0. -func (o DirectSplunkObservabilityQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectSplunkObservabilityQueryDelay) int { return v.Value }).(pulumi.IntOutput) +type SloObjectiveCountMetricBadInfluxdbArgs struct { + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } -type DirectSplunkObservabilityQueryDelayPtrOutput struct{ *pulumi.OutputState } +func (SloObjectiveCountMetricBadInfluxdbArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInfluxdb)(nil)).Elem() +} -func (DirectSplunkObservabilityQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectSplunkObservabilityQueryDelay)(nil)).Elem() +func (i SloObjectiveCountMetricBadInfluxdbArgs) ToSloObjectiveCountMetricBadInfluxdbOutput() SloObjectiveCountMetricBadInfluxdbOutput { + return i.ToSloObjectiveCountMetricBadInfluxdbOutputWithContext(context.Background()) } -func (o DirectSplunkObservabilityQueryDelayPtrOutput) ToDirectSplunkObservabilityQueryDelayPtrOutput() DirectSplunkObservabilityQueryDelayPtrOutput { - return o +func (i SloObjectiveCountMetricBadInfluxdbArgs) ToSloObjectiveCountMetricBadInfluxdbOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInfluxdbOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInfluxdbOutput) } -func (o DirectSplunkObservabilityQueryDelayPtrOutput) ToDirectSplunkObservabilityQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkObservabilityQueryDelayPtrOutput { - return o +// SloObjectiveCountMetricBadInfluxdbArrayInput is an input type that accepts SloObjectiveCountMetricBadInfluxdbArray and SloObjectiveCountMetricBadInfluxdbArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInfluxdbArrayInput` via: +// +// SloObjectiveCountMetricBadInfluxdbArray{ SloObjectiveCountMetricBadInfluxdbArgs{...} } +type SloObjectiveCountMetricBadInfluxdbArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadInfluxdbArrayOutput() SloObjectiveCountMetricBadInfluxdbArrayOutput + ToSloObjectiveCountMetricBadInfluxdbArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadInfluxdbArrayOutput } -func (o DirectSplunkObservabilityQueryDelayPtrOutput) Elem() DirectSplunkObservabilityQueryDelayOutput { - return o.ApplyT(func(v *DirectSplunkObservabilityQueryDelay) DirectSplunkObservabilityQueryDelay { - if v != nil { - return *v - } - var ret DirectSplunkObservabilityQueryDelay - return ret - }).(DirectSplunkObservabilityQueryDelayOutput) +type SloObjectiveCountMetricBadInfluxdbArray []SloObjectiveCountMetricBadInfluxdbInput + +func (SloObjectiveCountMetricBadInfluxdbArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInfluxdb)(nil)).Elem() } -// Must be one of Minute or Second. -func (o DirectSplunkObservabilityQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectSplunkObservabilityQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) +func (i SloObjectiveCountMetricBadInfluxdbArray) ToSloObjectiveCountMetricBadInfluxdbArrayOutput() SloObjectiveCountMetricBadInfluxdbArrayOutput { + return i.ToSloObjectiveCountMetricBadInfluxdbArrayOutputWithContext(context.Background()) } -// Must be an integer greater than or equal to 0. -func (o DirectSplunkObservabilityQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectSplunkObservabilityQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +func (i SloObjectiveCountMetricBadInfluxdbArray) ToSloObjectiveCountMetricBadInfluxdbArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInfluxdbArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInfluxdbArrayOutput) } -type DirectSplunkQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadInfluxdbOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadInfluxdbOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInfluxdb)(nil)).Elem() } -// DirectSplunkQueryDelayInput is an input type that accepts DirectSplunkQueryDelayArgs and DirectSplunkQueryDelayOutput values. -// You can construct a concrete instance of `DirectSplunkQueryDelayInput` via: -// -// DirectSplunkQueryDelayArgs{...} -type DirectSplunkQueryDelayInput interface { - pulumi.Input +func (o SloObjectiveCountMetricBadInfluxdbOutput) ToSloObjectiveCountMetricBadInfluxdbOutput() SloObjectiveCountMetricBadInfluxdbOutput { + return o +} - ToDirectSplunkQueryDelayOutput() DirectSplunkQueryDelayOutput - ToDirectSplunkQueryDelayOutputWithContext(context.Context) DirectSplunkQueryDelayOutput +func (o SloObjectiveCountMetricBadInfluxdbOutput) ToSloObjectiveCountMetricBadInfluxdbOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInfluxdbOutput { + return o } -type DirectSplunkQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +// Query for the metrics +func (o SloObjectiveCountMetricBadInfluxdbOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInfluxdb) string { return v.Query }).(pulumi.StringOutput) } -func (DirectSplunkQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkQueryDelay)(nil)).Elem() +type SloObjectiveCountMetricBadInfluxdbArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadInfluxdbArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInfluxdb)(nil)).Elem() } -func (i DirectSplunkQueryDelayArgs) ToDirectSplunkQueryDelayOutput() DirectSplunkQueryDelayOutput { - return i.ToDirectSplunkQueryDelayOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadInfluxdbArrayOutput) ToSloObjectiveCountMetricBadInfluxdbArrayOutput() SloObjectiveCountMetricBadInfluxdbArrayOutput { + return o } -func (i DirectSplunkQueryDelayArgs) ToDirectSplunkQueryDelayOutputWithContext(ctx context.Context) DirectSplunkQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkQueryDelayOutput) +func (o SloObjectiveCountMetricBadInfluxdbArrayOutput) ToSloObjectiveCountMetricBadInfluxdbArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInfluxdbArrayOutput { + return o } -func (i DirectSplunkQueryDelayArgs) ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput { - return i.ToDirectSplunkQueryDelayPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadInfluxdbArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadInfluxdbOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadInfluxdb { + return vs[0].([]SloObjectiveCountMetricBadInfluxdb)[vs[1].(int)] + }).(SloObjectiveCountMetricBadInfluxdbOutput) } -func (i DirectSplunkQueryDelayArgs) ToDirectSplunkQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkQueryDelayOutput).ToDirectSplunkQueryDelayPtrOutputWithContext(ctx) +type SloObjectiveCountMetricBadInstana struct { + // Infrastructure metric type + Applications []SloObjectiveCountMetricBadInstanaApplication `pulumi:"applications"` + // Infrastructure metric type + Infrastructures []SloObjectiveCountMetricBadInstanaInfrastructure `pulumi:"infrastructures"` + // Instana metric type 'application' or 'infrastructure' + MetricType string `pulumi:"metricType"` } -// DirectSplunkQueryDelayPtrInput is an input type that accepts DirectSplunkQueryDelayArgs, DirectSplunkQueryDelayPtr and DirectSplunkQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectSplunkQueryDelayPtrInput` via: +// SloObjectiveCountMetricBadInstanaInput is an input type that accepts SloObjectiveCountMetricBadInstanaArgs and SloObjectiveCountMetricBadInstanaOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInstanaInput` via: // -// DirectSplunkQueryDelayArgs{...} -// -// or: -// -// nil -type DirectSplunkQueryDelayPtrInput interface { +// SloObjectiveCountMetricBadInstanaArgs{...} +type SloObjectiveCountMetricBadInstanaInput interface { pulumi.Input - ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput - ToDirectSplunkQueryDelayPtrOutputWithContext(context.Context) DirectSplunkQueryDelayPtrOutput + ToSloObjectiveCountMetricBadInstanaOutput() SloObjectiveCountMetricBadInstanaOutput + ToSloObjectiveCountMetricBadInstanaOutputWithContext(context.Context) SloObjectiveCountMetricBadInstanaOutput } -type directSplunkQueryDelayPtrType DirectSplunkQueryDelayArgs +type SloObjectiveCountMetricBadInstanaArgs struct { + // Infrastructure metric type + Applications SloObjectiveCountMetricBadInstanaApplicationArrayInput `pulumi:"applications"` + // Infrastructure metric type + Infrastructures SloObjectiveCountMetricBadInstanaInfrastructureArrayInput `pulumi:"infrastructures"` + // Instana metric type 'application' or 'infrastructure' + MetricType pulumi.StringInput `pulumi:"metricType"` +} -func DirectSplunkQueryDelayPtr(v *DirectSplunkQueryDelayArgs) DirectSplunkQueryDelayPtrInput { - return (*directSplunkQueryDelayPtrType)(v) +func (SloObjectiveCountMetricBadInstanaArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInstana)(nil)).Elem() } -func (*directSplunkQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectSplunkQueryDelay)(nil)).Elem() +func (i SloObjectiveCountMetricBadInstanaArgs) ToSloObjectiveCountMetricBadInstanaOutput() SloObjectiveCountMetricBadInstanaOutput { + return i.ToSloObjectiveCountMetricBadInstanaOutputWithContext(context.Background()) } -func (i *directSplunkQueryDelayPtrType) ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput { - return i.ToDirectSplunkQueryDelayPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadInstanaArgs) ToSloObjectiveCountMetricBadInstanaOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInstanaOutput) } -func (i *directSplunkQueryDelayPtrType) ToDirectSplunkQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSplunkQueryDelayPtrOutput) +// SloObjectiveCountMetricBadInstanaArrayInput is an input type that accepts SloObjectiveCountMetricBadInstanaArray and SloObjectiveCountMetricBadInstanaArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInstanaArrayInput` via: +// +// SloObjectiveCountMetricBadInstanaArray{ SloObjectiveCountMetricBadInstanaArgs{...} } +type SloObjectiveCountMetricBadInstanaArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadInstanaArrayOutput() SloObjectiveCountMetricBadInstanaArrayOutput + ToSloObjectiveCountMetricBadInstanaArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadInstanaArrayOutput } -type DirectSplunkQueryDelayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadInstanaArray []SloObjectiveCountMetricBadInstanaInput -func (DirectSplunkQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSplunkQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadInstanaArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInstana)(nil)).Elem() } -func (o DirectSplunkQueryDelayOutput) ToDirectSplunkQueryDelayOutput() DirectSplunkQueryDelayOutput { - return o +func (i SloObjectiveCountMetricBadInstanaArray) ToSloObjectiveCountMetricBadInstanaArrayOutput() SloObjectiveCountMetricBadInstanaArrayOutput { + return i.ToSloObjectiveCountMetricBadInstanaArrayOutputWithContext(context.Background()) } -func (o DirectSplunkQueryDelayOutput) ToDirectSplunkQueryDelayOutputWithContext(ctx context.Context) DirectSplunkQueryDelayOutput { +func (i SloObjectiveCountMetricBadInstanaArray) ToSloObjectiveCountMetricBadInstanaArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInstanaArrayOutput) +} + +type SloObjectiveCountMetricBadInstanaOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadInstanaOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInstana)(nil)).Elem() +} + +func (o SloObjectiveCountMetricBadInstanaOutput) ToSloObjectiveCountMetricBadInstanaOutput() SloObjectiveCountMetricBadInstanaOutput { return o } -func (o DirectSplunkQueryDelayOutput) ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput { - return o.ToDirectSplunkQueryDelayPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadInstanaOutput) ToSloObjectiveCountMetricBadInstanaOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaOutput { + return o } -func (o DirectSplunkQueryDelayOutput) ToDirectSplunkQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectSplunkQueryDelay) *DirectSplunkQueryDelay { - return &v - }).(DirectSplunkQueryDelayPtrOutput) +// Infrastructure metric type +func (o SloObjectiveCountMetricBadInstanaOutput) Applications() SloObjectiveCountMetricBadInstanaApplicationArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstana) []SloObjectiveCountMetricBadInstanaApplication { + return v.Applications + }).(SloObjectiveCountMetricBadInstanaApplicationArrayOutput) } -// Must be one of Minute or Second. -func (o DirectSplunkQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectSplunkQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +// Infrastructure metric type +func (o SloObjectiveCountMetricBadInstanaOutput) Infrastructures() SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstana) []SloObjectiveCountMetricBadInstanaInfrastructure { + return v.Infrastructures + }).(SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectSplunkQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectSplunkQueryDelay) int { return v.Value }).(pulumi.IntOutput) +// Instana metric type 'application' or 'infrastructure' +func (o SloObjectiveCountMetricBadInstanaOutput) MetricType() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstana) string { return v.MetricType }).(pulumi.StringOutput) } -type DirectSplunkQueryDelayPtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadInstanaArrayOutput struct{ *pulumi.OutputState } -func (DirectSplunkQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectSplunkQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadInstanaArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInstana)(nil)).Elem() } -func (o DirectSplunkQueryDelayPtrOutput) ToDirectSplunkQueryDelayPtrOutput() DirectSplunkQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadInstanaArrayOutput) ToSloObjectiveCountMetricBadInstanaArrayOutput() SloObjectiveCountMetricBadInstanaArrayOutput { return o } -func (o DirectSplunkQueryDelayPtrOutput) ToDirectSplunkQueryDelayPtrOutputWithContext(ctx context.Context) DirectSplunkQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadInstanaArrayOutput) ToSloObjectiveCountMetricBadInstanaArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaArrayOutput { return o } -func (o DirectSplunkQueryDelayPtrOutput) Elem() DirectSplunkQueryDelayOutput { - return o.ApplyT(func(v *DirectSplunkQueryDelay) DirectSplunkQueryDelay { - if v != nil { - return *v - } - var ret DirectSplunkQueryDelay - return ret - }).(DirectSplunkQueryDelayOutput) +func (o SloObjectiveCountMetricBadInstanaArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadInstanaOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadInstana { + return vs[0].([]SloObjectiveCountMetricBadInstana)[vs[1].(int)] + }).(SloObjectiveCountMetricBadInstanaOutput) } -// Must be one of Minute or Second. -func (o DirectSplunkQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectSplunkQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) +type SloObjectiveCountMetricBadInstanaApplication struct { + // Aggregation type [Required for metrics] + Aggregation string `pulumi:"aggregation"` + // API query user passes in a JSON format + ApiQuery string `pulumi:"apiQuery"` + // Group by method + GroupBies []SloObjectiveCountMetricBadInstanaApplicationGroupBy `pulumi:"groupBies"` + // Include internal + IncludeInternal *bool `pulumi:"includeInternal"` + // Include synthetic + IncludeSynthetic *bool `pulumi:"includeSynthetic"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId string `pulumi:"metricId"` } -// Must be an integer greater than or equal to 0. -func (o DirectSplunkQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectSplunkQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +// SloObjectiveCountMetricBadInstanaApplicationInput is an input type that accepts SloObjectiveCountMetricBadInstanaApplicationArgs and SloObjectiveCountMetricBadInstanaApplicationOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInstanaApplicationInput` via: +// +// SloObjectiveCountMetricBadInstanaApplicationArgs{...} +type SloObjectiveCountMetricBadInstanaApplicationInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadInstanaApplicationOutput() SloObjectiveCountMetricBadInstanaApplicationOutput + ToSloObjectiveCountMetricBadInstanaApplicationOutputWithContext(context.Context) SloObjectiveCountMetricBadInstanaApplicationOutput } -type DirectSumologicQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadInstanaApplicationArgs struct { + // Aggregation type [Required for metrics] + Aggregation pulumi.StringInput `pulumi:"aggregation"` + // API query user passes in a JSON format + ApiQuery pulumi.StringInput `pulumi:"apiQuery"` + // Group by method + GroupBies SloObjectiveCountMetricBadInstanaApplicationGroupByArrayInput `pulumi:"groupBies"` + // Include internal + IncludeInternal pulumi.BoolPtrInput `pulumi:"includeInternal"` + // Include synthetic + IncludeSynthetic pulumi.BoolPtrInput `pulumi:"includeSynthetic"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId pulumi.StringInput `pulumi:"metricId"` } -// DirectSumologicQueryDelayInput is an input type that accepts DirectSumologicQueryDelayArgs and DirectSumologicQueryDelayOutput values. -// You can construct a concrete instance of `DirectSumologicQueryDelayInput` via: +func (SloObjectiveCountMetricBadInstanaApplicationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInstanaApplication)(nil)).Elem() +} + +func (i SloObjectiveCountMetricBadInstanaApplicationArgs) ToSloObjectiveCountMetricBadInstanaApplicationOutput() SloObjectiveCountMetricBadInstanaApplicationOutput { + return i.ToSloObjectiveCountMetricBadInstanaApplicationOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricBadInstanaApplicationArgs) ToSloObjectiveCountMetricBadInstanaApplicationOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaApplicationOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInstanaApplicationOutput) +} + +// SloObjectiveCountMetricBadInstanaApplicationArrayInput is an input type that accepts SloObjectiveCountMetricBadInstanaApplicationArray and SloObjectiveCountMetricBadInstanaApplicationArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInstanaApplicationArrayInput` via: // -// DirectSumologicQueryDelayArgs{...} -type DirectSumologicQueryDelayInput interface { +// SloObjectiveCountMetricBadInstanaApplicationArray{ SloObjectiveCountMetricBadInstanaApplicationArgs{...} } +type SloObjectiveCountMetricBadInstanaApplicationArrayInput interface { pulumi.Input - ToDirectSumologicQueryDelayOutput() DirectSumologicQueryDelayOutput - ToDirectSumologicQueryDelayOutputWithContext(context.Context) DirectSumologicQueryDelayOutput + ToSloObjectiveCountMetricBadInstanaApplicationArrayOutput() SloObjectiveCountMetricBadInstanaApplicationArrayOutput + ToSloObjectiveCountMetricBadInstanaApplicationArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadInstanaApplicationArrayOutput } -type DirectSumologicQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` -} +type SloObjectiveCountMetricBadInstanaApplicationArray []SloObjectiveCountMetricBadInstanaApplicationInput -func (DirectSumologicQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSumologicQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadInstanaApplicationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInstanaApplication)(nil)).Elem() } -func (i DirectSumologicQueryDelayArgs) ToDirectSumologicQueryDelayOutput() DirectSumologicQueryDelayOutput { - return i.ToDirectSumologicQueryDelayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadInstanaApplicationArray) ToSloObjectiveCountMetricBadInstanaApplicationArrayOutput() SloObjectiveCountMetricBadInstanaApplicationArrayOutput { + return i.ToSloObjectiveCountMetricBadInstanaApplicationArrayOutputWithContext(context.Background()) } -func (i DirectSumologicQueryDelayArgs) ToDirectSumologicQueryDelayOutputWithContext(ctx context.Context) DirectSumologicQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSumologicQueryDelayOutput) +func (i SloObjectiveCountMetricBadInstanaApplicationArray) ToSloObjectiveCountMetricBadInstanaApplicationArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaApplicationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInstanaApplicationArrayOutput) } -func (i DirectSumologicQueryDelayArgs) ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput { - return i.ToDirectSumologicQueryDelayPtrOutputWithContext(context.Background()) +type SloObjectiveCountMetricBadInstanaApplicationOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadInstanaApplicationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInstanaApplication)(nil)).Elem() } -func (i DirectSumologicQueryDelayArgs) ToDirectSumologicQueryDelayPtrOutputWithContext(ctx context.Context) DirectSumologicQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSumologicQueryDelayOutput).ToDirectSumologicQueryDelayPtrOutputWithContext(ctx) +func (o SloObjectiveCountMetricBadInstanaApplicationOutput) ToSloObjectiveCountMetricBadInstanaApplicationOutput() SloObjectiveCountMetricBadInstanaApplicationOutput { + return o } -// DirectSumologicQueryDelayPtrInput is an input type that accepts DirectSumologicQueryDelayArgs, DirectSumologicQueryDelayPtr and DirectSumologicQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectSumologicQueryDelayPtrInput` via: -// -// DirectSumologicQueryDelayArgs{...} -// -// or: -// -// nil -type DirectSumologicQueryDelayPtrInput interface { - pulumi.Input +func (o SloObjectiveCountMetricBadInstanaApplicationOutput) ToSloObjectiveCountMetricBadInstanaApplicationOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaApplicationOutput { + return o +} - ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput - ToDirectSumologicQueryDelayPtrOutputWithContext(context.Context) DirectSumologicQueryDelayPtrOutput +// Aggregation type [Required for metrics] +func (o SloObjectiveCountMetricBadInstanaApplicationOutput) Aggregation() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplication) string { return v.Aggregation }).(pulumi.StringOutput) } -type directSumologicQueryDelayPtrType DirectSumologicQueryDelayArgs +// API query user passes in a JSON format +func (o SloObjectiveCountMetricBadInstanaApplicationOutput) ApiQuery() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplication) string { return v.ApiQuery }).(pulumi.StringOutput) +} -func DirectSumologicQueryDelayPtr(v *DirectSumologicQueryDelayArgs) DirectSumologicQueryDelayPtrInput { - return (*directSumologicQueryDelayPtrType)(v) +// Group by method +func (o SloObjectiveCountMetricBadInstanaApplicationOutput) GroupBies() SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplication) []SloObjectiveCountMetricBadInstanaApplicationGroupBy { + return v.GroupBies + }).(SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput) } -func (*directSumologicQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectSumologicQueryDelay)(nil)).Elem() +// Include internal +func (o SloObjectiveCountMetricBadInstanaApplicationOutput) IncludeInternal() pulumi.BoolPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplication) *bool { return v.IncludeInternal }).(pulumi.BoolPtrOutput) } -func (i *directSumologicQueryDelayPtrType) ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput { - return i.ToDirectSumologicQueryDelayPtrOutputWithContext(context.Background()) +// Include synthetic +func (o SloObjectiveCountMetricBadInstanaApplicationOutput) IncludeSynthetic() pulumi.BoolPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplication) *bool { return v.IncludeSynthetic }).(pulumi.BoolPtrOutput) } -func (i *directSumologicQueryDelayPtrType) ToDirectSumologicQueryDelayPtrOutputWithContext(ctx context.Context) DirectSumologicQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectSumologicQueryDelayPtrOutput) +// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' +func (o SloObjectiveCountMetricBadInstanaApplicationOutput) MetricId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplication) string { return v.MetricId }).(pulumi.StringOutput) } -type DirectSumologicQueryDelayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadInstanaApplicationArrayOutput struct{ *pulumi.OutputState } -func (DirectSumologicQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectSumologicQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadInstanaApplicationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInstanaApplication)(nil)).Elem() } -func (o DirectSumologicQueryDelayOutput) ToDirectSumologicQueryDelayOutput() DirectSumologicQueryDelayOutput { +func (o SloObjectiveCountMetricBadInstanaApplicationArrayOutput) ToSloObjectiveCountMetricBadInstanaApplicationArrayOutput() SloObjectiveCountMetricBadInstanaApplicationArrayOutput { return o } -func (o DirectSumologicQueryDelayOutput) ToDirectSumologicQueryDelayOutputWithContext(ctx context.Context) DirectSumologicQueryDelayOutput { +func (o SloObjectiveCountMetricBadInstanaApplicationArrayOutput) ToSloObjectiveCountMetricBadInstanaApplicationArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaApplicationArrayOutput { return o } -func (o DirectSumologicQueryDelayOutput) ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput { - return o.ToDirectSumologicQueryDelayPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadInstanaApplicationArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadInstanaApplicationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadInstanaApplication { + return vs[0].([]SloObjectiveCountMetricBadInstanaApplication)[vs[1].(int)] + }).(SloObjectiveCountMetricBadInstanaApplicationOutput) } -func (o DirectSumologicQueryDelayOutput) ToDirectSumologicQueryDelayPtrOutputWithContext(ctx context.Context) DirectSumologicQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectSumologicQueryDelay) *DirectSumologicQueryDelay { - return &v - }).(DirectSumologicQueryDelayPtrOutput) +type SloObjectiveCountMetricBadInstanaApplicationGroupBy struct { + // Group by tag + Tag string `pulumi:"tag"` + // Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + TagEntity string `pulumi:"tagEntity"` + TagSecondLevelKey *string `pulumi:"tagSecondLevelKey"` } -// Must be one of Minute or Second. -func (o DirectSumologicQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectSumologicQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +// SloObjectiveCountMetricBadInstanaApplicationGroupByInput is an input type that accepts SloObjectiveCountMetricBadInstanaApplicationGroupByArgs and SloObjectiveCountMetricBadInstanaApplicationGroupByOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInstanaApplicationGroupByInput` via: +// +// SloObjectiveCountMetricBadInstanaApplicationGroupByArgs{...} +type SloObjectiveCountMetricBadInstanaApplicationGroupByInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadInstanaApplicationGroupByOutput() SloObjectiveCountMetricBadInstanaApplicationGroupByOutput + ToSloObjectiveCountMetricBadInstanaApplicationGroupByOutputWithContext(context.Context) SloObjectiveCountMetricBadInstanaApplicationGroupByOutput } -// Must be an integer greater than or equal to 0. -func (o DirectSumologicQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectSumologicQueryDelay) int { return v.Value }).(pulumi.IntOutput) +type SloObjectiveCountMetricBadInstanaApplicationGroupByArgs struct { + // Group by tag + Tag pulumi.StringInput `pulumi:"tag"` + // Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + TagEntity pulumi.StringInput `pulumi:"tagEntity"` + TagSecondLevelKey pulumi.StringPtrInput `pulumi:"tagSecondLevelKey"` } -type DirectSumologicQueryDelayPtrOutput struct{ *pulumi.OutputState } +func (SloObjectiveCountMetricBadInstanaApplicationGroupByArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInstanaApplicationGroupBy)(nil)).Elem() +} -func (DirectSumologicQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectSumologicQueryDelay)(nil)).Elem() +func (i SloObjectiveCountMetricBadInstanaApplicationGroupByArgs) ToSloObjectiveCountMetricBadInstanaApplicationGroupByOutput() SloObjectiveCountMetricBadInstanaApplicationGroupByOutput { + return i.ToSloObjectiveCountMetricBadInstanaApplicationGroupByOutputWithContext(context.Background()) } -func (o DirectSumologicQueryDelayPtrOutput) ToDirectSumologicQueryDelayPtrOutput() DirectSumologicQueryDelayPtrOutput { +func (i SloObjectiveCountMetricBadInstanaApplicationGroupByArgs) ToSloObjectiveCountMetricBadInstanaApplicationGroupByOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaApplicationGroupByOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInstanaApplicationGroupByOutput) +} + +// SloObjectiveCountMetricBadInstanaApplicationGroupByArrayInput is an input type that accepts SloObjectiveCountMetricBadInstanaApplicationGroupByArray and SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInstanaApplicationGroupByArrayInput` via: +// +// SloObjectiveCountMetricBadInstanaApplicationGroupByArray{ SloObjectiveCountMetricBadInstanaApplicationGroupByArgs{...} } +type SloObjectiveCountMetricBadInstanaApplicationGroupByArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput() SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput + ToSloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput +} + +type SloObjectiveCountMetricBadInstanaApplicationGroupByArray []SloObjectiveCountMetricBadInstanaApplicationGroupByInput + +func (SloObjectiveCountMetricBadInstanaApplicationGroupByArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInstanaApplicationGroupBy)(nil)).Elem() +} + +func (i SloObjectiveCountMetricBadInstanaApplicationGroupByArray) ToSloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput() SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput { + return i.ToSloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricBadInstanaApplicationGroupByArray) ToSloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput) +} + +type SloObjectiveCountMetricBadInstanaApplicationGroupByOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadInstanaApplicationGroupByOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInstanaApplicationGroupBy)(nil)).Elem() +} + +func (o SloObjectiveCountMetricBadInstanaApplicationGroupByOutput) ToSloObjectiveCountMetricBadInstanaApplicationGroupByOutput() SloObjectiveCountMetricBadInstanaApplicationGroupByOutput { return o } -func (o DirectSumologicQueryDelayPtrOutput) ToDirectSumologicQueryDelayPtrOutputWithContext(ctx context.Context) DirectSumologicQueryDelayPtrOutput { +func (o SloObjectiveCountMetricBadInstanaApplicationGroupByOutput) ToSloObjectiveCountMetricBadInstanaApplicationGroupByOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaApplicationGroupByOutput { return o } -func (o DirectSumologicQueryDelayPtrOutput) Elem() DirectSumologicQueryDelayOutput { - return o.ApplyT(func(v *DirectSumologicQueryDelay) DirectSumologicQueryDelay { - if v != nil { - return *v - } - var ret DirectSumologicQueryDelay - return ret - }).(DirectSumologicQueryDelayOutput) +// Group by tag +func (o SloObjectiveCountMetricBadInstanaApplicationGroupByOutput) Tag() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplicationGroupBy) string { return v.Tag }).(pulumi.StringOutput) } -// Must be one of Minute or Second. -func (o DirectSumologicQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectSumologicQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) +// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' +func (o SloObjectiveCountMetricBadInstanaApplicationGroupByOutput) TagEntity() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplicationGroupBy) string { return v.TagEntity }).(pulumi.StringOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectSumologicQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectSumologicQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +func (o SloObjectiveCountMetricBadInstanaApplicationGroupByOutput) TagSecondLevelKey() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaApplicationGroupBy) *string { return v.TagSecondLevelKey }).(pulumi.StringPtrOutput) } -type DirectThousandeyesQueryDelay struct { - // Must be one of Minute or Second. - Unit string `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value int `pulumi:"value"` +type SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInstanaApplicationGroupBy)(nil)).Elem() } -// DirectThousandeyesQueryDelayInput is an input type that accepts DirectThousandeyesQueryDelayArgs and DirectThousandeyesQueryDelayOutput values. -// You can construct a concrete instance of `DirectThousandeyesQueryDelayInput` via: -// -// DirectThousandeyesQueryDelayArgs{...} -type DirectThousandeyesQueryDelayInput interface { - pulumi.Input +func (o SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput) ToSloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput() SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput { + return o +} - ToDirectThousandeyesQueryDelayOutput() DirectThousandeyesQueryDelayOutput - ToDirectThousandeyesQueryDelayOutputWithContext(context.Context) DirectThousandeyesQueryDelayOutput +func (o SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput) ToSloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput { + return o +} + +func (o SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadInstanaApplicationGroupByOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadInstanaApplicationGroupBy { + return vs[0].([]SloObjectiveCountMetricBadInstanaApplicationGroupBy)[vs[1].(int)] + }).(SloObjectiveCountMetricBadInstanaApplicationGroupByOutput) } -type DirectThousandeyesQueryDelayArgs struct { - // Must be one of Minute or Second. - Unit pulumi.StringInput `pulumi:"unit"` - // Must be an integer greater than or equal to 0. - Value pulumi.IntInput `pulumi:"value"` +type SloObjectiveCountMetricBadInstanaInfrastructure struct { + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId string `pulumi:"metricId"` + // Metric retrieval method 'query' or 'snapshot' + MetricRetrievalMethod string `pulumi:"metricRetrievalMethod"` + // Plugin ID + PluginId string `pulumi:"pluginId"` + // Query for the metrics + Query *string `pulumi:"query"` + // Snapshot ID + SnapshotId *string `pulumi:"snapshotId"` } -func (DirectThousandeyesQueryDelayArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DirectThousandeyesQueryDelay)(nil)).Elem() +// SloObjectiveCountMetricBadInstanaInfrastructureInput is an input type that accepts SloObjectiveCountMetricBadInstanaInfrastructureArgs and SloObjectiveCountMetricBadInstanaInfrastructureOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInstanaInfrastructureInput` via: +// +// SloObjectiveCountMetricBadInstanaInfrastructureArgs{...} +type SloObjectiveCountMetricBadInstanaInfrastructureInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadInstanaInfrastructureOutput() SloObjectiveCountMetricBadInstanaInfrastructureOutput + ToSloObjectiveCountMetricBadInstanaInfrastructureOutputWithContext(context.Context) SloObjectiveCountMetricBadInstanaInfrastructureOutput } -func (i DirectThousandeyesQueryDelayArgs) ToDirectThousandeyesQueryDelayOutput() DirectThousandeyesQueryDelayOutput { - return i.ToDirectThousandeyesQueryDelayOutputWithContext(context.Background()) +type SloObjectiveCountMetricBadInstanaInfrastructureArgs struct { + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId pulumi.StringInput `pulumi:"metricId"` + // Metric retrieval method 'query' or 'snapshot' + MetricRetrievalMethod pulumi.StringInput `pulumi:"metricRetrievalMethod"` + // Plugin ID + PluginId pulumi.StringInput `pulumi:"pluginId"` + // Query for the metrics + Query pulumi.StringPtrInput `pulumi:"query"` + // Snapshot ID + SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"` } -func (i DirectThousandeyesQueryDelayArgs) ToDirectThousandeyesQueryDelayOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectThousandeyesQueryDelayOutput) +func (SloObjectiveCountMetricBadInstanaInfrastructureArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInstanaInfrastructure)(nil)).Elem() } -func (i DirectThousandeyesQueryDelayArgs) ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput { - return i.ToDirectThousandeyesQueryDelayPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadInstanaInfrastructureArgs) ToSloObjectiveCountMetricBadInstanaInfrastructureOutput() SloObjectiveCountMetricBadInstanaInfrastructureOutput { + return i.ToSloObjectiveCountMetricBadInstanaInfrastructureOutputWithContext(context.Background()) } -func (i DirectThousandeyesQueryDelayArgs) ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectThousandeyesQueryDelayOutput).ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx) +func (i SloObjectiveCountMetricBadInstanaInfrastructureArgs) ToSloObjectiveCountMetricBadInstanaInfrastructureOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaInfrastructureOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInstanaInfrastructureOutput) } -// DirectThousandeyesQueryDelayPtrInput is an input type that accepts DirectThousandeyesQueryDelayArgs, DirectThousandeyesQueryDelayPtr and DirectThousandeyesQueryDelayPtrOutput values. -// You can construct a concrete instance of `DirectThousandeyesQueryDelayPtrInput` via: -// -// DirectThousandeyesQueryDelayArgs{...} +// SloObjectiveCountMetricBadInstanaInfrastructureArrayInput is an input type that accepts SloObjectiveCountMetricBadInstanaInfrastructureArray and SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadInstanaInfrastructureArrayInput` via: // -// or: -// -// nil -type DirectThousandeyesQueryDelayPtrInput interface { +// SloObjectiveCountMetricBadInstanaInfrastructureArray{ SloObjectiveCountMetricBadInstanaInfrastructureArgs{...} } +type SloObjectiveCountMetricBadInstanaInfrastructureArrayInput interface { pulumi.Input - ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput - ToDirectThousandeyesQueryDelayPtrOutputWithContext(context.Context) DirectThousandeyesQueryDelayPtrOutput + ToSloObjectiveCountMetricBadInstanaInfrastructureArrayOutput() SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput + ToSloObjectiveCountMetricBadInstanaInfrastructureArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput } -type directThousandeyesQueryDelayPtrType DirectThousandeyesQueryDelayArgs - -func DirectThousandeyesQueryDelayPtr(v *DirectThousandeyesQueryDelayArgs) DirectThousandeyesQueryDelayPtrInput { - return (*directThousandeyesQueryDelayPtrType)(v) -} +type SloObjectiveCountMetricBadInstanaInfrastructureArray []SloObjectiveCountMetricBadInstanaInfrastructureInput -func (*directThousandeyesQueryDelayPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DirectThousandeyesQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadInstanaInfrastructureArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInstanaInfrastructure)(nil)).Elem() } -func (i *directThousandeyesQueryDelayPtrType) ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput { - return i.ToDirectThousandeyesQueryDelayPtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadInstanaInfrastructureArray) ToSloObjectiveCountMetricBadInstanaInfrastructureArrayOutput() SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput { + return i.ToSloObjectiveCountMetricBadInstanaInfrastructureArrayOutputWithContext(context.Background()) } -func (i *directThousandeyesQueryDelayPtrType) ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DirectThousandeyesQueryDelayPtrOutput) +func (i SloObjectiveCountMetricBadInstanaInfrastructureArray) ToSloObjectiveCountMetricBadInstanaInfrastructureArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput) } -type DirectThousandeyesQueryDelayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadInstanaInfrastructureOutput struct{ *pulumi.OutputState } -func (DirectThousandeyesQueryDelayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DirectThousandeyesQueryDelay)(nil)).Elem() +func (SloObjectiveCountMetricBadInstanaInfrastructureOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadInstanaInfrastructure)(nil)).Elem() } -func (o DirectThousandeyesQueryDelayOutput) ToDirectThousandeyesQueryDelayOutput() DirectThousandeyesQueryDelayOutput { +func (o SloObjectiveCountMetricBadInstanaInfrastructureOutput) ToSloObjectiveCountMetricBadInstanaInfrastructureOutput() SloObjectiveCountMetricBadInstanaInfrastructureOutput { return o } -func (o DirectThousandeyesQueryDelayOutput) ToDirectThousandeyesQueryDelayOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayOutput { +func (o SloObjectiveCountMetricBadInstanaInfrastructureOutput) ToSloObjectiveCountMetricBadInstanaInfrastructureOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaInfrastructureOutput { return o } -func (o DirectThousandeyesQueryDelayOutput) ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput { - return o.ToDirectThousandeyesQueryDelayPtrOutputWithContext(context.Background()) +// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' +func (o SloObjectiveCountMetricBadInstanaInfrastructureOutput) MetricId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaInfrastructure) string { return v.MetricId }).(pulumi.StringOutput) } -func (o DirectThousandeyesQueryDelayOutput) ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DirectThousandeyesQueryDelay) *DirectThousandeyesQueryDelay { - return &v - }).(DirectThousandeyesQueryDelayPtrOutput) +// Metric retrieval method 'query' or 'snapshot' +func (o SloObjectiveCountMetricBadInstanaInfrastructureOutput) MetricRetrievalMethod() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaInfrastructure) string { return v.MetricRetrievalMethod }).(pulumi.StringOutput) } -// Must be one of Minute or Second. -func (o DirectThousandeyesQueryDelayOutput) Unit() pulumi.StringOutput { - return o.ApplyT(func(v DirectThousandeyesQueryDelay) string { return v.Unit }).(pulumi.StringOutput) +// Plugin ID +func (o SloObjectiveCountMetricBadInstanaInfrastructureOutput) PluginId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaInfrastructure) string { return v.PluginId }).(pulumi.StringOutput) } -// Must be an integer greater than or equal to 0. -func (o DirectThousandeyesQueryDelayOutput) Value() pulumi.IntOutput { - return o.ApplyT(func(v DirectThousandeyesQueryDelay) int { return v.Value }).(pulumi.IntOutput) +// Query for the metrics +func (o SloObjectiveCountMetricBadInstanaInfrastructureOutput) Query() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaInfrastructure) *string { return v.Query }).(pulumi.StringPtrOutput) } -type DirectThousandeyesQueryDelayPtrOutput struct{ *pulumi.OutputState } - -func (DirectThousandeyesQueryDelayPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DirectThousandeyesQueryDelay)(nil)).Elem() +// Snapshot ID +func (o SloObjectiveCountMetricBadInstanaInfrastructureOutput) SnapshotId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadInstanaInfrastructure) *string { return v.SnapshotId }).(pulumi.StringPtrOutput) } -func (o DirectThousandeyesQueryDelayPtrOutput) ToDirectThousandeyesQueryDelayPtrOutput() DirectThousandeyesQueryDelayPtrOutput { - return o -} +type SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput struct{ *pulumi.OutputState } -func (o DirectThousandeyesQueryDelayPtrOutput) ToDirectThousandeyesQueryDelayPtrOutputWithContext(ctx context.Context) DirectThousandeyesQueryDelayPtrOutput { - return o +func (SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadInstanaInfrastructure)(nil)).Elem() } -func (o DirectThousandeyesQueryDelayPtrOutput) Elem() DirectThousandeyesQueryDelayOutput { - return o.ApplyT(func(v *DirectThousandeyesQueryDelay) DirectThousandeyesQueryDelay { - if v != nil { - return *v - } - var ret DirectThousandeyesQueryDelay - return ret - }).(DirectThousandeyesQueryDelayOutput) +func (o SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput) ToSloObjectiveCountMetricBadInstanaInfrastructureArrayOutput() SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput { + return o } -// Must be one of Minute or Second. -func (o DirectThousandeyesQueryDelayPtrOutput) Unit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DirectThousandeyesQueryDelay) *string { - if v == nil { - return nil - } - return &v.Unit - }).(pulumi.StringPtrOutput) +func (o SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput) ToSloObjectiveCountMetricBadInstanaInfrastructureArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput { + return o } -// Must be an integer greater than or equal to 0. -func (o DirectThousandeyesQueryDelayPtrOutput) Value() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DirectThousandeyesQueryDelay) *int { - if v == nil { - return nil - } - return &v.Value - }).(pulumi.IntPtrOutput) +func (o SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadInstanaInfrastructureOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadInstanaInfrastructure { + return vs[0].([]SloObjectiveCountMetricBadInstanaInfrastructure)[vs[1].(int)] + }).(SloObjectiveCountMetricBadInstanaInfrastructureOutput) } -type ProjectLabel struct { - // A key for the label, unique within the associated resource. - Key string `pulumi:"key"` - // A list of unique values for a single key. - Values []string `pulumi:"values"` +type SloObjectiveCountMetricBadLightstep struct { + // Optional value to filter by percentiles + Percentile *float64 `pulumi:"percentile"` + // ID of the metrics stream + StreamId *string `pulumi:"streamId"` + // Type of data to filter by + TypeOfData string `pulumi:"typeOfData"` + // UQL query + Uql *string `pulumi:"uql"` } -// ProjectLabelInput is an input type that accepts ProjectLabelArgs and ProjectLabelOutput values. -// You can construct a concrete instance of `ProjectLabelInput` via: +// SloObjectiveCountMetricBadLightstepInput is an input type that accepts SloObjectiveCountMetricBadLightstepArgs and SloObjectiveCountMetricBadLightstepOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadLightstepInput` via: // -// ProjectLabelArgs{...} -type ProjectLabelInput interface { +// SloObjectiveCountMetricBadLightstepArgs{...} +type SloObjectiveCountMetricBadLightstepInput interface { pulumi.Input - ToProjectLabelOutput() ProjectLabelOutput - ToProjectLabelOutputWithContext(context.Context) ProjectLabelOutput + ToSloObjectiveCountMetricBadLightstepOutput() SloObjectiveCountMetricBadLightstepOutput + ToSloObjectiveCountMetricBadLightstepOutputWithContext(context.Context) SloObjectiveCountMetricBadLightstepOutput } -type ProjectLabelArgs struct { - // A key for the label, unique within the associated resource. - Key pulumi.StringInput `pulumi:"key"` - // A list of unique values for a single key. - Values pulumi.StringArrayInput `pulumi:"values"` +type SloObjectiveCountMetricBadLightstepArgs struct { + // Optional value to filter by percentiles + Percentile pulumi.Float64PtrInput `pulumi:"percentile"` + // ID of the metrics stream + StreamId pulumi.StringPtrInput `pulumi:"streamId"` + // Type of data to filter by + TypeOfData pulumi.StringInput `pulumi:"typeOfData"` + // UQL query + Uql pulumi.StringPtrInput `pulumi:"uql"` } -func (ProjectLabelArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ProjectLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadLightstepArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadLightstep)(nil)).Elem() } -func (i ProjectLabelArgs) ToProjectLabelOutput() ProjectLabelOutput { - return i.ToProjectLabelOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadLightstepArgs) ToSloObjectiveCountMetricBadLightstepOutput() SloObjectiveCountMetricBadLightstepOutput { + return i.ToSloObjectiveCountMetricBadLightstepOutputWithContext(context.Background()) } -func (i ProjectLabelArgs) ToProjectLabelOutputWithContext(ctx context.Context) ProjectLabelOutput { - return pulumi.ToOutputWithContext(ctx, i).(ProjectLabelOutput) +func (i SloObjectiveCountMetricBadLightstepArgs) ToSloObjectiveCountMetricBadLightstepOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadLightstepOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadLightstepOutput) } -// ProjectLabelArrayInput is an input type that accepts ProjectLabelArray and ProjectLabelArrayOutput values. -// You can construct a concrete instance of `ProjectLabelArrayInput` via: +// SloObjectiveCountMetricBadLightstepArrayInput is an input type that accepts SloObjectiveCountMetricBadLightstepArray and SloObjectiveCountMetricBadLightstepArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadLightstepArrayInput` via: // -// ProjectLabelArray{ ProjectLabelArgs{...} } -type ProjectLabelArrayInput interface { +// SloObjectiveCountMetricBadLightstepArray{ SloObjectiveCountMetricBadLightstepArgs{...} } +type SloObjectiveCountMetricBadLightstepArrayInput interface { pulumi.Input - ToProjectLabelArrayOutput() ProjectLabelArrayOutput - ToProjectLabelArrayOutputWithContext(context.Context) ProjectLabelArrayOutput + ToSloObjectiveCountMetricBadLightstepArrayOutput() SloObjectiveCountMetricBadLightstepArrayOutput + ToSloObjectiveCountMetricBadLightstepArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadLightstepArrayOutput } -type ProjectLabelArray []ProjectLabelInput +type SloObjectiveCountMetricBadLightstepArray []SloObjectiveCountMetricBadLightstepInput -func (ProjectLabelArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ProjectLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadLightstepArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadLightstep)(nil)).Elem() } -func (i ProjectLabelArray) ToProjectLabelArrayOutput() ProjectLabelArrayOutput { - return i.ToProjectLabelArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadLightstepArray) ToSloObjectiveCountMetricBadLightstepArrayOutput() SloObjectiveCountMetricBadLightstepArrayOutput { + return i.ToSloObjectiveCountMetricBadLightstepArrayOutputWithContext(context.Background()) } -func (i ProjectLabelArray) ToProjectLabelArrayOutputWithContext(ctx context.Context) ProjectLabelArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ProjectLabelArrayOutput) +func (i SloObjectiveCountMetricBadLightstepArray) ToSloObjectiveCountMetricBadLightstepArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadLightstepArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadLightstepArrayOutput) } -type ProjectLabelOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadLightstepOutput struct{ *pulumi.OutputState } -func (ProjectLabelOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ProjectLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadLightstepOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadLightstep)(nil)).Elem() } -func (o ProjectLabelOutput) ToProjectLabelOutput() ProjectLabelOutput { +func (o SloObjectiveCountMetricBadLightstepOutput) ToSloObjectiveCountMetricBadLightstepOutput() SloObjectiveCountMetricBadLightstepOutput { return o } -func (o ProjectLabelOutput) ToProjectLabelOutputWithContext(ctx context.Context) ProjectLabelOutput { +func (o SloObjectiveCountMetricBadLightstepOutput) ToSloObjectiveCountMetricBadLightstepOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadLightstepOutput { return o } -// A key for the label, unique within the associated resource. -func (o ProjectLabelOutput) Key() pulumi.StringOutput { - return o.ApplyT(func(v ProjectLabel) string { return v.Key }).(pulumi.StringOutput) +// Optional value to filter by percentiles +func (o SloObjectiveCountMetricBadLightstepOutput) Percentile() pulumi.Float64PtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadLightstep) *float64 { return v.Percentile }).(pulumi.Float64PtrOutput) } -// A list of unique values for a single key. -func (o ProjectLabelOutput) Values() pulumi.StringArrayOutput { - return o.ApplyT(func(v ProjectLabel) []string { return v.Values }).(pulumi.StringArrayOutput) +// ID of the metrics stream +func (o SloObjectiveCountMetricBadLightstepOutput) StreamId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadLightstep) *string { return v.StreamId }).(pulumi.StringPtrOutput) } -type ProjectLabelArrayOutput struct{ *pulumi.OutputState } +// Type of data to filter by +func (o SloObjectiveCountMetricBadLightstepOutput) TypeOfData() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadLightstep) string { return v.TypeOfData }).(pulumi.StringOutput) +} -func (ProjectLabelArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ProjectLabel)(nil)).Elem() +// UQL query +func (o SloObjectiveCountMetricBadLightstepOutput) Uql() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadLightstep) *string { return v.Uql }).(pulumi.StringPtrOutput) } -func (o ProjectLabelArrayOutput) ToProjectLabelArrayOutput() ProjectLabelArrayOutput { +type SloObjectiveCountMetricBadLightstepArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadLightstepArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadLightstep)(nil)).Elem() +} + +func (o SloObjectiveCountMetricBadLightstepArrayOutput) ToSloObjectiveCountMetricBadLightstepArrayOutput() SloObjectiveCountMetricBadLightstepArrayOutput { return o } -func (o ProjectLabelArrayOutput) ToProjectLabelArrayOutputWithContext(ctx context.Context) ProjectLabelArrayOutput { +func (o SloObjectiveCountMetricBadLightstepArrayOutput) ToSloObjectiveCountMetricBadLightstepArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadLightstepArrayOutput { return o } -func (o ProjectLabelArrayOutput) Index(i pulumi.IntInput) ProjectLabelOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ProjectLabel { - return vs[0].([]ProjectLabel)[vs[1].(int)] - }).(ProjectLabelOutput) +func (o SloObjectiveCountMetricBadLightstepArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadLightstepOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadLightstep { + return vs[0].([]SloObjectiveCountMetricBadLightstep)[vs[1].(int)] + }).(SloObjectiveCountMetricBadLightstepOutput) } -type ServiceLabel struct { - // A key for the label, unique within the associated resource. - Key string `pulumi:"key"` - // A list of unique values for a single key. - Values []string `pulumi:"values"` +type SloObjectiveCountMetricBadNewrelic struct { + // Query for the metrics + Nrql string `pulumi:"nrql"` } -// ServiceLabelInput is an input type that accepts ServiceLabelArgs and ServiceLabelOutput values. -// You can construct a concrete instance of `ServiceLabelInput` via: +// SloObjectiveCountMetricBadNewrelicInput is an input type that accepts SloObjectiveCountMetricBadNewrelicArgs and SloObjectiveCountMetricBadNewrelicOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadNewrelicInput` via: // -// ServiceLabelArgs{...} -type ServiceLabelInput interface { +// SloObjectiveCountMetricBadNewrelicArgs{...} +type SloObjectiveCountMetricBadNewrelicInput interface { pulumi.Input - ToServiceLabelOutput() ServiceLabelOutput - ToServiceLabelOutputWithContext(context.Context) ServiceLabelOutput + ToSloObjectiveCountMetricBadNewrelicOutput() SloObjectiveCountMetricBadNewrelicOutput + ToSloObjectiveCountMetricBadNewrelicOutputWithContext(context.Context) SloObjectiveCountMetricBadNewrelicOutput } -type ServiceLabelArgs struct { - // A key for the label, unique within the associated resource. - Key pulumi.StringInput `pulumi:"key"` - // A list of unique values for a single key. - Values pulumi.StringArrayInput `pulumi:"values"` +type SloObjectiveCountMetricBadNewrelicArgs struct { + // Query for the metrics + Nrql pulumi.StringInput `pulumi:"nrql"` } -func (ServiceLabelArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ServiceLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadNewrelicArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadNewrelic)(nil)).Elem() } -func (i ServiceLabelArgs) ToServiceLabelOutput() ServiceLabelOutput { - return i.ToServiceLabelOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadNewrelicArgs) ToSloObjectiveCountMetricBadNewrelicOutput() SloObjectiveCountMetricBadNewrelicOutput { + return i.ToSloObjectiveCountMetricBadNewrelicOutputWithContext(context.Background()) } -func (i ServiceLabelArgs) ToServiceLabelOutputWithContext(ctx context.Context) ServiceLabelOutput { - return pulumi.ToOutputWithContext(ctx, i).(ServiceLabelOutput) +func (i SloObjectiveCountMetricBadNewrelicArgs) ToSloObjectiveCountMetricBadNewrelicOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadNewrelicOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadNewrelicOutput) } -// ServiceLabelArrayInput is an input type that accepts ServiceLabelArray and ServiceLabelArrayOutput values. -// You can construct a concrete instance of `ServiceLabelArrayInput` via: +// SloObjectiveCountMetricBadNewrelicArrayInput is an input type that accepts SloObjectiveCountMetricBadNewrelicArray and SloObjectiveCountMetricBadNewrelicArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadNewrelicArrayInput` via: // -// ServiceLabelArray{ ServiceLabelArgs{...} } -type ServiceLabelArrayInput interface { +// SloObjectiveCountMetricBadNewrelicArray{ SloObjectiveCountMetricBadNewrelicArgs{...} } +type SloObjectiveCountMetricBadNewrelicArrayInput interface { pulumi.Input - ToServiceLabelArrayOutput() ServiceLabelArrayOutput - ToServiceLabelArrayOutputWithContext(context.Context) ServiceLabelArrayOutput + ToSloObjectiveCountMetricBadNewrelicArrayOutput() SloObjectiveCountMetricBadNewrelicArrayOutput + ToSloObjectiveCountMetricBadNewrelicArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadNewrelicArrayOutput } -type ServiceLabelArray []ServiceLabelInput +type SloObjectiveCountMetricBadNewrelicArray []SloObjectiveCountMetricBadNewrelicInput -func (ServiceLabelArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ServiceLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadNewrelicArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadNewrelic)(nil)).Elem() } -func (i ServiceLabelArray) ToServiceLabelArrayOutput() ServiceLabelArrayOutput { - return i.ToServiceLabelArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadNewrelicArray) ToSloObjectiveCountMetricBadNewrelicArrayOutput() SloObjectiveCountMetricBadNewrelicArrayOutput { + return i.ToSloObjectiveCountMetricBadNewrelicArrayOutputWithContext(context.Background()) } -func (i ServiceLabelArray) ToServiceLabelArrayOutputWithContext(ctx context.Context) ServiceLabelArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ServiceLabelArrayOutput) +func (i SloObjectiveCountMetricBadNewrelicArray) ToSloObjectiveCountMetricBadNewrelicArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadNewrelicArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadNewrelicArrayOutput) } -type ServiceLabelOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadNewrelicOutput struct{ *pulumi.OutputState } -func (ServiceLabelOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ServiceLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadNewrelicOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadNewrelic)(nil)).Elem() } -func (o ServiceLabelOutput) ToServiceLabelOutput() ServiceLabelOutput { +func (o SloObjectiveCountMetricBadNewrelicOutput) ToSloObjectiveCountMetricBadNewrelicOutput() SloObjectiveCountMetricBadNewrelicOutput { return o } -func (o ServiceLabelOutput) ToServiceLabelOutputWithContext(ctx context.Context) ServiceLabelOutput { +func (o SloObjectiveCountMetricBadNewrelicOutput) ToSloObjectiveCountMetricBadNewrelicOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadNewrelicOutput { return o } -// A key for the label, unique within the associated resource. -func (o ServiceLabelOutput) Key() pulumi.StringOutput { - return o.ApplyT(func(v ServiceLabel) string { return v.Key }).(pulumi.StringOutput) -} - -// A list of unique values for a single key. -func (o ServiceLabelOutput) Values() pulumi.StringArrayOutput { - return o.ApplyT(func(v ServiceLabel) []string { return v.Values }).(pulumi.StringArrayOutput) +// Query for the metrics +func (o SloObjectiveCountMetricBadNewrelicOutput) Nrql() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadNewrelic) string { return v.Nrql }).(pulumi.StringOutput) } -type ServiceLabelArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadNewrelicArrayOutput struct{ *pulumi.OutputState } -func (ServiceLabelArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ServiceLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadNewrelicArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadNewrelic)(nil)).Elem() } -func (o ServiceLabelArrayOutput) ToServiceLabelArrayOutput() ServiceLabelArrayOutput { +func (o SloObjectiveCountMetricBadNewrelicArrayOutput) ToSloObjectiveCountMetricBadNewrelicArrayOutput() SloObjectiveCountMetricBadNewrelicArrayOutput { return o } -func (o ServiceLabelArrayOutput) ToServiceLabelArrayOutputWithContext(ctx context.Context) ServiceLabelArrayOutput { +func (o SloObjectiveCountMetricBadNewrelicArrayOutput) ToSloObjectiveCountMetricBadNewrelicArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadNewrelicArrayOutput { return o } -func (o ServiceLabelArrayOutput) Index(i pulumi.IntInput) ServiceLabelOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ServiceLabel { - return vs[0].([]ServiceLabel)[vs[1].(int)] - }).(ServiceLabelOutput) +func (o SloObjectiveCountMetricBadNewrelicArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadNewrelicOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadNewrelic { + return vs[0].([]SloObjectiveCountMetricBadNewrelic)[vs[1].(int)] + }).(SloObjectiveCountMetricBadNewrelicOutput) } -type SloAttachment struct { - // Name displayed for the attachment. Max. length: 63 characters. - DisplayName *string `pulumi:"displayName"` - // URL to the attachment - Url string `pulumi:"url"` +type SloObjectiveCountMetricBadOpentsdb struct { + // Query for the metrics + Query string `pulumi:"query"` } -// SloAttachmentInput is an input type that accepts SloAttachmentArgs and SloAttachmentOutput values. -// You can construct a concrete instance of `SloAttachmentInput` via: +// SloObjectiveCountMetricBadOpentsdbInput is an input type that accepts SloObjectiveCountMetricBadOpentsdbArgs and SloObjectiveCountMetricBadOpentsdbOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadOpentsdbInput` via: // -// SloAttachmentArgs{...} -type SloAttachmentInput interface { +// SloObjectiveCountMetricBadOpentsdbArgs{...} +type SloObjectiveCountMetricBadOpentsdbInput interface { pulumi.Input - ToSloAttachmentOutput() SloAttachmentOutput - ToSloAttachmentOutputWithContext(context.Context) SloAttachmentOutput + ToSloObjectiveCountMetricBadOpentsdbOutput() SloObjectiveCountMetricBadOpentsdbOutput + ToSloObjectiveCountMetricBadOpentsdbOutputWithContext(context.Context) SloObjectiveCountMetricBadOpentsdbOutput } -type SloAttachmentArgs struct { - // Name displayed for the attachment. Max. length: 63 characters. - DisplayName pulumi.StringPtrInput `pulumi:"displayName"` - // URL to the attachment - Url pulumi.StringInput `pulumi:"url"` +type SloObjectiveCountMetricBadOpentsdbArgs struct { + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } -func (SloAttachmentArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SloAttachment)(nil)).Elem() +func (SloObjectiveCountMetricBadOpentsdbArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadOpentsdb)(nil)).Elem() } -func (i SloAttachmentArgs) ToSloAttachmentOutput() SloAttachmentOutput { - return i.ToSloAttachmentOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadOpentsdbArgs) ToSloObjectiveCountMetricBadOpentsdbOutput() SloObjectiveCountMetricBadOpentsdbOutput { + return i.ToSloObjectiveCountMetricBadOpentsdbOutputWithContext(context.Background()) } -func (i SloAttachmentArgs) ToSloAttachmentOutputWithContext(ctx context.Context) SloAttachmentOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloAttachmentOutput) +func (i SloObjectiveCountMetricBadOpentsdbArgs) ToSloObjectiveCountMetricBadOpentsdbOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadOpentsdbOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadOpentsdbOutput) } -// SloAttachmentArrayInput is an input type that accepts SloAttachmentArray and SloAttachmentArrayOutput values. -// You can construct a concrete instance of `SloAttachmentArrayInput` via: +// SloObjectiveCountMetricBadOpentsdbArrayInput is an input type that accepts SloObjectiveCountMetricBadOpentsdbArray and SloObjectiveCountMetricBadOpentsdbArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadOpentsdbArrayInput` via: // -// SloAttachmentArray{ SloAttachmentArgs{...} } -type SloAttachmentArrayInput interface { +// SloObjectiveCountMetricBadOpentsdbArray{ SloObjectiveCountMetricBadOpentsdbArgs{...} } +type SloObjectiveCountMetricBadOpentsdbArrayInput interface { pulumi.Input - ToSloAttachmentArrayOutput() SloAttachmentArrayOutput - ToSloAttachmentArrayOutputWithContext(context.Context) SloAttachmentArrayOutput + ToSloObjectiveCountMetricBadOpentsdbArrayOutput() SloObjectiveCountMetricBadOpentsdbArrayOutput + ToSloObjectiveCountMetricBadOpentsdbArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadOpentsdbArrayOutput } -type SloAttachmentArray []SloAttachmentInput +type SloObjectiveCountMetricBadOpentsdbArray []SloObjectiveCountMetricBadOpentsdbInput -func (SloAttachmentArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloAttachment)(nil)).Elem() +func (SloObjectiveCountMetricBadOpentsdbArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadOpentsdb)(nil)).Elem() } -func (i SloAttachmentArray) ToSloAttachmentArrayOutput() SloAttachmentArrayOutput { - return i.ToSloAttachmentArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadOpentsdbArray) ToSloObjectiveCountMetricBadOpentsdbArrayOutput() SloObjectiveCountMetricBadOpentsdbArrayOutput { + return i.ToSloObjectiveCountMetricBadOpentsdbArrayOutputWithContext(context.Background()) } -func (i SloAttachmentArray) ToSloAttachmentArrayOutputWithContext(ctx context.Context) SloAttachmentArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloAttachmentArrayOutput) +func (i SloObjectiveCountMetricBadOpentsdbArray) ToSloObjectiveCountMetricBadOpentsdbArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadOpentsdbArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadOpentsdbArrayOutput) } -type SloAttachmentOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadOpentsdbOutput struct{ *pulumi.OutputState } -func (SloAttachmentOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SloAttachment)(nil)).Elem() +func (SloObjectiveCountMetricBadOpentsdbOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadOpentsdb)(nil)).Elem() } -func (o SloAttachmentOutput) ToSloAttachmentOutput() SloAttachmentOutput { +func (o SloObjectiveCountMetricBadOpentsdbOutput) ToSloObjectiveCountMetricBadOpentsdbOutput() SloObjectiveCountMetricBadOpentsdbOutput { return o } -func (o SloAttachmentOutput) ToSloAttachmentOutputWithContext(ctx context.Context) SloAttachmentOutput { +func (o SloObjectiveCountMetricBadOpentsdbOutput) ToSloObjectiveCountMetricBadOpentsdbOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadOpentsdbOutput { return o } -// Name displayed for the attachment. Max. length: 63 characters. -func (o SloAttachmentOutput) DisplayName() pulumi.StringPtrOutput { - return o.ApplyT(func(v SloAttachment) *string { return v.DisplayName }).(pulumi.StringPtrOutput) -} - -// URL to the attachment -func (o SloAttachmentOutput) Url() pulumi.StringOutput { - return o.ApplyT(func(v SloAttachment) string { return v.Url }).(pulumi.StringOutput) +// Query for the metrics +func (o SloObjectiveCountMetricBadOpentsdbOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadOpentsdb) string { return v.Query }).(pulumi.StringOutput) } -type SloAttachmentArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadOpentsdbArrayOutput struct{ *pulumi.OutputState } -func (SloAttachmentArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloAttachment)(nil)).Elem() +func (SloObjectiveCountMetricBadOpentsdbArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadOpentsdb)(nil)).Elem() } -func (o SloAttachmentArrayOutput) ToSloAttachmentArrayOutput() SloAttachmentArrayOutput { +func (o SloObjectiveCountMetricBadOpentsdbArrayOutput) ToSloObjectiveCountMetricBadOpentsdbArrayOutput() SloObjectiveCountMetricBadOpentsdbArrayOutput { return o } -func (o SloAttachmentArrayOutput) ToSloAttachmentArrayOutputWithContext(ctx context.Context) SloAttachmentArrayOutput { +func (o SloObjectiveCountMetricBadOpentsdbArrayOutput) ToSloObjectiveCountMetricBadOpentsdbArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadOpentsdbArrayOutput { return o } -func (o SloAttachmentArrayOutput) Index(i pulumi.IntInput) SloAttachmentOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloAttachment { - return vs[0].([]SloAttachment)[vs[1].(int)] - }).(SloAttachmentOutput) +func (o SloObjectiveCountMetricBadOpentsdbArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadOpentsdbOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadOpentsdb { + return vs[0].([]SloObjectiveCountMetricBadOpentsdb)[vs[1].(int)] + }).(SloObjectiveCountMetricBadOpentsdbOutput) } -type SloComposite struct { - // Condition when the Composite SLO’s error budget is burning. - BurnRateConditions []SloCompositeBurnRateCondition `pulumi:"burnRateConditions"` - // Designated value - Target float64 `pulumi:"target"` +type SloObjectiveCountMetricBadPingdom struct { + // Pingdom uptime or transaction check's ID + CheckId string `pulumi:"checkId"` + // Pingdom check type - uptime or transaction + CheckType *string `pulumi:"checkType"` + // Optional for the Uptime checks. Use it to filter the Pingdom check results by status + Status *string `pulumi:"status"` } -// SloCompositeInput is an input type that accepts SloCompositeArgs and SloCompositeOutput values. -// You can construct a concrete instance of `SloCompositeInput` via: +// SloObjectiveCountMetricBadPingdomInput is an input type that accepts SloObjectiveCountMetricBadPingdomArgs and SloObjectiveCountMetricBadPingdomOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadPingdomInput` via: // -// SloCompositeArgs{...} -type SloCompositeInput interface { +// SloObjectiveCountMetricBadPingdomArgs{...} +type SloObjectiveCountMetricBadPingdomInput interface { pulumi.Input - ToSloCompositeOutput() SloCompositeOutput - ToSloCompositeOutputWithContext(context.Context) SloCompositeOutput -} - -type SloCompositeArgs struct { - // Condition when the Composite SLO’s error budget is burning. - BurnRateConditions SloCompositeBurnRateConditionArrayInput `pulumi:"burnRateConditions"` - // Designated value - Target pulumi.Float64Input `pulumi:"target"` -} - -func (SloCompositeArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SloComposite)(nil)).Elem() + ToSloObjectiveCountMetricBadPingdomOutput() SloObjectiveCountMetricBadPingdomOutput + ToSloObjectiveCountMetricBadPingdomOutputWithContext(context.Context) SloObjectiveCountMetricBadPingdomOutput } -func (i SloCompositeArgs) ToSloCompositeOutput() SloCompositeOutput { - return i.ToSloCompositeOutputWithContext(context.Background()) +type SloObjectiveCountMetricBadPingdomArgs struct { + // Pingdom uptime or transaction check's ID + CheckId pulumi.StringInput `pulumi:"checkId"` + // Pingdom check type - uptime or transaction + CheckType pulumi.StringPtrInput `pulumi:"checkType"` + // Optional for the Uptime checks. Use it to filter the Pingdom check results by status + Status pulumi.StringPtrInput `pulumi:"status"` } -func (i SloCompositeArgs) ToSloCompositeOutputWithContext(ctx context.Context) SloCompositeOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloCompositeOutput) +func (SloObjectiveCountMetricBadPingdomArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadPingdom)(nil)).Elem() } -func (i SloCompositeArgs) ToSloCompositePtrOutput() SloCompositePtrOutput { - return i.ToSloCompositePtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadPingdomArgs) ToSloObjectiveCountMetricBadPingdomOutput() SloObjectiveCountMetricBadPingdomOutput { + return i.ToSloObjectiveCountMetricBadPingdomOutputWithContext(context.Background()) } -func (i SloCompositeArgs) ToSloCompositePtrOutputWithContext(ctx context.Context) SloCompositePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloCompositeOutput).ToSloCompositePtrOutputWithContext(ctx) +func (i SloObjectiveCountMetricBadPingdomArgs) ToSloObjectiveCountMetricBadPingdomOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadPingdomOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadPingdomOutput) } -// SloCompositePtrInput is an input type that accepts SloCompositeArgs, SloCompositePtr and SloCompositePtrOutput values. -// You can construct a concrete instance of `SloCompositePtrInput` via: -// -// SloCompositeArgs{...} +// SloObjectiveCountMetricBadPingdomArrayInput is an input type that accepts SloObjectiveCountMetricBadPingdomArray and SloObjectiveCountMetricBadPingdomArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadPingdomArrayInput` via: // -// or: -// -// nil -type SloCompositePtrInput interface { +// SloObjectiveCountMetricBadPingdomArray{ SloObjectiveCountMetricBadPingdomArgs{...} } +type SloObjectiveCountMetricBadPingdomArrayInput interface { pulumi.Input - ToSloCompositePtrOutput() SloCompositePtrOutput - ToSloCompositePtrOutputWithContext(context.Context) SloCompositePtrOutput + ToSloObjectiveCountMetricBadPingdomArrayOutput() SloObjectiveCountMetricBadPingdomArrayOutput + ToSloObjectiveCountMetricBadPingdomArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadPingdomArrayOutput } -type sloCompositePtrType SloCompositeArgs - -func SloCompositePtr(v *SloCompositeArgs) SloCompositePtrInput { - return (*sloCompositePtrType)(v) -} +type SloObjectiveCountMetricBadPingdomArray []SloObjectiveCountMetricBadPingdomInput -func (*sloCompositePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**SloComposite)(nil)).Elem() +func (SloObjectiveCountMetricBadPingdomArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadPingdom)(nil)).Elem() } -func (i *sloCompositePtrType) ToSloCompositePtrOutput() SloCompositePtrOutput { - return i.ToSloCompositePtrOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadPingdomArray) ToSloObjectiveCountMetricBadPingdomArrayOutput() SloObjectiveCountMetricBadPingdomArrayOutput { + return i.ToSloObjectiveCountMetricBadPingdomArrayOutputWithContext(context.Background()) } -func (i *sloCompositePtrType) ToSloCompositePtrOutputWithContext(ctx context.Context) SloCompositePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloCompositePtrOutput) +func (i SloObjectiveCountMetricBadPingdomArray) ToSloObjectiveCountMetricBadPingdomArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadPingdomArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadPingdomArrayOutput) } -type SloCompositeOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadPingdomOutput struct{ *pulumi.OutputState } -func (SloCompositeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SloComposite)(nil)).Elem() +func (SloObjectiveCountMetricBadPingdomOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadPingdom)(nil)).Elem() } -func (o SloCompositeOutput) ToSloCompositeOutput() SloCompositeOutput { +func (o SloObjectiveCountMetricBadPingdomOutput) ToSloObjectiveCountMetricBadPingdomOutput() SloObjectiveCountMetricBadPingdomOutput { return o } -func (o SloCompositeOutput) ToSloCompositeOutputWithContext(ctx context.Context) SloCompositeOutput { +func (o SloObjectiveCountMetricBadPingdomOutput) ToSloObjectiveCountMetricBadPingdomOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadPingdomOutput { return o } -func (o SloCompositeOutput) ToSloCompositePtrOutput() SloCompositePtrOutput { - return o.ToSloCompositePtrOutputWithContext(context.Background()) -} - -func (o SloCompositeOutput) ToSloCompositePtrOutputWithContext(ctx context.Context) SloCompositePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v SloComposite) *SloComposite { - return &v - }).(SloCompositePtrOutput) +// Pingdom uptime or transaction check's ID +func (o SloObjectiveCountMetricBadPingdomOutput) CheckId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadPingdom) string { return v.CheckId }).(pulumi.StringOutput) } -// Condition when the Composite SLO’s error budget is burning. -func (o SloCompositeOutput) BurnRateConditions() SloCompositeBurnRateConditionArrayOutput { - return o.ApplyT(func(v SloComposite) []SloCompositeBurnRateCondition { return v.BurnRateConditions }).(SloCompositeBurnRateConditionArrayOutput) +// Pingdom check type - uptime or transaction +func (o SloObjectiveCountMetricBadPingdomOutput) CheckType() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadPingdom) *string { return v.CheckType }).(pulumi.StringPtrOutput) } -// Designated value -func (o SloCompositeOutput) Target() pulumi.Float64Output { - return o.ApplyT(func(v SloComposite) float64 { return v.Target }).(pulumi.Float64Output) +// Optional for the Uptime checks. Use it to filter the Pingdom check results by status +func (o SloObjectiveCountMetricBadPingdomOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadPingdom) *string { return v.Status }).(pulumi.StringPtrOutput) } -type SloCompositePtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadPingdomArrayOutput struct{ *pulumi.OutputState } -func (SloCompositePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**SloComposite)(nil)).Elem() +func (SloObjectiveCountMetricBadPingdomArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadPingdom)(nil)).Elem() } -func (o SloCompositePtrOutput) ToSloCompositePtrOutput() SloCompositePtrOutput { +func (o SloObjectiveCountMetricBadPingdomArrayOutput) ToSloObjectiveCountMetricBadPingdomArrayOutput() SloObjectiveCountMetricBadPingdomArrayOutput { return o } -func (o SloCompositePtrOutput) ToSloCompositePtrOutputWithContext(ctx context.Context) SloCompositePtrOutput { +func (o SloObjectiveCountMetricBadPingdomArrayOutput) ToSloObjectiveCountMetricBadPingdomArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadPingdomArrayOutput { return o } -func (o SloCompositePtrOutput) Elem() SloCompositeOutput { - return o.ApplyT(func(v *SloComposite) SloComposite { - if v != nil { - return *v - } - var ret SloComposite - return ret - }).(SloCompositeOutput) -} - -// Condition when the Composite SLO’s error budget is burning. -func (o SloCompositePtrOutput) BurnRateConditions() SloCompositeBurnRateConditionArrayOutput { - return o.ApplyT(func(v *SloComposite) []SloCompositeBurnRateCondition { - if v == nil { - return nil - } - return v.BurnRateConditions - }).(SloCompositeBurnRateConditionArrayOutput) -} - -// Designated value -func (o SloCompositePtrOutput) Target() pulumi.Float64PtrOutput { - return o.ApplyT(func(v *SloComposite) *float64 { - if v == nil { - return nil - } - return &v.Target - }).(pulumi.Float64PtrOutput) +func (o SloObjectiveCountMetricBadPingdomArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadPingdomOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadPingdom { + return vs[0].([]SloObjectiveCountMetricBadPingdom)[vs[1].(int)] + }).(SloObjectiveCountMetricBadPingdomOutput) } -type SloCompositeBurnRateCondition struct { - Op string `pulumi:"op"` - Value float64 `pulumi:"value"` +type SloObjectiveCountMetricBadPrometheus struct { + // Query for the metrics + Promql string `pulumi:"promql"` } -// SloCompositeBurnRateConditionInput is an input type that accepts SloCompositeBurnRateConditionArgs and SloCompositeBurnRateConditionOutput values. -// You can construct a concrete instance of `SloCompositeBurnRateConditionInput` via: +// SloObjectiveCountMetricBadPrometheusInput is an input type that accepts SloObjectiveCountMetricBadPrometheusArgs and SloObjectiveCountMetricBadPrometheusOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadPrometheusInput` via: // -// SloCompositeBurnRateConditionArgs{...} -type SloCompositeBurnRateConditionInput interface { +// SloObjectiveCountMetricBadPrometheusArgs{...} +type SloObjectiveCountMetricBadPrometheusInput interface { pulumi.Input - ToSloCompositeBurnRateConditionOutput() SloCompositeBurnRateConditionOutput - ToSloCompositeBurnRateConditionOutputWithContext(context.Context) SloCompositeBurnRateConditionOutput + ToSloObjectiveCountMetricBadPrometheusOutput() SloObjectiveCountMetricBadPrometheusOutput + ToSloObjectiveCountMetricBadPrometheusOutputWithContext(context.Context) SloObjectiveCountMetricBadPrometheusOutput } -type SloCompositeBurnRateConditionArgs struct { - Op pulumi.StringInput `pulumi:"op"` - Value pulumi.Float64Input `pulumi:"value"` +type SloObjectiveCountMetricBadPrometheusArgs struct { + // Query for the metrics + Promql pulumi.StringInput `pulumi:"promql"` } -func (SloCompositeBurnRateConditionArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SloCompositeBurnRateCondition)(nil)).Elem() +func (SloObjectiveCountMetricBadPrometheusArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadPrometheus)(nil)).Elem() } -func (i SloCompositeBurnRateConditionArgs) ToSloCompositeBurnRateConditionOutput() SloCompositeBurnRateConditionOutput { - return i.ToSloCompositeBurnRateConditionOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadPrometheusArgs) ToSloObjectiveCountMetricBadPrometheusOutput() SloObjectiveCountMetricBadPrometheusOutput { + return i.ToSloObjectiveCountMetricBadPrometheusOutputWithContext(context.Background()) } -func (i SloCompositeBurnRateConditionArgs) ToSloCompositeBurnRateConditionOutputWithContext(ctx context.Context) SloCompositeBurnRateConditionOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloCompositeBurnRateConditionOutput) +func (i SloObjectiveCountMetricBadPrometheusArgs) ToSloObjectiveCountMetricBadPrometheusOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadPrometheusOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadPrometheusOutput) } -// SloCompositeBurnRateConditionArrayInput is an input type that accepts SloCompositeBurnRateConditionArray and SloCompositeBurnRateConditionArrayOutput values. -// You can construct a concrete instance of `SloCompositeBurnRateConditionArrayInput` via: +// SloObjectiveCountMetricBadPrometheusArrayInput is an input type that accepts SloObjectiveCountMetricBadPrometheusArray and SloObjectiveCountMetricBadPrometheusArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadPrometheusArrayInput` via: // -// SloCompositeBurnRateConditionArray{ SloCompositeBurnRateConditionArgs{...} } -type SloCompositeBurnRateConditionArrayInput interface { +// SloObjectiveCountMetricBadPrometheusArray{ SloObjectiveCountMetricBadPrometheusArgs{...} } +type SloObjectiveCountMetricBadPrometheusArrayInput interface { pulumi.Input - ToSloCompositeBurnRateConditionArrayOutput() SloCompositeBurnRateConditionArrayOutput - ToSloCompositeBurnRateConditionArrayOutputWithContext(context.Context) SloCompositeBurnRateConditionArrayOutput + ToSloObjectiveCountMetricBadPrometheusArrayOutput() SloObjectiveCountMetricBadPrometheusArrayOutput + ToSloObjectiveCountMetricBadPrometheusArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadPrometheusArrayOutput } -type SloCompositeBurnRateConditionArray []SloCompositeBurnRateConditionInput +type SloObjectiveCountMetricBadPrometheusArray []SloObjectiveCountMetricBadPrometheusInput -func (SloCompositeBurnRateConditionArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloCompositeBurnRateCondition)(nil)).Elem() +func (SloObjectiveCountMetricBadPrometheusArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadPrometheus)(nil)).Elem() } -func (i SloCompositeBurnRateConditionArray) ToSloCompositeBurnRateConditionArrayOutput() SloCompositeBurnRateConditionArrayOutput { - return i.ToSloCompositeBurnRateConditionArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadPrometheusArray) ToSloObjectiveCountMetricBadPrometheusArrayOutput() SloObjectiveCountMetricBadPrometheusArrayOutput { + return i.ToSloObjectiveCountMetricBadPrometheusArrayOutputWithContext(context.Background()) } -func (i SloCompositeBurnRateConditionArray) ToSloCompositeBurnRateConditionArrayOutputWithContext(ctx context.Context) SloCompositeBurnRateConditionArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloCompositeBurnRateConditionArrayOutput) +func (i SloObjectiveCountMetricBadPrometheusArray) ToSloObjectiveCountMetricBadPrometheusArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadPrometheusArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadPrometheusArrayOutput) } -type SloCompositeBurnRateConditionOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadPrometheusOutput struct{ *pulumi.OutputState } -func (SloCompositeBurnRateConditionOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SloCompositeBurnRateCondition)(nil)).Elem() +func (SloObjectiveCountMetricBadPrometheusOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadPrometheus)(nil)).Elem() } -func (o SloCompositeBurnRateConditionOutput) ToSloCompositeBurnRateConditionOutput() SloCompositeBurnRateConditionOutput { +func (o SloObjectiveCountMetricBadPrometheusOutput) ToSloObjectiveCountMetricBadPrometheusOutput() SloObjectiveCountMetricBadPrometheusOutput { return o } -func (o SloCompositeBurnRateConditionOutput) ToSloCompositeBurnRateConditionOutputWithContext(ctx context.Context) SloCompositeBurnRateConditionOutput { +func (o SloObjectiveCountMetricBadPrometheusOutput) ToSloObjectiveCountMetricBadPrometheusOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadPrometheusOutput { return o } -func (o SloCompositeBurnRateConditionOutput) Op() pulumi.StringOutput { - return o.ApplyT(func(v SloCompositeBurnRateCondition) string { return v.Op }).(pulumi.StringOutput) -} - -func (o SloCompositeBurnRateConditionOutput) Value() pulumi.Float64Output { - return o.ApplyT(func(v SloCompositeBurnRateCondition) float64 { return v.Value }).(pulumi.Float64Output) +// Query for the metrics +func (o SloObjectiveCountMetricBadPrometheusOutput) Promql() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadPrometheus) string { return v.Promql }).(pulumi.StringOutput) } -type SloCompositeBurnRateConditionArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadPrometheusArrayOutput struct{ *pulumi.OutputState } -func (SloCompositeBurnRateConditionArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloCompositeBurnRateCondition)(nil)).Elem() +func (SloObjectiveCountMetricBadPrometheusArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadPrometheus)(nil)).Elem() } -func (o SloCompositeBurnRateConditionArrayOutput) ToSloCompositeBurnRateConditionArrayOutput() SloCompositeBurnRateConditionArrayOutput { +func (o SloObjectiveCountMetricBadPrometheusArrayOutput) ToSloObjectiveCountMetricBadPrometheusArrayOutput() SloObjectiveCountMetricBadPrometheusArrayOutput { return o } -func (o SloCompositeBurnRateConditionArrayOutput) ToSloCompositeBurnRateConditionArrayOutputWithContext(ctx context.Context) SloCompositeBurnRateConditionArrayOutput { +func (o SloObjectiveCountMetricBadPrometheusArrayOutput) ToSloObjectiveCountMetricBadPrometheusArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadPrometheusArrayOutput { return o } -func (o SloCompositeBurnRateConditionArrayOutput) Index(i pulumi.IntInput) SloCompositeBurnRateConditionOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloCompositeBurnRateCondition { - return vs[0].([]SloCompositeBurnRateCondition)[vs[1].(int)] - }).(SloCompositeBurnRateConditionOutput) +func (o SloObjectiveCountMetricBadPrometheusArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadPrometheusOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadPrometheus { + return vs[0].([]SloObjectiveCountMetricBadPrometheus)[vs[1].(int)] + }).(SloObjectiveCountMetricBadPrometheusOutput) } -type SloIndicator struct { - // Kind of the metric source. One of {Agent, Direct}. - Kind *string `pulumi:"kind"` - // Name of the metric source (agent). - Name string `pulumi:"name"` - // Name of the metric source project. - Project *string `pulumi:"project"` +type SloObjectiveCountMetricBadRedshift struct { + // Redshift custer ID + ClusterId string `pulumi:"clusterId"` + // Database name + DatabaseName string `pulumi:"databaseName"` + // Query for the metrics + Query string `pulumi:"query"` + // Region of the CloudWatch instance + Region string `pulumi:"region"` } -// SloIndicatorInput is an input type that accepts SloIndicatorArgs and SloIndicatorOutput values. -// You can construct a concrete instance of `SloIndicatorInput` via: +// SloObjectiveCountMetricBadRedshiftInput is an input type that accepts SloObjectiveCountMetricBadRedshiftArgs and SloObjectiveCountMetricBadRedshiftOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadRedshiftInput` via: // -// SloIndicatorArgs{...} -type SloIndicatorInput interface { +// SloObjectiveCountMetricBadRedshiftArgs{...} +type SloObjectiveCountMetricBadRedshiftInput interface { pulumi.Input - ToSloIndicatorOutput() SloIndicatorOutput - ToSloIndicatorOutputWithContext(context.Context) SloIndicatorOutput + ToSloObjectiveCountMetricBadRedshiftOutput() SloObjectiveCountMetricBadRedshiftOutput + ToSloObjectiveCountMetricBadRedshiftOutputWithContext(context.Context) SloObjectiveCountMetricBadRedshiftOutput } -type SloIndicatorArgs struct { - // Kind of the metric source. One of {Agent, Direct}. - Kind pulumi.StringPtrInput `pulumi:"kind"` - // Name of the metric source (agent). - Name pulumi.StringInput `pulumi:"name"` - // Name of the metric source project. - Project pulumi.StringPtrInput `pulumi:"project"` +type SloObjectiveCountMetricBadRedshiftArgs struct { + // Redshift custer ID + ClusterId pulumi.StringInput `pulumi:"clusterId"` + // Database name + DatabaseName pulumi.StringInput `pulumi:"databaseName"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` + // Region of the CloudWatch instance + Region pulumi.StringInput `pulumi:"region"` } -func (SloIndicatorArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SloIndicator)(nil)).Elem() +func (SloObjectiveCountMetricBadRedshiftArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadRedshift)(nil)).Elem() } -func (i SloIndicatorArgs) ToSloIndicatorOutput() SloIndicatorOutput { - return i.ToSloIndicatorOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadRedshiftArgs) ToSloObjectiveCountMetricBadRedshiftOutput() SloObjectiveCountMetricBadRedshiftOutput { + return i.ToSloObjectiveCountMetricBadRedshiftOutputWithContext(context.Background()) } -func (i SloIndicatorArgs) ToSloIndicatorOutputWithContext(ctx context.Context) SloIndicatorOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloIndicatorOutput) +func (i SloObjectiveCountMetricBadRedshiftArgs) ToSloObjectiveCountMetricBadRedshiftOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadRedshiftOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadRedshiftOutput) } -func (i SloIndicatorArgs) ToSloIndicatorPtrOutput() SloIndicatorPtrOutput { - return i.ToSloIndicatorPtrOutputWithContext(context.Background()) +// SloObjectiveCountMetricBadRedshiftArrayInput is an input type that accepts SloObjectiveCountMetricBadRedshiftArray and SloObjectiveCountMetricBadRedshiftArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadRedshiftArrayInput` via: +// +// SloObjectiveCountMetricBadRedshiftArray{ SloObjectiveCountMetricBadRedshiftArgs{...} } +type SloObjectiveCountMetricBadRedshiftArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadRedshiftArrayOutput() SloObjectiveCountMetricBadRedshiftArrayOutput + ToSloObjectiveCountMetricBadRedshiftArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadRedshiftArrayOutput } -func (i SloIndicatorArgs) ToSloIndicatorPtrOutputWithContext(ctx context.Context) SloIndicatorPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloIndicatorOutput).ToSloIndicatorPtrOutputWithContext(ctx) +type SloObjectiveCountMetricBadRedshiftArray []SloObjectiveCountMetricBadRedshiftInput + +func (SloObjectiveCountMetricBadRedshiftArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadRedshift)(nil)).Elem() } -// SloIndicatorPtrInput is an input type that accepts SloIndicatorArgs, SloIndicatorPtr and SloIndicatorPtrOutput values. -// You can construct a concrete instance of `SloIndicatorPtrInput` via: -// -// SloIndicatorArgs{...} -// -// or: -// -// nil -type SloIndicatorPtrInput interface { - pulumi.Input +func (i SloObjectiveCountMetricBadRedshiftArray) ToSloObjectiveCountMetricBadRedshiftArrayOutput() SloObjectiveCountMetricBadRedshiftArrayOutput { + return i.ToSloObjectiveCountMetricBadRedshiftArrayOutputWithContext(context.Background()) +} - ToSloIndicatorPtrOutput() SloIndicatorPtrOutput - ToSloIndicatorPtrOutputWithContext(context.Context) SloIndicatorPtrOutput +func (i SloObjectiveCountMetricBadRedshiftArray) ToSloObjectiveCountMetricBadRedshiftArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadRedshiftArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadRedshiftArrayOutput) } -type sloIndicatorPtrType SloIndicatorArgs +type SloObjectiveCountMetricBadRedshiftOutput struct{ *pulumi.OutputState } -func SloIndicatorPtr(v *SloIndicatorArgs) SloIndicatorPtrInput { - return (*sloIndicatorPtrType)(v) +func (SloObjectiveCountMetricBadRedshiftOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadRedshift)(nil)).Elem() } -func (*sloIndicatorPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**SloIndicator)(nil)).Elem() +func (o SloObjectiveCountMetricBadRedshiftOutput) ToSloObjectiveCountMetricBadRedshiftOutput() SloObjectiveCountMetricBadRedshiftOutput { + return o } -func (i *sloIndicatorPtrType) ToSloIndicatorPtrOutput() SloIndicatorPtrOutput { - return i.ToSloIndicatorPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadRedshiftOutput) ToSloObjectiveCountMetricBadRedshiftOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadRedshiftOutput { + return o } -func (i *sloIndicatorPtrType) ToSloIndicatorPtrOutputWithContext(ctx context.Context) SloIndicatorPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloIndicatorPtrOutput) +// Redshift custer ID +func (o SloObjectiveCountMetricBadRedshiftOutput) ClusterId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadRedshift) string { return v.ClusterId }).(pulumi.StringOutput) } -type SloIndicatorOutput struct{ *pulumi.OutputState } +// Database name +func (o SloObjectiveCountMetricBadRedshiftOutput) DatabaseName() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadRedshift) string { return v.DatabaseName }).(pulumi.StringOutput) +} -func (SloIndicatorOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SloIndicator)(nil)).Elem() +// Query for the metrics +func (o SloObjectiveCountMetricBadRedshiftOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadRedshift) string { return v.Query }).(pulumi.StringOutput) } -func (o SloIndicatorOutput) ToSloIndicatorOutput() SloIndicatorOutput { +// Region of the CloudWatch instance +func (o SloObjectiveCountMetricBadRedshiftOutput) Region() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadRedshift) string { return v.Region }).(pulumi.StringOutput) +} + +type SloObjectiveCountMetricBadRedshiftArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadRedshiftArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadRedshift)(nil)).Elem() +} + +func (o SloObjectiveCountMetricBadRedshiftArrayOutput) ToSloObjectiveCountMetricBadRedshiftArrayOutput() SloObjectiveCountMetricBadRedshiftArrayOutput { return o } -func (o SloIndicatorOutput) ToSloIndicatorOutputWithContext(ctx context.Context) SloIndicatorOutput { +func (o SloObjectiveCountMetricBadRedshiftArrayOutput) ToSloObjectiveCountMetricBadRedshiftArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadRedshiftArrayOutput { return o } -func (o SloIndicatorOutput) ToSloIndicatorPtrOutput() SloIndicatorPtrOutput { - return o.ToSloIndicatorPtrOutputWithContext(context.Background()) +func (o SloObjectiveCountMetricBadRedshiftArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadRedshiftOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadRedshift { + return vs[0].([]SloObjectiveCountMetricBadRedshift)[vs[1].(int)] + }).(SloObjectiveCountMetricBadRedshiftOutput) } -func (o SloIndicatorOutput) ToSloIndicatorPtrOutputWithContext(ctx context.Context) SloIndicatorPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v SloIndicator) *SloIndicator { - return &v - }).(SloIndicatorPtrOutput) +type SloObjectiveCountMetricBadSplunk struct { + // Query for the metrics + Query string `pulumi:"query"` } -// Kind of the metric source. One of {Agent, Direct}. -func (o SloIndicatorOutput) Kind() pulumi.StringPtrOutput { - return o.ApplyT(func(v SloIndicator) *string { return v.Kind }).(pulumi.StringPtrOutput) +// SloObjectiveCountMetricBadSplunkInput is an input type that accepts SloObjectiveCountMetricBadSplunkArgs and SloObjectiveCountMetricBadSplunkOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadSplunkInput` via: +// +// SloObjectiveCountMetricBadSplunkArgs{...} +type SloObjectiveCountMetricBadSplunkInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadSplunkOutput() SloObjectiveCountMetricBadSplunkOutput + ToSloObjectiveCountMetricBadSplunkOutputWithContext(context.Context) SloObjectiveCountMetricBadSplunkOutput +} + +type SloObjectiveCountMetricBadSplunkArgs struct { + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` +} + +func (SloObjectiveCountMetricBadSplunkArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadSplunk)(nil)).Elem() +} + +func (i SloObjectiveCountMetricBadSplunkArgs) ToSloObjectiveCountMetricBadSplunkOutput() SloObjectiveCountMetricBadSplunkOutput { + return i.ToSloObjectiveCountMetricBadSplunkOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricBadSplunkArgs) ToSloObjectiveCountMetricBadSplunkOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSplunkOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadSplunkOutput) +} + +// SloObjectiveCountMetricBadSplunkArrayInput is an input type that accepts SloObjectiveCountMetricBadSplunkArray and SloObjectiveCountMetricBadSplunkArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadSplunkArrayInput` via: +// +// SloObjectiveCountMetricBadSplunkArray{ SloObjectiveCountMetricBadSplunkArgs{...} } +type SloObjectiveCountMetricBadSplunkArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricBadSplunkArrayOutput() SloObjectiveCountMetricBadSplunkArrayOutput + ToSloObjectiveCountMetricBadSplunkArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadSplunkArrayOutput +} + +type SloObjectiveCountMetricBadSplunkArray []SloObjectiveCountMetricBadSplunkInput + +func (SloObjectiveCountMetricBadSplunkArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadSplunk)(nil)).Elem() } -// Name of the metric source (agent). -func (o SloIndicatorOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v SloIndicator) string { return v.Name }).(pulumi.StringOutput) +func (i SloObjectiveCountMetricBadSplunkArray) ToSloObjectiveCountMetricBadSplunkArrayOutput() SloObjectiveCountMetricBadSplunkArrayOutput { + return i.ToSloObjectiveCountMetricBadSplunkArrayOutputWithContext(context.Background()) } -// Name of the metric source project. -func (o SloIndicatorOutput) Project() pulumi.StringPtrOutput { - return o.ApplyT(func(v SloIndicator) *string { return v.Project }).(pulumi.StringPtrOutput) +func (i SloObjectiveCountMetricBadSplunkArray) ToSloObjectiveCountMetricBadSplunkArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSplunkArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadSplunkArrayOutput) } -type SloIndicatorPtrOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadSplunkOutput struct{ *pulumi.OutputState } -func (SloIndicatorPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**SloIndicator)(nil)).Elem() +func (SloObjectiveCountMetricBadSplunkOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadSplunk)(nil)).Elem() } -func (o SloIndicatorPtrOutput) ToSloIndicatorPtrOutput() SloIndicatorPtrOutput { +func (o SloObjectiveCountMetricBadSplunkOutput) ToSloObjectiveCountMetricBadSplunkOutput() SloObjectiveCountMetricBadSplunkOutput { return o } -func (o SloIndicatorPtrOutput) ToSloIndicatorPtrOutputWithContext(ctx context.Context) SloIndicatorPtrOutput { +func (o SloObjectiveCountMetricBadSplunkOutput) ToSloObjectiveCountMetricBadSplunkOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSplunkOutput { return o } -func (o SloIndicatorPtrOutput) Elem() SloIndicatorOutput { - return o.ApplyT(func(v *SloIndicator) SloIndicator { - if v != nil { - return *v - } - var ret SloIndicator - return ret - }).(SloIndicatorOutput) +// Query for the metrics +func (o SloObjectiveCountMetricBadSplunkOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadSplunk) string { return v.Query }).(pulumi.StringOutput) } -// Kind of the metric source. One of {Agent, Direct}. -func (o SloIndicatorPtrOutput) Kind() pulumi.StringPtrOutput { - return o.ApplyT(func(v *SloIndicator) *string { - if v == nil { - return nil - } - return v.Kind - }).(pulumi.StringPtrOutput) +type SloObjectiveCountMetricBadSplunkArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadSplunkArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadSplunk)(nil)).Elem() } -// Name of the metric source (agent). -func (o SloIndicatorPtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *SloIndicator) *string { - if v == nil { - return nil - } - return &v.Name - }).(pulumi.StringPtrOutput) +func (o SloObjectiveCountMetricBadSplunkArrayOutput) ToSloObjectiveCountMetricBadSplunkArrayOutput() SloObjectiveCountMetricBadSplunkArrayOutput { + return o } -// Name of the metric source project. -func (o SloIndicatorPtrOutput) Project() pulumi.StringPtrOutput { - return o.ApplyT(func(v *SloIndicator) *string { - if v == nil { - return nil - } - return v.Project - }).(pulumi.StringPtrOutput) +func (o SloObjectiveCountMetricBadSplunkArrayOutput) ToSloObjectiveCountMetricBadSplunkArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSplunkArrayOutput { + return o } -type SloLabel struct { - // A key for the label, unique within the associated resource. - Key string `pulumi:"key"` - // A list of unique values for a single key. - Values []string `pulumi:"values"` +func (o SloObjectiveCountMetricBadSplunkArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadSplunkOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadSplunk { + return vs[0].([]SloObjectiveCountMetricBadSplunk)[vs[1].(int)] + }).(SloObjectiveCountMetricBadSplunkOutput) } -// SloLabelInput is an input type that accepts SloLabelArgs and SloLabelOutput values. -// You can construct a concrete instance of `SloLabelInput` via: +type SloObjectiveCountMetricBadSplunkObservability struct { + // Query for the metrics + Program string `pulumi:"program"` +} + +// SloObjectiveCountMetricBadSplunkObservabilityInput is an input type that accepts SloObjectiveCountMetricBadSplunkObservabilityArgs and SloObjectiveCountMetricBadSplunkObservabilityOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadSplunkObservabilityInput` via: // -// SloLabelArgs{...} -type SloLabelInput interface { +// SloObjectiveCountMetricBadSplunkObservabilityArgs{...} +type SloObjectiveCountMetricBadSplunkObservabilityInput interface { pulumi.Input - ToSloLabelOutput() SloLabelOutput - ToSloLabelOutputWithContext(context.Context) SloLabelOutput + ToSloObjectiveCountMetricBadSplunkObservabilityOutput() SloObjectiveCountMetricBadSplunkObservabilityOutput + ToSloObjectiveCountMetricBadSplunkObservabilityOutputWithContext(context.Context) SloObjectiveCountMetricBadSplunkObservabilityOutput } -type SloLabelArgs struct { - // A key for the label, unique within the associated resource. - Key pulumi.StringInput `pulumi:"key"` - // A list of unique values for a single key. - Values pulumi.StringArrayInput `pulumi:"values"` +type SloObjectiveCountMetricBadSplunkObservabilityArgs struct { + // Query for the metrics + Program pulumi.StringInput `pulumi:"program"` } -func (SloLabelArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SloLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadSplunkObservabilityArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadSplunkObservability)(nil)).Elem() } -func (i SloLabelArgs) ToSloLabelOutput() SloLabelOutput { - return i.ToSloLabelOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadSplunkObservabilityArgs) ToSloObjectiveCountMetricBadSplunkObservabilityOutput() SloObjectiveCountMetricBadSplunkObservabilityOutput { + return i.ToSloObjectiveCountMetricBadSplunkObservabilityOutputWithContext(context.Background()) } -func (i SloLabelArgs) ToSloLabelOutputWithContext(ctx context.Context) SloLabelOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloLabelOutput) +func (i SloObjectiveCountMetricBadSplunkObservabilityArgs) ToSloObjectiveCountMetricBadSplunkObservabilityOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSplunkObservabilityOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadSplunkObservabilityOutput) } -// SloLabelArrayInput is an input type that accepts SloLabelArray and SloLabelArrayOutput values. -// You can construct a concrete instance of `SloLabelArrayInput` via: +// SloObjectiveCountMetricBadSplunkObservabilityArrayInput is an input type that accepts SloObjectiveCountMetricBadSplunkObservabilityArray and SloObjectiveCountMetricBadSplunkObservabilityArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadSplunkObservabilityArrayInput` via: // -// SloLabelArray{ SloLabelArgs{...} } -type SloLabelArrayInput interface { +// SloObjectiveCountMetricBadSplunkObservabilityArray{ SloObjectiveCountMetricBadSplunkObservabilityArgs{...} } +type SloObjectiveCountMetricBadSplunkObservabilityArrayInput interface { pulumi.Input - ToSloLabelArrayOutput() SloLabelArrayOutput - ToSloLabelArrayOutputWithContext(context.Context) SloLabelArrayOutput + ToSloObjectiveCountMetricBadSplunkObservabilityArrayOutput() SloObjectiveCountMetricBadSplunkObservabilityArrayOutput + ToSloObjectiveCountMetricBadSplunkObservabilityArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadSplunkObservabilityArrayOutput } -type SloLabelArray []SloLabelInput +type SloObjectiveCountMetricBadSplunkObservabilityArray []SloObjectiveCountMetricBadSplunkObservabilityInput -func (SloLabelArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadSplunkObservabilityArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadSplunkObservability)(nil)).Elem() } -func (i SloLabelArray) ToSloLabelArrayOutput() SloLabelArrayOutput { - return i.ToSloLabelArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadSplunkObservabilityArray) ToSloObjectiveCountMetricBadSplunkObservabilityArrayOutput() SloObjectiveCountMetricBadSplunkObservabilityArrayOutput { + return i.ToSloObjectiveCountMetricBadSplunkObservabilityArrayOutputWithContext(context.Background()) } -func (i SloLabelArray) ToSloLabelArrayOutputWithContext(ctx context.Context) SloLabelArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloLabelArrayOutput) +func (i SloObjectiveCountMetricBadSplunkObservabilityArray) ToSloObjectiveCountMetricBadSplunkObservabilityArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSplunkObservabilityArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadSplunkObservabilityArrayOutput) } -type SloLabelOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadSplunkObservabilityOutput struct{ *pulumi.OutputState } -func (SloLabelOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SloLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadSplunkObservabilityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadSplunkObservability)(nil)).Elem() } -func (o SloLabelOutput) ToSloLabelOutput() SloLabelOutput { +func (o SloObjectiveCountMetricBadSplunkObservabilityOutput) ToSloObjectiveCountMetricBadSplunkObservabilityOutput() SloObjectiveCountMetricBadSplunkObservabilityOutput { return o } -func (o SloLabelOutput) ToSloLabelOutputWithContext(ctx context.Context) SloLabelOutput { +func (o SloObjectiveCountMetricBadSplunkObservabilityOutput) ToSloObjectiveCountMetricBadSplunkObservabilityOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSplunkObservabilityOutput { return o } -// A key for the label, unique within the associated resource. -func (o SloLabelOutput) Key() pulumi.StringOutput { - return o.ApplyT(func(v SloLabel) string { return v.Key }).(pulumi.StringOutput) -} - -// A list of unique values for a single key. -func (o SloLabelOutput) Values() pulumi.StringArrayOutput { - return o.ApplyT(func(v SloLabel) []string { return v.Values }).(pulumi.StringArrayOutput) +// Query for the metrics +func (o SloObjectiveCountMetricBadSplunkObservabilityOutput) Program() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadSplunkObservability) string { return v.Program }).(pulumi.StringOutput) } -type SloLabelArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadSplunkObservabilityArrayOutput struct{ *pulumi.OutputState } -func (SloLabelArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloLabel)(nil)).Elem() +func (SloObjectiveCountMetricBadSplunkObservabilityArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadSplunkObservability)(nil)).Elem() } -func (o SloLabelArrayOutput) ToSloLabelArrayOutput() SloLabelArrayOutput { +func (o SloObjectiveCountMetricBadSplunkObservabilityArrayOutput) ToSloObjectiveCountMetricBadSplunkObservabilityArrayOutput() SloObjectiveCountMetricBadSplunkObservabilityArrayOutput { return o } -func (o SloLabelArrayOutput) ToSloLabelArrayOutputWithContext(ctx context.Context) SloLabelArrayOutput { +func (o SloObjectiveCountMetricBadSplunkObservabilityArrayOutput) ToSloObjectiveCountMetricBadSplunkObservabilityArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSplunkObservabilityArrayOutput { return o } -func (o SloLabelArrayOutput) Index(i pulumi.IntInput) SloLabelOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloLabel { - return vs[0].([]SloLabel)[vs[1].(int)] - }).(SloLabelOutput) +func (o SloObjectiveCountMetricBadSplunkObservabilityArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadSplunkObservabilityOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadSplunkObservability { + return vs[0].([]SloObjectiveCountMetricBadSplunkObservability)[vs[1].(int)] + }).(SloObjectiveCountMetricBadSplunkObservabilityOutput) } -type SloObjective struct { - // Compares two time series, indicating the ratio of the count of good values to total values. - CountMetrics []SloObjectiveCountMetric `pulumi:"countMetrics"` - // Name to be displayed - DisplayName string `pulumi:"displayName"` - // Objective's name. This field is computed if not provided. - Name *string `pulumi:"name"` - // Type of logical operation - Op *string `pulumi:"op"` - // Raw data is used to compare objective values. - RawMetrics []SloObjectiveRawMetric `pulumi:"rawMetrics"` - // Designated value - Target float64 `pulumi:"target"` - // Designated value for slice - TimeSliceTarget *float64 `pulumi:"timeSliceTarget"` - // Value - Value float64 `pulumi:"value"` +type SloObjectiveCountMetricBadSumologic struct { + // Period of data aggregation + Quantization *string `pulumi:"quantization"` + // Query for the metrics + Query string `pulumi:"query"` + // Aggregation function - avg, sum, min, max, count, none + Rollup *string `pulumi:"rollup"` + // Sumologic source - metrics or logs + Type string `pulumi:"type"` } -// SloObjectiveInput is an input type that accepts SloObjectiveArgs and SloObjectiveOutput values. -// You can construct a concrete instance of `SloObjectiveInput` via: +// SloObjectiveCountMetricBadSumologicInput is an input type that accepts SloObjectiveCountMetricBadSumologicArgs and SloObjectiveCountMetricBadSumologicOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadSumologicInput` via: // -// SloObjectiveArgs{...} -type SloObjectiveInput interface { +// SloObjectiveCountMetricBadSumologicArgs{...} +type SloObjectiveCountMetricBadSumologicInput interface { pulumi.Input - ToSloObjectiveOutput() SloObjectiveOutput - ToSloObjectiveOutputWithContext(context.Context) SloObjectiveOutput + ToSloObjectiveCountMetricBadSumologicOutput() SloObjectiveCountMetricBadSumologicOutput + ToSloObjectiveCountMetricBadSumologicOutputWithContext(context.Context) SloObjectiveCountMetricBadSumologicOutput } -type SloObjectiveArgs struct { - // Compares two time series, indicating the ratio of the count of good values to total values. - CountMetrics SloObjectiveCountMetricArrayInput `pulumi:"countMetrics"` - // Name to be displayed - DisplayName pulumi.StringInput `pulumi:"displayName"` - // Objective's name. This field is computed if not provided. - Name pulumi.StringPtrInput `pulumi:"name"` - // Type of logical operation - Op pulumi.StringPtrInput `pulumi:"op"` - // Raw data is used to compare objective values. - RawMetrics SloObjectiveRawMetricArrayInput `pulumi:"rawMetrics"` - // Designated value - Target pulumi.Float64Input `pulumi:"target"` - // Designated value for slice - TimeSliceTarget pulumi.Float64PtrInput `pulumi:"timeSliceTarget"` - // Value - Value pulumi.Float64Input `pulumi:"value"` +type SloObjectiveCountMetricBadSumologicArgs struct { + // Period of data aggregation + Quantization pulumi.StringPtrInput `pulumi:"quantization"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` + // Aggregation function - avg, sum, min, max, count, none + Rollup pulumi.StringPtrInput `pulumi:"rollup"` + // Sumologic source - metrics or logs + Type pulumi.StringInput `pulumi:"type"` } -func (SloObjectiveArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SloObjective)(nil)).Elem() +func (SloObjectiveCountMetricBadSumologicArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadSumologic)(nil)).Elem() } -func (i SloObjectiveArgs) ToSloObjectiveOutput() SloObjectiveOutput { - return i.ToSloObjectiveOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadSumologicArgs) ToSloObjectiveCountMetricBadSumologicOutput() SloObjectiveCountMetricBadSumologicOutput { + return i.ToSloObjectiveCountMetricBadSumologicOutputWithContext(context.Background()) } -func (i SloObjectiveArgs) ToSloObjectiveOutputWithContext(ctx context.Context) SloObjectiveOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveOutput) +func (i SloObjectiveCountMetricBadSumologicArgs) ToSloObjectiveCountMetricBadSumologicOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSumologicOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadSumologicOutput) } -// SloObjectiveArrayInput is an input type that accepts SloObjectiveArray and SloObjectiveArrayOutput values. -// You can construct a concrete instance of `SloObjectiveArrayInput` via: +// SloObjectiveCountMetricBadSumologicArrayInput is an input type that accepts SloObjectiveCountMetricBadSumologicArray and SloObjectiveCountMetricBadSumologicArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadSumologicArrayInput` via: // -// SloObjectiveArray{ SloObjectiveArgs{...} } -type SloObjectiveArrayInput interface { +// SloObjectiveCountMetricBadSumologicArray{ SloObjectiveCountMetricBadSumologicArgs{...} } +type SloObjectiveCountMetricBadSumologicArrayInput interface { pulumi.Input - ToSloObjectiveArrayOutput() SloObjectiveArrayOutput - ToSloObjectiveArrayOutputWithContext(context.Context) SloObjectiveArrayOutput + ToSloObjectiveCountMetricBadSumologicArrayOutput() SloObjectiveCountMetricBadSumologicArrayOutput + ToSloObjectiveCountMetricBadSumologicArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadSumologicArrayOutput } -type SloObjectiveArray []SloObjectiveInput +type SloObjectiveCountMetricBadSumologicArray []SloObjectiveCountMetricBadSumologicInput -func (SloObjectiveArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloObjective)(nil)).Elem() +func (SloObjectiveCountMetricBadSumologicArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadSumologic)(nil)).Elem() } -func (i SloObjectiveArray) ToSloObjectiveArrayOutput() SloObjectiveArrayOutput { - return i.ToSloObjectiveArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadSumologicArray) ToSloObjectiveCountMetricBadSumologicArrayOutput() SloObjectiveCountMetricBadSumologicArrayOutput { + return i.ToSloObjectiveCountMetricBadSumologicArrayOutputWithContext(context.Background()) } -func (i SloObjectiveArray) ToSloObjectiveArrayOutputWithContext(ctx context.Context) SloObjectiveArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveArrayOutput) +func (i SloObjectiveCountMetricBadSumologicArray) ToSloObjectiveCountMetricBadSumologicArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSumologicArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadSumologicArrayOutput) } -type SloObjectiveOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadSumologicOutput struct{ *pulumi.OutputState } -func (SloObjectiveOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SloObjective)(nil)).Elem() +func (SloObjectiveCountMetricBadSumologicOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadSumologic)(nil)).Elem() } -func (o SloObjectiveOutput) ToSloObjectiveOutput() SloObjectiveOutput { +func (o SloObjectiveCountMetricBadSumologicOutput) ToSloObjectiveCountMetricBadSumologicOutput() SloObjectiveCountMetricBadSumologicOutput { return o } -func (o SloObjectiveOutput) ToSloObjectiveOutputWithContext(ctx context.Context) SloObjectiveOutput { +func (o SloObjectiveCountMetricBadSumologicOutput) ToSloObjectiveCountMetricBadSumologicOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSumologicOutput { return o } -// Compares two time series, indicating the ratio of the count of good values to total values. -func (o SloObjectiveOutput) CountMetrics() SloObjectiveCountMetricArrayOutput { - return o.ApplyT(func(v SloObjective) []SloObjectiveCountMetric { return v.CountMetrics }).(SloObjectiveCountMetricArrayOutput) -} - -// Name to be displayed -func (o SloObjectiveOutput) DisplayName() pulumi.StringOutput { - return o.ApplyT(func(v SloObjective) string { return v.DisplayName }).(pulumi.StringOutput) -} - -// Objective's name. This field is computed if not provided. -func (o SloObjectiveOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v SloObjective) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// Type of logical operation -func (o SloObjectiveOutput) Op() pulumi.StringPtrOutput { - return o.ApplyT(func(v SloObjective) *string { return v.Op }).(pulumi.StringPtrOutput) -} - -// Raw data is used to compare objective values. -func (o SloObjectiveOutput) RawMetrics() SloObjectiveRawMetricArrayOutput { - return o.ApplyT(func(v SloObjective) []SloObjectiveRawMetric { return v.RawMetrics }).(SloObjectiveRawMetricArrayOutput) +// Period of data aggregation +func (o SloObjectiveCountMetricBadSumologicOutput) Quantization() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadSumologic) *string { return v.Quantization }).(pulumi.StringPtrOutput) } -// Designated value -func (o SloObjectiveOutput) Target() pulumi.Float64Output { - return o.ApplyT(func(v SloObjective) float64 { return v.Target }).(pulumi.Float64Output) +// Query for the metrics +func (o SloObjectiveCountMetricBadSumologicOutput) Query() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadSumologic) string { return v.Query }).(pulumi.StringOutput) } -// Designated value for slice -func (o SloObjectiveOutput) TimeSliceTarget() pulumi.Float64PtrOutput { - return o.ApplyT(func(v SloObjective) *float64 { return v.TimeSliceTarget }).(pulumi.Float64PtrOutput) +// Aggregation function - avg, sum, min, max, count, none +func (o SloObjectiveCountMetricBadSumologicOutput) Rollup() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadSumologic) *string { return v.Rollup }).(pulumi.StringPtrOutput) } -// Value -func (o SloObjectiveOutput) Value() pulumi.Float64Output { - return o.ApplyT(func(v SloObjective) float64 { return v.Value }).(pulumi.Float64Output) +// Sumologic source - metrics or logs +func (o SloObjectiveCountMetricBadSumologicOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadSumologic) string { return v.Type }).(pulumi.StringOutput) } -type SloObjectiveArrayOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadSumologicArrayOutput struct{ *pulumi.OutputState } -func (SloObjectiveArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloObjective)(nil)).Elem() +func (SloObjectiveCountMetricBadSumologicArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadSumologic)(nil)).Elem() } -func (o SloObjectiveArrayOutput) ToSloObjectiveArrayOutput() SloObjectiveArrayOutput { +func (o SloObjectiveCountMetricBadSumologicArrayOutput) ToSloObjectiveCountMetricBadSumologicArrayOutput() SloObjectiveCountMetricBadSumologicArrayOutput { return o } -func (o SloObjectiveArrayOutput) ToSloObjectiveArrayOutputWithContext(ctx context.Context) SloObjectiveArrayOutput { +func (o SloObjectiveCountMetricBadSumologicArrayOutput) ToSloObjectiveCountMetricBadSumologicArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadSumologicArrayOutput { return o } -func (o SloObjectiveArrayOutput) Index(i pulumi.IntInput) SloObjectiveOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjective { - return vs[0].([]SloObjective)[vs[1].(int)] - }).(SloObjectiveOutput) +func (o SloObjectiveCountMetricBadSumologicArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadSumologicOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadSumologic { + return vs[0].([]SloObjectiveCountMetricBadSumologic)[vs[1].(int)] + }).(SloObjectiveCountMetricBadSumologicOutput) } -type SloObjectiveCountMetric struct { - Goods []SloObjectiveCountMetricGood `pulumi:"goods"` - Incremental bool `pulumi:"incremental"` - Totals []SloObjectiveCountMetricTotal `pulumi:"totals"` +type SloObjectiveCountMetricBadThousandeye struct { + // ID of the test + TestId int `pulumi:"testId"` } -// SloObjectiveCountMetricInput is an input type that accepts SloObjectiveCountMetricArgs and SloObjectiveCountMetricOutput values. -// You can construct a concrete instance of `SloObjectiveCountMetricInput` via: +// SloObjectiveCountMetricBadThousandeyeInput is an input type that accepts SloObjectiveCountMetricBadThousandeyeArgs and SloObjectiveCountMetricBadThousandeyeOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadThousandeyeInput` via: // -// SloObjectiveCountMetricArgs{...} -type SloObjectiveCountMetricInput interface { +// SloObjectiveCountMetricBadThousandeyeArgs{...} +type SloObjectiveCountMetricBadThousandeyeInput interface { pulumi.Input - ToSloObjectiveCountMetricOutput() SloObjectiveCountMetricOutput - ToSloObjectiveCountMetricOutputWithContext(context.Context) SloObjectiveCountMetricOutput + ToSloObjectiveCountMetricBadThousandeyeOutput() SloObjectiveCountMetricBadThousandeyeOutput + ToSloObjectiveCountMetricBadThousandeyeOutputWithContext(context.Context) SloObjectiveCountMetricBadThousandeyeOutput } -type SloObjectiveCountMetricArgs struct { - Goods SloObjectiveCountMetricGoodArrayInput `pulumi:"goods"` - Incremental pulumi.BoolInput `pulumi:"incremental"` - Totals SloObjectiveCountMetricTotalArrayInput `pulumi:"totals"` +type SloObjectiveCountMetricBadThousandeyeArgs struct { + // ID of the test + TestId pulumi.IntInput `pulumi:"testId"` } -func (SloObjectiveCountMetricArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SloObjectiveCountMetric)(nil)).Elem() +func (SloObjectiveCountMetricBadThousandeyeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadThousandeye)(nil)).Elem() } -func (i SloObjectiveCountMetricArgs) ToSloObjectiveCountMetricOutput() SloObjectiveCountMetricOutput { - return i.ToSloObjectiveCountMetricOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadThousandeyeArgs) ToSloObjectiveCountMetricBadThousandeyeOutput() SloObjectiveCountMetricBadThousandeyeOutput { + return i.ToSloObjectiveCountMetricBadThousandeyeOutputWithContext(context.Background()) } -func (i SloObjectiveCountMetricArgs) ToSloObjectiveCountMetricOutputWithContext(ctx context.Context) SloObjectiveCountMetricOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricOutput) +func (i SloObjectiveCountMetricBadThousandeyeArgs) ToSloObjectiveCountMetricBadThousandeyeOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadThousandeyeOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadThousandeyeOutput) } -// SloObjectiveCountMetricArrayInput is an input type that accepts SloObjectiveCountMetricArray and SloObjectiveCountMetricArrayOutput values. -// You can construct a concrete instance of `SloObjectiveCountMetricArrayInput` via: +// SloObjectiveCountMetricBadThousandeyeArrayInput is an input type that accepts SloObjectiveCountMetricBadThousandeyeArray and SloObjectiveCountMetricBadThousandeyeArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricBadThousandeyeArrayInput` via: // -// SloObjectiveCountMetricArray{ SloObjectiveCountMetricArgs{...} } -type SloObjectiveCountMetricArrayInput interface { +// SloObjectiveCountMetricBadThousandeyeArray{ SloObjectiveCountMetricBadThousandeyeArgs{...} } +type SloObjectiveCountMetricBadThousandeyeArrayInput interface { pulumi.Input - ToSloObjectiveCountMetricArrayOutput() SloObjectiveCountMetricArrayOutput - ToSloObjectiveCountMetricArrayOutputWithContext(context.Context) SloObjectiveCountMetricArrayOutput + ToSloObjectiveCountMetricBadThousandeyeArrayOutput() SloObjectiveCountMetricBadThousandeyeArrayOutput + ToSloObjectiveCountMetricBadThousandeyeArrayOutputWithContext(context.Context) SloObjectiveCountMetricBadThousandeyeArrayOutput } -type SloObjectiveCountMetricArray []SloObjectiveCountMetricInput +type SloObjectiveCountMetricBadThousandeyeArray []SloObjectiveCountMetricBadThousandeyeInput -func (SloObjectiveCountMetricArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloObjectiveCountMetric)(nil)).Elem() +func (SloObjectiveCountMetricBadThousandeyeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadThousandeye)(nil)).Elem() } -func (i SloObjectiveCountMetricArray) ToSloObjectiveCountMetricArrayOutput() SloObjectiveCountMetricArrayOutput { - return i.ToSloObjectiveCountMetricArrayOutputWithContext(context.Background()) +func (i SloObjectiveCountMetricBadThousandeyeArray) ToSloObjectiveCountMetricBadThousandeyeArrayOutput() SloObjectiveCountMetricBadThousandeyeArrayOutput { + return i.ToSloObjectiveCountMetricBadThousandeyeArrayOutputWithContext(context.Background()) } -func (i SloObjectiveCountMetricArray) ToSloObjectiveCountMetricArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricArrayOutput) +func (i SloObjectiveCountMetricBadThousandeyeArray) ToSloObjectiveCountMetricBadThousandeyeArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadThousandeyeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricBadThousandeyeArrayOutput) } -type SloObjectiveCountMetricOutput struct{ *pulumi.OutputState } +type SloObjectiveCountMetricBadThousandeyeOutput struct{ *pulumi.OutputState } -func (SloObjectiveCountMetricOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SloObjectiveCountMetric)(nil)).Elem() +func (SloObjectiveCountMetricBadThousandeyeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricBadThousandeye)(nil)).Elem() } -func (o SloObjectiveCountMetricOutput) ToSloObjectiveCountMetricOutput() SloObjectiveCountMetricOutput { +func (o SloObjectiveCountMetricBadThousandeyeOutput) ToSloObjectiveCountMetricBadThousandeyeOutput() SloObjectiveCountMetricBadThousandeyeOutput { return o } -func (o SloObjectiveCountMetricOutput) ToSloObjectiveCountMetricOutputWithContext(ctx context.Context) SloObjectiveCountMetricOutput { +func (o SloObjectiveCountMetricBadThousandeyeOutput) ToSloObjectiveCountMetricBadThousandeyeOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadThousandeyeOutput { return o } -func (o SloObjectiveCountMetricOutput) Goods() SloObjectiveCountMetricGoodArrayOutput { - return o.ApplyT(func(v SloObjectiveCountMetric) []SloObjectiveCountMetricGood { return v.Goods }).(SloObjectiveCountMetricGoodArrayOutput) -} - -func (o SloObjectiveCountMetricOutput) Incremental() pulumi.BoolOutput { - return o.ApplyT(func(v SloObjectiveCountMetric) bool { return v.Incremental }).(pulumi.BoolOutput) -} - -func (o SloObjectiveCountMetricOutput) Totals() SloObjectiveCountMetricTotalArrayOutput { - return o.ApplyT(func(v SloObjectiveCountMetric) []SloObjectiveCountMetricTotal { return v.Totals }).(SloObjectiveCountMetricTotalArrayOutput) +// ID of the test +func (o SloObjectiveCountMetricBadThousandeyeOutput) TestId() pulumi.IntOutput { + return o.ApplyT(func(v SloObjectiveCountMetricBadThousandeye) int { return v.TestId }).(pulumi.IntOutput) } -type SloObjectiveCountMetricArrayOutput struct{ *pulumi.OutputState } - -func (SloObjectiveCountMetricArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]SloObjectiveCountMetric)(nil)).Elem() +type SloObjectiveCountMetricBadThousandeyeArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricBadThousandeyeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricBadThousandeye)(nil)).Elem() } -func (o SloObjectiveCountMetricArrayOutput) ToSloObjectiveCountMetricArrayOutput() SloObjectiveCountMetricArrayOutput { +func (o SloObjectiveCountMetricBadThousandeyeArrayOutput) ToSloObjectiveCountMetricBadThousandeyeArrayOutput() SloObjectiveCountMetricBadThousandeyeArrayOutput { return o } -func (o SloObjectiveCountMetricArrayOutput) ToSloObjectiveCountMetricArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricArrayOutput { +func (o SloObjectiveCountMetricBadThousandeyeArrayOutput) ToSloObjectiveCountMetricBadThousandeyeArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricBadThousandeyeArrayOutput { return o } -func (o SloObjectiveCountMetricArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetric { - return vs[0].([]SloObjectiveCountMetric)[vs[1].(int)] - }).(SloObjectiveCountMetricOutput) +func (o SloObjectiveCountMetricBadThousandeyeArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricBadThousandeyeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricBadThousandeye { + return vs[0].([]SloObjectiveCountMetricBadThousandeye)[vs[1].(int)] + }).(SloObjectiveCountMetricBadThousandeyeOutput) } type SloObjectiveCountMetricGood struct { - AmazonPrometheuses []SloObjectiveCountMetricGoodAmazonPrometheus `pulumi:"amazonPrometheuses"` - Appdynamics []SloObjectiveCountMetricGoodAppdynamic `pulumi:"appdynamics"` - Bigqueries []SloObjectiveCountMetricGoodBigquery `pulumi:"bigqueries"` - Cloudwatches []SloObjectiveCountMetricGoodCloudwatch `pulumi:"cloudwatches"` - Datadogs []SloObjectiveCountMetricGoodDatadog `pulumi:"datadogs"` - Dynatraces []SloObjectiveCountMetricGoodDynatrace `pulumi:"dynatraces"` - Elasticsearches []SloObjectiveCountMetricGoodElasticsearch `pulumi:"elasticsearches"` - Gcms []SloObjectiveCountMetricGoodGcm `pulumi:"gcms"` - GrafanaLokis []SloObjectiveCountMetricGoodGrafanaLoki `pulumi:"grafanaLokis"` - Graphites []SloObjectiveCountMetricGoodGraphite `pulumi:"graphites"` - Influxdbs []SloObjectiveCountMetricGoodInfluxdb `pulumi:"influxdbs"` - Instanas []SloObjectiveCountMetricGoodInstana `pulumi:"instanas"` - Lightsteps []SloObjectiveCountMetricGoodLightstep `pulumi:"lightsteps"` - Newrelics []SloObjectiveCountMetricGoodNewrelic `pulumi:"newrelics"` - Opentsdbs []SloObjectiveCountMetricGoodOpentsdb `pulumi:"opentsdbs"` - Pingdoms []SloObjectiveCountMetricGoodPingdom `pulumi:"pingdoms"` - Prometheuses []SloObjectiveCountMetricGoodPrometheus `pulumi:"prometheuses"` - Redshifts []SloObjectiveCountMetricGoodRedshift `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + AmazonPrometheuses []SloObjectiveCountMetricGoodAmazonPrometheus `pulumi:"amazonPrometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + Appdynamics []SloObjectiveCountMetricGoodAppdynamic `pulumi:"appdynamics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + AzureMonitors []SloObjectiveCountMetricGoodAzureMonitor `pulumi:"azureMonitors"` + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + Bigqueries []SloObjectiveCountMetricGoodBigquery `pulumi:"bigqueries"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + Cloudwatches []SloObjectiveCountMetricGoodCloudwatch `pulumi:"cloudwatches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + Datadogs []SloObjectiveCountMetricGoodDatadog `pulumi:"datadogs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + Dynatraces []SloObjectiveCountMetricGoodDynatrace `pulumi:"dynatraces"` + // [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + Elasticsearches []SloObjectiveCountMetricGoodElasticsearch `pulumi:"elasticsearches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + Gcms []SloObjectiveCountMetricGoodGcm `pulumi:"gcms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + GrafanaLokis []SloObjectiveCountMetricGoodGrafanaLoki `pulumi:"grafanaLokis"` + // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + Graphites []SloObjectiveCountMetricGoodGraphite `pulumi:"graphites"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + Honeycombs []SloObjectiveCountMetricGoodHoneycomb `pulumi:"honeycombs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + Influxdbs []SloObjectiveCountMetricGoodInfluxdb `pulumi:"influxdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + Instanas []SloObjectiveCountMetricGoodInstana `pulumi:"instanas"` + // [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + Lightsteps []SloObjectiveCountMetricGoodLightstep `pulumi:"lightsteps"` + // [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + Newrelics []SloObjectiveCountMetricGoodNewrelic `pulumi:"newrelics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + Opentsdbs []SloObjectiveCountMetricGoodOpentsdb `pulumi:"opentsdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + Pingdoms []SloObjectiveCountMetricGoodPingdom `pulumi:"pingdoms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + Prometheuses []SloObjectiveCountMetricGoodPrometheus `pulumi:"prometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + Redshifts []SloObjectiveCountMetricGoodRedshift `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) SplunkObservabilities []SloObjectiveCountMetricGoodSplunkObservability `pulumi:"splunkObservabilities"` - Splunks []SloObjectiveCountMetricGoodSplunk `pulumi:"splunks"` - Sumologics []SloObjectiveCountMetricGoodSumologic `pulumi:"sumologics"` - Thousandeyes []SloObjectiveCountMetricGoodThousandeye `pulumi:"thousandeyes"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + Splunks []SloObjectiveCountMetricGoodSplunk `pulumi:"splunks"` + // [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + Sumologics []SloObjectiveCountMetricGoodSumologic `pulumi:"sumologics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + Thousandeyes []SloObjectiveCountMetricGoodThousandeye `pulumi:"thousandeyes"` } // SloObjectiveCountMetricGoodInput is an input type that accepts SloObjectiveCountMetricGoodArgs and SloObjectiveCountMetricGoodOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInput` via: // -// SloObjectiveCountMetricGoodArgs{...} +// SloObjectiveCountMetricGoodArgs{...} type SloObjectiveCountMetricGoodInput interface { pulumi.Input @@ -9148,28 +15530,54 @@ type SloObjectiveCountMetricGoodInput interface { } type SloObjectiveCountMetricGoodArgs struct { - AmazonPrometheuses SloObjectiveCountMetricGoodAmazonPrometheusArrayInput `pulumi:"amazonPrometheuses"` - Appdynamics SloObjectiveCountMetricGoodAppdynamicArrayInput `pulumi:"appdynamics"` - Bigqueries SloObjectiveCountMetricGoodBigqueryArrayInput `pulumi:"bigqueries"` - Cloudwatches SloObjectiveCountMetricGoodCloudwatchArrayInput `pulumi:"cloudwatches"` - Datadogs SloObjectiveCountMetricGoodDatadogArrayInput `pulumi:"datadogs"` - Dynatraces SloObjectiveCountMetricGoodDynatraceArrayInput `pulumi:"dynatraces"` - Elasticsearches SloObjectiveCountMetricGoodElasticsearchArrayInput `pulumi:"elasticsearches"` - Gcms SloObjectiveCountMetricGoodGcmArrayInput `pulumi:"gcms"` - GrafanaLokis SloObjectiveCountMetricGoodGrafanaLokiArrayInput `pulumi:"grafanaLokis"` - Graphites SloObjectiveCountMetricGoodGraphiteArrayInput `pulumi:"graphites"` - Influxdbs SloObjectiveCountMetricGoodInfluxdbArrayInput `pulumi:"influxdbs"` - Instanas SloObjectiveCountMetricGoodInstanaArrayInput `pulumi:"instanas"` - Lightsteps SloObjectiveCountMetricGoodLightstepArrayInput `pulumi:"lightsteps"` - Newrelics SloObjectiveCountMetricGoodNewrelicArrayInput `pulumi:"newrelics"` - Opentsdbs SloObjectiveCountMetricGoodOpentsdbArrayInput `pulumi:"opentsdbs"` - Pingdoms SloObjectiveCountMetricGoodPingdomArrayInput `pulumi:"pingdoms"` - Prometheuses SloObjectiveCountMetricGoodPrometheusArrayInput `pulumi:"prometheuses"` - Redshifts SloObjectiveCountMetricGoodRedshiftArrayInput `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + AmazonPrometheuses SloObjectiveCountMetricGoodAmazonPrometheusArrayInput `pulumi:"amazonPrometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + Appdynamics SloObjectiveCountMetricGoodAppdynamicArrayInput `pulumi:"appdynamics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + AzureMonitors SloObjectiveCountMetricGoodAzureMonitorArrayInput `pulumi:"azureMonitors"` + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + Bigqueries SloObjectiveCountMetricGoodBigqueryArrayInput `pulumi:"bigqueries"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + Cloudwatches SloObjectiveCountMetricGoodCloudwatchArrayInput `pulumi:"cloudwatches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + Datadogs SloObjectiveCountMetricGoodDatadogArrayInput `pulumi:"datadogs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + Dynatraces SloObjectiveCountMetricGoodDynatraceArrayInput `pulumi:"dynatraces"` + // [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + Elasticsearches SloObjectiveCountMetricGoodElasticsearchArrayInput `pulumi:"elasticsearches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + Gcms SloObjectiveCountMetricGoodGcmArrayInput `pulumi:"gcms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + GrafanaLokis SloObjectiveCountMetricGoodGrafanaLokiArrayInput `pulumi:"grafanaLokis"` + // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + Graphites SloObjectiveCountMetricGoodGraphiteArrayInput `pulumi:"graphites"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + Honeycombs SloObjectiveCountMetricGoodHoneycombArrayInput `pulumi:"honeycombs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + Influxdbs SloObjectiveCountMetricGoodInfluxdbArrayInput `pulumi:"influxdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + Instanas SloObjectiveCountMetricGoodInstanaArrayInput `pulumi:"instanas"` + // [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + Lightsteps SloObjectiveCountMetricGoodLightstepArrayInput `pulumi:"lightsteps"` + // [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + Newrelics SloObjectiveCountMetricGoodNewrelicArrayInput `pulumi:"newrelics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + Opentsdbs SloObjectiveCountMetricGoodOpentsdbArrayInput `pulumi:"opentsdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + Pingdoms SloObjectiveCountMetricGoodPingdomArrayInput `pulumi:"pingdoms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + Prometheuses SloObjectiveCountMetricGoodPrometheusArrayInput `pulumi:"prometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + Redshifts SloObjectiveCountMetricGoodRedshiftArrayInput `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) SplunkObservabilities SloObjectiveCountMetricGoodSplunkObservabilityArrayInput `pulumi:"splunkObservabilities"` - Splunks SloObjectiveCountMetricGoodSplunkArrayInput `pulumi:"splunks"` - Sumologics SloObjectiveCountMetricGoodSumologicArrayInput `pulumi:"sumologics"` - Thousandeyes SloObjectiveCountMetricGoodThousandeyeArrayInput `pulumi:"thousandeyes"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + Splunks SloObjectiveCountMetricGoodSplunkArrayInput `pulumi:"splunks"` + // [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + Sumologics SloObjectiveCountMetricGoodSumologicArrayInput `pulumi:"sumologics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + Thousandeyes SloObjectiveCountMetricGoodThousandeyeArrayInput `pulumi:"thousandeyes"` } func (SloObjectiveCountMetricGoodArgs) ElementType() reflect.Type { @@ -9187,7 +15595,7 @@ func (i SloObjectiveCountMetricGoodArgs) ToSloObjectiveCountMetricGoodOutputWith // SloObjectiveCountMetricGoodArrayInput is an input type that accepts SloObjectiveCountMetricGoodArray and SloObjectiveCountMetricGoodArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodArrayInput` via: // -// SloObjectiveCountMetricGoodArray{ SloObjectiveCountMetricGoodArgs{...} } +// SloObjectiveCountMetricGoodArray{ SloObjectiveCountMetricGoodArgs{...} } type SloObjectiveCountMetricGoodArrayInput interface { pulumi.Input @@ -9223,96 +15631,128 @@ func (o SloObjectiveCountMetricGoodOutput) ToSloObjectiveCountMetricGoodOutputWi return o } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) func (o SloObjectiveCountMetricGoodOutput) AmazonPrometheuses() SloObjectiveCountMetricGoodAmazonPrometheusArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodAmazonPrometheus { return v.AmazonPrometheuses }).(SloObjectiveCountMetricGoodAmazonPrometheusArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) func (o SloObjectiveCountMetricGoodOutput) Appdynamics() SloObjectiveCountMetricGoodAppdynamicArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodAppdynamic { return v.Appdynamics }).(SloObjectiveCountMetricGoodAppdynamicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) +func (o SloObjectiveCountMetricGoodOutput) AzureMonitors() SloObjectiveCountMetricGoodAzureMonitorArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodAzureMonitor { return v.AzureMonitors }).(SloObjectiveCountMetricGoodAzureMonitorArrayOutput) +} + +// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) func (o SloObjectiveCountMetricGoodOutput) Bigqueries() SloObjectiveCountMetricGoodBigqueryArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodBigquery { return v.Bigqueries }).(SloObjectiveCountMetricGoodBigqueryArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) func (o SloObjectiveCountMetricGoodOutput) Cloudwatches() SloObjectiveCountMetricGoodCloudwatchArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodCloudwatch { return v.Cloudwatches }).(SloObjectiveCountMetricGoodCloudwatchArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) func (o SloObjectiveCountMetricGoodOutput) Datadogs() SloObjectiveCountMetricGoodDatadogArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodDatadog { return v.Datadogs }).(SloObjectiveCountMetricGoodDatadogArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) func (o SloObjectiveCountMetricGoodOutput) Dynatraces() SloObjectiveCountMetricGoodDynatraceArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodDynatrace { return v.Dynatraces }).(SloObjectiveCountMetricGoodDynatraceArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) func (o SloObjectiveCountMetricGoodOutput) Elasticsearches() SloObjectiveCountMetricGoodElasticsearchArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodElasticsearch { return v.Elasticsearches }).(SloObjectiveCountMetricGoodElasticsearchArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) func (o SloObjectiveCountMetricGoodOutput) Gcms() SloObjectiveCountMetricGoodGcmArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodGcm { return v.Gcms }).(SloObjectiveCountMetricGoodGcmArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) func (o SloObjectiveCountMetricGoodOutput) GrafanaLokis() SloObjectiveCountMetricGoodGrafanaLokiArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodGrafanaLoki { return v.GrafanaLokis }).(SloObjectiveCountMetricGoodGrafanaLokiArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) func (o SloObjectiveCountMetricGoodOutput) Graphites() SloObjectiveCountMetricGoodGraphiteArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodGraphite { return v.Graphites }).(SloObjectiveCountMetricGoodGraphiteArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) +func (o SloObjectiveCountMetricGoodOutput) Honeycombs() SloObjectiveCountMetricGoodHoneycombArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodHoneycomb { return v.Honeycombs }).(SloObjectiveCountMetricGoodHoneycombArrayOutput) +} + +// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) func (o SloObjectiveCountMetricGoodOutput) Influxdbs() SloObjectiveCountMetricGoodInfluxdbArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodInfluxdb { return v.Influxdbs }).(SloObjectiveCountMetricGoodInfluxdbArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) func (o SloObjectiveCountMetricGoodOutput) Instanas() SloObjectiveCountMetricGoodInstanaArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodInstana { return v.Instanas }).(SloObjectiveCountMetricGoodInstanaArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) func (o SloObjectiveCountMetricGoodOutput) Lightsteps() SloObjectiveCountMetricGoodLightstepArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodLightstep { return v.Lightsteps }).(SloObjectiveCountMetricGoodLightstepArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) func (o SloObjectiveCountMetricGoodOutput) Newrelics() SloObjectiveCountMetricGoodNewrelicArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodNewrelic { return v.Newrelics }).(SloObjectiveCountMetricGoodNewrelicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) func (o SloObjectiveCountMetricGoodOutput) Opentsdbs() SloObjectiveCountMetricGoodOpentsdbArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodOpentsdb { return v.Opentsdbs }).(SloObjectiveCountMetricGoodOpentsdbArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) func (o SloObjectiveCountMetricGoodOutput) Pingdoms() SloObjectiveCountMetricGoodPingdomArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodPingdom { return v.Pingdoms }).(SloObjectiveCountMetricGoodPingdomArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) func (o SloObjectiveCountMetricGoodOutput) Prometheuses() SloObjectiveCountMetricGoodPrometheusArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodPrometheus { return v.Prometheuses }).(SloObjectiveCountMetricGoodPrometheusArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) func (o SloObjectiveCountMetricGoodOutput) Redshifts() SloObjectiveCountMetricGoodRedshiftArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodRedshift { return v.Redshifts }).(SloObjectiveCountMetricGoodRedshiftArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) func (o SloObjectiveCountMetricGoodOutput) SplunkObservabilities() SloObjectiveCountMetricGoodSplunkObservabilityArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodSplunkObservability { return v.SplunkObservabilities }).(SloObjectiveCountMetricGoodSplunkObservabilityArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) func (o SloObjectiveCountMetricGoodOutput) Splunks() SloObjectiveCountMetricGoodSplunkArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodSplunk { return v.Splunks }).(SloObjectiveCountMetricGoodSplunkArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) func (o SloObjectiveCountMetricGoodOutput) Sumologics() SloObjectiveCountMetricGoodSumologicArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodSumologic { return v.Sumologics }).(SloObjectiveCountMetricGoodSumologicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) func (o SloObjectiveCountMetricGoodOutput) Thousandeyes() SloObjectiveCountMetricGoodThousandeyeArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGood) []SloObjectiveCountMetricGoodThousandeye { return v.Thousandeyes }).(SloObjectiveCountMetricGoodThousandeyeArrayOutput) } @@ -9338,13 +15778,14 @@ func (o SloObjectiveCountMetricGoodArrayOutput) Index(i pulumi.IntInput) SloObje } type SloObjectiveCountMetricGoodAmazonPrometheus struct { + // Query for the metrics Promql string `pulumi:"promql"` } // SloObjectiveCountMetricGoodAmazonPrometheusInput is an input type that accepts SloObjectiveCountMetricGoodAmazonPrometheusArgs and SloObjectiveCountMetricGoodAmazonPrometheusOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodAmazonPrometheusInput` via: // -// SloObjectiveCountMetricGoodAmazonPrometheusArgs{...} +// SloObjectiveCountMetricGoodAmazonPrometheusArgs{...} type SloObjectiveCountMetricGoodAmazonPrometheusInput interface { pulumi.Input @@ -9353,6 +15794,7 @@ type SloObjectiveCountMetricGoodAmazonPrometheusInput interface { } type SloObjectiveCountMetricGoodAmazonPrometheusArgs struct { + // Query for the metrics Promql pulumi.StringInput `pulumi:"promql"` } @@ -9371,7 +15813,7 @@ func (i SloObjectiveCountMetricGoodAmazonPrometheusArgs) ToSloObjectiveCountMetr // SloObjectiveCountMetricGoodAmazonPrometheusArrayInput is an input type that accepts SloObjectiveCountMetricGoodAmazonPrometheusArray and SloObjectiveCountMetricGoodAmazonPrometheusArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodAmazonPrometheusArrayInput` via: // -// SloObjectiveCountMetricGoodAmazonPrometheusArray{ SloObjectiveCountMetricGoodAmazonPrometheusArgs{...} } +// SloObjectiveCountMetricGoodAmazonPrometheusArray{ SloObjectiveCountMetricGoodAmazonPrometheusArgs{...} } type SloObjectiveCountMetricGoodAmazonPrometheusArrayInput interface { pulumi.Input @@ -9407,6 +15849,7 @@ func (o SloObjectiveCountMetricGoodAmazonPrometheusOutput) ToSloObjectiveCountMe return o } +// Query for the metrics func (o SloObjectiveCountMetricGoodAmazonPrometheusOutput) Promql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodAmazonPrometheus) string { return v.Promql }).(pulumi.StringOutput) } @@ -9432,14 +15875,16 @@ func (o SloObjectiveCountMetricGoodAmazonPrometheusArrayOutput) Index(i pulumi.I } type SloObjectiveCountMetricGoodAppdynamic struct { + // Name of the added application ApplicationName string `pulumi:"applicationName"` - MetricPath string `pulumi:"metricPath"` + // Path to the metrics + MetricPath string `pulumi:"metricPath"` } // SloObjectiveCountMetricGoodAppdynamicInput is an input type that accepts SloObjectiveCountMetricGoodAppdynamicArgs and SloObjectiveCountMetricGoodAppdynamicOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodAppdynamicInput` via: // -// SloObjectiveCountMetricGoodAppdynamicArgs{...} +// SloObjectiveCountMetricGoodAppdynamicArgs{...} type SloObjectiveCountMetricGoodAppdynamicInput interface { pulumi.Input @@ -9448,8 +15893,10 @@ type SloObjectiveCountMetricGoodAppdynamicInput interface { } type SloObjectiveCountMetricGoodAppdynamicArgs struct { + // Name of the added application ApplicationName pulumi.StringInput `pulumi:"applicationName"` - MetricPath pulumi.StringInput `pulumi:"metricPath"` + // Path to the metrics + MetricPath pulumi.StringInput `pulumi:"metricPath"` } func (SloObjectiveCountMetricGoodAppdynamicArgs) ElementType() reflect.Type { @@ -9467,7 +15914,7 @@ func (i SloObjectiveCountMetricGoodAppdynamicArgs) ToSloObjectiveCountMetricGood // SloObjectiveCountMetricGoodAppdynamicArrayInput is an input type that accepts SloObjectiveCountMetricGoodAppdynamicArray and SloObjectiveCountMetricGoodAppdynamicArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodAppdynamicArrayInput` via: // -// SloObjectiveCountMetricGoodAppdynamicArray{ SloObjectiveCountMetricGoodAppdynamicArgs{...} } +// SloObjectiveCountMetricGoodAppdynamicArray{ SloObjectiveCountMetricGoodAppdynamicArgs{...} } type SloObjectiveCountMetricGoodAppdynamicArrayInput interface { pulumi.Input @@ -9503,10 +15950,12 @@ func (o SloObjectiveCountMetricGoodAppdynamicOutput) ToSloObjectiveCountMetricGo return o } +// Name of the added application func (o SloObjectiveCountMetricGoodAppdynamicOutput) ApplicationName() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodAppdynamic) string { return v.ApplicationName }).(pulumi.StringOutput) } +// Path to the metrics func (o SloObjectiveCountMetricGoodAppdynamicOutput) MetricPath() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodAppdynamic) string { return v.MetricPath }).(pulumi.StringOutput) } @@ -9531,16 +15980,404 @@ func (o SloObjectiveCountMetricGoodAppdynamicArrayOutput) Index(i pulumi.IntInpu }).(SloObjectiveCountMetricGoodAppdynamicOutput) } +type SloObjectiveCountMetricGoodAzureMonitor struct { + // Aggregation type [Required for metrics] + Aggregation *string `pulumi:"aggregation"` + // Specifies source: 'metrics' or 'logs' + DataType string `pulumi:"dataType"` + // Dimensions of the metric [Optional for metrics] + Dimensions []SloObjectiveCountMetricGoodAzureMonitorDimension `pulumi:"dimensions"` + // Logs query in Kusto Query Language [Required for logs] + KqlQuery *string `pulumi:"kqlQuery"` + // Name of the metric [Required for metrics] + MetricName *string `pulumi:"metricName"` + // Namespace of the metric [Optional for metrics] + MetricNamespace *string `pulumi:"metricNamespace"` + // Identifier of the Azure Cloud resource [Required for metrics] + ResourceId *string `pulumi:"resourceId"` + // Log analytics workspace [Required for logs] + Workspaces []SloObjectiveCountMetricGoodAzureMonitorWorkspace `pulumi:"workspaces"` +} + +// SloObjectiveCountMetricGoodAzureMonitorInput is an input type that accepts SloObjectiveCountMetricGoodAzureMonitorArgs and SloObjectiveCountMetricGoodAzureMonitorOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricGoodAzureMonitorInput` via: +// +// SloObjectiveCountMetricGoodAzureMonitorArgs{...} +type SloObjectiveCountMetricGoodAzureMonitorInput interface { + pulumi.Input + + ToSloObjectiveCountMetricGoodAzureMonitorOutput() SloObjectiveCountMetricGoodAzureMonitorOutput + ToSloObjectiveCountMetricGoodAzureMonitorOutputWithContext(context.Context) SloObjectiveCountMetricGoodAzureMonitorOutput +} + +type SloObjectiveCountMetricGoodAzureMonitorArgs struct { + // Aggregation type [Required for metrics] + Aggregation pulumi.StringPtrInput `pulumi:"aggregation"` + // Specifies source: 'metrics' or 'logs' + DataType pulumi.StringInput `pulumi:"dataType"` + // Dimensions of the metric [Optional for metrics] + Dimensions SloObjectiveCountMetricGoodAzureMonitorDimensionArrayInput `pulumi:"dimensions"` + // Logs query in Kusto Query Language [Required for logs] + KqlQuery pulumi.StringPtrInput `pulumi:"kqlQuery"` + // Name of the metric [Required for metrics] + MetricName pulumi.StringPtrInput `pulumi:"metricName"` + // Namespace of the metric [Optional for metrics] + MetricNamespace pulumi.StringPtrInput `pulumi:"metricNamespace"` + // Identifier of the Azure Cloud resource [Required for metrics] + ResourceId pulumi.StringPtrInput `pulumi:"resourceId"` + // Log analytics workspace [Required for logs] + Workspaces SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayInput `pulumi:"workspaces"` +} + +func (SloObjectiveCountMetricGoodAzureMonitorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitor)(nil)).Elem() +} + +func (i SloObjectiveCountMetricGoodAzureMonitorArgs) ToSloObjectiveCountMetricGoodAzureMonitorOutput() SloObjectiveCountMetricGoodAzureMonitorOutput { + return i.ToSloObjectiveCountMetricGoodAzureMonitorOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricGoodAzureMonitorArgs) ToSloObjectiveCountMetricGoodAzureMonitorOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricGoodAzureMonitorOutput) +} + +// SloObjectiveCountMetricGoodAzureMonitorArrayInput is an input type that accepts SloObjectiveCountMetricGoodAzureMonitorArray and SloObjectiveCountMetricGoodAzureMonitorArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricGoodAzureMonitorArrayInput` via: +// +// SloObjectiveCountMetricGoodAzureMonitorArray{ SloObjectiveCountMetricGoodAzureMonitorArgs{...} } +type SloObjectiveCountMetricGoodAzureMonitorArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricGoodAzureMonitorArrayOutput() SloObjectiveCountMetricGoodAzureMonitorArrayOutput + ToSloObjectiveCountMetricGoodAzureMonitorArrayOutputWithContext(context.Context) SloObjectiveCountMetricGoodAzureMonitorArrayOutput +} + +type SloObjectiveCountMetricGoodAzureMonitorArray []SloObjectiveCountMetricGoodAzureMonitorInput + +func (SloObjectiveCountMetricGoodAzureMonitorArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricGoodAzureMonitor)(nil)).Elem() +} + +func (i SloObjectiveCountMetricGoodAzureMonitorArray) ToSloObjectiveCountMetricGoodAzureMonitorArrayOutput() SloObjectiveCountMetricGoodAzureMonitorArrayOutput { + return i.ToSloObjectiveCountMetricGoodAzureMonitorArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricGoodAzureMonitorArray) ToSloObjectiveCountMetricGoodAzureMonitorArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricGoodAzureMonitorArrayOutput) +} + +type SloObjectiveCountMetricGoodAzureMonitorOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricGoodAzureMonitorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitor)(nil)).Elem() +} + +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) ToSloObjectiveCountMetricGoodAzureMonitorOutput() SloObjectiveCountMetricGoodAzureMonitorOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) ToSloObjectiveCountMetricGoodAzureMonitorOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorOutput { + return o +} + +// Aggregation type [Required for metrics] +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) Aggregation() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitor) *string { return v.Aggregation }).(pulumi.StringPtrOutput) +} + +// Specifies source: 'metrics' or 'logs' +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) DataType() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitor) string { return v.DataType }).(pulumi.StringOutput) +} + +// Dimensions of the metric [Optional for metrics] +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) Dimensions() SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitor) []SloObjectiveCountMetricGoodAzureMonitorDimension { + return v.Dimensions + }).(SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput) +} + +// Logs query in Kusto Query Language [Required for logs] +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) KqlQuery() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitor) *string { return v.KqlQuery }).(pulumi.StringPtrOutput) +} + +// Name of the metric [Required for metrics] +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) MetricName() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitor) *string { return v.MetricName }).(pulumi.StringPtrOutput) +} + +// Namespace of the metric [Optional for metrics] +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) MetricNamespace() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitor) *string { return v.MetricNamespace }).(pulumi.StringPtrOutput) +} + +// Identifier of the Azure Cloud resource [Required for metrics] +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitor) *string { return v.ResourceId }).(pulumi.StringPtrOutput) +} + +// Log analytics workspace [Required for logs] +func (o SloObjectiveCountMetricGoodAzureMonitorOutput) Workspaces() SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitor) []SloObjectiveCountMetricGoodAzureMonitorWorkspace { + return v.Workspaces + }).(SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput) +} + +type SloObjectiveCountMetricGoodAzureMonitorArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricGoodAzureMonitorArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricGoodAzureMonitor)(nil)).Elem() +} + +func (o SloObjectiveCountMetricGoodAzureMonitorArrayOutput) ToSloObjectiveCountMetricGoodAzureMonitorArrayOutput() SloObjectiveCountMetricGoodAzureMonitorArrayOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorArrayOutput) ToSloObjectiveCountMetricGoodAzureMonitorArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorArrayOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricGoodAzureMonitorOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricGoodAzureMonitor { + return vs[0].([]SloObjectiveCountMetricGoodAzureMonitor)[vs[1].(int)] + }).(SloObjectiveCountMetricGoodAzureMonitorOutput) +} + +type SloObjectiveCountMetricGoodAzureMonitorDimension struct { + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Burn rate value. + Value string `pulumi:"value"` +} + +// SloObjectiveCountMetricGoodAzureMonitorDimensionInput is an input type that accepts SloObjectiveCountMetricGoodAzureMonitorDimensionArgs and SloObjectiveCountMetricGoodAzureMonitorDimensionOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricGoodAzureMonitorDimensionInput` via: +// +// SloObjectiveCountMetricGoodAzureMonitorDimensionArgs{...} +type SloObjectiveCountMetricGoodAzureMonitorDimensionInput interface { + pulumi.Input + + ToSloObjectiveCountMetricGoodAzureMonitorDimensionOutput() SloObjectiveCountMetricGoodAzureMonitorDimensionOutput + ToSloObjectiveCountMetricGoodAzureMonitorDimensionOutputWithContext(context.Context) SloObjectiveCountMetricGoodAzureMonitorDimensionOutput +} + +type SloObjectiveCountMetricGoodAzureMonitorDimensionArgs struct { + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Burn rate value. + Value pulumi.StringInput `pulumi:"value"` +} + +func (SloObjectiveCountMetricGoodAzureMonitorDimensionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorDimension)(nil)).Elem() +} + +func (i SloObjectiveCountMetricGoodAzureMonitorDimensionArgs) ToSloObjectiveCountMetricGoodAzureMonitorDimensionOutput() SloObjectiveCountMetricGoodAzureMonitorDimensionOutput { + return i.ToSloObjectiveCountMetricGoodAzureMonitorDimensionOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricGoodAzureMonitorDimensionArgs) ToSloObjectiveCountMetricGoodAzureMonitorDimensionOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorDimensionOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricGoodAzureMonitorDimensionOutput) +} + +// SloObjectiveCountMetricGoodAzureMonitorDimensionArrayInput is an input type that accepts SloObjectiveCountMetricGoodAzureMonitorDimensionArray and SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricGoodAzureMonitorDimensionArrayInput` via: +// +// SloObjectiveCountMetricGoodAzureMonitorDimensionArray{ SloObjectiveCountMetricGoodAzureMonitorDimensionArgs{...} } +type SloObjectiveCountMetricGoodAzureMonitorDimensionArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput + ToSloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutputWithContext(context.Context) SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput +} + +type SloObjectiveCountMetricGoodAzureMonitorDimensionArray []SloObjectiveCountMetricGoodAzureMonitorDimensionInput + +func (SloObjectiveCountMetricGoodAzureMonitorDimensionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricGoodAzureMonitorDimension)(nil)).Elem() +} + +func (i SloObjectiveCountMetricGoodAzureMonitorDimensionArray) ToSloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput { + return i.ToSloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricGoodAzureMonitorDimensionArray) ToSloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput) +} + +type SloObjectiveCountMetricGoodAzureMonitorDimensionOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricGoodAzureMonitorDimensionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorDimension)(nil)).Elem() +} + +func (o SloObjectiveCountMetricGoodAzureMonitorDimensionOutput) ToSloObjectiveCountMetricGoodAzureMonitorDimensionOutput() SloObjectiveCountMetricGoodAzureMonitorDimensionOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorDimensionOutput) ToSloObjectiveCountMetricGoodAzureMonitorDimensionOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorDimensionOutput { + return o +} + +// The name of the previously defined alert method. +func (o SloObjectiveCountMetricGoodAzureMonitorDimensionOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitorDimension) string { return v.Name }).(pulumi.StringOutput) +} + +// Burn rate value. +func (o SloObjectiveCountMetricGoodAzureMonitorDimensionOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitorDimension) string { return v.Value }).(pulumi.StringOutput) +} + +type SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricGoodAzureMonitorDimension)(nil)).Elem() +} + +func (o SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput) ToSloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput) ToSloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricGoodAzureMonitorDimensionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricGoodAzureMonitorDimension { + return vs[0].([]SloObjectiveCountMetricGoodAzureMonitorDimension)[vs[1].(int)] + }).(SloObjectiveCountMetricGoodAzureMonitorDimensionOutput) +} + +type SloObjectiveCountMetricGoodAzureMonitorWorkspace struct { + // Resource group of the workspace + ResourceGroup string `pulumi:"resourceGroup"` + // Subscription ID of the workspace + SubscriptionId string `pulumi:"subscriptionId"` + // ID of the workspace + WorkspaceId string `pulumi:"workspaceId"` +} + +// SloObjectiveCountMetricGoodAzureMonitorWorkspaceInput is an input type that accepts SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs and SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricGoodAzureMonitorWorkspaceInput` via: +// +// SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs{...} +type SloObjectiveCountMetricGoodAzureMonitorWorkspaceInput interface { + pulumi.Input + + ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput() SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput + ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceOutputWithContext(context.Context) SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput +} + +type SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs struct { + // Resource group of the workspace + ResourceGroup pulumi.StringInput `pulumi:"resourceGroup"` + // Subscription ID of the workspace + SubscriptionId pulumi.StringInput `pulumi:"subscriptionId"` + // ID of the workspace + WorkspaceId pulumi.StringInput `pulumi:"workspaceId"` +} + +func (SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorWorkspace)(nil)).Elem() +} + +func (i SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs) ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput() SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput { + return i.ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs) ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput) +} + +// SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayInput is an input type that accepts SloObjectiveCountMetricGoodAzureMonitorWorkspaceArray and SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayInput` via: +// +// SloObjectiveCountMetricGoodAzureMonitorWorkspaceArray{ SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs{...} } +type SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput + ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutputWithContext(context.Context) SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput +} + +type SloObjectiveCountMetricGoodAzureMonitorWorkspaceArray []SloObjectiveCountMetricGoodAzureMonitorWorkspaceInput + +func (SloObjectiveCountMetricGoodAzureMonitorWorkspaceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricGoodAzureMonitorWorkspace)(nil)).Elem() +} + +func (i SloObjectiveCountMetricGoodAzureMonitorWorkspaceArray) ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput { + return i.ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricGoodAzureMonitorWorkspaceArray) ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput) +} + +type SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorWorkspace)(nil)).Elem() +} + +func (o SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput) ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput() SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput) ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput { + return o +} + +// Resource group of the workspace +func (o SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput) ResourceGroup() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitorWorkspace) string { return v.ResourceGroup }).(pulumi.StringOutput) +} + +// Subscription ID of the workspace +func (o SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput) SubscriptionId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitorWorkspace) string { return v.SubscriptionId }).(pulumi.StringOutput) +} + +// ID of the workspace +func (o SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput) WorkspaceId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodAzureMonitorWorkspace) string { return v.WorkspaceId }).(pulumi.StringOutput) +} + +type SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricGoodAzureMonitorWorkspace)(nil)).Elem() +} + +func (o SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput) ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput) ToSloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput { + return o +} + +func (o SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricGoodAzureMonitorWorkspace { + return vs[0].([]SloObjectiveCountMetricGoodAzureMonitorWorkspace)[vs[1].(int)] + }).(SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput) +} + type SloObjectiveCountMetricGoodBigquery struct { - Location string `pulumi:"location"` + // Location of you BigQuery + Location string `pulumi:"location"` + // Project ID ProjectId string `pulumi:"projectId"` - Query string `pulumi:"query"` + // Query for the metrics + Query string `pulumi:"query"` } // SloObjectiveCountMetricGoodBigqueryInput is an input type that accepts SloObjectiveCountMetricGoodBigqueryArgs and SloObjectiveCountMetricGoodBigqueryOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodBigqueryInput` via: // -// SloObjectiveCountMetricGoodBigqueryArgs{...} +// SloObjectiveCountMetricGoodBigqueryArgs{...} type SloObjectiveCountMetricGoodBigqueryInput interface { pulumi.Input @@ -9549,9 +16386,12 @@ type SloObjectiveCountMetricGoodBigqueryInput interface { } type SloObjectiveCountMetricGoodBigqueryArgs struct { - Location pulumi.StringInput `pulumi:"location"` + // Location of you BigQuery + Location pulumi.StringInput `pulumi:"location"` + // Project ID ProjectId pulumi.StringInput `pulumi:"projectId"` - Query pulumi.StringInput `pulumi:"query"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } func (SloObjectiveCountMetricGoodBigqueryArgs) ElementType() reflect.Type { @@ -9569,7 +16409,7 @@ func (i SloObjectiveCountMetricGoodBigqueryArgs) ToSloObjectiveCountMetricGoodBi // SloObjectiveCountMetricGoodBigqueryArrayInput is an input type that accepts SloObjectiveCountMetricGoodBigqueryArray and SloObjectiveCountMetricGoodBigqueryArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodBigqueryArrayInput` via: // -// SloObjectiveCountMetricGoodBigqueryArray{ SloObjectiveCountMetricGoodBigqueryArgs{...} } +// SloObjectiveCountMetricGoodBigqueryArray{ SloObjectiveCountMetricGoodBigqueryArgs{...} } type SloObjectiveCountMetricGoodBigqueryArrayInput interface { pulumi.Input @@ -9605,14 +16445,17 @@ func (o SloObjectiveCountMetricGoodBigqueryOutput) ToSloObjectiveCountMetricGood return o } +// Location of you BigQuery func (o SloObjectiveCountMetricGoodBigqueryOutput) Location() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodBigquery) string { return v.Location }).(pulumi.StringOutput) } +// Project ID func (o SloObjectiveCountMetricGoodBigqueryOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodBigquery) string { return v.ProjectId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricGoodBigqueryOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodBigquery) string { return v.Query }).(pulumi.StringOutput) } @@ -9638,19 +16481,28 @@ func (o SloObjectiveCountMetricGoodBigqueryArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricGoodCloudwatch struct { + // AccountID used with cross-account observability feature + AccountId *string `pulumi:"accountId"` + // Dimensions of the metric [Optional for metrics] Dimensions []SloObjectiveCountMetricGoodCloudwatchDimension `pulumi:"dimensions"` - Json *string `pulumi:"json"` - MetricName *string `pulumi:"metricName"` - Namespace *string `pulumi:"namespace"` - Region string `pulumi:"region"` - Sql *string `pulumi:"sql"` - Stat *string `pulumi:"stat"` + // JSON query + Json *string `pulumi:"json"` + // Name of the metric [Required for metrics] + MetricName *string `pulumi:"metricName"` + // Namespace of the metric + Namespace *string `pulumi:"namespace"` + // Region of the CloudWatch instance + Region string `pulumi:"region"` + // SQL query + Sql *string `pulumi:"sql"` + // Metric data aggregations + Stat *string `pulumi:"stat"` } // SloObjectiveCountMetricGoodCloudwatchInput is an input type that accepts SloObjectiveCountMetricGoodCloudwatchArgs and SloObjectiveCountMetricGoodCloudwatchOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodCloudwatchInput` via: // -// SloObjectiveCountMetricGoodCloudwatchArgs{...} +// SloObjectiveCountMetricGoodCloudwatchArgs{...} type SloObjectiveCountMetricGoodCloudwatchInput interface { pulumi.Input @@ -9659,13 +16511,22 @@ type SloObjectiveCountMetricGoodCloudwatchInput interface { } type SloObjectiveCountMetricGoodCloudwatchArgs struct { + // AccountID used with cross-account observability feature + AccountId pulumi.StringPtrInput `pulumi:"accountId"` + // Dimensions of the metric [Optional for metrics] Dimensions SloObjectiveCountMetricGoodCloudwatchDimensionArrayInput `pulumi:"dimensions"` - Json pulumi.StringPtrInput `pulumi:"json"` - MetricName pulumi.StringPtrInput `pulumi:"metricName"` - Namespace pulumi.StringPtrInput `pulumi:"namespace"` - Region pulumi.StringInput `pulumi:"region"` - Sql pulumi.StringPtrInput `pulumi:"sql"` - Stat pulumi.StringPtrInput `pulumi:"stat"` + // JSON query + Json pulumi.StringPtrInput `pulumi:"json"` + // Name of the metric [Required for metrics] + MetricName pulumi.StringPtrInput `pulumi:"metricName"` + // Namespace of the metric + Namespace pulumi.StringPtrInput `pulumi:"namespace"` + // Region of the CloudWatch instance + Region pulumi.StringInput `pulumi:"region"` + // SQL query + Sql pulumi.StringPtrInput `pulumi:"sql"` + // Metric data aggregations + Stat pulumi.StringPtrInput `pulumi:"stat"` } func (SloObjectiveCountMetricGoodCloudwatchArgs) ElementType() reflect.Type { @@ -9683,7 +16544,7 @@ func (i SloObjectiveCountMetricGoodCloudwatchArgs) ToSloObjectiveCountMetricGood // SloObjectiveCountMetricGoodCloudwatchArrayInput is an input type that accepts SloObjectiveCountMetricGoodCloudwatchArray and SloObjectiveCountMetricGoodCloudwatchArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodCloudwatchArrayInput` via: // -// SloObjectiveCountMetricGoodCloudwatchArray{ SloObjectiveCountMetricGoodCloudwatchArgs{...} } +// SloObjectiveCountMetricGoodCloudwatchArray{ SloObjectiveCountMetricGoodCloudwatchArgs{...} } type SloObjectiveCountMetricGoodCloudwatchArrayInput interface { pulumi.Input @@ -9719,32 +16580,44 @@ func (o SloObjectiveCountMetricGoodCloudwatchOutput) ToSloObjectiveCountMetricGo return o } +// AccountID used with cross-account observability feature +func (o SloObjectiveCountMetricGoodCloudwatchOutput) AccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatch) *string { return v.AccountId }).(pulumi.StringPtrOutput) +} + +// Dimensions of the metric [Optional for metrics] func (o SloObjectiveCountMetricGoodCloudwatchOutput) Dimensions() SloObjectiveCountMetricGoodCloudwatchDimensionArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatch) []SloObjectiveCountMetricGoodCloudwatchDimension { return v.Dimensions }).(SloObjectiveCountMetricGoodCloudwatchDimensionArrayOutput) } +// JSON query func (o SloObjectiveCountMetricGoodCloudwatchOutput) Json() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatch) *string { return v.Json }).(pulumi.StringPtrOutput) } +// Name of the metric [Required for metrics] func (o SloObjectiveCountMetricGoodCloudwatchOutput) MetricName() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatch) *string { return v.MetricName }).(pulumi.StringPtrOutput) } +// Namespace of the metric func (o SloObjectiveCountMetricGoodCloudwatchOutput) Namespace() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatch) *string { return v.Namespace }).(pulumi.StringPtrOutput) } +// Region of the CloudWatch instance func (o SloObjectiveCountMetricGoodCloudwatchOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatch) string { return v.Region }).(pulumi.StringOutput) } +// SQL query func (o SloObjectiveCountMetricGoodCloudwatchOutput) Sql() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatch) *string { return v.Sql }).(pulumi.StringPtrOutput) } +// Metric data aggregations func (o SloObjectiveCountMetricGoodCloudwatchOutput) Stat() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatch) *string { return v.Stat }).(pulumi.StringPtrOutput) } @@ -9770,15 +16643,16 @@ func (o SloObjectiveCountMetricGoodCloudwatchArrayOutput) Index(i pulumi.IntInpu } type SloObjectiveCountMetricGoodCloudwatchDimension struct { - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - Name string `pulumi:"name"` + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Burn rate value. Value string `pulumi:"value"` } // SloObjectiveCountMetricGoodCloudwatchDimensionInput is an input type that accepts SloObjectiveCountMetricGoodCloudwatchDimensionArgs and SloObjectiveCountMetricGoodCloudwatchDimensionOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodCloudwatchDimensionInput` via: // -// SloObjectiveCountMetricGoodCloudwatchDimensionArgs{...} +// SloObjectiveCountMetricGoodCloudwatchDimensionArgs{...} type SloObjectiveCountMetricGoodCloudwatchDimensionInput interface { pulumi.Input @@ -9787,8 +16661,9 @@ type SloObjectiveCountMetricGoodCloudwatchDimensionInput interface { } type SloObjectiveCountMetricGoodCloudwatchDimensionArgs struct { - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - Name pulumi.StringInput `pulumi:"name"` + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Burn rate value. Value pulumi.StringInput `pulumi:"value"` } @@ -9807,7 +16682,7 @@ func (i SloObjectiveCountMetricGoodCloudwatchDimensionArgs) ToSloObjectiveCountM // SloObjectiveCountMetricGoodCloudwatchDimensionArrayInput is an input type that accepts SloObjectiveCountMetricGoodCloudwatchDimensionArray and SloObjectiveCountMetricGoodCloudwatchDimensionArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodCloudwatchDimensionArrayInput` via: // -// SloObjectiveCountMetricGoodCloudwatchDimensionArray{ SloObjectiveCountMetricGoodCloudwatchDimensionArgs{...} } +// SloObjectiveCountMetricGoodCloudwatchDimensionArray{ SloObjectiveCountMetricGoodCloudwatchDimensionArgs{...} } type SloObjectiveCountMetricGoodCloudwatchDimensionArrayInput interface { pulumi.Input @@ -9843,11 +16718,12 @@ func (o SloObjectiveCountMetricGoodCloudwatchDimensionOutput) ToSloObjectiveCoun return o } -// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +// The name of the previously defined alert method. func (o SloObjectiveCountMetricGoodCloudwatchDimensionOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatchDimension) string { return v.Name }).(pulumi.StringOutput) } +// Burn rate value. func (o SloObjectiveCountMetricGoodCloudwatchDimensionOutput) Value() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodCloudwatchDimension) string { return v.Value }).(pulumi.StringOutput) } @@ -9873,13 +16749,14 @@ func (o SloObjectiveCountMetricGoodCloudwatchDimensionArrayOutput) Index(i pulum } type SloObjectiveCountMetricGoodDatadog struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricGoodDatadogInput is an input type that accepts SloObjectiveCountMetricGoodDatadogArgs and SloObjectiveCountMetricGoodDatadogOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodDatadogInput` via: // -// SloObjectiveCountMetricGoodDatadogArgs{...} +// SloObjectiveCountMetricGoodDatadogArgs{...} type SloObjectiveCountMetricGoodDatadogInput interface { pulumi.Input @@ -9888,6 +16765,7 @@ type SloObjectiveCountMetricGoodDatadogInput interface { } type SloObjectiveCountMetricGoodDatadogArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -9906,7 +16784,7 @@ func (i SloObjectiveCountMetricGoodDatadogArgs) ToSloObjectiveCountMetricGoodDat // SloObjectiveCountMetricGoodDatadogArrayInput is an input type that accepts SloObjectiveCountMetricGoodDatadogArray and SloObjectiveCountMetricGoodDatadogArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodDatadogArrayInput` via: // -// SloObjectiveCountMetricGoodDatadogArray{ SloObjectiveCountMetricGoodDatadogArgs{...} } +// SloObjectiveCountMetricGoodDatadogArray{ SloObjectiveCountMetricGoodDatadogArgs{...} } type SloObjectiveCountMetricGoodDatadogArrayInput interface { pulumi.Input @@ -9942,6 +16820,7 @@ func (o SloObjectiveCountMetricGoodDatadogOutput) ToSloObjectiveCountMetricGoodD return o } +// Query for the metrics func (o SloObjectiveCountMetricGoodDatadogOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodDatadog) string { return v.Query }).(pulumi.StringOutput) } @@ -9967,13 +16846,14 @@ func (o SloObjectiveCountMetricGoodDatadogArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricGoodDynatrace struct { + // Selector for the metrics MetricSelector string `pulumi:"metricSelector"` } // SloObjectiveCountMetricGoodDynatraceInput is an input type that accepts SloObjectiveCountMetricGoodDynatraceArgs and SloObjectiveCountMetricGoodDynatraceOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodDynatraceInput` via: // -// SloObjectiveCountMetricGoodDynatraceArgs{...} +// SloObjectiveCountMetricGoodDynatraceArgs{...} type SloObjectiveCountMetricGoodDynatraceInput interface { pulumi.Input @@ -9982,6 +16862,7 @@ type SloObjectiveCountMetricGoodDynatraceInput interface { } type SloObjectiveCountMetricGoodDynatraceArgs struct { + // Selector for the metrics MetricSelector pulumi.StringInput `pulumi:"metricSelector"` } @@ -10000,7 +16881,7 @@ func (i SloObjectiveCountMetricGoodDynatraceArgs) ToSloObjectiveCountMetricGoodD // SloObjectiveCountMetricGoodDynatraceArrayInput is an input type that accepts SloObjectiveCountMetricGoodDynatraceArray and SloObjectiveCountMetricGoodDynatraceArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodDynatraceArrayInput` via: // -// SloObjectiveCountMetricGoodDynatraceArray{ SloObjectiveCountMetricGoodDynatraceArgs{...} } +// SloObjectiveCountMetricGoodDynatraceArray{ SloObjectiveCountMetricGoodDynatraceArgs{...} } type SloObjectiveCountMetricGoodDynatraceArrayInput interface { pulumi.Input @@ -10036,6 +16917,7 @@ func (o SloObjectiveCountMetricGoodDynatraceOutput) ToSloObjectiveCountMetricGoo return o } +// Selector for the metrics func (o SloObjectiveCountMetricGoodDynatraceOutput) MetricSelector() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodDynatrace) string { return v.MetricSelector }).(pulumi.StringOutput) } @@ -10061,14 +16943,16 @@ func (o SloObjectiveCountMetricGoodDynatraceArrayOutput) Index(i pulumi.IntInput } type SloObjectiveCountMetricGoodElasticsearch struct { + // Index of metrics we want to query Index string `pulumi:"index"` + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricGoodElasticsearchInput is an input type that accepts SloObjectiveCountMetricGoodElasticsearchArgs and SloObjectiveCountMetricGoodElasticsearchOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodElasticsearchInput` via: // -// SloObjectiveCountMetricGoodElasticsearchArgs{...} +// SloObjectiveCountMetricGoodElasticsearchArgs{...} type SloObjectiveCountMetricGoodElasticsearchInput interface { pulumi.Input @@ -10077,7 +16961,9 @@ type SloObjectiveCountMetricGoodElasticsearchInput interface { } type SloObjectiveCountMetricGoodElasticsearchArgs struct { + // Index of metrics we want to query Index pulumi.StringInput `pulumi:"index"` + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -10096,7 +16982,7 @@ func (i SloObjectiveCountMetricGoodElasticsearchArgs) ToSloObjectiveCountMetricG // SloObjectiveCountMetricGoodElasticsearchArrayInput is an input type that accepts SloObjectiveCountMetricGoodElasticsearchArray and SloObjectiveCountMetricGoodElasticsearchArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodElasticsearchArrayInput` via: // -// SloObjectiveCountMetricGoodElasticsearchArray{ SloObjectiveCountMetricGoodElasticsearchArgs{...} } +// SloObjectiveCountMetricGoodElasticsearchArray{ SloObjectiveCountMetricGoodElasticsearchArgs{...} } type SloObjectiveCountMetricGoodElasticsearchArrayInput interface { pulumi.Input @@ -10132,10 +17018,12 @@ func (o SloObjectiveCountMetricGoodElasticsearchOutput) ToSloObjectiveCountMetri return o } +// Index of metrics we want to query func (o SloObjectiveCountMetricGoodElasticsearchOutput) Index() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodElasticsearch) string { return v.Index }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricGoodElasticsearchOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodElasticsearch) string { return v.Query }).(pulumi.StringOutput) } @@ -10161,14 +17049,16 @@ func (o SloObjectiveCountMetricGoodElasticsearchArrayOutput) Index(i pulumi.IntI } type SloObjectiveCountMetricGoodGcm struct { + // Project ID ProjectId string `pulumi:"projectId"` - Query string `pulumi:"query"` + // Query for the metrics + Query string `pulumi:"query"` } // SloObjectiveCountMetricGoodGcmInput is an input type that accepts SloObjectiveCountMetricGoodGcmArgs and SloObjectiveCountMetricGoodGcmOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodGcmInput` via: // -// SloObjectiveCountMetricGoodGcmArgs{...} +// SloObjectiveCountMetricGoodGcmArgs{...} type SloObjectiveCountMetricGoodGcmInput interface { pulumi.Input @@ -10177,8 +17067,10 @@ type SloObjectiveCountMetricGoodGcmInput interface { } type SloObjectiveCountMetricGoodGcmArgs struct { + // Project ID ProjectId pulumi.StringInput `pulumi:"projectId"` - Query pulumi.StringInput `pulumi:"query"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } func (SloObjectiveCountMetricGoodGcmArgs) ElementType() reflect.Type { @@ -10196,7 +17088,7 @@ func (i SloObjectiveCountMetricGoodGcmArgs) ToSloObjectiveCountMetricGoodGcmOutp // SloObjectiveCountMetricGoodGcmArrayInput is an input type that accepts SloObjectiveCountMetricGoodGcmArray and SloObjectiveCountMetricGoodGcmArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodGcmArrayInput` via: // -// SloObjectiveCountMetricGoodGcmArray{ SloObjectiveCountMetricGoodGcmArgs{...} } +// SloObjectiveCountMetricGoodGcmArray{ SloObjectiveCountMetricGoodGcmArgs{...} } type SloObjectiveCountMetricGoodGcmArrayInput interface { pulumi.Input @@ -10232,10 +17124,12 @@ func (o SloObjectiveCountMetricGoodGcmOutput) ToSloObjectiveCountMetricGoodGcmOu return o } +// Project ID func (o SloObjectiveCountMetricGoodGcmOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodGcm) string { return v.ProjectId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricGoodGcmOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodGcm) string { return v.Query }).(pulumi.StringOutput) } @@ -10261,13 +17155,14 @@ func (o SloObjectiveCountMetricGoodGcmArrayOutput) Index(i pulumi.IntInput) SloO } type SloObjectiveCountMetricGoodGrafanaLoki struct { + // Query for the logs Logql string `pulumi:"logql"` } // SloObjectiveCountMetricGoodGrafanaLokiInput is an input type that accepts SloObjectiveCountMetricGoodGrafanaLokiArgs and SloObjectiveCountMetricGoodGrafanaLokiOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodGrafanaLokiInput` via: // -// SloObjectiveCountMetricGoodGrafanaLokiArgs{...} +// SloObjectiveCountMetricGoodGrafanaLokiArgs{...} type SloObjectiveCountMetricGoodGrafanaLokiInput interface { pulumi.Input @@ -10276,6 +17171,7 @@ type SloObjectiveCountMetricGoodGrafanaLokiInput interface { } type SloObjectiveCountMetricGoodGrafanaLokiArgs struct { + // Query for the logs Logql pulumi.StringInput `pulumi:"logql"` } @@ -10294,7 +17190,7 @@ func (i SloObjectiveCountMetricGoodGrafanaLokiArgs) ToSloObjectiveCountMetricGoo // SloObjectiveCountMetricGoodGrafanaLokiArrayInput is an input type that accepts SloObjectiveCountMetricGoodGrafanaLokiArray and SloObjectiveCountMetricGoodGrafanaLokiArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodGrafanaLokiArrayInput` via: // -// SloObjectiveCountMetricGoodGrafanaLokiArray{ SloObjectiveCountMetricGoodGrafanaLokiArgs{...} } +// SloObjectiveCountMetricGoodGrafanaLokiArray{ SloObjectiveCountMetricGoodGrafanaLokiArgs{...} } type SloObjectiveCountMetricGoodGrafanaLokiArrayInput interface { pulumi.Input @@ -10330,6 +17226,7 @@ func (o SloObjectiveCountMetricGoodGrafanaLokiOutput) ToSloObjectiveCountMetricG return o } +// Query for the logs func (o SloObjectiveCountMetricGoodGrafanaLokiOutput) Logql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodGrafanaLoki) string { return v.Logql }).(pulumi.StringOutput) } @@ -10355,13 +17252,14 @@ func (o SloObjectiveCountMetricGoodGrafanaLokiArrayOutput) Index(i pulumi.IntInp } type SloObjectiveCountMetricGoodGraphite struct { + // Path to the metrics MetricPath string `pulumi:"metricPath"` } // SloObjectiveCountMetricGoodGraphiteInput is an input type that accepts SloObjectiveCountMetricGoodGraphiteArgs and SloObjectiveCountMetricGoodGraphiteOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodGraphiteInput` via: // -// SloObjectiveCountMetricGoodGraphiteArgs{...} +// SloObjectiveCountMetricGoodGraphiteArgs{...} type SloObjectiveCountMetricGoodGraphiteInput interface { pulumi.Input @@ -10370,6 +17268,7 @@ type SloObjectiveCountMetricGoodGraphiteInput interface { } type SloObjectiveCountMetricGoodGraphiteArgs struct { + // Path to the metrics MetricPath pulumi.StringInput `pulumi:"metricPath"` } @@ -10388,7 +17287,7 @@ func (i SloObjectiveCountMetricGoodGraphiteArgs) ToSloObjectiveCountMetricGoodGr // SloObjectiveCountMetricGoodGraphiteArrayInput is an input type that accepts SloObjectiveCountMetricGoodGraphiteArray and SloObjectiveCountMetricGoodGraphiteArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodGraphiteArrayInput` via: // -// SloObjectiveCountMetricGoodGraphiteArray{ SloObjectiveCountMetricGoodGraphiteArgs{...} } +// SloObjectiveCountMetricGoodGraphiteArray{ SloObjectiveCountMetricGoodGraphiteArgs{...} } type SloObjectiveCountMetricGoodGraphiteArrayInput interface { pulumi.Input @@ -10424,6 +17323,7 @@ func (o SloObjectiveCountMetricGoodGraphiteOutput) ToSloObjectiveCountMetricGood return o } +// Path to the metrics func (o SloObjectiveCountMetricGoodGraphiteOutput) MetricPath() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodGraphite) string { return v.MetricPath }).(pulumi.StringOutput) } @@ -10442,20 +17342,127 @@ func (o SloObjectiveCountMetricGoodGraphiteArrayOutput) ToSloObjectiveCountMetri return o } -func (o SloObjectiveCountMetricGoodGraphiteArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricGoodGraphiteOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricGoodGraphite { - return vs[0].([]SloObjectiveCountMetricGoodGraphite)[vs[1].(int)] - }).(SloObjectiveCountMetricGoodGraphiteOutput) +func (o SloObjectiveCountMetricGoodGraphiteArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricGoodGraphiteOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricGoodGraphite { + return vs[0].([]SloObjectiveCountMetricGoodGraphite)[vs[1].(int)] + }).(SloObjectiveCountMetricGoodGraphiteOutput) +} + +type SloObjectiveCountMetricGoodHoneycomb struct { + // Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + Attribute *string `pulumi:"attribute"` + // Calculation type + Calculation string `pulumi:"calculation"` +} + +// SloObjectiveCountMetricGoodHoneycombInput is an input type that accepts SloObjectiveCountMetricGoodHoneycombArgs and SloObjectiveCountMetricGoodHoneycombOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricGoodHoneycombInput` via: +// +// SloObjectiveCountMetricGoodHoneycombArgs{...} +type SloObjectiveCountMetricGoodHoneycombInput interface { + pulumi.Input + + ToSloObjectiveCountMetricGoodHoneycombOutput() SloObjectiveCountMetricGoodHoneycombOutput + ToSloObjectiveCountMetricGoodHoneycombOutputWithContext(context.Context) SloObjectiveCountMetricGoodHoneycombOutput +} + +type SloObjectiveCountMetricGoodHoneycombArgs struct { + // Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + Attribute pulumi.StringPtrInput `pulumi:"attribute"` + // Calculation type + Calculation pulumi.StringInput `pulumi:"calculation"` +} + +func (SloObjectiveCountMetricGoodHoneycombArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricGoodHoneycomb)(nil)).Elem() +} + +func (i SloObjectiveCountMetricGoodHoneycombArgs) ToSloObjectiveCountMetricGoodHoneycombOutput() SloObjectiveCountMetricGoodHoneycombOutput { + return i.ToSloObjectiveCountMetricGoodHoneycombOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricGoodHoneycombArgs) ToSloObjectiveCountMetricGoodHoneycombOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodHoneycombOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricGoodHoneycombOutput) +} + +// SloObjectiveCountMetricGoodHoneycombArrayInput is an input type that accepts SloObjectiveCountMetricGoodHoneycombArray and SloObjectiveCountMetricGoodHoneycombArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricGoodHoneycombArrayInput` via: +// +// SloObjectiveCountMetricGoodHoneycombArray{ SloObjectiveCountMetricGoodHoneycombArgs{...} } +type SloObjectiveCountMetricGoodHoneycombArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricGoodHoneycombArrayOutput() SloObjectiveCountMetricGoodHoneycombArrayOutput + ToSloObjectiveCountMetricGoodHoneycombArrayOutputWithContext(context.Context) SloObjectiveCountMetricGoodHoneycombArrayOutput +} + +type SloObjectiveCountMetricGoodHoneycombArray []SloObjectiveCountMetricGoodHoneycombInput + +func (SloObjectiveCountMetricGoodHoneycombArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricGoodHoneycomb)(nil)).Elem() +} + +func (i SloObjectiveCountMetricGoodHoneycombArray) ToSloObjectiveCountMetricGoodHoneycombArrayOutput() SloObjectiveCountMetricGoodHoneycombArrayOutput { + return i.ToSloObjectiveCountMetricGoodHoneycombArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricGoodHoneycombArray) ToSloObjectiveCountMetricGoodHoneycombArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodHoneycombArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricGoodHoneycombArrayOutput) +} + +type SloObjectiveCountMetricGoodHoneycombOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricGoodHoneycombOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricGoodHoneycomb)(nil)).Elem() +} + +func (o SloObjectiveCountMetricGoodHoneycombOutput) ToSloObjectiveCountMetricGoodHoneycombOutput() SloObjectiveCountMetricGoodHoneycombOutput { + return o +} + +func (o SloObjectiveCountMetricGoodHoneycombOutput) ToSloObjectiveCountMetricGoodHoneycombOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodHoneycombOutput { + return o +} + +// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' +func (o SloObjectiveCountMetricGoodHoneycombOutput) Attribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodHoneycomb) *string { return v.Attribute }).(pulumi.StringPtrOutput) +} + +// Calculation type +func (o SloObjectiveCountMetricGoodHoneycombOutput) Calculation() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricGoodHoneycomb) string { return v.Calculation }).(pulumi.StringOutput) +} + +type SloObjectiveCountMetricGoodHoneycombArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricGoodHoneycombArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricGoodHoneycomb)(nil)).Elem() +} + +func (o SloObjectiveCountMetricGoodHoneycombArrayOutput) ToSloObjectiveCountMetricGoodHoneycombArrayOutput() SloObjectiveCountMetricGoodHoneycombArrayOutput { + return o +} + +func (o SloObjectiveCountMetricGoodHoneycombArrayOutput) ToSloObjectiveCountMetricGoodHoneycombArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricGoodHoneycombArrayOutput { + return o +} + +func (o SloObjectiveCountMetricGoodHoneycombArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricGoodHoneycombOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricGoodHoneycomb { + return vs[0].([]SloObjectiveCountMetricGoodHoneycomb)[vs[1].(int)] + }).(SloObjectiveCountMetricGoodHoneycombOutput) } type SloObjectiveCountMetricGoodInfluxdb struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricGoodInfluxdbInput is an input type that accepts SloObjectiveCountMetricGoodInfluxdbArgs and SloObjectiveCountMetricGoodInfluxdbOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInfluxdbInput` via: // -// SloObjectiveCountMetricGoodInfluxdbArgs{...} +// SloObjectiveCountMetricGoodInfluxdbArgs{...} type SloObjectiveCountMetricGoodInfluxdbInput interface { pulumi.Input @@ -10464,6 +17471,7 @@ type SloObjectiveCountMetricGoodInfluxdbInput interface { } type SloObjectiveCountMetricGoodInfluxdbArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -10482,7 +17490,7 @@ func (i SloObjectiveCountMetricGoodInfluxdbArgs) ToSloObjectiveCountMetricGoodIn // SloObjectiveCountMetricGoodInfluxdbArrayInput is an input type that accepts SloObjectiveCountMetricGoodInfluxdbArray and SloObjectiveCountMetricGoodInfluxdbArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInfluxdbArrayInput` via: // -// SloObjectiveCountMetricGoodInfluxdbArray{ SloObjectiveCountMetricGoodInfluxdbArgs{...} } +// SloObjectiveCountMetricGoodInfluxdbArray{ SloObjectiveCountMetricGoodInfluxdbArgs{...} } type SloObjectiveCountMetricGoodInfluxdbArrayInput interface { pulumi.Input @@ -10518,6 +17526,7 @@ func (o SloObjectiveCountMetricGoodInfluxdbOutput) ToSloObjectiveCountMetricGood return o } +// Query for the metrics func (o SloObjectiveCountMetricGoodInfluxdbOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInfluxdb) string { return v.Query }).(pulumi.StringOutput) } @@ -10543,15 +17552,18 @@ func (o SloObjectiveCountMetricGoodInfluxdbArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricGoodInstana struct { - Applications []SloObjectiveCountMetricGoodInstanaApplication `pulumi:"applications"` + // Infrastructure metric type + Applications []SloObjectiveCountMetricGoodInstanaApplication `pulumi:"applications"` + // Infrastructure metric type Infrastructures []SloObjectiveCountMetricGoodInstanaInfrastructure `pulumi:"infrastructures"` - MetricType string `pulumi:"metricType"` + // Instana metric type 'application' or 'infrastructure' + MetricType string `pulumi:"metricType"` } // SloObjectiveCountMetricGoodInstanaInput is an input type that accepts SloObjectiveCountMetricGoodInstanaArgs and SloObjectiveCountMetricGoodInstanaOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInstanaInput` via: // -// SloObjectiveCountMetricGoodInstanaArgs{...} +// SloObjectiveCountMetricGoodInstanaArgs{...} type SloObjectiveCountMetricGoodInstanaInput interface { pulumi.Input @@ -10560,9 +17572,12 @@ type SloObjectiveCountMetricGoodInstanaInput interface { } type SloObjectiveCountMetricGoodInstanaArgs struct { - Applications SloObjectiveCountMetricGoodInstanaApplicationArrayInput `pulumi:"applications"` + // Infrastructure metric type + Applications SloObjectiveCountMetricGoodInstanaApplicationArrayInput `pulumi:"applications"` + // Infrastructure metric type Infrastructures SloObjectiveCountMetricGoodInstanaInfrastructureArrayInput `pulumi:"infrastructures"` - MetricType pulumi.StringInput `pulumi:"metricType"` + // Instana metric type 'application' or 'infrastructure' + MetricType pulumi.StringInput `pulumi:"metricType"` } func (SloObjectiveCountMetricGoodInstanaArgs) ElementType() reflect.Type { @@ -10580,7 +17595,7 @@ func (i SloObjectiveCountMetricGoodInstanaArgs) ToSloObjectiveCountMetricGoodIns // SloObjectiveCountMetricGoodInstanaArrayInput is an input type that accepts SloObjectiveCountMetricGoodInstanaArray and SloObjectiveCountMetricGoodInstanaArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInstanaArrayInput` via: // -// SloObjectiveCountMetricGoodInstanaArray{ SloObjectiveCountMetricGoodInstanaArgs{...} } +// SloObjectiveCountMetricGoodInstanaArray{ SloObjectiveCountMetricGoodInstanaArgs{...} } type SloObjectiveCountMetricGoodInstanaArrayInput interface { pulumi.Input @@ -10616,18 +17631,21 @@ func (o SloObjectiveCountMetricGoodInstanaOutput) ToSloObjectiveCountMetricGoodI return o } +// Infrastructure metric type func (o SloObjectiveCountMetricGoodInstanaOutput) Applications() SloObjectiveCountMetricGoodInstanaApplicationArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstana) []SloObjectiveCountMetricGoodInstanaApplication { return v.Applications }).(SloObjectiveCountMetricGoodInstanaApplicationArrayOutput) } +// Infrastructure metric type func (o SloObjectiveCountMetricGoodInstanaOutput) Infrastructures() SloObjectiveCountMetricGoodInstanaInfrastructureArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstana) []SloObjectiveCountMetricGoodInstanaInfrastructure { return v.Infrastructures }).(SloObjectiveCountMetricGoodInstanaInfrastructureArrayOutput) } +// Instana metric type 'application' or 'infrastructure' func (o SloObjectiveCountMetricGoodInstanaOutput) MetricType() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstana) string { return v.MetricType }).(pulumi.StringOutput) } @@ -10653,18 +17671,24 @@ func (o SloObjectiveCountMetricGoodInstanaArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricGoodInstanaApplication struct { - Aggregation string `pulumi:"aggregation"` - ApiQuery string `pulumi:"apiQuery"` - GroupBies []SloObjectiveCountMetricGoodInstanaApplicationGroupBy `pulumi:"groupBies"` - IncludeInternal *bool `pulumi:"includeInternal"` - IncludeSynthetic *bool `pulumi:"includeSynthetic"` - MetricId string `pulumi:"metricId"` + // Aggregation type [Required for metrics] + Aggregation string `pulumi:"aggregation"` + // API query user passes in a JSON format + ApiQuery string `pulumi:"apiQuery"` + // Group by method + GroupBies []SloObjectiveCountMetricGoodInstanaApplicationGroupBy `pulumi:"groupBies"` + // Include internal + IncludeInternal *bool `pulumi:"includeInternal"` + // Include synthetic + IncludeSynthetic *bool `pulumi:"includeSynthetic"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId string `pulumi:"metricId"` } // SloObjectiveCountMetricGoodInstanaApplicationInput is an input type that accepts SloObjectiveCountMetricGoodInstanaApplicationArgs and SloObjectiveCountMetricGoodInstanaApplicationOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInstanaApplicationInput` via: // -// SloObjectiveCountMetricGoodInstanaApplicationArgs{...} +// SloObjectiveCountMetricGoodInstanaApplicationArgs{...} type SloObjectiveCountMetricGoodInstanaApplicationInput interface { pulumi.Input @@ -10673,12 +17697,18 @@ type SloObjectiveCountMetricGoodInstanaApplicationInput interface { } type SloObjectiveCountMetricGoodInstanaApplicationArgs struct { - Aggregation pulumi.StringInput `pulumi:"aggregation"` - ApiQuery pulumi.StringInput `pulumi:"apiQuery"` - GroupBies SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayInput `pulumi:"groupBies"` - IncludeInternal pulumi.BoolPtrInput `pulumi:"includeInternal"` - IncludeSynthetic pulumi.BoolPtrInput `pulumi:"includeSynthetic"` - MetricId pulumi.StringInput `pulumi:"metricId"` + // Aggregation type [Required for metrics] + Aggregation pulumi.StringInput `pulumi:"aggregation"` + // API query user passes in a JSON format + ApiQuery pulumi.StringInput `pulumi:"apiQuery"` + // Group by method + GroupBies SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayInput `pulumi:"groupBies"` + // Include internal + IncludeInternal pulumi.BoolPtrInput `pulumi:"includeInternal"` + // Include synthetic + IncludeSynthetic pulumi.BoolPtrInput `pulumi:"includeSynthetic"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId pulumi.StringInput `pulumi:"metricId"` } func (SloObjectiveCountMetricGoodInstanaApplicationArgs) ElementType() reflect.Type { @@ -10696,7 +17726,7 @@ func (i SloObjectiveCountMetricGoodInstanaApplicationArgs) ToSloObjectiveCountMe // SloObjectiveCountMetricGoodInstanaApplicationArrayInput is an input type that accepts SloObjectiveCountMetricGoodInstanaApplicationArray and SloObjectiveCountMetricGoodInstanaApplicationArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInstanaApplicationArrayInput` via: // -// SloObjectiveCountMetricGoodInstanaApplicationArray{ SloObjectiveCountMetricGoodInstanaApplicationArgs{...} } +// SloObjectiveCountMetricGoodInstanaApplicationArray{ SloObjectiveCountMetricGoodInstanaApplicationArgs{...} } type SloObjectiveCountMetricGoodInstanaApplicationArrayInput interface { pulumi.Input @@ -10732,28 +17762,34 @@ func (o SloObjectiveCountMetricGoodInstanaApplicationOutput) ToSloObjectiveCount return o } +// Aggregation type [Required for metrics] func (o SloObjectiveCountMetricGoodInstanaApplicationOutput) Aggregation() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaApplication) string { return v.Aggregation }).(pulumi.StringOutput) } +// API query user passes in a JSON format func (o SloObjectiveCountMetricGoodInstanaApplicationOutput) ApiQuery() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaApplication) string { return v.ApiQuery }).(pulumi.StringOutput) } +// Group by method func (o SloObjectiveCountMetricGoodInstanaApplicationOutput) GroupBies() SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaApplication) []SloObjectiveCountMetricGoodInstanaApplicationGroupBy { return v.GroupBies }).(SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayOutput) } +// Include internal func (o SloObjectiveCountMetricGoodInstanaApplicationOutput) IncludeInternal() pulumi.BoolPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaApplication) *bool { return v.IncludeInternal }).(pulumi.BoolPtrOutput) } +// Include synthetic func (o SloObjectiveCountMetricGoodInstanaApplicationOutput) IncludeSynthetic() pulumi.BoolPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaApplication) *bool { return v.IncludeSynthetic }).(pulumi.BoolPtrOutput) } +// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' func (o SloObjectiveCountMetricGoodInstanaApplicationOutput) MetricId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaApplication) string { return v.MetricId }).(pulumi.StringOutput) } @@ -10779,7 +17815,9 @@ func (o SloObjectiveCountMetricGoodInstanaApplicationArrayOutput) Index(i pulumi } type SloObjectiveCountMetricGoodInstanaApplicationGroupBy struct { - Tag string `pulumi:"tag"` + // Group by tag + Tag string `pulumi:"tag"` + // Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' TagEntity string `pulumi:"tagEntity"` TagSecondLevelKey *string `pulumi:"tagSecondLevelKey"` } @@ -10787,7 +17825,7 @@ type SloObjectiveCountMetricGoodInstanaApplicationGroupBy struct { // SloObjectiveCountMetricGoodInstanaApplicationGroupByInput is an input type that accepts SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs and SloObjectiveCountMetricGoodInstanaApplicationGroupByOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInstanaApplicationGroupByInput` via: // -// SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs{...} +// SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs{...} type SloObjectiveCountMetricGoodInstanaApplicationGroupByInput interface { pulumi.Input @@ -10796,7 +17834,9 @@ type SloObjectiveCountMetricGoodInstanaApplicationGroupByInput interface { } type SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs struct { - Tag pulumi.StringInput `pulumi:"tag"` + // Group by tag + Tag pulumi.StringInput `pulumi:"tag"` + // Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' TagEntity pulumi.StringInput `pulumi:"tagEntity"` TagSecondLevelKey pulumi.StringPtrInput `pulumi:"tagSecondLevelKey"` } @@ -10816,7 +17856,7 @@ func (i SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs) ToSloObjective // SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayInput is an input type that accepts SloObjectiveCountMetricGoodInstanaApplicationGroupByArray and SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayInput` via: // -// SloObjectiveCountMetricGoodInstanaApplicationGroupByArray{ SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs{...} } +// SloObjectiveCountMetricGoodInstanaApplicationGroupByArray{ SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs{...} } type SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayInput interface { pulumi.Input @@ -10852,10 +17892,12 @@ func (o SloObjectiveCountMetricGoodInstanaApplicationGroupByOutput) ToSloObjecti return o } +// Group by tag func (o SloObjectiveCountMetricGoodInstanaApplicationGroupByOutput) Tag() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaApplicationGroupBy) string { return v.Tag }).(pulumi.StringOutput) } +// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' func (o SloObjectiveCountMetricGoodInstanaApplicationGroupByOutput) TagEntity() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaApplicationGroupBy) string { return v.TagEntity }).(pulumi.StringOutput) } @@ -10885,17 +17927,22 @@ func (o SloObjectiveCountMetricGoodInstanaApplicationGroupByArrayOutput) Index(i } type SloObjectiveCountMetricGoodInstanaInfrastructure struct { - MetricId string `pulumi:"metricId"` - MetricRetrievalMethod string `pulumi:"metricRetrievalMethod"` - PluginId string `pulumi:"pluginId"` - Query *string `pulumi:"query"` - SnapshotId *string `pulumi:"snapshotId"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId string `pulumi:"metricId"` + // Metric retrieval method 'query' or 'snapshot' + MetricRetrievalMethod string `pulumi:"metricRetrievalMethod"` + // Plugin ID + PluginId string `pulumi:"pluginId"` + // Query for the metrics + Query *string `pulumi:"query"` + // Snapshot ID + SnapshotId *string `pulumi:"snapshotId"` } // SloObjectiveCountMetricGoodInstanaInfrastructureInput is an input type that accepts SloObjectiveCountMetricGoodInstanaInfrastructureArgs and SloObjectiveCountMetricGoodInstanaInfrastructureOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInstanaInfrastructureInput` via: // -// SloObjectiveCountMetricGoodInstanaInfrastructureArgs{...} +// SloObjectiveCountMetricGoodInstanaInfrastructureArgs{...} type SloObjectiveCountMetricGoodInstanaInfrastructureInput interface { pulumi.Input @@ -10904,11 +17951,16 @@ type SloObjectiveCountMetricGoodInstanaInfrastructureInput interface { } type SloObjectiveCountMetricGoodInstanaInfrastructureArgs struct { - MetricId pulumi.StringInput `pulumi:"metricId"` - MetricRetrievalMethod pulumi.StringInput `pulumi:"metricRetrievalMethod"` - PluginId pulumi.StringInput `pulumi:"pluginId"` - Query pulumi.StringPtrInput `pulumi:"query"` - SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId pulumi.StringInput `pulumi:"metricId"` + // Metric retrieval method 'query' or 'snapshot' + MetricRetrievalMethod pulumi.StringInput `pulumi:"metricRetrievalMethod"` + // Plugin ID + PluginId pulumi.StringInput `pulumi:"pluginId"` + // Query for the metrics + Query pulumi.StringPtrInput `pulumi:"query"` + // Snapshot ID + SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"` } func (SloObjectiveCountMetricGoodInstanaInfrastructureArgs) ElementType() reflect.Type { @@ -10926,7 +17978,7 @@ func (i SloObjectiveCountMetricGoodInstanaInfrastructureArgs) ToSloObjectiveCoun // SloObjectiveCountMetricGoodInstanaInfrastructureArrayInput is an input type that accepts SloObjectiveCountMetricGoodInstanaInfrastructureArray and SloObjectiveCountMetricGoodInstanaInfrastructureArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodInstanaInfrastructureArrayInput` via: // -// SloObjectiveCountMetricGoodInstanaInfrastructureArray{ SloObjectiveCountMetricGoodInstanaInfrastructureArgs{...} } +// SloObjectiveCountMetricGoodInstanaInfrastructureArray{ SloObjectiveCountMetricGoodInstanaInfrastructureArgs{...} } type SloObjectiveCountMetricGoodInstanaInfrastructureArrayInput interface { pulumi.Input @@ -10962,22 +18014,27 @@ func (o SloObjectiveCountMetricGoodInstanaInfrastructureOutput) ToSloObjectiveCo return o } +// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' func (o SloObjectiveCountMetricGoodInstanaInfrastructureOutput) MetricId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaInfrastructure) string { return v.MetricId }).(pulumi.StringOutput) } +// Metric retrieval method 'query' or 'snapshot' func (o SloObjectiveCountMetricGoodInstanaInfrastructureOutput) MetricRetrievalMethod() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaInfrastructure) string { return v.MetricRetrievalMethod }).(pulumi.StringOutput) } +// Plugin ID func (o SloObjectiveCountMetricGoodInstanaInfrastructureOutput) PluginId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaInfrastructure) string { return v.PluginId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricGoodInstanaInfrastructureOutput) Query() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaInfrastructure) *string { return v.Query }).(pulumi.StringPtrOutput) } +// Snapshot ID func (o SloObjectiveCountMetricGoodInstanaInfrastructureOutput) SnapshotId() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodInstanaInfrastructure) *string { return v.SnapshotId }).(pulumi.StringPtrOutput) } @@ -11003,16 +18060,20 @@ func (o SloObjectiveCountMetricGoodInstanaInfrastructureArrayOutput) Index(i pul } type SloObjectiveCountMetricGoodLightstep struct { + // Optional value to filter by percentiles Percentile *float64 `pulumi:"percentile"` - StreamId *string `pulumi:"streamId"` - TypeOfData string `pulumi:"typeOfData"` - Uql *string `pulumi:"uql"` + // ID of the metrics stream + StreamId *string `pulumi:"streamId"` + // Type of data to filter by + TypeOfData string `pulumi:"typeOfData"` + // UQL query + Uql *string `pulumi:"uql"` } // SloObjectiveCountMetricGoodLightstepInput is an input type that accepts SloObjectiveCountMetricGoodLightstepArgs and SloObjectiveCountMetricGoodLightstepOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodLightstepInput` via: // -// SloObjectiveCountMetricGoodLightstepArgs{...} +// SloObjectiveCountMetricGoodLightstepArgs{...} type SloObjectiveCountMetricGoodLightstepInput interface { pulumi.Input @@ -11021,10 +18082,14 @@ type SloObjectiveCountMetricGoodLightstepInput interface { } type SloObjectiveCountMetricGoodLightstepArgs struct { + // Optional value to filter by percentiles Percentile pulumi.Float64PtrInput `pulumi:"percentile"` - StreamId pulumi.StringPtrInput `pulumi:"streamId"` - TypeOfData pulumi.StringInput `pulumi:"typeOfData"` - Uql pulumi.StringPtrInput `pulumi:"uql"` + // ID of the metrics stream + StreamId pulumi.StringPtrInput `pulumi:"streamId"` + // Type of data to filter by + TypeOfData pulumi.StringInput `pulumi:"typeOfData"` + // UQL query + Uql pulumi.StringPtrInput `pulumi:"uql"` } func (SloObjectiveCountMetricGoodLightstepArgs) ElementType() reflect.Type { @@ -11042,7 +18107,7 @@ func (i SloObjectiveCountMetricGoodLightstepArgs) ToSloObjectiveCountMetricGoodL // SloObjectiveCountMetricGoodLightstepArrayInput is an input type that accepts SloObjectiveCountMetricGoodLightstepArray and SloObjectiveCountMetricGoodLightstepArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodLightstepArrayInput` via: // -// SloObjectiveCountMetricGoodLightstepArray{ SloObjectiveCountMetricGoodLightstepArgs{...} } +// SloObjectiveCountMetricGoodLightstepArray{ SloObjectiveCountMetricGoodLightstepArgs{...} } type SloObjectiveCountMetricGoodLightstepArrayInput interface { pulumi.Input @@ -11078,18 +18143,22 @@ func (o SloObjectiveCountMetricGoodLightstepOutput) ToSloObjectiveCountMetricGoo return o } +// Optional value to filter by percentiles func (o SloObjectiveCountMetricGoodLightstepOutput) Percentile() pulumi.Float64PtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodLightstep) *float64 { return v.Percentile }).(pulumi.Float64PtrOutput) } +// ID of the metrics stream func (o SloObjectiveCountMetricGoodLightstepOutput) StreamId() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodLightstep) *string { return v.StreamId }).(pulumi.StringPtrOutput) } +// Type of data to filter by func (o SloObjectiveCountMetricGoodLightstepOutput) TypeOfData() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodLightstep) string { return v.TypeOfData }).(pulumi.StringOutput) } +// UQL query func (o SloObjectiveCountMetricGoodLightstepOutput) Uql() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodLightstep) *string { return v.Uql }).(pulumi.StringPtrOutput) } @@ -11115,13 +18184,14 @@ func (o SloObjectiveCountMetricGoodLightstepArrayOutput) Index(i pulumi.IntInput } type SloObjectiveCountMetricGoodNewrelic struct { + // Query for the metrics Nrql string `pulumi:"nrql"` } // SloObjectiveCountMetricGoodNewrelicInput is an input type that accepts SloObjectiveCountMetricGoodNewrelicArgs and SloObjectiveCountMetricGoodNewrelicOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodNewrelicInput` via: // -// SloObjectiveCountMetricGoodNewrelicArgs{...} +// SloObjectiveCountMetricGoodNewrelicArgs{...} type SloObjectiveCountMetricGoodNewrelicInput interface { pulumi.Input @@ -11130,6 +18200,7 @@ type SloObjectiveCountMetricGoodNewrelicInput interface { } type SloObjectiveCountMetricGoodNewrelicArgs struct { + // Query for the metrics Nrql pulumi.StringInput `pulumi:"nrql"` } @@ -11148,7 +18219,7 @@ func (i SloObjectiveCountMetricGoodNewrelicArgs) ToSloObjectiveCountMetricGoodNe // SloObjectiveCountMetricGoodNewrelicArrayInput is an input type that accepts SloObjectiveCountMetricGoodNewrelicArray and SloObjectiveCountMetricGoodNewrelicArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodNewrelicArrayInput` via: // -// SloObjectiveCountMetricGoodNewrelicArray{ SloObjectiveCountMetricGoodNewrelicArgs{...} } +// SloObjectiveCountMetricGoodNewrelicArray{ SloObjectiveCountMetricGoodNewrelicArgs{...} } type SloObjectiveCountMetricGoodNewrelicArrayInput interface { pulumi.Input @@ -11184,6 +18255,7 @@ func (o SloObjectiveCountMetricGoodNewrelicOutput) ToSloObjectiveCountMetricGood return o } +// Query for the metrics func (o SloObjectiveCountMetricGoodNewrelicOutput) Nrql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodNewrelic) string { return v.Nrql }).(pulumi.StringOutput) } @@ -11209,13 +18281,14 @@ func (o SloObjectiveCountMetricGoodNewrelicArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricGoodOpentsdb struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricGoodOpentsdbInput is an input type that accepts SloObjectiveCountMetricGoodOpentsdbArgs and SloObjectiveCountMetricGoodOpentsdbOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodOpentsdbInput` via: // -// SloObjectiveCountMetricGoodOpentsdbArgs{...} +// SloObjectiveCountMetricGoodOpentsdbArgs{...} type SloObjectiveCountMetricGoodOpentsdbInput interface { pulumi.Input @@ -11224,6 +18297,7 @@ type SloObjectiveCountMetricGoodOpentsdbInput interface { } type SloObjectiveCountMetricGoodOpentsdbArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -11242,7 +18316,7 @@ func (i SloObjectiveCountMetricGoodOpentsdbArgs) ToSloObjectiveCountMetricGoodOp // SloObjectiveCountMetricGoodOpentsdbArrayInput is an input type that accepts SloObjectiveCountMetricGoodOpentsdbArray and SloObjectiveCountMetricGoodOpentsdbArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodOpentsdbArrayInput` via: // -// SloObjectiveCountMetricGoodOpentsdbArray{ SloObjectiveCountMetricGoodOpentsdbArgs{...} } +// SloObjectiveCountMetricGoodOpentsdbArray{ SloObjectiveCountMetricGoodOpentsdbArgs{...} } type SloObjectiveCountMetricGoodOpentsdbArrayInput interface { pulumi.Input @@ -11278,6 +18352,7 @@ func (o SloObjectiveCountMetricGoodOpentsdbOutput) ToSloObjectiveCountMetricGood return o } +// Query for the metrics func (o SloObjectiveCountMetricGoodOpentsdbOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodOpentsdb) string { return v.Query }).(pulumi.StringOutput) } @@ -11303,15 +18378,18 @@ func (o SloObjectiveCountMetricGoodOpentsdbArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricGoodPingdom struct { - CheckId string `pulumi:"checkId"` + // Pingdom uptime or transaction check's ID + CheckId string `pulumi:"checkId"` + // Pingdom check type - uptime or transaction CheckType *string `pulumi:"checkType"` - Status *string `pulumi:"status"` + // Optional for the Uptime checks. Use it to filter the Pingdom check results by status + Status *string `pulumi:"status"` } // SloObjectiveCountMetricGoodPingdomInput is an input type that accepts SloObjectiveCountMetricGoodPingdomArgs and SloObjectiveCountMetricGoodPingdomOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodPingdomInput` via: // -// SloObjectiveCountMetricGoodPingdomArgs{...} +// SloObjectiveCountMetricGoodPingdomArgs{...} type SloObjectiveCountMetricGoodPingdomInput interface { pulumi.Input @@ -11320,9 +18398,12 @@ type SloObjectiveCountMetricGoodPingdomInput interface { } type SloObjectiveCountMetricGoodPingdomArgs struct { - CheckId pulumi.StringInput `pulumi:"checkId"` + // Pingdom uptime or transaction check's ID + CheckId pulumi.StringInput `pulumi:"checkId"` + // Pingdom check type - uptime or transaction CheckType pulumi.StringPtrInput `pulumi:"checkType"` - Status pulumi.StringPtrInput `pulumi:"status"` + // Optional for the Uptime checks. Use it to filter the Pingdom check results by status + Status pulumi.StringPtrInput `pulumi:"status"` } func (SloObjectiveCountMetricGoodPingdomArgs) ElementType() reflect.Type { @@ -11340,7 +18421,7 @@ func (i SloObjectiveCountMetricGoodPingdomArgs) ToSloObjectiveCountMetricGoodPin // SloObjectiveCountMetricGoodPingdomArrayInput is an input type that accepts SloObjectiveCountMetricGoodPingdomArray and SloObjectiveCountMetricGoodPingdomArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodPingdomArrayInput` via: // -// SloObjectiveCountMetricGoodPingdomArray{ SloObjectiveCountMetricGoodPingdomArgs{...} } +// SloObjectiveCountMetricGoodPingdomArray{ SloObjectiveCountMetricGoodPingdomArgs{...} } type SloObjectiveCountMetricGoodPingdomArrayInput interface { pulumi.Input @@ -11376,14 +18457,17 @@ func (o SloObjectiveCountMetricGoodPingdomOutput) ToSloObjectiveCountMetricGoodP return o } +// Pingdom uptime or transaction check's ID func (o SloObjectiveCountMetricGoodPingdomOutput) CheckId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodPingdom) string { return v.CheckId }).(pulumi.StringOutput) } +// Pingdom check type - uptime or transaction func (o SloObjectiveCountMetricGoodPingdomOutput) CheckType() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodPingdom) *string { return v.CheckType }).(pulumi.StringPtrOutput) } +// Optional for the Uptime checks. Use it to filter the Pingdom check results by status func (o SloObjectiveCountMetricGoodPingdomOutput) Status() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodPingdom) *string { return v.Status }).(pulumi.StringPtrOutput) } @@ -11409,13 +18493,14 @@ func (o SloObjectiveCountMetricGoodPingdomArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricGoodPrometheus struct { + // Query for the metrics Promql string `pulumi:"promql"` } // SloObjectiveCountMetricGoodPrometheusInput is an input type that accepts SloObjectiveCountMetricGoodPrometheusArgs and SloObjectiveCountMetricGoodPrometheusOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodPrometheusInput` via: // -// SloObjectiveCountMetricGoodPrometheusArgs{...} +// SloObjectiveCountMetricGoodPrometheusArgs{...} type SloObjectiveCountMetricGoodPrometheusInput interface { pulumi.Input @@ -11424,6 +18509,7 @@ type SloObjectiveCountMetricGoodPrometheusInput interface { } type SloObjectiveCountMetricGoodPrometheusArgs struct { + // Query for the metrics Promql pulumi.StringInput `pulumi:"promql"` } @@ -11442,7 +18528,7 @@ func (i SloObjectiveCountMetricGoodPrometheusArgs) ToSloObjectiveCountMetricGood // SloObjectiveCountMetricGoodPrometheusArrayInput is an input type that accepts SloObjectiveCountMetricGoodPrometheusArray and SloObjectiveCountMetricGoodPrometheusArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodPrometheusArrayInput` via: // -// SloObjectiveCountMetricGoodPrometheusArray{ SloObjectiveCountMetricGoodPrometheusArgs{...} } +// SloObjectiveCountMetricGoodPrometheusArray{ SloObjectiveCountMetricGoodPrometheusArgs{...} } type SloObjectiveCountMetricGoodPrometheusArrayInput interface { pulumi.Input @@ -11478,6 +18564,7 @@ func (o SloObjectiveCountMetricGoodPrometheusOutput) ToSloObjectiveCountMetricGo return o } +// Query for the metrics func (o SloObjectiveCountMetricGoodPrometheusOutput) Promql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodPrometheus) string { return v.Promql }).(pulumi.StringOutput) } @@ -11503,16 +18590,20 @@ func (o SloObjectiveCountMetricGoodPrometheusArrayOutput) Index(i pulumi.IntInpu } type SloObjectiveCountMetricGoodRedshift struct { - ClusterId string `pulumi:"clusterId"` + // Redshift custer ID + ClusterId string `pulumi:"clusterId"` + // Database name DatabaseName string `pulumi:"databaseName"` - Query string `pulumi:"query"` - Region string `pulumi:"region"` + // Query for the metrics + Query string `pulumi:"query"` + // Region of the CloudWatch instance + Region string `pulumi:"region"` } // SloObjectiveCountMetricGoodRedshiftInput is an input type that accepts SloObjectiveCountMetricGoodRedshiftArgs and SloObjectiveCountMetricGoodRedshiftOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodRedshiftInput` via: // -// SloObjectiveCountMetricGoodRedshiftArgs{...} +// SloObjectiveCountMetricGoodRedshiftArgs{...} type SloObjectiveCountMetricGoodRedshiftInput interface { pulumi.Input @@ -11521,10 +18612,14 @@ type SloObjectiveCountMetricGoodRedshiftInput interface { } type SloObjectiveCountMetricGoodRedshiftArgs struct { - ClusterId pulumi.StringInput `pulumi:"clusterId"` + // Redshift custer ID + ClusterId pulumi.StringInput `pulumi:"clusterId"` + // Database name DatabaseName pulumi.StringInput `pulumi:"databaseName"` - Query pulumi.StringInput `pulumi:"query"` - Region pulumi.StringInput `pulumi:"region"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` + // Region of the CloudWatch instance + Region pulumi.StringInput `pulumi:"region"` } func (SloObjectiveCountMetricGoodRedshiftArgs) ElementType() reflect.Type { @@ -11542,7 +18637,7 @@ func (i SloObjectiveCountMetricGoodRedshiftArgs) ToSloObjectiveCountMetricGoodRe // SloObjectiveCountMetricGoodRedshiftArrayInput is an input type that accepts SloObjectiveCountMetricGoodRedshiftArray and SloObjectiveCountMetricGoodRedshiftArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodRedshiftArrayInput` via: // -// SloObjectiveCountMetricGoodRedshiftArray{ SloObjectiveCountMetricGoodRedshiftArgs{...} } +// SloObjectiveCountMetricGoodRedshiftArray{ SloObjectiveCountMetricGoodRedshiftArgs{...} } type SloObjectiveCountMetricGoodRedshiftArrayInput interface { pulumi.Input @@ -11578,18 +18673,22 @@ func (o SloObjectiveCountMetricGoodRedshiftOutput) ToSloObjectiveCountMetricGood return o } +// Redshift custer ID func (o SloObjectiveCountMetricGoodRedshiftOutput) ClusterId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodRedshift) string { return v.ClusterId }).(pulumi.StringOutput) } +// Database name func (o SloObjectiveCountMetricGoodRedshiftOutput) DatabaseName() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodRedshift) string { return v.DatabaseName }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricGoodRedshiftOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodRedshift) string { return v.Query }).(pulumi.StringOutput) } +// Region of the CloudWatch instance func (o SloObjectiveCountMetricGoodRedshiftOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodRedshift) string { return v.Region }).(pulumi.StringOutput) } @@ -11615,13 +18714,14 @@ func (o SloObjectiveCountMetricGoodRedshiftArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricGoodSplunk struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricGoodSplunkInput is an input type that accepts SloObjectiveCountMetricGoodSplunkArgs and SloObjectiveCountMetricGoodSplunkOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodSplunkInput` via: // -// SloObjectiveCountMetricGoodSplunkArgs{...} +// SloObjectiveCountMetricGoodSplunkArgs{...} type SloObjectiveCountMetricGoodSplunkInput interface { pulumi.Input @@ -11630,6 +18730,7 @@ type SloObjectiveCountMetricGoodSplunkInput interface { } type SloObjectiveCountMetricGoodSplunkArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -11648,7 +18749,7 @@ func (i SloObjectiveCountMetricGoodSplunkArgs) ToSloObjectiveCountMetricGoodSplu // SloObjectiveCountMetricGoodSplunkArrayInput is an input type that accepts SloObjectiveCountMetricGoodSplunkArray and SloObjectiveCountMetricGoodSplunkArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodSplunkArrayInput` via: // -// SloObjectiveCountMetricGoodSplunkArray{ SloObjectiveCountMetricGoodSplunkArgs{...} } +// SloObjectiveCountMetricGoodSplunkArray{ SloObjectiveCountMetricGoodSplunkArgs{...} } type SloObjectiveCountMetricGoodSplunkArrayInput interface { pulumi.Input @@ -11684,6 +18785,7 @@ func (o SloObjectiveCountMetricGoodSplunkOutput) ToSloObjectiveCountMetricGoodSp return o } +// Query for the metrics func (o SloObjectiveCountMetricGoodSplunkOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodSplunk) string { return v.Query }).(pulumi.StringOutput) } @@ -11709,13 +18811,14 @@ func (o SloObjectiveCountMetricGoodSplunkArrayOutput) Index(i pulumi.IntInput) S } type SloObjectiveCountMetricGoodSplunkObservability struct { + // Query for the metrics Program string `pulumi:"program"` } // SloObjectiveCountMetricGoodSplunkObservabilityInput is an input type that accepts SloObjectiveCountMetricGoodSplunkObservabilityArgs and SloObjectiveCountMetricGoodSplunkObservabilityOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodSplunkObservabilityInput` via: // -// SloObjectiveCountMetricGoodSplunkObservabilityArgs{...} +// SloObjectiveCountMetricGoodSplunkObservabilityArgs{...} type SloObjectiveCountMetricGoodSplunkObservabilityInput interface { pulumi.Input @@ -11724,6 +18827,7 @@ type SloObjectiveCountMetricGoodSplunkObservabilityInput interface { } type SloObjectiveCountMetricGoodSplunkObservabilityArgs struct { + // Query for the metrics Program pulumi.StringInput `pulumi:"program"` } @@ -11742,7 +18846,7 @@ func (i SloObjectiveCountMetricGoodSplunkObservabilityArgs) ToSloObjectiveCountM // SloObjectiveCountMetricGoodSplunkObservabilityArrayInput is an input type that accepts SloObjectiveCountMetricGoodSplunkObservabilityArray and SloObjectiveCountMetricGoodSplunkObservabilityArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodSplunkObservabilityArrayInput` via: // -// SloObjectiveCountMetricGoodSplunkObservabilityArray{ SloObjectiveCountMetricGoodSplunkObservabilityArgs{...} } +// SloObjectiveCountMetricGoodSplunkObservabilityArray{ SloObjectiveCountMetricGoodSplunkObservabilityArgs{...} } type SloObjectiveCountMetricGoodSplunkObservabilityArrayInput interface { pulumi.Input @@ -11778,6 +18882,7 @@ func (o SloObjectiveCountMetricGoodSplunkObservabilityOutput) ToSloObjectiveCoun return o } +// Query for the metrics func (o SloObjectiveCountMetricGoodSplunkObservabilityOutput) Program() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodSplunkObservability) string { return v.Program }).(pulumi.StringOutput) } @@ -11803,16 +18908,20 @@ func (o SloObjectiveCountMetricGoodSplunkObservabilityArrayOutput) Index(i pulum } type SloObjectiveCountMetricGoodSumologic struct { + // Period of data aggregation Quantization *string `pulumi:"quantization"` - Query string `pulumi:"query"` - Rollup *string `pulumi:"rollup"` - Type string `pulumi:"type"` + // Query for the metrics + Query string `pulumi:"query"` + // Aggregation function - avg, sum, min, max, count, none + Rollup *string `pulumi:"rollup"` + // Sumologic source - metrics or logs + Type string `pulumi:"type"` } // SloObjectiveCountMetricGoodSumologicInput is an input type that accepts SloObjectiveCountMetricGoodSumologicArgs and SloObjectiveCountMetricGoodSumologicOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodSumologicInput` via: // -// SloObjectiveCountMetricGoodSumologicArgs{...} +// SloObjectiveCountMetricGoodSumologicArgs{...} type SloObjectiveCountMetricGoodSumologicInput interface { pulumi.Input @@ -11821,10 +18930,14 @@ type SloObjectiveCountMetricGoodSumologicInput interface { } type SloObjectiveCountMetricGoodSumologicArgs struct { + // Period of data aggregation Quantization pulumi.StringPtrInput `pulumi:"quantization"` - Query pulumi.StringInput `pulumi:"query"` - Rollup pulumi.StringPtrInput `pulumi:"rollup"` - Type pulumi.StringInput `pulumi:"type"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` + // Aggregation function - avg, sum, min, max, count, none + Rollup pulumi.StringPtrInput `pulumi:"rollup"` + // Sumologic source - metrics or logs + Type pulumi.StringInput `pulumi:"type"` } func (SloObjectiveCountMetricGoodSumologicArgs) ElementType() reflect.Type { @@ -11842,7 +18955,7 @@ func (i SloObjectiveCountMetricGoodSumologicArgs) ToSloObjectiveCountMetricGoodS // SloObjectiveCountMetricGoodSumologicArrayInput is an input type that accepts SloObjectiveCountMetricGoodSumologicArray and SloObjectiveCountMetricGoodSumologicArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodSumologicArrayInput` via: // -// SloObjectiveCountMetricGoodSumologicArray{ SloObjectiveCountMetricGoodSumologicArgs{...} } +// SloObjectiveCountMetricGoodSumologicArray{ SloObjectiveCountMetricGoodSumologicArgs{...} } type SloObjectiveCountMetricGoodSumologicArrayInput interface { pulumi.Input @@ -11878,18 +18991,22 @@ func (o SloObjectiveCountMetricGoodSumologicOutput) ToSloObjectiveCountMetricGoo return o } +// Period of data aggregation func (o SloObjectiveCountMetricGoodSumologicOutput) Quantization() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodSumologic) *string { return v.Quantization }).(pulumi.StringPtrOutput) } +// Query for the metrics func (o SloObjectiveCountMetricGoodSumologicOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodSumologic) string { return v.Query }).(pulumi.StringOutput) } +// Aggregation function - avg, sum, min, max, count, none func (o SloObjectiveCountMetricGoodSumologicOutput) Rollup() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodSumologic) *string { return v.Rollup }).(pulumi.StringPtrOutput) } +// Sumologic source - metrics or logs func (o SloObjectiveCountMetricGoodSumologicOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodSumologic) string { return v.Type }).(pulumi.StringOutput) } @@ -11915,13 +19032,14 @@ func (o SloObjectiveCountMetricGoodSumologicArrayOutput) Index(i pulumi.IntInput } type SloObjectiveCountMetricGoodThousandeye struct { + // ID of the test TestId int `pulumi:"testId"` } // SloObjectiveCountMetricGoodThousandeyeInput is an input type that accepts SloObjectiveCountMetricGoodThousandeyeArgs and SloObjectiveCountMetricGoodThousandeyeOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodThousandeyeInput` via: // -// SloObjectiveCountMetricGoodThousandeyeArgs{...} +// SloObjectiveCountMetricGoodThousandeyeArgs{...} type SloObjectiveCountMetricGoodThousandeyeInput interface { pulumi.Input @@ -11930,6 +19048,7 @@ type SloObjectiveCountMetricGoodThousandeyeInput interface { } type SloObjectiveCountMetricGoodThousandeyeArgs struct { + // ID of the test TestId pulumi.IntInput `pulumi:"testId"` } @@ -11948,7 +19067,7 @@ func (i SloObjectiveCountMetricGoodThousandeyeArgs) ToSloObjectiveCountMetricGoo // SloObjectiveCountMetricGoodThousandeyeArrayInput is an input type that accepts SloObjectiveCountMetricGoodThousandeyeArray and SloObjectiveCountMetricGoodThousandeyeArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricGoodThousandeyeArrayInput` via: // -// SloObjectiveCountMetricGoodThousandeyeArray{ SloObjectiveCountMetricGoodThousandeyeArgs{...} } +// SloObjectiveCountMetricGoodThousandeyeArray{ SloObjectiveCountMetricGoodThousandeyeArgs{...} } type SloObjectiveCountMetricGoodThousandeyeArrayInput interface { pulumi.Input @@ -11984,6 +19103,7 @@ func (o SloObjectiveCountMetricGoodThousandeyeOutput) ToSloObjectiveCountMetricG return o } +// ID of the test func (o SloObjectiveCountMetricGoodThousandeyeOutput) TestId() pulumi.IntOutput { return o.ApplyT(func(v SloObjectiveCountMetricGoodThousandeye) int { return v.TestId }).(pulumi.IntOutput) } @@ -12009,34 +19129,60 @@ func (o SloObjectiveCountMetricGoodThousandeyeArrayOutput) Index(i pulumi.IntInp } type SloObjectiveCountMetricTotal struct { - AmazonPrometheuses []SloObjectiveCountMetricTotalAmazonPrometheus `pulumi:"amazonPrometheuses"` - Appdynamics []SloObjectiveCountMetricTotalAppdynamic `pulumi:"appdynamics"` - Bigqueries []SloObjectiveCountMetricTotalBigquery `pulumi:"bigqueries"` - Cloudwatches []SloObjectiveCountMetricTotalCloudwatch `pulumi:"cloudwatches"` - Datadogs []SloObjectiveCountMetricTotalDatadog `pulumi:"datadogs"` - Dynatraces []SloObjectiveCountMetricTotalDynatrace `pulumi:"dynatraces"` - Elasticsearches []SloObjectiveCountMetricTotalElasticsearch `pulumi:"elasticsearches"` - Gcms []SloObjectiveCountMetricTotalGcm `pulumi:"gcms"` - GrafanaLokis []SloObjectiveCountMetricTotalGrafanaLoki `pulumi:"grafanaLokis"` - Graphites []SloObjectiveCountMetricTotalGraphite `pulumi:"graphites"` - Influxdbs []SloObjectiveCountMetricTotalInfluxdb `pulumi:"influxdbs"` - Instanas []SloObjectiveCountMetricTotalInstana `pulumi:"instanas"` - Lightsteps []SloObjectiveCountMetricTotalLightstep `pulumi:"lightsteps"` - Newrelics []SloObjectiveCountMetricTotalNewrelic `pulumi:"newrelics"` - Opentsdbs []SloObjectiveCountMetricTotalOpentsdb `pulumi:"opentsdbs"` - Pingdoms []SloObjectiveCountMetricTotalPingdom `pulumi:"pingdoms"` - Prometheuses []SloObjectiveCountMetricTotalPrometheus `pulumi:"prometheuses"` - Redshifts []SloObjectiveCountMetricTotalRedshift `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + AmazonPrometheuses []SloObjectiveCountMetricTotalAmazonPrometheus `pulumi:"amazonPrometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + Appdynamics []SloObjectiveCountMetricTotalAppdynamic `pulumi:"appdynamics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + AzureMonitors []SloObjectiveCountMetricTotalAzureMonitor `pulumi:"azureMonitors"` + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + Bigqueries []SloObjectiveCountMetricTotalBigquery `pulumi:"bigqueries"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + Cloudwatches []SloObjectiveCountMetricTotalCloudwatch `pulumi:"cloudwatches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + Datadogs []SloObjectiveCountMetricTotalDatadog `pulumi:"datadogs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + Dynatraces []SloObjectiveCountMetricTotalDynatrace `pulumi:"dynatraces"` + // [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + Elasticsearches []SloObjectiveCountMetricTotalElasticsearch `pulumi:"elasticsearches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + Gcms []SloObjectiveCountMetricTotalGcm `pulumi:"gcms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + GrafanaLokis []SloObjectiveCountMetricTotalGrafanaLoki `pulumi:"grafanaLokis"` + // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + Graphites []SloObjectiveCountMetricTotalGraphite `pulumi:"graphites"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + Honeycombs []SloObjectiveCountMetricTotalHoneycomb `pulumi:"honeycombs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + Influxdbs []SloObjectiveCountMetricTotalInfluxdb `pulumi:"influxdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + Instanas []SloObjectiveCountMetricTotalInstana `pulumi:"instanas"` + // [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + Lightsteps []SloObjectiveCountMetricTotalLightstep `pulumi:"lightsteps"` + // [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + Newrelics []SloObjectiveCountMetricTotalNewrelic `pulumi:"newrelics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + Opentsdbs []SloObjectiveCountMetricTotalOpentsdb `pulumi:"opentsdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + Pingdoms []SloObjectiveCountMetricTotalPingdom `pulumi:"pingdoms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + Prometheuses []SloObjectiveCountMetricTotalPrometheus `pulumi:"prometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + Redshifts []SloObjectiveCountMetricTotalRedshift `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) SplunkObservabilities []SloObjectiveCountMetricTotalSplunkObservability `pulumi:"splunkObservabilities"` - Splunks []SloObjectiveCountMetricTotalSplunk `pulumi:"splunks"` - Sumologics []SloObjectiveCountMetricTotalSumologic `pulumi:"sumologics"` - Thousandeyes []SloObjectiveCountMetricTotalThousandeye `pulumi:"thousandeyes"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + Splunks []SloObjectiveCountMetricTotalSplunk `pulumi:"splunks"` + // [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + Sumologics []SloObjectiveCountMetricTotalSumologic `pulumi:"sumologics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + Thousandeyes []SloObjectiveCountMetricTotalThousandeye `pulumi:"thousandeyes"` } // SloObjectiveCountMetricTotalInput is an input type that accepts SloObjectiveCountMetricTotalArgs and SloObjectiveCountMetricTotalOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInput` via: // -// SloObjectiveCountMetricTotalArgs{...} +// SloObjectiveCountMetricTotalArgs{...} type SloObjectiveCountMetricTotalInput interface { pulumi.Input @@ -12045,28 +19191,54 @@ type SloObjectiveCountMetricTotalInput interface { } type SloObjectiveCountMetricTotalArgs struct { - AmazonPrometheuses SloObjectiveCountMetricTotalAmazonPrometheusArrayInput `pulumi:"amazonPrometheuses"` - Appdynamics SloObjectiveCountMetricTotalAppdynamicArrayInput `pulumi:"appdynamics"` - Bigqueries SloObjectiveCountMetricTotalBigqueryArrayInput `pulumi:"bigqueries"` - Cloudwatches SloObjectiveCountMetricTotalCloudwatchArrayInput `pulumi:"cloudwatches"` - Datadogs SloObjectiveCountMetricTotalDatadogArrayInput `pulumi:"datadogs"` - Dynatraces SloObjectiveCountMetricTotalDynatraceArrayInput `pulumi:"dynatraces"` - Elasticsearches SloObjectiveCountMetricTotalElasticsearchArrayInput `pulumi:"elasticsearches"` - Gcms SloObjectiveCountMetricTotalGcmArrayInput `pulumi:"gcms"` - GrafanaLokis SloObjectiveCountMetricTotalGrafanaLokiArrayInput `pulumi:"grafanaLokis"` - Graphites SloObjectiveCountMetricTotalGraphiteArrayInput `pulumi:"graphites"` - Influxdbs SloObjectiveCountMetricTotalInfluxdbArrayInput `pulumi:"influxdbs"` - Instanas SloObjectiveCountMetricTotalInstanaArrayInput `pulumi:"instanas"` - Lightsteps SloObjectiveCountMetricTotalLightstepArrayInput `pulumi:"lightsteps"` - Newrelics SloObjectiveCountMetricTotalNewrelicArrayInput `pulumi:"newrelics"` - Opentsdbs SloObjectiveCountMetricTotalOpentsdbArrayInput `pulumi:"opentsdbs"` - Pingdoms SloObjectiveCountMetricTotalPingdomArrayInput `pulumi:"pingdoms"` - Prometheuses SloObjectiveCountMetricTotalPrometheusArrayInput `pulumi:"prometheuses"` - Redshifts SloObjectiveCountMetricTotalRedshiftArrayInput `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + AmazonPrometheuses SloObjectiveCountMetricTotalAmazonPrometheusArrayInput `pulumi:"amazonPrometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + Appdynamics SloObjectiveCountMetricTotalAppdynamicArrayInput `pulumi:"appdynamics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + AzureMonitors SloObjectiveCountMetricTotalAzureMonitorArrayInput `pulumi:"azureMonitors"` + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + Bigqueries SloObjectiveCountMetricTotalBigqueryArrayInput `pulumi:"bigqueries"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + Cloudwatches SloObjectiveCountMetricTotalCloudwatchArrayInput `pulumi:"cloudwatches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + Datadogs SloObjectiveCountMetricTotalDatadogArrayInput `pulumi:"datadogs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + Dynatraces SloObjectiveCountMetricTotalDynatraceArrayInput `pulumi:"dynatraces"` + // [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + Elasticsearches SloObjectiveCountMetricTotalElasticsearchArrayInput `pulumi:"elasticsearches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + Gcms SloObjectiveCountMetricTotalGcmArrayInput `pulumi:"gcms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + GrafanaLokis SloObjectiveCountMetricTotalGrafanaLokiArrayInput `pulumi:"grafanaLokis"` + // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + Graphites SloObjectiveCountMetricTotalGraphiteArrayInput `pulumi:"graphites"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + Honeycombs SloObjectiveCountMetricTotalHoneycombArrayInput `pulumi:"honeycombs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + Influxdbs SloObjectiveCountMetricTotalInfluxdbArrayInput `pulumi:"influxdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + Instanas SloObjectiveCountMetricTotalInstanaArrayInput `pulumi:"instanas"` + // [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + Lightsteps SloObjectiveCountMetricTotalLightstepArrayInput `pulumi:"lightsteps"` + // [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + Newrelics SloObjectiveCountMetricTotalNewrelicArrayInput `pulumi:"newrelics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + Opentsdbs SloObjectiveCountMetricTotalOpentsdbArrayInput `pulumi:"opentsdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + Pingdoms SloObjectiveCountMetricTotalPingdomArrayInput `pulumi:"pingdoms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + Prometheuses SloObjectiveCountMetricTotalPrometheusArrayInput `pulumi:"prometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + Redshifts SloObjectiveCountMetricTotalRedshiftArrayInput `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) SplunkObservabilities SloObjectiveCountMetricTotalSplunkObservabilityArrayInput `pulumi:"splunkObservabilities"` - Splunks SloObjectiveCountMetricTotalSplunkArrayInput `pulumi:"splunks"` - Sumologics SloObjectiveCountMetricTotalSumologicArrayInput `pulumi:"sumologics"` - Thousandeyes SloObjectiveCountMetricTotalThousandeyeArrayInput `pulumi:"thousandeyes"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + Splunks SloObjectiveCountMetricTotalSplunkArrayInput `pulumi:"splunks"` + // [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + Sumologics SloObjectiveCountMetricTotalSumologicArrayInput `pulumi:"sumologics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + Thousandeyes SloObjectiveCountMetricTotalThousandeyeArrayInput `pulumi:"thousandeyes"` } func (SloObjectiveCountMetricTotalArgs) ElementType() reflect.Type { @@ -12084,7 +19256,7 @@ func (i SloObjectiveCountMetricTotalArgs) ToSloObjectiveCountMetricTotalOutputWi // SloObjectiveCountMetricTotalArrayInput is an input type that accepts SloObjectiveCountMetricTotalArray and SloObjectiveCountMetricTotalArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalArrayInput` via: // -// SloObjectiveCountMetricTotalArray{ SloObjectiveCountMetricTotalArgs{...} } +// SloObjectiveCountMetricTotalArray{ SloObjectiveCountMetricTotalArgs{...} } type SloObjectiveCountMetricTotalArrayInput interface { pulumi.Input @@ -12120,96 +19292,130 @@ func (o SloObjectiveCountMetricTotalOutput) ToSloObjectiveCountMetricTotalOutput return o } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) func (o SloObjectiveCountMetricTotalOutput) AmazonPrometheuses() SloObjectiveCountMetricTotalAmazonPrometheusArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalAmazonPrometheus { return v.AmazonPrometheuses }).(SloObjectiveCountMetricTotalAmazonPrometheusArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) func (o SloObjectiveCountMetricTotalOutput) Appdynamics() SloObjectiveCountMetricTotalAppdynamicArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalAppdynamic { return v.Appdynamics }).(SloObjectiveCountMetricTotalAppdynamicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) +func (o SloObjectiveCountMetricTotalOutput) AzureMonitors() SloObjectiveCountMetricTotalAzureMonitorArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalAzureMonitor { + return v.AzureMonitors + }).(SloObjectiveCountMetricTotalAzureMonitorArrayOutput) +} + +// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) func (o SloObjectiveCountMetricTotalOutput) Bigqueries() SloObjectiveCountMetricTotalBigqueryArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalBigquery { return v.Bigqueries }).(SloObjectiveCountMetricTotalBigqueryArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) func (o SloObjectiveCountMetricTotalOutput) Cloudwatches() SloObjectiveCountMetricTotalCloudwatchArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalCloudwatch { return v.Cloudwatches }).(SloObjectiveCountMetricTotalCloudwatchArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) func (o SloObjectiveCountMetricTotalOutput) Datadogs() SloObjectiveCountMetricTotalDatadogArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalDatadog { return v.Datadogs }).(SloObjectiveCountMetricTotalDatadogArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) func (o SloObjectiveCountMetricTotalOutput) Dynatraces() SloObjectiveCountMetricTotalDynatraceArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalDynatrace { return v.Dynatraces }).(SloObjectiveCountMetricTotalDynatraceArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) func (o SloObjectiveCountMetricTotalOutput) Elasticsearches() SloObjectiveCountMetricTotalElasticsearchArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalElasticsearch { return v.Elasticsearches }).(SloObjectiveCountMetricTotalElasticsearchArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) func (o SloObjectiveCountMetricTotalOutput) Gcms() SloObjectiveCountMetricTotalGcmArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalGcm { return v.Gcms }).(SloObjectiveCountMetricTotalGcmArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) func (o SloObjectiveCountMetricTotalOutput) GrafanaLokis() SloObjectiveCountMetricTotalGrafanaLokiArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalGrafanaLoki { return v.GrafanaLokis }).(SloObjectiveCountMetricTotalGrafanaLokiArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) func (o SloObjectiveCountMetricTotalOutput) Graphites() SloObjectiveCountMetricTotalGraphiteArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalGraphite { return v.Graphites }).(SloObjectiveCountMetricTotalGraphiteArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) +func (o SloObjectiveCountMetricTotalOutput) Honeycombs() SloObjectiveCountMetricTotalHoneycombArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalHoneycomb { return v.Honeycombs }).(SloObjectiveCountMetricTotalHoneycombArrayOutput) +} + +// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) func (o SloObjectiveCountMetricTotalOutput) Influxdbs() SloObjectiveCountMetricTotalInfluxdbArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalInfluxdb { return v.Influxdbs }).(SloObjectiveCountMetricTotalInfluxdbArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) func (o SloObjectiveCountMetricTotalOutput) Instanas() SloObjectiveCountMetricTotalInstanaArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalInstana { return v.Instanas }).(SloObjectiveCountMetricTotalInstanaArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) func (o SloObjectiveCountMetricTotalOutput) Lightsteps() SloObjectiveCountMetricTotalLightstepArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalLightstep { return v.Lightsteps }).(SloObjectiveCountMetricTotalLightstepArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) func (o SloObjectiveCountMetricTotalOutput) Newrelics() SloObjectiveCountMetricTotalNewrelicArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalNewrelic { return v.Newrelics }).(SloObjectiveCountMetricTotalNewrelicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) func (o SloObjectiveCountMetricTotalOutput) Opentsdbs() SloObjectiveCountMetricTotalOpentsdbArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalOpentsdb { return v.Opentsdbs }).(SloObjectiveCountMetricTotalOpentsdbArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) func (o SloObjectiveCountMetricTotalOutput) Pingdoms() SloObjectiveCountMetricTotalPingdomArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalPingdom { return v.Pingdoms }).(SloObjectiveCountMetricTotalPingdomArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) func (o SloObjectiveCountMetricTotalOutput) Prometheuses() SloObjectiveCountMetricTotalPrometheusArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalPrometheus { return v.Prometheuses }).(SloObjectiveCountMetricTotalPrometheusArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) func (o SloObjectiveCountMetricTotalOutput) Redshifts() SloObjectiveCountMetricTotalRedshiftArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalRedshift { return v.Redshifts }).(SloObjectiveCountMetricTotalRedshiftArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) func (o SloObjectiveCountMetricTotalOutput) SplunkObservabilities() SloObjectiveCountMetricTotalSplunkObservabilityArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalSplunkObservability { return v.SplunkObservabilities }).(SloObjectiveCountMetricTotalSplunkObservabilityArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) func (o SloObjectiveCountMetricTotalOutput) Splunks() SloObjectiveCountMetricTotalSplunkArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalSplunk { return v.Splunks }).(SloObjectiveCountMetricTotalSplunkArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) func (o SloObjectiveCountMetricTotalOutput) Sumologics() SloObjectiveCountMetricTotalSumologicArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalSumologic { return v.Sumologics }).(SloObjectiveCountMetricTotalSumologicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) func (o SloObjectiveCountMetricTotalOutput) Thousandeyes() SloObjectiveCountMetricTotalThousandeyeArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotal) []SloObjectiveCountMetricTotalThousandeye { return v.Thousandeyes }).(SloObjectiveCountMetricTotalThousandeyeArrayOutput) } @@ -12235,13 +19441,14 @@ func (o SloObjectiveCountMetricTotalArrayOutput) Index(i pulumi.IntInput) SloObj } type SloObjectiveCountMetricTotalAmazonPrometheus struct { + // Query for the metrics Promql string `pulumi:"promql"` } // SloObjectiveCountMetricTotalAmazonPrometheusInput is an input type that accepts SloObjectiveCountMetricTotalAmazonPrometheusArgs and SloObjectiveCountMetricTotalAmazonPrometheusOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalAmazonPrometheusInput` via: // -// SloObjectiveCountMetricTotalAmazonPrometheusArgs{...} +// SloObjectiveCountMetricTotalAmazonPrometheusArgs{...} type SloObjectiveCountMetricTotalAmazonPrometheusInput interface { pulumi.Input @@ -12250,6 +19457,7 @@ type SloObjectiveCountMetricTotalAmazonPrometheusInput interface { } type SloObjectiveCountMetricTotalAmazonPrometheusArgs struct { + // Query for the metrics Promql pulumi.StringInput `pulumi:"promql"` } @@ -12268,7 +19476,7 @@ func (i SloObjectiveCountMetricTotalAmazonPrometheusArgs) ToSloObjectiveCountMet // SloObjectiveCountMetricTotalAmazonPrometheusArrayInput is an input type that accepts SloObjectiveCountMetricTotalAmazonPrometheusArray and SloObjectiveCountMetricTotalAmazonPrometheusArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalAmazonPrometheusArrayInput` via: // -// SloObjectiveCountMetricTotalAmazonPrometheusArray{ SloObjectiveCountMetricTotalAmazonPrometheusArgs{...} } +// SloObjectiveCountMetricTotalAmazonPrometheusArray{ SloObjectiveCountMetricTotalAmazonPrometheusArgs{...} } type SloObjectiveCountMetricTotalAmazonPrometheusArrayInput interface { pulumi.Input @@ -12304,6 +19512,7 @@ func (o SloObjectiveCountMetricTotalAmazonPrometheusOutput) ToSloObjectiveCountM return o } +// Query for the metrics func (o SloObjectiveCountMetricTotalAmazonPrometheusOutput) Promql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalAmazonPrometheus) string { return v.Promql }).(pulumi.StringOutput) } @@ -12329,14 +19538,16 @@ func (o SloObjectiveCountMetricTotalAmazonPrometheusArrayOutput) Index(i pulumi. } type SloObjectiveCountMetricTotalAppdynamic struct { + // Name of the added application ApplicationName string `pulumi:"applicationName"` - MetricPath string `pulumi:"metricPath"` + // Path to the metrics + MetricPath string `pulumi:"metricPath"` } // SloObjectiveCountMetricTotalAppdynamicInput is an input type that accepts SloObjectiveCountMetricTotalAppdynamicArgs and SloObjectiveCountMetricTotalAppdynamicOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalAppdynamicInput` via: // -// SloObjectiveCountMetricTotalAppdynamicArgs{...} +// SloObjectiveCountMetricTotalAppdynamicArgs{...} type SloObjectiveCountMetricTotalAppdynamicInput interface { pulumi.Input @@ -12345,8 +19556,10 @@ type SloObjectiveCountMetricTotalAppdynamicInput interface { } type SloObjectiveCountMetricTotalAppdynamicArgs struct { + // Name of the added application ApplicationName pulumi.StringInput `pulumi:"applicationName"` - MetricPath pulumi.StringInput `pulumi:"metricPath"` + // Path to the metrics + MetricPath pulumi.StringInput `pulumi:"metricPath"` } func (SloObjectiveCountMetricTotalAppdynamicArgs) ElementType() reflect.Type { @@ -12364,7 +19577,7 @@ func (i SloObjectiveCountMetricTotalAppdynamicArgs) ToSloObjectiveCountMetricTot // SloObjectiveCountMetricTotalAppdynamicArrayInput is an input type that accepts SloObjectiveCountMetricTotalAppdynamicArray and SloObjectiveCountMetricTotalAppdynamicArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalAppdynamicArrayInput` via: // -// SloObjectiveCountMetricTotalAppdynamicArray{ SloObjectiveCountMetricTotalAppdynamicArgs{...} } +// SloObjectiveCountMetricTotalAppdynamicArray{ SloObjectiveCountMetricTotalAppdynamicArgs{...} } type SloObjectiveCountMetricTotalAppdynamicArrayInput interface { pulumi.Input @@ -12400,10 +19613,12 @@ func (o SloObjectiveCountMetricTotalAppdynamicOutput) ToSloObjectiveCountMetricT return o } +// Name of the added application func (o SloObjectiveCountMetricTotalAppdynamicOutput) ApplicationName() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalAppdynamic) string { return v.ApplicationName }).(pulumi.StringOutput) } +// Path to the metrics func (o SloObjectiveCountMetricTotalAppdynamicOutput) MetricPath() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalAppdynamic) string { return v.MetricPath }).(pulumi.StringOutput) } @@ -12428,16 +19643,404 @@ func (o SloObjectiveCountMetricTotalAppdynamicArrayOutput) Index(i pulumi.IntInp }).(SloObjectiveCountMetricTotalAppdynamicOutput) } +type SloObjectiveCountMetricTotalAzureMonitor struct { + // Aggregation type [Required for metrics] + Aggregation *string `pulumi:"aggregation"` + // Specifies source: 'metrics' or 'logs' + DataType string `pulumi:"dataType"` + // Dimensions of the metric [Optional for metrics] + Dimensions []SloObjectiveCountMetricTotalAzureMonitorDimension `pulumi:"dimensions"` + // Logs query in Kusto Query Language [Required for logs] + KqlQuery *string `pulumi:"kqlQuery"` + // Name of the metric [Required for metrics] + MetricName *string `pulumi:"metricName"` + // Namespace of the metric [Optional for metrics] + MetricNamespace *string `pulumi:"metricNamespace"` + // Identifier of the Azure Cloud resource [Required for metrics] + ResourceId *string `pulumi:"resourceId"` + // Log analytics workspace [Required for logs] + Workspaces []SloObjectiveCountMetricTotalAzureMonitorWorkspace `pulumi:"workspaces"` +} + +// SloObjectiveCountMetricTotalAzureMonitorInput is an input type that accepts SloObjectiveCountMetricTotalAzureMonitorArgs and SloObjectiveCountMetricTotalAzureMonitorOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricTotalAzureMonitorInput` via: +// +// SloObjectiveCountMetricTotalAzureMonitorArgs{...} +type SloObjectiveCountMetricTotalAzureMonitorInput interface { + pulumi.Input + + ToSloObjectiveCountMetricTotalAzureMonitorOutput() SloObjectiveCountMetricTotalAzureMonitorOutput + ToSloObjectiveCountMetricTotalAzureMonitorOutputWithContext(context.Context) SloObjectiveCountMetricTotalAzureMonitorOutput +} + +type SloObjectiveCountMetricTotalAzureMonitorArgs struct { + // Aggregation type [Required for metrics] + Aggregation pulumi.StringPtrInput `pulumi:"aggregation"` + // Specifies source: 'metrics' or 'logs' + DataType pulumi.StringInput `pulumi:"dataType"` + // Dimensions of the metric [Optional for metrics] + Dimensions SloObjectiveCountMetricTotalAzureMonitorDimensionArrayInput `pulumi:"dimensions"` + // Logs query in Kusto Query Language [Required for logs] + KqlQuery pulumi.StringPtrInput `pulumi:"kqlQuery"` + // Name of the metric [Required for metrics] + MetricName pulumi.StringPtrInput `pulumi:"metricName"` + // Namespace of the metric [Optional for metrics] + MetricNamespace pulumi.StringPtrInput `pulumi:"metricNamespace"` + // Identifier of the Azure Cloud resource [Required for metrics] + ResourceId pulumi.StringPtrInput `pulumi:"resourceId"` + // Log analytics workspace [Required for logs] + Workspaces SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayInput `pulumi:"workspaces"` +} + +func (SloObjectiveCountMetricTotalAzureMonitorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitor)(nil)).Elem() +} + +func (i SloObjectiveCountMetricTotalAzureMonitorArgs) ToSloObjectiveCountMetricTotalAzureMonitorOutput() SloObjectiveCountMetricTotalAzureMonitorOutput { + return i.ToSloObjectiveCountMetricTotalAzureMonitorOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricTotalAzureMonitorArgs) ToSloObjectiveCountMetricTotalAzureMonitorOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricTotalAzureMonitorOutput) +} + +// SloObjectiveCountMetricTotalAzureMonitorArrayInput is an input type that accepts SloObjectiveCountMetricTotalAzureMonitorArray and SloObjectiveCountMetricTotalAzureMonitorArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricTotalAzureMonitorArrayInput` via: +// +// SloObjectiveCountMetricTotalAzureMonitorArray{ SloObjectiveCountMetricTotalAzureMonitorArgs{...} } +type SloObjectiveCountMetricTotalAzureMonitorArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricTotalAzureMonitorArrayOutput() SloObjectiveCountMetricTotalAzureMonitorArrayOutput + ToSloObjectiveCountMetricTotalAzureMonitorArrayOutputWithContext(context.Context) SloObjectiveCountMetricTotalAzureMonitorArrayOutput +} + +type SloObjectiveCountMetricTotalAzureMonitorArray []SloObjectiveCountMetricTotalAzureMonitorInput + +func (SloObjectiveCountMetricTotalAzureMonitorArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricTotalAzureMonitor)(nil)).Elem() +} + +func (i SloObjectiveCountMetricTotalAzureMonitorArray) ToSloObjectiveCountMetricTotalAzureMonitorArrayOutput() SloObjectiveCountMetricTotalAzureMonitorArrayOutput { + return i.ToSloObjectiveCountMetricTotalAzureMonitorArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricTotalAzureMonitorArray) ToSloObjectiveCountMetricTotalAzureMonitorArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricTotalAzureMonitorArrayOutput) +} + +type SloObjectiveCountMetricTotalAzureMonitorOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricTotalAzureMonitorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitor)(nil)).Elem() +} + +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) ToSloObjectiveCountMetricTotalAzureMonitorOutput() SloObjectiveCountMetricTotalAzureMonitorOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) ToSloObjectiveCountMetricTotalAzureMonitorOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorOutput { + return o +} + +// Aggregation type [Required for metrics] +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) Aggregation() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitor) *string { return v.Aggregation }).(pulumi.StringPtrOutput) +} + +// Specifies source: 'metrics' or 'logs' +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) DataType() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitor) string { return v.DataType }).(pulumi.StringOutput) +} + +// Dimensions of the metric [Optional for metrics] +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) Dimensions() SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitor) []SloObjectiveCountMetricTotalAzureMonitorDimension { + return v.Dimensions + }).(SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput) +} + +// Logs query in Kusto Query Language [Required for logs] +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) KqlQuery() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitor) *string { return v.KqlQuery }).(pulumi.StringPtrOutput) +} + +// Name of the metric [Required for metrics] +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) MetricName() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitor) *string { return v.MetricName }).(pulumi.StringPtrOutput) +} + +// Namespace of the metric [Optional for metrics] +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) MetricNamespace() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitor) *string { return v.MetricNamespace }).(pulumi.StringPtrOutput) +} + +// Identifier of the Azure Cloud resource [Required for metrics] +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitor) *string { return v.ResourceId }).(pulumi.StringPtrOutput) +} + +// Log analytics workspace [Required for logs] +func (o SloObjectiveCountMetricTotalAzureMonitorOutput) Workspaces() SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitor) []SloObjectiveCountMetricTotalAzureMonitorWorkspace { + return v.Workspaces + }).(SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput) +} + +type SloObjectiveCountMetricTotalAzureMonitorArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricTotalAzureMonitorArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricTotalAzureMonitor)(nil)).Elem() +} + +func (o SloObjectiveCountMetricTotalAzureMonitorArrayOutput) ToSloObjectiveCountMetricTotalAzureMonitorArrayOutput() SloObjectiveCountMetricTotalAzureMonitorArrayOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorArrayOutput) ToSloObjectiveCountMetricTotalAzureMonitorArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorArrayOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricTotalAzureMonitorOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricTotalAzureMonitor { + return vs[0].([]SloObjectiveCountMetricTotalAzureMonitor)[vs[1].(int)] + }).(SloObjectiveCountMetricTotalAzureMonitorOutput) +} + +type SloObjectiveCountMetricTotalAzureMonitorDimension struct { + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Burn rate value. + Value string `pulumi:"value"` +} + +// SloObjectiveCountMetricTotalAzureMonitorDimensionInput is an input type that accepts SloObjectiveCountMetricTotalAzureMonitorDimensionArgs and SloObjectiveCountMetricTotalAzureMonitorDimensionOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricTotalAzureMonitorDimensionInput` via: +// +// SloObjectiveCountMetricTotalAzureMonitorDimensionArgs{...} +type SloObjectiveCountMetricTotalAzureMonitorDimensionInput interface { + pulumi.Input + + ToSloObjectiveCountMetricTotalAzureMonitorDimensionOutput() SloObjectiveCountMetricTotalAzureMonitorDimensionOutput + ToSloObjectiveCountMetricTotalAzureMonitorDimensionOutputWithContext(context.Context) SloObjectiveCountMetricTotalAzureMonitorDimensionOutput +} + +type SloObjectiveCountMetricTotalAzureMonitorDimensionArgs struct { + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Burn rate value. + Value pulumi.StringInput `pulumi:"value"` +} + +func (SloObjectiveCountMetricTotalAzureMonitorDimensionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorDimension)(nil)).Elem() +} + +func (i SloObjectiveCountMetricTotalAzureMonitorDimensionArgs) ToSloObjectiveCountMetricTotalAzureMonitorDimensionOutput() SloObjectiveCountMetricTotalAzureMonitorDimensionOutput { + return i.ToSloObjectiveCountMetricTotalAzureMonitorDimensionOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricTotalAzureMonitorDimensionArgs) ToSloObjectiveCountMetricTotalAzureMonitorDimensionOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorDimensionOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricTotalAzureMonitorDimensionOutput) +} + +// SloObjectiveCountMetricTotalAzureMonitorDimensionArrayInput is an input type that accepts SloObjectiveCountMetricTotalAzureMonitorDimensionArray and SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricTotalAzureMonitorDimensionArrayInput` via: +// +// SloObjectiveCountMetricTotalAzureMonitorDimensionArray{ SloObjectiveCountMetricTotalAzureMonitorDimensionArgs{...} } +type SloObjectiveCountMetricTotalAzureMonitorDimensionArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput + ToSloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutputWithContext(context.Context) SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput +} + +type SloObjectiveCountMetricTotalAzureMonitorDimensionArray []SloObjectiveCountMetricTotalAzureMonitorDimensionInput + +func (SloObjectiveCountMetricTotalAzureMonitorDimensionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricTotalAzureMonitorDimension)(nil)).Elem() +} + +func (i SloObjectiveCountMetricTotalAzureMonitorDimensionArray) ToSloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput { + return i.ToSloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricTotalAzureMonitorDimensionArray) ToSloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput) +} + +type SloObjectiveCountMetricTotalAzureMonitorDimensionOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricTotalAzureMonitorDimensionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorDimension)(nil)).Elem() +} + +func (o SloObjectiveCountMetricTotalAzureMonitorDimensionOutput) ToSloObjectiveCountMetricTotalAzureMonitorDimensionOutput() SloObjectiveCountMetricTotalAzureMonitorDimensionOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorDimensionOutput) ToSloObjectiveCountMetricTotalAzureMonitorDimensionOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorDimensionOutput { + return o +} + +// The name of the previously defined alert method. +func (o SloObjectiveCountMetricTotalAzureMonitorDimensionOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitorDimension) string { return v.Name }).(pulumi.StringOutput) +} + +// Burn rate value. +func (o SloObjectiveCountMetricTotalAzureMonitorDimensionOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitorDimension) string { return v.Value }).(pulumi.StringOutput) +} + +type SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricTotalAzureMonitorDimension)(nil)).Elem() +} + +func (o SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput) ToSloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput() SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput) ToSloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricTotalAzureMonitorDimensionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricTotalAzureMonitorDimension { + return vs[0].([]SloObjectiveCountMetricTotalAzureMonitorDimension)[vs[1].(int)] + }).(SloObjectiveCountMetricTotalAzureMonitorDimensionOutput) +} + +type SloObjectiveCountMetricTotalAzureMonitorWorkspace struct { + // Resource group of the workspace + ResourceGroup string `pulumi:"resourceGroup"` + // Subscription ID of the workspace + SubscriptionId string `pulumi:"subscriptionId"` + // ID of the workspace + WorkspaceId string `pulumi:"workspaceId"` +} + +// SloObjectiveCountMetricTotalAzureMonitorWorkspaceInput is an input type that accepts SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs and SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricTotalAzureMonitorWorkspaceInput` via: +// +// SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs{...} +type SloObjectiveCountMetricTotalAzureMonitorWorkspaceInput interface { + pulumi.Input + + ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput() SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput + ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceOutputWithContext(context.Context) SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput +} + +type SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs struct { + // Resource group of the workspace + ResourceGroup pulumi.StringInput `pulumi:"resourceGroup"` + // Subscription ID of the workspace + SubscriptionId pulumi.StringInput `pulumi:"subscriptionId"` + // ID of the workspace + WorkspaceId pulumi.StringInput `pulumi:"workspaceId"` +} + +func (SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorWorkspace)(nil)).Elem() +} + +func (i SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs) ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput() SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput { + return i.ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs) ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput) +} + +// SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayInput is an input type that accepts SloObjectiveCountMetricTotalAzureMonitorWorkspaceArray and SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayInput` via: +// +// SloObjectiveCountMetricTotalAzureMonitorWorkspaceArray{ SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs{...} } +type SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput + ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutputWithContext(context.Context) SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput +} + +type SloObjectiveCountMetricTotalAzureMonitorWorkspaceArray []SloObjectiveCountMetricTotalAzureMonitorWorkspaceInput + +func (SloObjectiveCountMetricTotalAzureMonitorWorkspaceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricTotalAzureMonitorWorkspace)(nil)).Elem() +} + +func (i SloObjectiveCountMetricTotalAzureMonitorWorkspaceArray) ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput { + return i.ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricTotalAzureMonitorWorkspaceArray) ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput) +} + +type SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorWorkspace)(nil)).Elem() +} + +func (o SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput) ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput() SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput) ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput { + return o +} + +// Resource group of the workspace +func (o SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput) ResourceGroup() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitorWorkspace) string { return v.ResourceGroup }).(pulumi.StringOutput) +} + +// Subscription ID of the workspace +func (o SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput) SubscriptionId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitorWorkspace) string { return v.SubscriptionId }).(pulumi.StringOutput) +} + +// ID of the workspace +func (o SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput) WorkspaceId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalAzureMonitorWorkspace) string { return v.WorkspaceId }).(pulumi.StringOutput) +} + +type SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricTotalAzureMonitorWorkspace)(nil)).Elem() +} + +func (o SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput) ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput() SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput) ToSloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput { + return o +} + +func (o SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricTotalAzureMonitorWorkspace { + return vs[0].([]SloObjectiveCountMetricTotalAzureMonitorWorkspace)[vs[1].(int)] + }).(SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput) +} + type SloObjectiveCountMetricTotalBigquery struct { - Location string `pulumi:"location"` + // Location of you BigQuery + Location string `pulumi:"location"` + // Project ID ProjectId string `pulumi:"projectId"` - Query string `pulumi:"query"` + // Query for the metrics + Query string `pulumi:"query"` } // SloObjectiveCountMetricTotalBigqueryInput is an input type that accepts SloObjectiveCountMetricTotalBigqueryArgs and SloObjectiveCountMetricTotalBigqueryOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalBigqueryInput` via: // -// SloObjectiveCountMetricTotalBigqueryArgs{...} +// SloObjectiveCountMetricTotalBigqueryArgs{...} type SloObjectiveCountMetricTotalBigqueryInput interface { pulumi.Input @@ -12446,9 +20049,12 @@ type SloObjectiveCountMetricTotalBigqueryInput interface { } type SloObjectiveCountMetricTotalBigqueryArgs struct { - Location pulumi.StringInput `pulumi:"location"` + // Location of you BigQuery + Location pulumi.StringInput `pulumi:"location"` + // Project ID ProjectId pulumi.StringInput `pulumi:"projectId"` - Query pulumi.StringInput `pulumi:"query"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } func (SloObjectiveCountMetricTotalBigqueryArgs) ElementType() reflect.Type { @@ -12466,7 +20072,7 @@ func (i SloObjectiveCountMetricTotalBigqueryArgs) ToSloObjectiveCountMetricTotal // SloObjectiveCountMetricTotalBigqueryArrayInput is an input type that accepts SloObjectiveCountMetricTotalBigqueryArray and SloObjectiveCountMetricTotalBigqueryArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalBigqueryArrayInput` via: // -// SloObjectiveCountMetricTotalBigqueryArray{ SloObjectiveCountMetricTotalBigqueryArgs{...} } +// SloObjectiveCountMetricTotalBigqueryArray{ SloObjectiveCountMetricTotalBigqueryArgs{...} } type SloObjectiveCountMetricTotalBigqueryArrayInput interface { pulumi.Input @@ -12502,14 +20108,17 @@ func (o SloObjectiveCountMetricTotalBigqueryOutput) ToSloObjectiveCountMetricTot return o } +// Location of you BigQuery func (o SloObjectiveCountMetricTotalBigqueryOutput) Location() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalBigquery) string { return v.Location }).(pulumi.StringOutput) } +// Project ID func (o SloObjectiveCountMetricTotalBigqueryOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalBigquery) string { return v.ProjectId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricTotalBigqueryOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalBigquery) string { return v.Query }).(pulumi.StringOutput) } @@ -12535,19 +20144,28 @@ func (o SloObjectiveCountMetricTotalBigqueryArrayOutput) Index(i pulumi.IntInput } type SloObjectiveCountMetricTotalCloudwatch struct { + // AccountID used with cross-account observability feature + AccountId *string `pulumi:"accountId"` + // Dimensions of the metric [Optional for metrics] Dimensions []SloObjectiveCountMetricTotalCloudwatchDimension `pulumi:"dimensions"` - Json *string `pulumi:"json"` - MetricName *string `pulumi:"metricName"` - Namespace *string `pulumi:"namespace"` - Region string `pulumi:"region"` - Sql *string `pulumi:"sql"` - Stat *string `pulumi:"stat"` + // JSON query + Json *string `pulumi:"json"` + // Name of the metric [Required for metrics] + MetricName *string `pulumi:"metricName"` + // Namespace of the metric + Namespace *string `pulumi:"namespace"` + // Region of the CloudWatch instance + Region string `pulumi:"region"` + // SQL query + Sql *string `pulumi:"sql"` + // Metric data aggregations + Stat *string `pulumi:"stat"` } // SloObjectiveCountMetricTotalCloudwatchInput is an input type that accepts SloObjectiveCountMetricTotalCloudwatchArgs and SloObjectiveCountMetricTotalCloudwatchOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalCloudwatchInput` via: // -// SloObjectiveCountMetricTotalCloudwatchArgs{...} +// SloObjectiveCountMetricTotalCloudwatchArgs{...} type SloObjectiveCountMetricTotalCloudwatchInput interface { pulumi.Input @@ -12556,13 +20174,22 @@ type SloObjectiveCountMetricTotalCloudwatchInput interface { } type SloObjectiveCountMetricTotalCloudwatchArgs struct { + // AccountID used with cross-account observability feature + AccountId pulumi.StringPtrInput `pulumi:"accountId"` + // Dimensions of the metric [Optional for metrics] Dimensions SloObjectiveCountMetricTotalCloudwatchDimensionArrayInput `pulumi:"dimensions"` - Json pulumi.StringPtrInput `pulumi:"json"` - MetricName pulumi.StringPtrInput `pulumi:"metricName"` - Namespace pulumi.StringPtrInput `pulumi:"namespace"` - Region pulumi.StringInput `pulumi:"region"` - Sql pulumi.StringPtrInput `pulumi:"sql"` - Stat pulumi.StringPtrInput `pulumi:"stat"` + // JSON query + Json pulumi.StringPtrInput `pulumi:"json"` + // Name of the metric [Required for metrics] + MetricName pulumi.StringPtrInput `pulumi:"metricName"` + // Namespace of the metric + Namespace pulumi.StringPtrInput `pulumi:"namespace"` + // Region of the CloudWatch instance + Region pulumi.StringInput `pulumi:"region"` + // SQL query + Sql pulumi.StringPtrInput `pulumi:"sql"` + // Metric data aggregations + Stat pulumi.StringPtrInput `pulumi:"stat"` } func (SloObjectiveCountMetricTotalCloudwatchArgs) ElementType() reflect.Type { @@ -12580,7 +20207,7 @@ func (i SloObjectiveCountMetricTotalCloudwatchArgs) ToSloObjectiveCountMetricTot // SloObjectiveCountMetricTotalCloudwatchArrayInput is an input type that accepts SloObjectiveCountMetricTotalCloudwatchArray and SloObjectiveCountMetricTotalCloudwatchArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalCloudwatchArrayInput` via: // -// SloObjectiveCountMetricTotalCloudwatchArray{ SloObjectiveCountMetricTotalCloudwatchArgs{...} } +// SloObjectiveCountMetricTotalCloudwatchArray{ SloObjectiveCountMetricTotalCloudwatchArgs{...} } type SloObjectiveCountMetricTotalCloudwatchArrayInput interface { pulumi.Input @@ -12616,32 +20243,44 @@ func (o SloObjectiveCountMetricTotalCloudwatchOutput) ToSloObjectiveCountMetricT return o } +// AccountID used with cross-account observability feature +func (o SloObjectiveCountMetricTotalCloudwatchOutput) AccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatch) *string { return v.AccountId }).(pulumi.StringPtrOutput) +} + +// Dimensions of the metric [Optional for metrics] func (o SloObjectiveCountMetricTotalCloudwatchOutput) Dimensions() SloObjectiveCountMetricTotalCloudwatchDimensionArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatch) []SloObjectiveCountMetricTotalCloudwatchDimension { return v.Dimensions }).(SloObjectiveCountMetricTotalCloudwatchDimensionArrayOutput) } +// JSON query func (o SloObjectiveCountMetricTotalCloudwatchOutput) Json() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatch) *string { return v.Json }).(pulumi.StringPtrOutput) } +// Name of the metric [Required for metrics] func (o SloObjectiveCountMetricTotalCloudwatchOutput) MetricName() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatch) *string { return v.MetricName }).(pulumi.StringPtrOutput) } +// Namespace of the metric func (o SloObjectiveCountMetricTotalCloudwatchOutput) Namespace() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatch) *string { return v.Namespace }).(pulumi.StringPtrOutput) } +// Region of the CloudWatch instance func (o SloObjectiveCountMetricTotalCloudwatchOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatch) string { return v.Region }).(pulumi.StringOutput) } +// SQL query func (o SloObjectiveCountMetricTotalCloudwatchOutput) Sql() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatch) *string { return v.Sql }).(pulumi.StringPtrOutput) } +// Metric data aggregations func (o SloObjectiveCountMetricTotalCloudwatchOutput) Stat() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatch) *string { return v.Stat }).(pulumi.StringPtrOutput) } @@ -12667,15 +20306,16 @@ func (o SloObjectiveCountMetricTotalCloudwatchArrayOutput) Index(i pulumi.IntInp } type SloObjectiveCountMetricTotalCloudwatchDimension struct { - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - Name string `pulumi:"name"` + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Burn rate value. Value string `pulumi:"value"` } // SloObjectiveCountMetricTotalCloudwatchDimensionInput is an input type that accepts SloObjectiveCountMetricTotalCloudwatchDimensionArgs and SloObjectiveCountMetricTotalCloudwatchDimensionOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalCloudwatchDimensionInput` via: // -// SloObjectiveCountMetricTotalCloudwatchDimensionArgs{...} +// SloObjectiveCountMetricTotalCloudwatchDimensionArgs{...} type SloObjectiveCountMetricTotalCloudwatchDimensionInput interface { pulumi.Input @@ -12684,8 +20324,9 @@ type SloObjectiveCountMetricTotalCloudwatchDimensionInput interface { } type SloObjectiveCountMetricTotalCloudwatchDimensionArgs struct { - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - Name pulumi.StringInput `pulumi:"name"` + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Burn rate value. Value pulumi.StringInput `pulumi:"value"` } @@ -12704,7 +20345,7 @@ func (i SloObjectiveCountMetricTotalCloudwatchDimensionArgs) ToSloObjectiveCount // SloObjectiveCountMetricTotalCloudwatchDimensionArrayInput is an input type that accepts SloObjectiveCountMetricTotalCloudwatchDimensionArray and SloObjectiveCountMetricTotalCloudwatchDimensionArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalCloudwatchDimensionArrayInput` via: // -// SloObjectiveCountMetricTotalCloudwatchDimensionArray{ SloObjectiveCountMetricTotalCloudwatchDimensionArgs{...} } +// SloObjectiveCountMetricTotalCloudwatchDimensionArray{ SloObjectiveCountMetricTotalCloudwatchDimensionArgs{...} } type SloObjectiveCountMetricTotalCloudwatchDimensionArrayInput interface { pulumi.Input @@ -12740,11 +20381,12 @@ func (o SloObjectiveCountMetricTotalCloudwatchDimensionOutput) ToSloObjectiveCou return o } -// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +// The name of the previously defined alert method. func (o SloObjectiveCountMetricTotalCloudwatchDimensionOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatchDimension) string { return v.Name }).(pulumi.StringOutput) } +// Burn rate value. func (o SloObjectiveCountMetricTotalCloudwatchDimensionOutput) Value() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalCloudwatchDimension) string { return v.Value }).(pulumi.StringOutput) } @@ -12770,13 +20412,14 @@ func (o SloObjectiveCountMetricTotalCloudwatchDimensionArrayOutput) Index(i pulu } type SloObjectiveCountMetricTotalDatadog struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricTotalDatadogInput is an input type that accepts SloObjectiveCountMetricTotalDatadogArgs and SloObjectiveCountMetricTotalDatadogOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalDatadogInput` via: // -// SloObjectiveCountMetricTotalDatadogArgs{...} +// SloObjectiveCountMetricTotalDatadogArgs{...} type SloObjectiveCountMetricTotalDatadogInput interface { pulumi.Input @@ -12785,6 +20428,7 @@ type SloObjectiveCountMetricTotalDatadogInput interface { } type SloObjectiveCountMetricTotalDatadogArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -12803,7 +20447,7 @@ func (i SloObjectiveCountMetricTotalDatadogArgs) ToSloObjectiveCountMetricTotalD // SloObjectiveCountMetricTotalDatadogArrayInput is an input type that accepts SloObjectiveCountMetricTotalDatadogArray and SloObjectiveCountMetricTotalDatadogArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalDatadogArrayInput` via: // -// SloObjectiveCountMetricTotalDatadogArray{ SloObjectiveCountMetricTotalDatadogArgs{...} } +// SloObjectiveCountMetricTotalDatadogArray{ SloObjectiveCountMetricTotalDatadogArgs{...} } type SloObjectiveCountMetricTotalDatadogArrayInput interface { pulumi.Input @@ -12839,6 +20483,7 @@ func (o SloObjectiveCountMetricTotalDatadogOutput) ToSloObjectiveCountMetricTota return o } +// Query for the metrics func (o SloObjectiveCountMetricTotalDatadogOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalDatadog) string { return v.Query }).(pulumi.StringOutput) } @@ -12864,13 +20509,14 @@ func (o SloObjectiveCountMetricTotalDatadogArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricTotalDynatrace struct { + // Selector for the metrics MetricSelector string `pulumi:"metricSelector"` } // SloObjectiveCountMetricTotalDynatraceInput is an input type that accepts SloObjectiveCountMetricTotalDynatraceArgs and SloObjectiveCountMetricTotalDynatraceOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalDynatraceInput` via: // -// SloObjectiveCountMetricTotalDynatraceArgs{...} +// SloObjectiveCountMetricTotalDynatraceArgs{...} type SloObjectiveCountMetricTotalDynatraceInput interface { pulumi.Input @@ -12879,6 +20525,7 @@ type SloObjectiveCountMetricTotalDynatraceInput interface { } type SloObjectiveCountMetricTotalDynatraceArgs struct { + // Selector for the metrics MetricSelector pulumi.StringInput `pulumi:"metricSelector"` } @@ -12897,7 +20544,7 @@ func (i SloObjectiveCountMetricTotalDynatraceArgs) ToSloObjectiveCountMetricTota // SloObjectiveCountMetricTotalDynatraceArrayInput is an input type that accepts SloObjectiveCountMetricTotalDynatraceArray and SloObjectiveCountMetricTotalDynatraceArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalDynatraceArrayInput` via: // -// SloObjectiveCountMetricTotalDynatraceArray{ SloObjectiveCountMetricTotalDynatraceArgs{...} } +// SloObjectiveCountMetricTotalDynatraceArray{ SloObjectiveCountMetricTotalDynatraceArgs{...} } type SloObjectiveCountMetricTotalDynatraceArrayInput interface { pulumi.Input @@ -12933,6 +20580,7 @@ func (o SloObjectiveCountMetricTotalDynatraceOutput) ToSloObjectiveCountMetricTo return o } +// Selector for the metrics func (o SloObjectiveCountMetricTotalDynatraceOutput) MetricSelector() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalDynatrace) string { return v.MetricSelector }).(pulumi.StringOutput) } @@ -12958,14 +20606,16 @@ func (o SloObjectiveCountMetricTotalDynatraceArrayOutput) Index(i pulumi.IntInpu } type SloObjectiveCountMetricTotalElasticsearch struct { + // Index of metrics we want to query Index string `pulumi:"index"` + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricTotalElasticsearchInput is an input type that accepts SloObjectiveCountMetricTotalElasticsearchArgs and SloObjectiveCountMetricTotalElasticsearchOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalElasticsearchInput` via: // -// SloObjectiveCountMetricTotalElasticsearchArgs{...} +// SloObjectiveCountMetricTotalElasticsearchArgs{...} type SloObjectiveCountMetricTotalElasticsearchInput interface { pulumi.Input @@ -12974,7 +20624,9 @@ type SloObjectiveCountMetricTotalElasticsearchInput interface { } type SloObjectiveCountMetricTotalElasticsearchArgs struct { + // Index of metrics we want to query Index pulumi.StringInput `pulumi:"index"` + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -12993,7 +20645,7 @@ func (i SloObjectiveCountMetricTotalElasticsearchArgs) ToSloObjectiveCountMetric // SloObjectiveCountMetricTotalElasticsearchArrayInput is an input type that accepts SloObjectiveCountMetricTotalElasticsearchArray and SloObjectiveCountMetricTotalElasticsearchArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalElasticsearchArrayInput` via: // -// SloObjectiveCountMetricTotalElasticsearchArray{ SloObjectiveCountMetricTotalElasticsearchArgs{...} } +// SloObjectiveCountMetricTotalElasticsearchArray{ SloObjectiveCountMetricTotalElasticsearchArgs{...} } type SloObjectiveCountMetricTotalElasticsearchArrayInput interface { pulumi.Input @@ -13029,10 +20681,12 @@ func (o SloObjectiveCountMetricTotalElasticsearchOutput) ToSloObjectiveCountMetr return o } +// Index of metrics we want to query func (o SloObjectiveCountMetricTotalElasticsearchOutput) Index() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalElasticsearch) string { return v.Index }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricTotalElasticsearchOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalElasticsearch) string { return v.Query }).(pulumi.StringOutput) } @@ -13058,14 +20712,16 @@ func (o SloObjectiveCountMetricTotalElasticsearchArrayOutput) Index(i pulumi.Int } type SloObjectiveCountMetricTotalGcm struct { + // Project ID ProjectId string `pulumi:"projectId"` - Query string `pulumi:"query"` + // Query for the metrics + Query string `pulumi:"query"` } // SloObjectiveCountMetricTotalGcmInput is an input type that accepts SloObjectiveCountMetricTotalGcmArgs and SloObjectiveCountMetricTotalGcmOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalGcmInput` via: // -// SloObjectiveCountMetricTotalGcmArgs{...} +// SloObjectiveCountMetricTotalGcmArgs{...} type SloObjectiveCountMetricTotalGcmInput interface { pulumi.Input @@ -13074,8 +20730,10 @@ type SloObjectiveCountMetricTotalGcmInput interface { } type SloObjectiveCountMetricTotalGcmArgs struct { + // Project ID ProjectId pulumi.StringInput `pulumi:"projectId"` - Query pulumi.StringInput `pulumi:"query"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } func (SloObjectiveCountMetricTotalGcmArgs) ElementType() reflect.Type { @@ -13093,7 +20751,7 @@ func (i SloObjectiveCountMetricTotalGcmArgs) ToSloObjectiveCountMetricTotalGcmOu // SloObjectiveCountMetricTotalGcmArrayInput is an input type that accepts SloObjectiveCountMetricTotalGcmArray and SloObjectiveCountMetricTotalGcmArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalGcmArrayInput` via: // -// SloObjectiveCountMetricTotalGcmArray{ SloObjectiveCountMetricTotalGcmArgs{...} } +// SloObjectiveCountMetricTotalGcmArray{ SloObjectiveCountMetricTotalGcmArgs{...} } type SloObjectiveCountMetricTotalGcmArrayInput interface { pulumi.Input @@ -13129,10 +20787,12 @@ func (o SloObjectiveCountMetricTotalGcmOutput) ToSloObjectiveCountMetricTotalGcm return o } +// Project ID func (o SloObjectiveCountMetricTotalGcmOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalGcm) string { return v.ProjectId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricTotalGcmOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalGcm) string { return v.Query }).(pulumi.StringOutput) } @@ -13158,13 +20818,14 @@ func (o SloObjectiveCountMetricTotalGcmArrayOutput) Index(i pulumi.IntInput) Slo } type SloObjectiveCountMetricTotalGrafanaLoki struct { + // Query for the logs Logql string `pulumi:"logql"` } // SloObjectiveCountMetricTotalGrafanaLokiInput is an input type that accepts SloObjectiveCountMetricTotalGrafanaLokiArgs and SloObjectiveCountMetricTotalGrafanaLokiOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalGrafanaLokiInput` via: // -// SloObjectiveCountMetricTotalGrafanaLokiArgs{...} +// SloObjectiveCountMetricTotalGrafanaLokiArgs{...} type SloObjectiveCountMetricTotalGrafanaLokiInput interface { pulumi.Input @@ -13173,6 +20834,7 @@ type SloObjectiveCountMetricTotalGrafanaLokiInput interface { } type SloObjectiveCountMetricTotalGrafanaLokiArgs struct { + // Query for the logs Logql pulumi.StringInput `pulumi:"logql"` } @@ -13191,7 +20853,7 @@ func (i SloObjectiveCountMetricTotalGrafanaLokiArgs) ToSloObjectiveCountMetricTo // SloObjectiveCountMetricTotalGrafanaLokiArrayInput is an input type that accepts SloObjectiveCountMetricTotalGrafanaLokiArray and SloObjectiveCountMetricTotalGrafanaLokiArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalGrafanaLokiArrayInput` via: // -// SloObjectiveCountMetricTotalGrafanaLokiArray{ SloObjectiveCountMetricTotalGrafanaLokiArgs{...} } +// SloObjectiveCountMetricTotalGrafanaLokiArray{ SloObjectiveCountMetricTotalGrafanaLokiArgs{...} } type SloObjectiveCountMetricTotalGrafanaLokiArrayInput interface { pulumi.Input @@ -13227,6 +20889,7 @@ func (o SloObjectiveCountMetricTotalGrafanaLokiOutput) ToSloObjectiveCountMetric return o } +// Query for the logs func (o SloObjectiveCountMetricTotalGrafanaLokiOutput) Logql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalGrafanaLoki) string { return v.Logql }).(pulumi.StringOutput) } @@ -13252,13 +20915,14 @@ func (o SloObjectiveCountMetricTotalGrafanaLokiArrayOutput) Index(i pulumi.IntIn } type SloObjectiveCountMetricTotalGraphite struct { + // Path to the metrics MetricPath string `pulumi:"metricPath"` } // SloObjectiveCountMetricTotalGraphiteInput is an input type that accepts SloObjectiveCountMetricTotalGraphiteArgs and SloObjectiveCountMetricTotalGraphiteOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalGraphiteInput` via: // -// SloObjectiveCountMetricTotalGraphiteArgs{...} +// SloObjectiveCountMetricTotalGraphiteArgs{...} type SloObjectiveCountMetricTotalGraphiteInput interface { pulumi.Input @@ -13267,6 +20931,7 @@ type SloObjectiveCountMetricTotalGraphiteInput interface { } type SloObjectiveCountMetricTotalGraphiteArgs struct { + // Path to the metrics MetricPath pulumi.StringInput `pulumi:"metricPath"` } @@ -13285,7 +20950,7 @@ func (i SloObjectiveCountMetricTotalGraphiteArgs) ToSloObjectiveCountMetricTotal // SloObjectiveCountMetricTotalGraphiteArrayInput is an input type that accepts SloObjectiveCountMetricTotalGraphiteArray and SloObjectiveCountMetricTotalGraphiteArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalGraphiteArrayInput` via: // -// SloObjectiveCountMetricTotalGraphiteArray{ SloObjectiveCountMetricTotalGraphiteArgs{...} } +// SloObjectiveCountMetricTotalGraphiteArray{ SloObjectiveCountMetricTotalGraphiteArgs{...} } type SloObjectiveCountMetricTotalGraphiteArrayInput interface { pulumi.Input @@ -13321,6 +20986,7 @@ func (o SloObjectiveCountMetricTotalGraphiteOutput) ToSloObjectiveCountMetricTot return o } +// Path to the metrics func (o SloObjectiveCountMetricTotalGraphiteOutput) MetricPath() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalGraphite) string { return v.MetricPath }).(pulumi.StringOutput) } @@ -13345,14 +21011,121 @@ func (o SloObjectiveCountMetricTotalGraphiteArrayOutput) Index(i pulumi.IntInput }).(SloObjectiveCountMetricTotalGraphiteOutput) } +type SloObjectiveCountMetricTotalHoneycomb struct { + // Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + Attribute *string `pulumi:"attribute"` + // Calculation type + Calculation string `pulumi:"calculation"` +} + +// SloObjectiveCountMetricTotalHoneycombInput is an input type that accepts SloObjectiveCountMetricTotalHoneycombArgs and SloObjectiveCountMetricTotalHoneycombOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricTotalHoneycombInput` via: +// +// SloObjectiveCountMetricTotalHoneycombArgs{...} +type SloObjectiveCountMetricTotalHoneycombInput interface { + pulumi.Input + + ToSloObjectiveCountMetricTotalHoneycombOutput() SloObjectiveCountMetricTotalHoneycombOutput + ToSloObjectiveCountMetricTotalHoneycombOutputWithContext(context.Context) SloObjectiveCountMetricTotalHoneycombOutput +} + +type SloObjectiveCountMetricTotalHoneycombArgs struct { + // Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + Attribute pulumi.StringPtrInput `pulumi:"attribute"` + // Calculation type + Calculation pulumi.StringInput `pulumi:"calculation"` +} + +func (SloObjectiveCountMetricTotalHoneycombArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricTotalHoneycomb)(nil)).Elem() +} + +func (i SloObjectiveCountMetricTotalHoneycombArgs) ToSloObjectiveCountMetricTotalHoneycombOutput() SloObjectiveCountMetricTotalHoneycombOutput { + return i.ToSloObjectiveCountMetricTotalHoneycombOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricTotalHoneycombArgs) ToSloObjectiveCountMetricTotalHoneycombOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalHoneycombOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricTotalHoneycombOutput) +} + +// SloObjectiveCountMetricTotalHoneycombArrayInput is an input type that accepts SloObjectiveCountMetricTotalHoneycombArray and SloObjectiveCountMetricTotalHoneycombArrayOutput values. +// You can construct a concrete instance of `SloObjectiveCountMetricTotalHoneycombArrayInput` via: +// +// SloObjectiveCountMetricTotalHoneycombArray{ SloObjectiveCountMetricTotalHoneycombArgs{...} } +type SloObjectiveCountMetricTotalHoneycombArrayInput interface { + pulumi.Input + + ToSloObjectiveCountMetricTotalHoneycombArrayOutput() SloObjectiveCountMetricTotalHoneycombArrayOutput + ToSloObjectiveCountMetricTotalHoneycombArrayOutputWithContext(context.Context) SloObjectiveCountMetricTotalHoneycombArrayOutput +} + +type SloObjectiveCountMetricTotalHoneycombArray []SloObjectiveCountMetricTotalHoneycombInput + +func (SloObjectiveCountMetricTotalHoneycombArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricTotalHoneycomb)(nil)).Elem() +} + +func (i SloObjectiveCountMetricTotalHoneycombArray) ToSloObjectiveCountMetricTotalHoneycombArrayOutput() SloObjectiveCountMetricTotalHoneycombArrayOutput { + return i.ToSloObjectiveCountMetricTotalHoneycombArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveCountMetricTotalHoneycombArray) ToSloObjectiveCountMetricTotalHoneycombArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalHoneycombArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveCountMetricTotalHoneycombArrayOutput) +} + +type SloObjectiveCountMetricTotalHoneycombOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricTotalHoneycombOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveCountMetricTotalHoneycomb)(nil)).Elem() +} + +func (o SloObjectiveCountMetricTotalHoneycombOutput) ToSloObjectiveCountMetricTotalHoneycombOutput() SloObjectiveCountMetricTotalHoneycombOutput { + return o +} + +func (o SloObjectiveCountMetricTotalHoneycombOutput) ToSloObjectiveCountMetricTotalHoneycombOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalHoneycombOutput { + return o +} + +// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' +func (o SloObjectiveCountMetricTotalHoneycombOutput) Attribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalHoneycomb) *string { return v.Attribute }).(pulumi.StringPtrOutput) +} + +// Calculation type +func (o SloObjectiveCountMetricTotalHoneycombOutput) Calculation() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveCountMetricTotalHoneycomb) string { return v.Calculation }).(pulumi.StringOutput) +} + +type SloObjectiveCountMetricTotalHoneycombArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveCountMetricTotalHoneycombArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveCountMetricTotalHoneycomb)(nil)).Elem() +} + +func (o SloObjectiveCountMetricTotalHoneycombArrayOutput) ToSloObjectiveCountMetricTotalHoneycombArrayOutput() SloObjectiveCountMetricTotalHoneycombArrayOutput { + return o +} + +func (o SloObjectiveCountMetricTotalHoneycombArrayOutput) ToSloObjectiveCountMetricTotalHoneycombArrayOutputWithContext(ctx context.Context) SloObjectiveCountMetricTotalHoneycombArrayOutput { + return o +} + +func (o SloObjectiveCountMetricTotalHoneycombArrayOutput) Index(i pulumi.IntInput) SloObjectiveCountMetricTotalHoneycombOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveCountMetricTotalHoneycomb { + return vs[0].([]SloObjectiveCountMetricTotalHoneycomb)[vs[1].(int)] + }).(SloObjectiveCountMetricTotalHoneycombOutput) +} + type SloObjectiveCountMetricTotalInfluxdb struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricTotalInfluxdbInput is an input type that accepts SloObjectiveCountMetricTotalInfluxdbArgs and SloObjectiveCountMetricTotalInfluxdbOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInfluxdbInput` via: // -// SloObjectiveCountMetricTotalInfluxdbArgs{...} +// SloObjectiveCountMetricTotalInfluxdbArgs{...} type SloObjectiveCountMetricTotalInfluxdbInput interface { pulumi.Input @@ -13361,6 +21134,7 @@ type SloObjectiveCountMetricTotalInfluxdbInput interface { } type SloObjectiveCountMetricTotalInfluxdbArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -13379,7 +21153,7 @@ func (i SloObjectiveCountMetricTotalInfluxdbArgs) ToSloObjectiveCountMetricTotal // SloObjectiveCountMetricTotalInfluxdbArrayInput is an input type that accepts SloObjectiveCountMetricTotalInfluxdbArray and SloObjectiveCountMetricTotalInfluxdbArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInfluxdbArrayInput` via: // -// SloObjectiveCountMetricTotalInfluxdbArray{ SloObjectiveCountMetricTotalInfluxdbArgs{...} } +// SloObjectiveCountMetricTotalInfluxdbArray{ SloObjectiveCountMetricTotalInfluxdbArgs{...} } type SloObjectiveCountMetricTotalInfluxdbArrayInput interface { pulumi.Input @@ -13415,6 +21189,7 @@ func (o SloObjectiveCountMetricTotalInfluxdbOutput) ToSloObjectiveCountMetricTot return o } +// Query for the metrics func (o SloObjectiveCountMetricTotalInfluxdbOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInfluxdb) string { return v.Query }).(pulumi.StringOutput) } @@ -13440,15 +21215,18 @@ func (o SloObjectiveCountMetricTotalInfluxdbArrayOutput) Index(i pulumi.IntInput } type SloObjectiveCountMetricTotalInstana struct { - Applications []SloObjectiveCountMetricTotalInstanaApplication `pulumi:"applications"` + // Infrastructure metric type + Applications []SloObjectiveCountMetricTotalInstanaApplication `pulumi:"applications"` + // Infrastructure metric type Infrastructures []SloObjectiveCountMetricTotalInstanaInfrastructure `pulumi:"infrastructures"` - MetricType string `pulumi:"metricType"` + // Instana metric type 'application' or 'infrastructure' + MetricType string `pulumi:"metricType"` } // SloObjectiveCountMetricTotalInstanaInput is an input type that accepts SloObjectiveCountMetricTotalInstanaArgs and SloObjectiveCountMetricTotalInstanaOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInstanaInput` via: // -// SloObjectiveCountMetricTotalInstanaArgs{...} +// SloObjectiveCountMetricTotalInstanaArgs{...} type SloObjectiveCountMetricTotalInstanaInput interface { pulumi.Input @@ -13457,9 +21235,12 @@ type SloObjectiveCountMetricTotalInstanaInput interface { } type SloObjectiveCountMetricTotalInstanaArgs struct { - Applications SloObjectiveCountMetricTotalInstanaApplicationArrayInput `pulumi:"applications"` + // Infrastructure metric type + Applications SloObjectiveCountMetricTotalInstanaApplicationArrayInput `pulumi:"applications"` + // Infrastructure metric type Infrastructures SloObjectiveCountMetricTotalInstanaInfrastructureArrayInput `pulumi:"infrastructures"` - MetricType pulumi.StringInput `pulumi:"metricType"` + // Instana metric type 'application' or 'infrastructure' + MetricType pulumi.StringInput `pulumi:"metricType"` } func (SloObjectiveCountMetricTotalInstanaArgs) ElementType() reflect.Type { @@ -13477,7 +21258,7 @@ func (i SloObjectiveCountMetricTotalInstanaArgs) ToSloObjectiveCountMetricTotalI // SloObjectiveCountMetricTotalInstanaArrayInput is an input type that accepts SloObjectiveCountMetricTotalInstanaArray and SloObjectiveCountMetricTotalInstanaArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInstanaArrayInput` via: // -// SloObjectiveCountMetricTotalInstanaArray{ SloObjectiveCountMetricTotalInstanaArgs{...} } +// SloObjectiveCountMetricTotalInstanaArray{ SloObjectiveCountMetricTotalInstanaArgs{...} } type SloObjectiveCountMetricTotalInstanaArrayInput interface { pulumi.Input @@ -13513,18 +21294,21 @@ func (o SloObjectiveCountMetricTotalInstanaOutput) ToSloObjectiveCountMetricTota return o } +// Infrastructure metric type func (o SloObjectiveCountMetricTotalInstanaOutput) Applications() SloObjectiveCountMetricTotalInstanaApplicationArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstana) []SloObjectiveCountMetricTotalInstanaApplication { return v.Applications }).(SloObjectiveCountMetricTotalInstanaApplicationArrayOutput) } +// Infrastructure metric type func (o SloObjectiveCountMetricTotalInstanaOutput) Infrastructures() SloObjectiveCountMetricTotalInstanaInfrastructureArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstana) []SloObjectiveCountMetricTotalInstanaInfrastructure { return v.Infrastructures }).(SloObjectiveCountMetricTotalInstanaInfrastructureArrayOutput) } +// Instana metric type 'application' or 'infrastructure' func (o SloObjectiveCountMetricTotalInstanaOutput) MetricType() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstana) string { return v.MetricType }).(pulumi.StringOutput) } @@ -13550,18 +21334,24 @@ func (o SloObjectiveCountMetricTotalInstanaArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricTotalInstanaApplication struct { - Aggregation string `pulumi:"aggregation"` - ApiQuery string `pulumi:"apiQuery"` - GroupBies []SloObjectiveCountMetricTotalInstanaApplicationGroupBy `pulumi:"groupBies"` - IncludeInternal *bool `pulumi:"includeInternal"` - IncludeSynthetic *bool `pulumi:"includeSynthetic"` - MetricId string `pulumi:"metricId"` + // Aggregation type [Required for metrics] + Aggregation string `pulumi:"aggregation"` + // API query user passes in a JSON format + ApiQuery string `pulumi:"apiQuery"` + // Group by method + GroupBies []SloObjectiveCountMetricTotalInstanaApplicationGroupBy `pulumi:"groupBies"` + // Include internal + IncludeInternal *bool `pulumi:"includeInternal"` + // Include synthetic + IncludeSynthetic *bool `pulumi:"includeSynthetic"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId string `pulumi:"metricId"` } // SloObjectiveCountMetricTotalInstanaApplicationInput is an input type that accepts SloObjectiveCountMetricTotalInstanaApplicationArgs and SloObjectiveCountMetricTotalInstanaApplicationOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInstanaApplicationInput` via: // -// SloObjectiveCountMetricTotalInstanaApplicationArgs{...} +// SloObjectiveCountMetricTotalInstanaApplicationArgs{...} type SloObjectiveCountMetricTotalInstanaApplicationInput interface { pulumi.Input @@ -13570,12 +21360,18 @@ type SloObjectiveCountMetricTotalInstanaApplicationInput interface { } type SloObjectiveCountMetricTotalInstanaApplicationArgs struct { - Aggregation pulumi.StringInput `pulumi:"aggregation"` - ApiQuery pulumi.StringInput `pulumi:"apiQuery"` - GroupBies SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayInput `pulumi:"groupBies"` - IncludeInternal pulumi.BoolPtrInput `pulumi:"includeInternal"` - IncludeSynthetic pulumi.BoolPtrInput `pulumi:"includeSynthetic"` - MetricId pulumi.StringInput `pulumi:"metricId"` + // Aggregation type [Required for metrics] + Aggregation pulumi.StringInput `pulumi:"aggregation"` + // API query user passes in a JSON format + ApiQuery pulumi.StringInput `pulumi:"apiQuery"` + // Group by method + GroupBies SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayInput `pulumi:"groupBies"` + // Include internal + IncludeInternal pulumi.BoolPtrInput `pulumi:"includeInternal"` + // Include synthetic + IncludeSynthetic pulumi.BoolPtrInput `pulumi:"includeSynthetic"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId pulumi.StringInput `pulumi:"metricId"` } func (SloObjectiveCountMetricTotalInstanaApplicationArgs) ElementType() reflect.Type { @@ -13593,7 +21389,7 @@ func (i SloObjectiveCountMetricTotalInstanaApplicationArgs) ToSloObjectiveCountM // SloObjectiveCountMetricTotalInstanaApplicationArrayInput is an input type that accepts SloObjectiveCountMetricTotalInstanaApplicationArray and SloObjectiveCountMetricTotalInstanaApplicationArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInstanaApplicationArrayInput` via: // -// SloObjectiveCountMetricTotalInstanaApplicationArray{ SloObjectiveCountMetricTotalInstanaApplicationArgs{...} } +// SloObjectiveCountMetricTotalInstanaApplicationArray{ SloObjectiveCountMetricTotalInstanaApplicationArgs{...} } type SloObjectiveCountMetricTotalInstanaApplicationArrayInput interface { pulumi.Input @@ -13629,28 +21425,34 @@ func (o SloObjectiveCountMetricTotalInstanaApplicationOutput) ToSloObjectiveCoun return o } +// Aggregation type [Required for metrics] func (o SloObjectiveCountMetricTotalInstanaApplicationOutput) Aggregation() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaApplication) string { return v.Aggregation }).(pulumi.StringOutput) } +// API query user passes in a JSON format func (o SloObjectiveCountMetricTotalInstanaApplicationOutput) ApiQuery() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaApplication) string { return v.ApiQuery }).(pulumi.StringOutput) } +// Group by method func (o SloObjectiveCountMetricTotalInstanaApplicationOutput) GroupBies() SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaApplication) []SloObjectiveCountMetricTotalInstanaApplicationGroupBy { return v.GroupBies }).(SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayOutput) } +// Include internal func (o SloObjectiveCountMetricTotalInstanaApplicationOutput) IncludeInternal() pulumi.BoolPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaApplication) *bool { return v.IncludeInternal }).(pulumi.BoolPtrOutput) } +// Include synthetic func (o SloObjectiveCountMetricTotalInstanaApplicationOutput) IncludeSynthetic() pulumi.BoolPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaApplication) *bool { return v.IncludeSynthetic }).(pulumi.BoolPtrOutput) } +// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' func (o SloObjectiveCountMetricTotalInstanaApplicationOutput) MetricId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaApplication) string { return v.MetricId }).(pulumi.StringOutput) } @@ -13676,7 +21478,9 @@ func (o SloObjectiveCountMetricTotalInstanaApplicationArrayOutput) Index(i pulum } type SloObjectiveCountMetricTotalInstanaApplicationGroupBy struct { - Tag string `pulumi:"tag"` + // Group by tag + Tag string `pulumi:"tag"` + // Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' TagEntity string `pulumi:"tagEntity"` TagSecondLevelKey *string `pulumi:"tagSecondLevelKey"` } @@ -13684,7 +21488,7 @@ type SloObjectiveCountMetricTotalInstanaApplicationGroupBy struct { // SloObjectiveCountMetricTotalInstanaApplicationGroupByInput is an input type that accepts SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs and SloObjectiveCountMetricTotalInstanaApplicationGroupByOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInstanaApplicationGroupByInput` via: // -// SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs{...} +// SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs{...} type SloObjectiveCountMetricTotalInstanaApplicationGroupByInput interface { pulumi.Input @@ -13693,7 +21497,9 @@ type SloObjectiveCountMetricTotalInstanaApplicationGroupByInput interface { } type SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs struct { - Tag pulumi.StringInput `pulumi:"tag"` + // Group by tag + Tag pulumi.StringInput `pulumi:"tag"` + // Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' TagEntity pulumi.StringInput `pulumi:"tagEntity"` TagSecondLevelKey pulumi.StringPtrInput `pulumi:"tagSecondLevelKey"` } @@ -13713,7 +21519,7 @@ func (i SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs) ToSloObjectiv // SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayInput is an input type that accepts SloObjectiveCountMetricTotalInstanaApplicationGroupByArray and SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayInput` via: // -// SloObjectiveCountMetricTotalInstanaApplicationGroupByArray{ SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs{...} } +// SloObjectiveCountMetricTotalInstanaApplicationGroupByArray{ SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs{...} } type SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayInput interface { pulumi.Input @@ -13749,10 +21555,12 @@ func (o SloObjectiveCountMetricTotalInstanaApplicationGroupByOutput) ToSloObject return o } +// Group by tag func (o SloObjectiveCountMetricTotalInstanaApplicationGroupByOutput) Tag() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaApplicationGroupBy) string { return v.Tag }).(pulumi.StringOutput) } +// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' func (o SloObjectiveCountMetricTotalInstanaApplicationGroupByOutput) TagEntity() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaApplicationGroupBy) string { return v.TagEntity }).(pulumi.StringOutput) } @@ -13782,17 +21590,22 @@ func (o SloObjectiveCountMetricTotalInstanaApplicationGroupByArrayOutput) Index( } type SloObjectiveCountMetricTotalInstanaInfrastructure struct { - MetricId string `pulumi:"metricId"` - MetricRetrievalMethod string `pulumi:"metricRetrievalMethod"` - PluginId string `pulumi:"pluginId"` - Query *string `pulumi:"query"` - SnapshotId *string `pulumi:"snapshotId"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId string `pulumi:"metricId"` + // Metric retrieval method 'query' or 'snapshot' + MetricRetrievalMethod string `pulumi:"metricRetrievalMethod"` + // Plugin ID + PluginId string `pulumi:"pluginId"` + // Query for the metrics + Query *string `pulumi:"query"` + // Snapshot ID + SnapshotId *string `pulumi:"snapshotId"` } // SloObjectiveCountMetricTotalInstanaInfrastructureInput is an input type that accepts SloObjectiveCountMetricTotalInstanaInfrastructureArgs and SloObjectiveCountMetricTotalInstanaInfrastructureOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInstanaInfrastructureInput` via: // -// SloObjectiveCountMetricTotalInstanaInfrastructureArgs{...} +// SloObjectiveCountMetricTotalInstanaInfrastructureArgs{...} type SloObjectiveCountMetricTotalInstanaInfrastructureInput interface { pulumi.Input @@ -13801,11 +21614,16 @@ type SloObjectiveCountMetricTotalInstanaInfrastructureInput interface { } type SloObjectiveCountMetricTotalInstanaInfrastructureArgs struct { - MetricId pulumi.StringInput `pulumi:"metricId"` - MetricRetrievalMethod pulumi.StringInput `pulumi:"metricRetrievalMethod"` - PluginId pulumi.StringInput `pulumi:"pluginId"` - Query pulumi.StringPtrInput `pulumi:"query"` - SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId pulumi.StringInput `pulumi:"metricId"` + // Metric retrieval method 'query' or 'snapshot' + MetricRetrievalMethod pulumi.StringInput `pulumi:"metricRetrievalMethod"` + // Plugin ID + PluginId pulumi.StringInput `pulumi:"pluginId"` + // Query for the metrics + Query pulumi.StringPtrInput `pulumi:"query"` + // Snapshot ID + SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"` } func (SloObjectiveCountMetricTotalInstanaInfrastructureArgs) ElementType() reflect.Type { @@ -13823,7 +21641,7 @@ func (i SloObjectiveCountMetricTotalInstanaInfrastructureArgs) ToSloObjectiveCou // SloObjectiveCountMetricTotalInstanaInfrastructureArrayInput is an input type that accepts SloObjectiveCountMetricTotalInstanaInfrastructureArray and SloObjectiveCountMetricTotalInstanaInfrastructureArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalInstanaInfrastructureArrayInput` via: // -// SloObjectiveCountMetricTotalInstanaInfrastructureArray{ SloObjectiveCountMetricTotalInstanaInfrastructureArgs{...} } +// SloObjectiveCountMetricTotalInstanaInfrastructureArray{ SloObjectiveCountMetricTotalInstanaInfrastructureArgs{...} } type SloObjectiveCountMetricTotalInstanaInfrastructureArrayInput interface { pulumi.Input @@ -13859,22 +21677,27 @@ func (o SloObjectiveCountMetricTotalInstanaInfrastructureOutput) ToSloObjectiveC return o } +// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' func (o SloObjectiveCountMetricTotalInstanaInfrastructureOutput) MetricId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaInfrastructure) string { return v.MetricId }).(pulumi.StringOutput) } +// Metric retrieval method 'query' or 'snapshot' func (o SloObjectiveCountMetricTotalInstanaInfrastructureOutput) MetricRetrievalMethod() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaInfrastructure) string { return v.MetricRetrievalMethod }).(pulumi.StringOutput) } +// Plugin ID func (o SloObjectiveCountMetricTotalInstanaInfrastructureOutput) PluginId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaInfrastructure) string { return v.PluginId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricTotalInstanaInfrastructureOutput) Query() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaInfrastructure) *string { return v.Query }).(pulumi.StringPtrOutput) } +// Snapshot ID func (o SloObjectiveCountMetricTotalInstanaInfrastructureOutput) SnapshotId() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalInstanaInfrastructure) *string { return v.SnapshotId }).(pulumi.StringPtrOutput) } @@ -13900,16 +21723,20 @@ func (o SloObjectiveCountMetricTotalInstanaInfrastructureArrayOutput) Index(i pu } type SloObjectiveCountMetricTotalLightstep struct { + // Optional value to filter by percentiles Percentile *float64 `pulumi:"percentile"` - StreamId *string `pulumi:"streamId"` - TypeOfData string `pulumi:"typeOfData"` - Uql *string `pulumi:"uql"` + // ID of the metrics stream + StreamId *string `pulumi:"streamId"` + // Type of data to filter by + TypeOfData string `pulumi:"typeOfData"` + // UQL query + Uql *string `pulumi:"uql"` } // SloObjectiveCountMetricTotalLightstepInput is an input type that accepts SloObjectiveCountMetricTotalLightstepArgs and SloObjectiveCountMetricTotalLightstepOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalLightstepInput` via: // -// SloObjectiveCountMetricTotalLightstepArgs{...} +// SloObjectiveCountMetricTotalLightstepArgs{...} type SloObjectiveCountMetricTotalLightstepInput interface { pulumi.Input @@ -13918,10 +21745,14 @@ type SloObjectiveCountMetricTotalLightstepInput interface { } type SloObjectiveCountMetricTotalLightstepArgs struct { + // Optional value to filter by percentiles Percentile pulumi.Float64PtrInput `pulumi:"percentile"` - StreamId pulumi.StringPtrInput `pulumi:"streamId"` - TypeOfData pulumi.StringInput `pulumi:"typeOfData"` - Uql pulumi.StringPtrInput `pulumi:"uql"` + // ID of the metrics stream + StreamId pulumi.StringPtrInput `pulumi:"streamId"` + // Type of data to filter by + TypeOfData pulumi.StringInput `pulumi:"typeOfData"` + // UQL query + Uql pulumi.StringPtrInput `pulumi:"uql"` } func (SloObjectiveCountMetricTotalLightstepArgs) ElementType() reflect.Type { @@ -13939,7 +21770,7 @@ func (i SloObjectiveCountMetricTotalLightstepArgs) ToSloObjectiveCountMetricTota // SloObjectiveCountMetricTotalLightstepArrayInput is an input type that accepts SloObjectiveCountMetricTotalLightstepArray and SloObjectiveCountMetricTotalLightstepArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalLightstepArrayInput` via: // -// SloObjectiveCountMetricTotalLightstepArray{ SloObjectiveCountMetricTotalLightstepArgs{...} } +// SloObjectiveCountMetricTotalLightstepArray{ SloObjectiveCountMetricTotalLightstepArgs{...} } type SloObjectiveCountMetricTotalLightstepArrayInput interface { pulumi.Input @@ -13975,18 +21806,22 @@ func (o SloObjectiveCountMetricTotalLightstepOutput) ToSloObjectiveCountMetricTo return o } +// Optional value to filter by percentiles func (o SloObjectiveCountMetricTotalLightstepOutput) Percentile() pulumi.Float64PtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalLightstep) *float64 { return v.Percentile }).(pulumi.Float64PtrOutput) } +// ID of the metrics stream func (o SloObjectiveCountMetricTotalLightstepOutput) StreamId() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalLightstep) *string { return v.StreamId }).(pulumi.StringPtrOutput) } +// Type of data to filter by func (o SloObjectiveCountMetricTotalLightstepOutput) TypeOfData() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalLightstep) string { return v.TypeOfData }).(pulumi.StringOutput) } +// UQL query func (o SloObjectiveCountMetricTotalLightstepOutput) Uql() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalLightstep) *string { return v.Uql }).(pulumi.StringPtrOutput) } @@ -14012,13 +21847,14 @@ func (o SloObjectiveCountMetricTotalLightstepArrayOutput) Index(i pulumi.IntInpu } type SloObjectiveCountMetricTotalNewrelic struct { + // Query for the metrics Nrql string `pulumi:"nrql"` } // SloObjectiveCountMetricTotalNewrelicInput is an input type that accepts SloObjectiveCountMetricTotalNewrelicArgs and SloObjectiveCountMetricTotalNewrelicOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalNewrelicInput` via: // -// SloObjectiveCountMetricTotalNewrelicArgs{...} +// SloObjectiveCountMetricTotalNewrelicArgs{...} type SloObjectiveCountMetricTotalNewrelicInput interface { pulumi.Input @@ -14027,6 +21863,7 @@ type SloObjectiveCountMetricTotalNewrelicInput interface { } type SloObjectiveCountMetricTotalNewrelicArgs struct { + // Query for the metrics Nrql pulumi.StringInput `pulumi:"nrql"` } @@ -14045,7 +21882,7 @@ func (i SloObjectiveCountMetricTotalNewrelicArgs) ToSloObjectiveCountMetricTotal // SloObjectiveCountMetricTotalNewrelicArrayInput is an input type that accepts SloObjectiveCountMetricTotalNewrelicArray and SloObjectiveCountMetricTotalNewrelicArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalNewrelicArrayInput` via: // -// SloObjectiveCountMetricTotalNewrelicArray{ SloObjectiveCountMetricTotalNewrelicArgs{...} } +// SloObjectiveCountMetricTotalNewrelicArray{ SloObjectiveCountMetricTotalNewrelicArgs{...} } type SloObjectiveCountMetricTotalNewrelicArrayInput interface { pulumi.Input @@ -14081,6 +21918,7 @@ func (o SloObjectiveCountMetricTotalNewrelicOutput) ToSloObjectiveCountMetricTot return o } +// Query for the metrics func (o SloObjectiveCountMetricTotalNewrelicOutput) Nrql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalNewrelic) string { return v.Nrql }).(pulumi.StringOutput) } @@ -14106,13 +21944,14 @@ func (o SloObjectiveCountMetricTotalNewrelicArrayOutput) Index(i pulumi.IntInput } type SloObjectiveCountMetricTotalOpentsdb struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricTotalOpentsdbInput is an input type that accepts SloObjectiveCountMetricTotalOpentsdbArgs and SloObjectiveCountMetricTotalOpentsdbOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalOpentsdbInput` via: // -// SloObjectiveCountMetricTotalOpentsdbArgs{...} +// SloObjectiveCountMetricTotalOpentsdbArgs{...} type SloObjectiveCountMetricTotalOpentsdbInput interface { pulumi.Input @@ -14121,6 +21960,7 @@ type SloObjectiveCountMetricTotalOpentsdbInput interface { } type SloObjectiveCountMetricTotalOpentsdbArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -14139,7 +21979,7 @@ func (i SloObjectiveCountMetricTotalOpentsdbArgs) ToSloObjectiveCountMetricTotal // SloObjectiveCountMetricTotalOpentsdbArrayInput is an input type that accepts SloObjectiveCountMetricTotalOpentsdbArray and SloObjectiveCountMetricTotalOpentsdbArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalOpentsdbArrayInput` via: // -// SloObjectiveCountMetricTotalOpentsdbArray{ SloObjectiveCountMetricTotalOpentsdbArgs{...} } +// SloObjectiveCountMetricTotalOpentsdbArray{ SloObjectiveCountMetricTotalOpentsdbArgs{...} } type SloObjectiveCountMetricTotalOpentsdbArrayInput interface { pulumi.Input @@ -14175,6 +22015,7 @@ func (o SloObjectiveCountMetricTotalOpentsdbOutput) ToSloObjectiveCountMetricTot return o } +// Query for the metrics func (o SloObjectiveCountMetricTotalOpentsdbOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalOpentsdb) string { return v.Query }).(pulumi.StringOutput) } @@ -14200,15 +22041,18 @@ func (o SloObjectiveCountMetricTotalOpentsdbArrayOutput) Index(i pulumi.IntInput } type SloObjectiveCountMetricTotalPingdom struct { - CheckId string `pulumi:"checkId"` + // Pingdom uptime or transaction check's ID + CheckId string `pulumi:"checkId"` + // Pingdom check type - uptime or transaction CheckType *string `pulumi:"checkType"` - Status *string `pulumi:"status"` + // Optional for the Uptime checks. Use it to filter the Pingdom check results by status + Status *string `pulumi:"status"` } // SloObjectiveCountMetricTotalPingdomInput is an input type that accepts SloObjectiveCountMetricTotalPingdomArgs and SloObjectiveCountMetricTotalPingdomOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalPingdomInput` via: // -// SloObjectiveCountMetricTotalPingdomArgs{...} +// SloObjectiveCountMetricTotalPingdomArgs{...} type SloObjectiveCountMetricTotalPingdomInput interface { pulumi.Input @@ -14217,9 +22061,12 @@ type SloObjectiveCountMetricTotalPingdomInput interface { } type SloObjectiveCountMetricTotalPingdomArgs struct { - CheckId pulumi.StringInput `pulumi:"checkId"` + // Pingdom uptime or transaction check's ID + CheckId pulumi.StringInput `pulumi:"checkId"` + // Pingdom check type - uptime or transaction CheckType pulumi.StringPtrInput `pulumi:"checkType"` - Status pulumi.StringPtrInput `pulumi:"status"` + // Optional for the Uptime checks. Use it to filter the Pingdom check results by status + Status pulumi.StringPtrInput `pulumi:"status"` } func (SloObjectiveCountMetricTotalPingdomArgs) ElementType() reflect.Type { @@ -14237,7 +22084,7 @@ func (i SloObjectiveCountMetricTotalPingdomArgs) ToSloObjectiveCountMetricTotalP // SloObjectiveCountMetricTotalPingdomArrayInput is an input type that accepts SloObjectiveCountMetricTotalPingdomArray and SloObjectiveCountMetricTotalPingdomArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalPingdomArrayInput` via: // -// SloObjectiveCountMetricTotalPingdomArray{ SloObjectiveCountMetricTotalPingdomArgs{...} } +// SloObjectiveCountMetricTotalPingdomArray{ SloObjectiveCountMetricTotalPingdomArgs{...} } type SloObjectiveCountMetricTotalPingdomArrayInput interface { pulumi.Input @@ -14273,14 +22120,17 @@ func (o SloObjectiveCountMetricTotalPingdomOutput) ToSloObjectiveCountMetricTota return o } +// Pingdom uptime or transaction check's ID func (o SloObjectiveCountMetricTotalPingdomOutput) CheckId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalPingdom) string { return v.CheckId }).(pulumi.StringOutput) } +// Pingdom check type - uptime or transaction func (o SloObjectiveCountMetricTotalPingdomOutput) CheckType() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalPingdom) *string { return v.CheckType }).(pulumi.StringPtrOutput) } +// Optional for the Uptime checks. Use it to filter the Pingdom check results by status func (o SloObjectiveCountMetricTotalPingdomOutput) Status() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalPingdom) *string { return v.Status }).(pulumi.StringPtrOutput) } @@ -14306,13 +22156,14 @@ func (o SloObjectiveCountMetricTotalPingdomArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricTotalPrometheus struct { + // Query for the metrics Promql string `pulumi:"promql"` } // SloObjectiveCountMetricTotalPrometheusInput is an input type that accepts SloObjectiveCountMetricTotalPrometheusArgs and SloObjectiveCountMetricTotalPrometheusOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalPrometheusInput` via: // -// SloObjectiveCountMetricTotalPrometheusArgs{...} +// SloObjectiveCountMetricTotalPrometheusArgs{...} type SloObjectiveCountMetricTotalPrometheusInput interface { pulumi.Input @@ -14321,6 +22172,7 @@ type SloObjectiveCountMetricTotalPrometheusInput interface { } type SloObjectiveCountMetricTotalPrometheusArgs struct { + // Query for the metrics Promql pulumi.StringInput `pulumi:"promql"` } @@ -14339,7 +22191,7 @@ func (i SloObjectiveCountMetricTotalPrometheusArgs) ToSloObjectiveCountMetricTot // SloObjectiveCountMetricTotalPrometheusArrayInput is an input type that accepts SloObjectiveCountMetricTotalPrometheusArray and SloObjectiveCountMetricTotalPrometheusArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalPrometheusArrayInput` via: // -// SloObjectiveCountMetricTotalPrometheusArray{ SloObjectiveCountMetricTotalPrometheusArgs{...} } +// SloObjectiveCountMetricTotalPrometheusArray{ SloObjectiveCountMetricTotalPrometheusArgs{...} } type SloObjectiveCountMetricTotalPrometheusArrayInput interface { pulumi.Input @@ -14375,6 +22227,7 @@ func (o SloObjectiveCountMetricTotalPrometheusOutput) ToSloObjectiveCountMetricT return o } +// Query for the metrics func (o SloObjectiveCountMetricTotalPrometheusOutput) Promql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalPrometheus) string { return v.Promql }).(pulumi.StringOutput) } @@ -14400,16 +22253,20 @@ func (o SloObjectiveCountMetricTotalPrometheusArrayOutput) Index(i pulumi.IntInp } type SloObjectiveCountMetricTotalRedshift struct { - ClusterId string `pulumi:"clusterId"` + // Redshift custer ID + ClusterId string `pulumi:"clusterId"` + // Database name DatabaseName string `pulumi:"databaseName"` - Query string `pulumi:"query"` - Region string `pulumi:"region"` + // Query for the metrics + Query string `pulumi:"query"` + // Region of the CloudWatch instance + Region string `pulumi:"region"` } // SloObjectiveCountMetricTotalRedshiftInput is an input type that accepts SloObjectiveCountMetricTotalRedshiftArgs and SloObjectiveCountMetricTotalRedshiftOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalRedshiftInput` via: // -// SloObjectiveCountMetricTotalRedshiftArgs{...} +// SloObjectiveCountMetricTotalRedshiftArgs{...} type SloObjectiveCountMetricTotalRedshiftInput interface { pulumi.Input @@ -14418,10 +22275,14 @@ type SloObjectiveCountMetricTotalRedshiftInput interface { } type SloObjectiveCountMetricTotalRedshiftArgs struct { - ClusterId pulumi.StringInput `pulumi:"clusterId"` + // Redshift custer ID + ClusterId pulumi.StringInput `pulumi:"clusterId"` + // Database name DatabaseName pulumi.StringInput `pulumi:"databaseName"` - Query pulumi.StringInput `pulumi:"query"` - Region pulumi.StringInput `pulumi:"region"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` + // Region of the CloudWatch instance + Region pulumi.StringInput `pulumi:"region"` } func (SloObjectiveCountMetricTotalRedshiftArgs) ElementType() reflect.Type { @@ -14439,7 +22300,7 @@ func (i SloObjectiveCountMetricTotalRedshiftArgs) ToSloObjectiveCountMetricTotal // SloObjectiveCountMetricTotalRedshiftArrayInput is an input type that accepts SloObjectiveCountMetricTotalRedshiftArray and SloObjectiveCountMetricTotalRedshiftArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalRedshiftArrayInput` via: // -// SloObjectiveCountMetricTotalRedshiftArray{ SloObjectiveCountMetricTotalRedshiftArgs{...} } +// SloObjectiveCountMetricTotalRedshiftArray{ SloObjectiveCountMetricTotalRedshiftArgs{...} } type SloObjectiveCountMetricTotalRedshiftArrayInput interface { pulumi.Input @@ -14475,18 +22336,22 @@ func (o SloObjectiveCountMetricTotalRedshiftOutput) ToSloObjectiveCountMetricTot return o } +// Redshift custer ID func (o SloObjectiveCountMetricTotalRedshiftOutput) ClusterId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalRedshift) string { return v.ClusterId }).(pulumi.StringOutput) } +// Database name func (o SloObjectiveCountMetricTotalRedshiftOutput) DatabaseName() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalRedshift) string { return v.DatabaseName }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveCountMetricTotalRedshiftOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalRedshift) string { return v.Query }).(pulumi.StringOutput) } +// Region of the CloudWatch instance func (o SloObjectiveCountMetricTotalRedshiftOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalRedshift) string { return v.Region }).(pulumi.StringOutput) } @@ -14512,13 +22377,14 @@ func (o SloObjectiveCountMetricTotalRedshiftArrayOutput) Index(i pulumi.IntInput } type SloObjectiveCountMetricTotalSplunk struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveCountMetricTotalSplunkInput is an input type that accepts SloObjectiveCountMetricTotalSplunkArgs and SloObjectiveCountMetricTotalSplunkOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalSplunkInput` via: // -// SloObjectiveCountMetricTotalSplunkArgs{...} +// SloObjectiveCountMetricTotalSplunkArgs{...} type SloObjectiveCountMetricTotalSplunkInput interface { pulumi.Input @@ -14527,6 +22393,7 @@ type SloObjectiveCountMetricTotalSplunkInput interface { } type SloObjectiveCountMetricTotalSplunkArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -14545,7 +22412,7 @@ func (i SloObjectiveCountMetricTotalSplunkArgs) ToSloObjectiveCountMetricTotalSp // SloObjectiveCountMetricTotalSplunkArrayInput is an input type that accepts SloObjectiveCountMetricTotalSplunkArray and SloObjectiveCountMetricTotalSplunkArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalSplunkArrayInput` via: // -// SloObjectiveCountMetricTotalSplunkArray{ SloObjectiveCountMetricTotalSplunkArgs{...} } +// SloObjectiveCountMetricTotalSplunkArray{ SloObjectiveCountMetricTotalSplunkArgs{...} } type SloObjectiveCountMetricTotalSplunkArrayInput interface { pulumi.Input @@ -14581,6 +22448,7 @@ func (o SloObjectiveCountMetricTotalSplunkOutput) ToSloObjectiveCountMetricTotal return o } +// Query for the metrics func (o SloObjectiveCountMetricTotalSplunkOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalSplunk) string { return v.Query }).(pulumi.StringOutput) } @@ -14606,13 +22474,14 @@ func (o SloObjectiveCountMetricTotalSplunkArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveCountMetricTotalSplunkObservability struct { + // Query for the metrics Program string `pulumi:"program"` } // SloObjectiveCountMetricTotalSplunkObservabilityInput is an input type that accepts SloObjectiveCountMetricTotalSplunkObservabilityArgs and SloObjectiveCountMetricTotalSplunkObservabilityOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalSplunkObservabilityInput` via: // -// SloObjectiveCountMetricTotalSplunkObservabilityArgs{...} +// SloObjectiveCountMetricTotalSplunkObservabilityArgs{...} type SloObjectiveCountMetricTotalSplunkObservabilityInput interface { pulumi.Input @@ -14621,6 +22490,7 @@ type SloObjectiveCountMetricTotalSplunkObservabilityInput interface { } type SloObjectiveCountMetricTotalSplunkObservabilityArgs struct { + // Query for the metrics Program pulumi.StringInput `pulumi:"program"` } @@ -14639,7 +22509,7 @@ func (i SloObjectiveCountMetricTotalSplunkObservabilityArgs) ToSloObjectiveCount // SloObjectiveCountMetricTotalSplunkObservabilityArrayInput is an input type that accepts SloObjectiveCountMetricTotalSplunkObservabilityArray and SloObjectiveCountMetricTotalSplunkObservabilityArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalSplunkObservabilityArrayInput` via: // -// SloObjectiveCountMetricTotalSplunkObservabilityArray{ SloObjectiveCountMetricTotalSplunkObservabilityArgs{...} } +// SloObjectiveCountMetricTotalSplunkObservabilityArray{ SloObjectiveCountMetricTotalSplunkObservabilityArgs{...} } type SloObjectiveCountMetricTotalSplunkObservabilityArrayInput interface { pulumi.Input @@ -14675,6 +22545,7 @@ func (o SloObjectiveCountMetricTotalSplunkObservabilityOutput) ToSloObjectiveCou return o } +// Query for the metrics func (o SloObjectiveCountMetricTotalSplunkObservabilityOutput) Program() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalSplunkObservability) string { return v.Program }).(pulumi.StringOutput) } @@ -14700,16 +22571,20 @@ func (o SloObjectiveCountMetricTotalSplunkObservabilityArrayOutput) Index(i pulu } type SloObjectiveCountMetricTotalSumologic struct { + // Period of data aggregation Quantization *string `pulumi:"quantization"` - Query string `pulumi:"query"` - Rollup *string `pulumi:"rollup"` - Type string `pulumi:"type"` + // Query for the metrics + Query string `pulumi:"query"` + // Aggregation function - avg, sum, min, max, count, none + Rollup *string `pulumi:"rollup"` + // Sumologic source - metrics or logs + Type string `pulumi:"type"` } // SloObjectiveCountMetricTotalSumologicInput is an input type that accepts SloObjectiveCountMetricTotalSumologicArgs and SloObjectiveCountMetricTotalSumologicOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalSumologicInput` via: // -// SloObjectiveCountMetricTotalSumologicArgs{...} +// SloObjectiveCountMetricTotalSumologicArgs{...} type SloObjectiveCountMetricTotalSumologicInput interface { pulumi.Input @@ -14718,10 +22593,14 @@ type SloObjectiveCountMetricTotalSumologicInput interface { } type SloObjectiveCountMetricTotalSumologicArgs struct { + // Period of data aggregation Quantization pulumi.StringPtrInput `pulumi:"quantization"` - Query pulumi.StringInput `pulumi:"query"` - Rollup pulumi.StringPtrInput `pulumi:"rollup"` - Type pulumi.StringInput `pulumi:"type"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` + // Aggregation function - avg, sum, min, max, count, none + Rollup pulumi.StringPtrInput `pulumi:"rollup"` + // Sumologic source - metrics or logs + Type pulumi.StringInput `pulumi:"type"` } func (SloObjectiveCountMetricTotalSumologicArgs) ElementType() reflect.Type { @@ -14739,7 +22618,7 @@ func (i SloObjectiveCountMetricTotalSumologicArgs) ToSloObjectiveCountMetricTota // SloObjectiveCountMetricTotalSumologicArrayInput is an input type that accepts SloObjectiveCountMetricTotalSumologicArray and SloObjectiveCountMetricTotalSumologicArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalSumologicArrayInput` via: // -// SloObjectiveCountMetricTotalSumologicArray{ SloObjectiveCountMetricTotalSumologicArgs{...} } +// SloObjectiveCountMetricTotalSumologicArray{ SloObjectiveCountMetricTotalSumologicArgs{...} } type SloObjectiveCountMetricTotalSumologicArrayInput interface { pulumi.Input @@ -14775,18 +22654,22 @@ func (o SloObjectiveCountMetricTotalSumologicOutput) ToSloObjectiveCountMetricTo return o } +// Period of data aggregation func (o SloObjectiveCountMetricTotalSumologicOutput) Quantization() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalSumologic) *string { return v.Quantization }).(pulumi.StringPtrOutput) } +// Query for the metrics func (o SloObjectiveCountMetricTotalSumologicOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalSumologic) string { return v.Query }).(pulumi.StringOutput) } +// Aggregation function - avg, sum, min, max, count, none func (o SloObjectiveCountMetricTotalSumologicOutput) Rollup() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalSumologic) *string { return v.Rollup }).(pulumi.StringPtrOutput) } +// Sumologic source - metrics or logs func (o SloObjectiveCountMetricTotalSumologicOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalSumologic) string { return v.Type }).(pulumi.StringOutput) } @@ -14812,13 +22695,14 @@ func (o SloObjectiveCountMetricTotalSumologicArrayOutput) Index(i pulumi.IntInpu } type SloObjectiveCountMetricTotalThousandeye struct { + // ID of the test TestId int `pulumi:"testId"` } // SloObjectiveCountMetricTotalThousandeyeInput is an input type that accepts SloObjectiveCountMetricTotalThousandeyeArgs and SloObjectiveCountMetricTotalThousandeyeOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalThousandeyeInput` via: // -// SloObjectiveCountMetricTotalThousandeyeArgs{...} +// SloObjectiveCountMetricTotalThousandeyeArgs{...} type SloObjectiveCountMetricTotalThousandeyeInput interface { pulumi.Input @@ -14827,6 +22711,7 @@ type SloObjectiveCountMetricTotalThousandeyeInput interface { } type SloObjectiveCountMetricTotalThousandeyeArgs struct { + // ID of the test TestId pulumi.IntInput `pulumi:"testId"` } @@ -14845,7 +22730,7 @@ func (i SloObjectiveCountMetricTotalThousandeyeArgs) ToSloObjectiveCountMetricTo // SloObjectiveCountMetricTotalThousandeyeArrayInput is an input type that accepts SloObjectiveCountMetricTotalThousandeyeArray and SloObjectiveCountMetricTotalThousandeyeArrayOutput values. // You can construct a concrete instance of `SloObjectiveCountMetricTotalThousandeyeArrayInput` via: // -// SloObjectiveCountMetricTotalThousandeyeArray{ SloObjectiveCountMetricTotalThousandeyeArgs{...} } +// SloObjectiveCountMetricTotalThousandeyeArray{ SloObjectiveCountMetricTotalThousandeyeArgs{...} } type SloObjectiveCountMetricTotalThousandeyeArrayInput interface { pulumi.Input @@ -14881,6 +22766,7 @@ func (o SloObjectiveCountMetricTotalThousandeyeOutput) ToSloObjectiveCountMetric return o } +// ID of the test func (o SloObjectiveCountMetricTotalThousandeyeOutput) TestId() pulumi.IntOutput { return o.ApplyT(func(v SloObjectiveCountMetricTotalThousandeye) int { return v.TestId }).(pulumi.IntOutput) } @@ -14906,13 +22792,14 @@ func (o SloObjectiveCountMetricTotalThousandeyeArrayOutput) Index(i pulumi.IntIn } type SloObjectiveRawMetric struct { + // Query for the metrics Queries []SloObjectiveRawMetricQuery `pulumi:"queries"` } // SloObjectiveRawMetricInput is an input type that accepts SloObjectiveRawMetricArgs and SloObjectiveRawMetricOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricInput` via: // -// SloObjectiveRawMetricArgs{...} +// SloObjectiveRawMetricArgs{...} type SloObjectiveRawMetricInput interface { pulumi.Input @@ -14921,6 +22808,7 @@ type SloObjectiveRawMetricInput interface { } type SloObjectiveRawMetricArgs struct { + // Query for the metrics Queries SloObjectiveRawMetricQueryArrayInput `pulumi:"queries"` } @@ -14939,7 +22827,7 @@ func (i SloObjectiveRawMetricArgs) ToSloObjectiveRawMetricOutputWithContext(ctx // SloObjectiveRawMetricArrayInput is an input type that accepts SloObjectiveRawMetricArray and SloObjectiveRawMetricArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricArrayInput` via: // -// SloObjectiveRawMetricArray{ SloObjectiveRawMetricArgs{...} } +// SloObjectiveRawMetricArray{ SloObjectiveRawMetricArgs{...} } type SloObjectiveRawMetricArrayInput interface { pulumi.Input @@ -14975,6 +22863,7 @@ func (o SloObjectiveRawMetricOutput) ToSloObjectiveRawMetricOutputWithContext(ct return o } +// Query for the metrics func (o SloObjectiveRawMetricOutput) Queries() SloObjectiveRawMetricQueryArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetric) []SloObjectiveRawMetricQuery { return v.Queries }).(SloObjectiveRawMetricQueryArrayOutput) } @@ -15000,34 +22889,60 @@ func (o SloObjectiveRawMetricArrayOutput) Index(i pulumi.IntInput) SloObjectiveR } type SloObjectiveRawMetricQuery struct { - AmazonPrometheuses []SloObjectiveRawMetricQueryAmazonPrometheus `pulumi:"amazonPrometheuses"` - Appdynamics []SloObjectiveRawMetricQueryAppdynamic `pulumi:"appdynamics"` - Bigqueries []SloObjectiveRawMetricQueryBigquery `pulumi:"bigqueries"` - Cloudwatches []SloObjectiveRawMetricQueryCloudwatch `pulumi:"cloudwatches"` - Datadogs []SloObjectiveRawMetricQueryDatadog `pulumi:"datadogs"` - Dynatraces []SloObjectiveRawMetricQueryDynatrace `pulumi:"dynatraces"` - Elasticsearches []SloObjectiveRawMetricQueryElasticsearch `pulumi:"elasticsearches"` - Gcms []SloObjectiveRawMetricQueryGcm `pulumi:"gcms"` - GrafanaLokis []SloObjectiveRawMetricQueryGrafanaLoki `pulumi:"grafanaLokis"` - Graphites []SloObjectiveRawMetricQueryGraphite `pulumi:"graphites"` - Influxdbs []SloObjectiveRawMetricQueryInfluxdb `pulumi:"influxdbs"` - Instanas []SloObjectiveRawMetricQueryInstana `pulumi:"instanas"` - Lightsteps []SloObjectiveRawMetricQueryLightstep `pulumi:"lightsteps"` - Newrelics []SloObjectiveRawMetricQueryNewrelic `pulumi:"newrelics"` - Opentsdbs []SloObjectiveRawMetricQueryOpentsdb `pulumi:"opentsdbs"` - Pingdoms []SloObjectiveRawMetricQueryPingdom `pulumi:"pingdoms"` - Prometheuses []SloObjectiveRawMetricQueryPrometheus `pulumi:"prometheuses"` - Redshifts []SloObjectiveRawMetricQueryRedshift `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + AmazonPrometheuses []SloObjectiveRawMetricQueryAmazonPrometheus `pulumi:"amazonPrometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + Appdynamics []SloObjectiveRawMetricQueryAppdynamic `pulumi:"appdynamics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + AzureMonitors []SloObjectiveRawMetricQueryAzureMonitor `pulumi:"azureMonitors"` + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + Bigqueries []SloObjectiveRawMetricQueryBigquery `pulumi:"bigqueries"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + Cloudwatches []SloObjectiveRawMetricQueryCloudwatch `pulumi:"cloudwatches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + Datadogs []SloObjectiveRawMetricQueryDatadog `pulumi:"datadogs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + Dynatraces []SloObjectiveRawMetricQueryDynatrace `pulumi:"dynatraces"` + // [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + Elasticsearches []SloObjectiveRawMetricQueryElasticsearch `pulumi:"elasticsearches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + Gcms []SloObjectiveRawMetricQueryGcm `pulumi:"gcms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + GrafanaLokis []SloObjectiveRawMetricQueryGrafanaLoki `pulumi:"grafanaLokis"` + // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + Graphites []SloObjectiveRawMetricQueryGraphite `pulumi:"graphites"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + Honeycombs []SloObjectiveRawMetricQueryHoneycomb `pulumi:"honeycombs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + Influxdbs []SloObjectiveRawMetricQueryInfluxdb `pulumi:"influxdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + Instanas []SloObjectiveRawMetricQueryInstana `pulumi:"instanas"` + // [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + Lightsteps []SloObjectiveRawMetricQueryLightstep `pulumi:"lightsteps"` + // [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + Newrelics []SloObjectiveRawMetricQueryNewrelic `pulumi:"newrelics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + Opentsdbs []SloObjectiveRawMetricQueryOpentsdb `pulumi:"opentsdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + Pingdoms []SloObjectiveRawMetricQueryPingdom `pulumi:"pingdoms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + Prometheuses []SloObjectiveRawMetricQueryPrometheus `pulumi:"prometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + Redshifts []SloObjectiveRawMetricQueryRedshift `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) SplunkObservabilities []SloObjectiveRawMetricQuerySplunkObservability `pulumi:"splunkObservabilities"` - Splunks []SloObjectiveRawMetricQuerySplunk `pulumi:"splunks"` - Sumologics []SloObjectiveRawMetricQuerySumologic `pulumi:"sumologics"` - Thousandeyes []SloObjectiveRawMetricQueryThousandeye `pulumi:"thousandeyes"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + Splunks []SloObjectiveRawMetricQuerySplunk `pulumi:"splunks"` + // [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + Sumologics []SloObjectiveRawMetricQuerySumologic `pulumi:"sumologics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + Thousandeyes []SloObjectiveRawMetricQueryThousandeye `pulumi:"thousandeyes"` } // SloObjectiveRawMetricQueryInput is an input type that accepts SloObjectiveRawMetricQueryArgs and SloObjectiveRawMetricQueryOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInput` via: // -// SloObjectiveRawMetricQueryArgs{...} +// SloObjectiveRawMetricQueryArgs{...} type SloObjectiveRawMetricQueryInput interface { pulumi.Input @@ -15036,28 +22951,54 @@ type SloObjectiveRawMetricQueryInput interface { } type SloObjectiveRawMetricQueryArgs struct { - AmazonPrometheuses SloObjectiveRawMetricQueryAmazonPrometheusArrayInput `pulumi:"amazonPrometheuses"` - Appdynamics SloObjectiveRawMetricQueryAppdynamicArrayInput `pulumi:"appdynamics"` - Bigqueries SloObjectiveRawMetricQueryBigqueryArrayInput `pulumi:"bigqueries"` - Cloudwatches SloObjectiveRawMetricQueryCloudwatchArrayInput `pulumi:"cloudwatches"` - Datadogs SloObjectiveRawMetricQueryDatadogArrayInput `pulumi:"datadogs"` - Dynatraces SloObjectiveRawMetricQueryDynatraceArrayInput `pulumi:"dynatraces"` - Elasticsearches SloObjectiveRawMetricQueryElasticsearchArrayInput `pulumi:"elasticsearches"` - Gcms SloObjectiveRawMetricQueryGcmArrayInput `pulumi:"gcms"` - GrafanaLokis SloObjectiveRawMetricQueryGrafanaLokiArrayInput `pulumi:"grafanaLokis"` - Graphites SloObjectiveRawMetricQueryGraphiteArrayInput `pulumi:"graphites"` - Influxdbs SloObjectiveRawMetricQueryInfluxdbArrayInput `pulumi:"influxdbs"` - Instanas SloObjectiveRawMetricQueryInstanaArrayInput `pulumi:"instanas"` - Lightsteps SloObjectiveRawMetricQueryLightstepArrayInput `pulumi:"lightsteps"` - Newrelics SloObjectiveRawMetricQueryNewrelicArrayInput `pulumi:"newrelics"` - Opentsdbs SloObjectiveRawMetricQueryOpentsdbArrayInput `pulumi:"opentsdbs"` - Pingdoms SloObjectiveRawMetricQueryPingdomArrayInput `pulumi:"pingdoms"` - Prometheuses SloObjectiveRawMetricQueryPrometheusArrayInput `pulumi:"prometheuses"` - Redshifts SloObjectiveRawMetricQueryRedshiftArrayInput `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + AmazonPrometheuses SloObjectiveRawMetricQueryAmazonPrometheusArrayInput `pulumi:"amazonPrometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + Appdynamics SloObjectiveRawMetricQueryAppdynamicArrayInput `pulumi:"appdynamics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + AzureMonitors SloObjectiveRawMetricQueryAzureMonitorArrayInput `pulumi:"azureMonitors"` + // [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + Bigqueries SloObjectiveRawMetricQueryBigqueryArrayInput `pulumi:"bigqueries"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + Cloudwatches SloObjectiveRawMetricQueryCloudwatchArrayInput `pulumi:"cloudwatches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + Datadogs SloObjectiveRawMetricQueryDatadogArrayInput `pulumi:"datadogs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + Dynatraces SloObjectiveRawMetricQueryDynatraceArrayInput `pulumi:"dynatraces"` + // [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + Elasticsearches SloObjectiveRawMetricQueryElasticsearchArrayInput `pulumi:"elasticsearches"` + // [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + Gcms SloObjectiveRawMetricQueryGcmArrayInput `pulumi:"gcms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + GrafanaLokis SloObjectiveRawMetricQueryGrafanaLokiArrayInput `pulumi:"grafanaLokis"` + // [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + Graphites SloObjectiveRawMetricQueryGraphiteArrayInput `pulumi:"graphites"` + // [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + Honeycombs SloObjectiveRawMetricQueryHoneycombArrayInput `pulumi:"honeycombs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + Influxdbs SloObjectiveRawMetricQueryInfluxdbArrayInput `pulumi:"influxdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + Instanas SloObjectiveRawMetricQueryInstanaArrayInput `pulumi:"instanas"` + // [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + Lightsteps SloObjectiveRawMetricQueryLightstepArrayInput `pulumi:"lightsteps"` + // [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + Newrelics SloObjectiveRawMetricQueryNewrelicArrayInput `pulumi:"newrelics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + Opentsdbs SloObjectiveRawMetricQueryOpentsdbArrayInput `pulumi:"opentsdbs"` + // [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + Pingdoms SloObjectiveRawMetricQueryPingdomArrayInput `pulumi:"pingdoms"` + // [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + Prometheuses SloObjectiveRawMetricQueryPrometheusArrayInput `pulumi:"prometheuses"` + // [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + Redshifts SloObjectiveRawMetricQueryRedshiftArrayInput `pulumi:"redshifts"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) SplunkObservabilities SloObjectiveRawMetricQuerySplunkObservabilityArrayInput `pulumi:"splunkObservabilities"` - Splunks SloObjectiveRawMetricQuerySplunkArrayInput `pulumi:"splunks"` - Sumologics SloObjectiveRawMetricQuerySumologicArrayInput `pulumi:"sumologics"` - Thousandeyes SloObjectiveRawMetricQueryThousandeyeArrayInput `pulumi:"thousandeyes"` + // [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + Splunks SloObjectiveRawMetricQuerySplunkArrayInput `pulumi:"splunks"` + // [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + Sumologics SloObjectiveRawMetricQuerySumologicArrayInput `pulumi:"sumologics"` + // [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + Thousandeyes SloObjectiveRawMetricQueryThousandeyeArrayInput `pulumi:"thousandeyes"` } func (SloObjectiveRawMetricQueryArgs) ElementType() reflect.Type { @@ -15075,7 +23016,7 @@ func (i SloObjectiveRawMetricQueryArgs) ToSloObjectiveRawMetricQueryOutputWithCo // SloObjectiveRawMetricQueryArrayInput is an input type that accepts SloObjectiveRawMetricQueryArray and SloObjectiveRawMetricQueryArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryArrayInput` via: // -// SloObjectiveRawMetricQueryArray{ SloObjectiveRawMetricQueryArgs{...} } +// SloObjectiveRawMetricQueryArray{ SloObjectiveRawMetricQueryArgs{...} } type SloObjectiveRawMetricQueryArrayInput interface { pulumi.Input @@ -15111,94 +23052,126 @@ func (o SloObjectiveRawMetricQueryOutput) ToSloObjectiveRawMetricQueryOutputWith return o } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) func (o SloObjectiveRawMetricQueryOutput) AmazonPrometheuses() SloObjectiveRawMetricQueryAmazonPrometheusArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryAmazonPrometheus { return v.AmazonPrometheuses }).(SloObjectiveRawMetricQueryAmazonPrometheusArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) func (o SloObjectiveRawMetricQueryOutput) Appdynamics() SloObjectiveRawMetricQueryAppdynamicArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryAppdynamic { return v.Appdynamics }).(SloObjectiveRawMetricQueryAppdynamicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) +func (o SloObjectiveRawMetricQueryOutput) AzureMonitors() SloObjectiveRawMetricQueryAzureMonitorArrayOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryAzureMonitor { return v.AzureMonitors }).(SloObjectiveRawMetricQueryAzureMonitorArrayOutput) +} + +// [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) func (o SloObjectiveRawMetricQueryOutput) Bigqueries() SloObjectiveRawMetricQueryBigqueryArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryBigquery { return v.Bigqueries }).(SloObjectiveRawMetricQueryBigqueryArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) func (o SloObjectiveRawMetricQueryOutput) Cloudwatches() SloObjectiveRawMetricQueryCloudwatchArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryCloudwatch { return v.Cloudwatches }).(SloObjectiveRawMetricQueryCloudwatchArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) func (o SloObjectiveRawMetricQueryOutput) Datadogs() SloObjectiveRawMetricQueryDatadogArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryDatadog { return v.Datadogs }).(SloObjectiveRawMetricQueryDatadogArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) func (o SloObjectiveRawMetricQueryOutput) Dynatraces() SloObjectiveRawMetricQueryDynatraceArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryDynatrace { return v.Dynatraces }).(SloObjectiveRawMetricQueryDynatraceArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) func (o SloObjectiveRawMetricQueryOutput) Elasticsearches() SloObjectiveRawMetricQueryElasticsearchArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryElasticsearch { return v.Elasticsearches }).(SloObjectiveRawMetricQueryElasticsearchArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) func (o SloObjectiveRawMetricQueryOutput) Gcms() SloObjectiveRawMetricQueryGcmArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryGcm { return v.Gcms }).(SloObjectiveRawMetricQueryGcmArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) func (o SloObjectiveRawMetricQueryOutput) GrafanaLokis() SloObjectiveRawMetricQueryGrafanaLokiArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryGrafanaLoki { return v.GrafanaLokis }).(SloObjectiveRawMetricQueryGrafanaLokiArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) func (o SloObjectiveRawMetricQueryOutput) Graphites() SloObjectiveRawMetricQueryGraphiteArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryGraphite { return v.Graphites }).(SloObjectiveRawMetricQueryGraphiteArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) +func (o SloObjectiveRawMetricQueryOutput) Honeycombs() SloObjectiveRawMetricQueryHoneycombArrayOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryHoneycomb { return v.Honeycombs }).(SloObjectiveRawMetricQueryHoneycombArrayOutput) +} + +// [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) func (o SloObjectiveRawMetricQueryOutput) Influxdbs() SloObjectiveRawMetricQueryInfluxdbArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryInfluxdb { return v.Influxdbs }).(SloObjectiveRawMetricQueryInfluxdbArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) func (o SloObjectiveRawMetricQueryOutput) Instanas() SloObjectiveRawMetricQueryInstanaArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryInstana { return v.Instanas }).(SloObjectiveRawMetricQueryInstanaArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) func (o SloObjectiveRawMetricQueryOutput) Lightsteps() SloObjectiveRawMetricQueryLightstepArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryLightstep { return v.Lightsteps }).(SloObjectiveRawMetricQueryLightstepArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) func (o SloObjectiveRawMetricQueryOutput) Newrelics() SloObjectiveRawMetricQueryNewrelicArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryNewrelic { return v.Newrelics }).(SloObjectiveRawMetricQueryNewrelicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) func (o SloObjectiveRawMetricQueryOutput) Opentsdbs() SloObjectiveRawMetricQueryOpentsdbArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryOpentsdb { return v.Opentsdbs }).(SloObjectiveRawMetricQueryOpentsdbArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) func (o SloObjectiveRawMetricQueryOutput) Pingdoms() SloObjectiveRawMetricQueryPingdomArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryPingdom { return v.Pingdoms }).(SloObjectiveRawMetricQueryPingdomArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) func (o SloObjectiveRawMetricQueryOutput) Prometheuses() SloObjectiveRawMetricQueryPrometheusArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryPrometheus { return v.Prometheuses }).(SloObjectiveRawMetricQueryPrometheusArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) func (o SloObjectiveRawMetricQueryOutput) Redshifts() SloObjectiveRawMetricQueryRedshiftArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryRedshift { return v.Redshifts }).(SloObjectiveRawMetricQueryRedshiftArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) func (o SloObjectiveRawMetricQueryOutput) SplunkObservabilities() SloObjectiveRawMetricQuerySplunkObservabilityArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQuerySplunkObservability { return v.SplunkObservabilities }).(SloObjectiveRawMetricQuerySplunkObservabilityArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) func (o SloObjectiveRawMetricQueryOutput) Splunks() SloObjectiveRawMetricQuerySplunkArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQuerySplunk { return v.Splunks }).(SloObjectiveRawMetricQuerySplunkArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) func (o SloObjectiveRawMetricQueryOutput) Sumologics() SloObjectiveRawMetricQuerySumologicArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQuerySumologic { return v.Sumologics }).(SloObjectiveRawMetricQuerySumologicArrayOutput) } +// [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) func (o SloObjectiveRawMetricQueryOutput) Thousandeyes() SloObjectiveRawMetricQueryThousandeyeArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuery) []SloObjectiveRawMetricQueryThousandeye { return v.Thousandeyes }).(SloObjectiveRawMetricQueryThousandeyeArrayOutput) } @@ -15224,13 +23197,14 @@ func (o SloObjectiveRawMetricQueryArrayOutput) Index(i pulumi.IntInput) SloObjec } type SloObjectiveRawMetricQueryAmazonPrometheus struct { + // Query for the metrics Promql string `pulumi:"promql"` } // SloObjectiveRawMetricQueryAmazonPrometheusInput is an input type that accepts SloObjectiveRawMetricQueryAmazonPrometheusArgs and SloObjectiveRawMetricQueryAmazonPrometheusOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryAmazonPrometheusInput` via: // -// SloObjectiveRawMetricQueryAmazonPrometheusArgs{...} +// SloObjectiveRawMetricQueryAmazonPrometheusArgs{...} type SloObjectiveRawMetricQueryAmazonPrometheusInput interface { pulumi.Input @@ -15239,6 +23213,7 @@ type SloObjectiveRawMetricQueryAmazonPrometheusInput interface { } type SloObjectiveRawMetricQueryAmazonPrometheusArgs struct { + // Query for the metrics Promql pulumi.StringInput `pulumi:"promql"` } @@ -15257,7 +23232,7 @@ func (i SloObjectiveRawMetricQueryAmazonPrometheusArgs) ToSloObjectiveRawMetricQ // SloObjectiveRawMetricQueryAmazonPrometheusArrayInput is an input type that accepts SloObjectiveRawMetricQueryAmazonPrometheusArray and SloObjectiveRawMetricQueryAmazonPrometheusArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryAmazonPrometheusArrayInput` via: // -// SloObjectiveRawMetricQueryAmazonPrometheusArray{ SloObjectiveRawMetricQueryAmazonPrometheusArgs{...} } +// SloObjectiveRawMetricQueryAmazonPrometheusArray{ SloObjectiveRawMetricQueryAmazonPrometheusArgs{...} } type SloObjectiveRawMetricQueryAmazonPrometheusArrayInput interface { pulumi.Input @@ -15293,6 +23268,7 @@ func (o SloObjectiveRawMetricQueryAmazonPrometheusOutput) ToSloObjectiveRawMetri return o } +// Query for the metrics func (o SloObjectiveRawMetricQueryAmazonPrometheusOutput) Promql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryAmazonPrometheus) string { return v.Promql }).(pulumi.StringOutput) } @@ -15318,14 +23294,16 @@ func (o SloObjectiveRawMetricQueryAmazonPrometheusArrayOutput) Index(i pulumi.In } type SloObjectiveRawMetricQueryAppdynamic struct { + // Name of the added application ApplicationName string `pulumi:"applicationName"` - MetricPath string `pulumi:"metricPath"` + // Path to the metrics + MetricPath string `pulumi:"metricPath"` } // SloObjectiveRawMetricQueryAppdynamicInput is an input type that accepts SloObjectiveRawMetricQueryAppdynamicArgs and SloObjectiveRawMetricQueryAppdynamicOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryAppdynamicInput` via: // -// SloObjectiveRawMetricQueryAppdynamicArgs{...} +// SloObjectiveRawMetricQueryAppdynamicArgs{...} type SloObjectiveRawMetricQueryAppdynamicInput interface { pulumi.Input @@ -15334,8 +23312,10 @@ type SloObjectiveRawMetricQueryAppdynamicInput interface { } type SloObjectiveRawMetricQueryAppdynamicArgs struct { + // Name of the added application ApplicationName pulumi.StringInput `pulumi:"applicationName"` - MetricPath pulumi.StringInput `pulumi:"metricPath"` + // Path to the metrics + MetricPath pulumi.StringInput `pulumi:"metricPath"` } func (SloObjectiveRawMetricQueryAppdynamicArgs) ElementType() reflect.Type { @@ -15353,7 +23333,7 @@ func (i SloObjectiveRawMetricQueryAppdynamicArgs) ToSloObjectiveRawMetricQueryAp // SloObjectiveRawMetricQueryAppdynamicArrayInput is an input type that accepts SloObjectiveRawMetricQueryAppdynamicArray and SloObjectiveRawMetricQueryAppdynamicArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryAppdynamicArrayInput` via: // -// SloObjectiveRawMetricQueryAppdynamicArray{ SloObjectiveRawMetricQueryAppdynamicArgs{...} } +// SloObjectiveRawMetricQueryAppdynamicArray{ SloObjectiveRawMetricQueryAppdynamicArgs{...} } type SloObjectiveRawMetricQueryAppdynamicArrayInput interface { pulumi.Input @@ -15389,10 +23369,12 @@ func (o SloObjectiveRawMetricQueryAppdynamicOutput) ToSloObjectiveRawMetricQuery return o } +// Name of the added application func (o SloObjectiveRawMetricQueryAppdynamicOutput) ApplicationName() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryAppdynamic) string { return v.ApplicationName }).(pulumi.StringOutput) } +// Path to the metrics func (o SloObjectiveRawMetricQueryAppdynamicOutput) MetricPath() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryAppdynamic) string { return v.MetricPath }).(pulumi.StringOutput) } @@ -15417,16 +23399,404 @@ func (o SloObjectiveRawMetricQueryAppdynamicArrayOutput) Index(i pulumi.IntInput }).(SloObjectiveRawMetricQueryAppdynamicOutput) } +type SloObjectiveRawMetricQueryAzureMonitor struct { + // Aggregation type [Required for metrics] + Aggregation *string `pulumi:"aggregation"` + // Specifies source: 'metrics' or 'logs' + DataType string `pulumi:"dataType"` + // Dimensions of the metric [Optional for metrics] + Dimensions []SloObjectiveRawMetricQueryAzureMonitorDimension `pulumi:"dimensions"` + // Logs query in Kusto Query Language [Required for logs] + KqlQuery *string `pulumi:"kqlQuery"` + // Name of the metric [Required for metrics] + MetricName *string `pulumi:"metricName"` + // Namespace of the metric [Optional for metrics] + MetricNamespace *string `pulumi:"metricNamespace"` + // Identifier of the Azure Cloud resource [Required for metrics] + ResourceId *string `pulumi:"resourceId"` + // Log analytics workspace [Required for logs] + Workspaces []SloObjectiveRawMetricQueryAzureMonitorWorkspace `pulumi:"workspaces"` +} + +// SloObjectiveRawMetricQueryAzureMonitorInput is an input type that accepts SloObjectiveRawMetricQueryAzureMonitorArgs and SloObjectiveRawMetricQueryAzureMonitorOutput values. +// You can construct a concrete instance of `SloObjectiveRawMetricQueryAzureMonitorInput` via: +// +// SloObjectiveRawMetricQueryAzureMonitorArgs{...} +type SloObjectiveRawMetricQueryAzureMonitorInput interface { + pulumi.Input + + ToSloObjectiveRawMetricQueryAzureMonitorOutput() SloObjectiveRawMetricQueryAzureMonitorOutput + ToSloObjectiveRawMetricQueryAzureMonitorOutputWithContext(context.Context) SloObjectiveRawMetricQueryAzureMonitorOutput +} + +type SloObjectiveRawMetricQueryAzureMonitorArgs struct { + // Aggregation type [Required for metrics] + Aggregation pulumi.StringPtrInput `pulumi:"aggregation"` + // Specifies source: 'metrics' or 'logs' + DataType pulumi.StringInput `pulumi:"dataType"` + // Dimensions of the metric [Optional for metrics] + Dimensions SloObjectiveRawMetricQueryAzureMonitorDimensionArrayInput `pulumi:"dimensions"` + // Logs query in Kusto Query Language [Required for logs] + KqlQuery pulumi.StringPtrInput `pulumi:"kqlQuery"` + // Name of the metric [Required for metrics] + MetricName pulumi.StringPtrInput `pulumi:"metricName"` + // Namespace of the metric [Optional for metrics] + MetricNamespace pulumi.StringPtrInput `pulumi:"metricNamespace"` + // Identifier of the Azure Cloud resource [Required for metrics] + ResourceId pulumi.StringPtrInput `pulumi:"resourceId"` + // Log analytics workspace [Required for logs] + Workspaces SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayInput `pulumi:"workspaces"` +} + +func (SloObjectiveRawMetricQueryAzureMonitorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitor)(nil)).Elem() +} + +func (i SloObjectiveRawMetricQueryAzureMonitorArgs) ToSloObjectiveRawMetricQueryAzureMonitorOutput() SloObjectiveRawMetricQueryAzureMonitorOutput { + return i.ToSloObjectiveRawMetricQueryAzureMonitorOutputWithContext(context.Background()) +} + +func (i SloObjectiveRawMetricQueryAzureMonitorArgs) ToSloObjectiveRawMetricQueryAzureMonitorOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveRawMetricQueryAzureMonitorOutput) +} + +// SloObjectiveRawMetricQueryAzureMonitorArrayInput is an input type that accepts SloObjectiveRawMetricQueryAzureMonitorArray and SloObjectiveRawMetricQueryAzureMonitorArrayOutput values. +// You can construct a concrete instance of `SloObjectiveRawMetricQueryAzureMonitorArrayInput` via: +// +// SloObjectiveRawMetricQueryAzureMonitorArray{ SloObjectiveRawMetricQueryAzureMonitorArgs{...} } +type SloObjectiveRawMetricQueryAzureMonitorArrayInput interface { + pulumi.Input + + ToSloObjectiveRawMetricQueryAzureMonitorArrayOutput() SloObjectiveRawMetricQueryAzureMonitorArrayOutput + ToSloObjectiveRawMetricQueryAzureMonitorArrayOutputWithContext(context.Context) SloObjectiveRawMetricQueryAzureMonitorArrayOutput +} + +type SloObjectiveRawMetricQueryAzureMonitorArray []SloObjectiveRawMetricQueryAzureMonitorInput + +func (SloObjectiveRawMetricQueryAzureMonitorArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveRawMetricQueryAzureMonitor)(nil)).Elem() +} + +func (i SloObjectiveRawMetricQueryAzureMonitorArray) ToSloObjectiveRawMetricQueryAzureMonitorArrayOutput() SloObjectiveRawMetricQueryAzureMonitorArrayOutput { + return i.ToSloObjectiveRawMetricQueryAzureMonitorArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveRawMetricQueryAzureMonitorArray) ToSloObjectiveRawMetricQueryAzureMonitorArrayOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveRawMetricQueryAzureMonitorArrayOutput) +} + +type SloObjectiveRawMetricQueryAzureMonitorOutput struct{ *pulumi.OutputState } + +func (SloObjectiveRawMetricQueryAzureMonitorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitor)(nil)).Elem() +} + +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) ToSloObjectiveRawMetricQueryAzureMonitorOutput() SloObjectiveRawMetricQueryAzureMonitorOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) ToSloObjectiveRawMetricQueryAzureMonitorOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorOutput { + return o +} + +// Aggregation type [Required for metrics] +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) Aggregation() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitor) *string { return v.Aggregation }).(pulumi.StringPtrOutput) +} + +// Specifies source: 'metrics' or 'logs' +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) DataType() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitor) string { return v.DataType }).(pulumi.StringOutput) +} + +// Dimensions of the metric [Optional for metrics] +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) Dimensions() SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitor) []SloObjectiveRawMetricQueryAzureMonitorDimension { + return v.Dimensions + }).(SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput) +} + +// Logs query in Kusto Query Language [Required for logs] +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) KqlQuery() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitor) *string { return v.KqlQuery }).(pulumi.StringPtrOutput) +} + +// Name of the metric [Required for metrics] +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) MetricName() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitor) *string { return v.MetricName }).(pulumi.StringPtrOutput) +} + +// Namespace of the metric [Optional for metrics] +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) MetricNamespace() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitor) *string { return v.MetricNamespace }).(pulumi.StringPtrOutput) +} + +// Identifier of the Azure Cloud resource [Required for metrics] +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitor) *string { return v.ResourceId }).(pulumi.StringPtrOutput) +} + +// Log analytics workspace [Required for logs] +func (o SloObjectiveRawMetricQueryAzureMonitorOutput) Workspaces() SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitor) []SloObjectiveRawMetricQueryAzureMonitorWorkspace { + return v.Workspaces + }).(SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput) +} + +type SloObjectiveRawMetricQueryAzureMonitorArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveRawMetricQueryAzureMonitorArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveRawMetricQueryAzureMonitor)(nil)).Elem() +} + +func (o SloObjectiveRawMetricQueryAzureMonitorArrayOutput) ToSloObjectiveRawMetricQueryAzureMonitorArrayOutput() SloObjectiveRawMetricQueryAzureMonitorArrayOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorArrayOutput) ToSloObjectiveRawMetricQueryAzureMonitorArrayOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorArrayOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorArrayOutput) Index(i pulumi.IntInput) SloObjectiveRawMetricQueryAzureMonitorOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveRawMetricQueryAzureMonitor { + return vs[0].([]SloObjectiveRawMetricQueryAzureMonitor)[vs[1].(int)] + }).(SloObjectiveRawMetricQueryAzureMonitorOutput) +} + +type SloObjectiveRawMetricQueryAzureMonitorDimension struct { + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Burn rate value. + Value string `pulumi:"value"` +} + +// SloObjectiveRawMetricQueryAzureMonitorDimensionInput is an input type that accepts SloObjectiveRawMetricQueryAzureMonitorDimensionArgs and SloObjectiveRawMetricQueryAzureMonitorDimensionOutput values. +// You can construct a concrete instance of `SloObjectiveRawMetricQueryAzureMonitorDimensionInput` via: +// +// SloObjectiveRawMetricQueryAzureMonitorDimensionArgs{...} +type SloObjectiveRawMetricQueryAzureMonitorDimensionInput interface { + pulumi.Input + + ToSloObjectiveRawMetricQueryAzureMonitorDimensionOutput() SloObjectiveRawMetricQueryAzureMonitorDimensionOutput + ToSloObjectiveRawMetricQueryAzureMonitorDimensionOutputWithContext(context.Context) SloObjectiveRawMetricQueryAzureMonitorDimensionOutput +} + +type SloObjectiveRawMetricQueryAzureMonitorDimensionArgs struct { + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Burn rate value. + Value pulumi.StringInput `pulumi:"value"` +} + +func (SloObjectiveRawMetricQueryAzureMonitorDimensionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorDimension)(nil)).Elem() +} + +func (i SloObjectiveRawMetricQueryAzureMonitorDimensionArgs) ToSloObjectiveRawMetricQueryAzureMonitorDimensionOutput() SloObjectiveRawMetricQueryAzureMonitorDimensionOutput { + return i.ToSloObjectiveRawMetricQueryAzureMonitorDimensionOutputWithContext(context.Background()) +} + +func (i SloObjectiveRawMetricQueryAzureMonitorDimensionArgs) ToSloObjectiveRawMetricQueryAzureMonitorDimensionOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorDimensionOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveRawMetricQueryAzureMonitorDimensionOutput) +} + +// SloObjectiveRawMetricQueryAzureMonitorDimensionArrayInput is an input type that accepts SloObjectiveRawMetricQueryAzureMonitorDimensionArray and SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput values. +// You can construct a concrete instance of `SloObjectiveRawMetricQueryAzureMonitorDimensionArrayInput` via: +// +// SloObjectiveRawMetricQueryAzureMonitorDimensionArray{ SloObjectiveRawMetricQueryAzureMonitorDimensionArgs{...} } +type SloObjectiveRawMetricQueryAzureMonitorDimensionArrayInput interface { + pulumi.Input + + ToSloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput() SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput + ToSloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutputWithContext(context.Context) SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput +} + +type SloObjectiveRawMetricQueryAzureMonitorDimensionArray []SloObjectiveRawMetricQueryAzureMonitorDimensionInput + +func (SloObjectiveRawMetricQueryAzureMonitorDimensionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveRawMetricQueryAzureMonitorDimension)(nil)).Elem() +} + +func (i SloObjectiveRawMetricQueryAzureMonitorDimensionArray) ToSloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput() SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput { + return i.ToSloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveRawMetricQueryAzureMonitorDimensionArray) ToSloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput) +} + +type SloObjectiveRawMetricQueryAzureMonitorDimensionOutput struct{ *pulumi.OutputState } + +func (SloObjectiveRawMetricQueryAzureMonitorDimensionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorDimension)(nil)).Elem() +} + +func (o SloObjectiveRawMetricQueryAzureMonitorDimensionOutput) ToSloObjectiveRawMetricQueryAzureMonitorDimensionOutput() SloObjectiveRawMetricQueryAzureMonitorDimensionOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorDimensionOutput) ToSloObjectiveRawMetricQueryAzureMonitorDimensionOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorDimensionOutput { + return o +} + +// The name of the previously defined alert method. +func (o SloObjectiveRawMetricQueryAzureMonitorDimensionOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitorDimension) string { return v.Name }).(pulumi.StringOutput) +} + +// Burn rate value. +func (o SloObjectiveRawMetricQueryAzureMonitorDimensionOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitorDimension) string { return v.Value }).(pulumi.StringOutput) +} + +type SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveRawMetricQueryAzureMonitorDimension)(nil)).Elem() +} + +func (o SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput) ToSloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput() SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput) ToSloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput) Index(i pulumi.IntInput) SloObjectiveRawMetricQueryAzureMonitorDimensionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveRawMetricQueryAzureMonitorDimension { + return vs[0].([]SloObjectiveRawMetricQueryAzureMonitorDimension)[vs[1].(int)] + }).(SloObjectiveRawMetricQueryAzureMonitorDimensionOutput) +} + +type SloObjectiveRawMetricQueryAzureMonitorWorkspace struct { + // Resource group of the workspace + ResourceGroup string `pulumi:"resourceGroup"` + // Subscription ID of the workspace + SubscriptionId string `pulumi:"subscriptionId"` + // ID of the workspace + WorkspaceId string `pulumi:"workspaceId"` +} + +// SloObjectiveRawMetricQueryAzureMonitorWorkspaceInput is an input type that accepts SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs and SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput values. +// You can construct a concrete instance of `SloObjectiveRawMetricQueryAzureMonitorWorkspaceInput` via: +// +// SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs{...} +type SloObjectiveRawMetricQueryAzureMonitorWorkspaceInput interface { + pulumi.Input + + ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput() SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput + ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceOutputWithContext(context.Context) SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput +} + +type SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs struct { + // Resource group of the workspace + ResourceGroup pulumi.StringInput `pulumi:"resourceGroup"` + // Subscription ID of the workspace + SubscriptionId pulumi.StringInput `pulumi:"subscriptionId"` + // ID of the workspace + WorkspaceId pulumi.StringInput `pulumi:"workspaceId"` +} + +func (SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorWorkspace)(nil)).Elem() +} + +func (i SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs) ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput() SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput { + return i.ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceOutputWithContext(context.Background()) +} + +func (i SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs) ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput) +} + +// SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayInput is an input type that accepts SloObjectiveRawMetricQueryAzureMonitorWorkspaceArray and SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput values. +// You can construct a concrete instance of `SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayInput` via: +// +// SloObjectiveRawMetricQueryAzureMonitorWorkspaceArray{ SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs{...} } +type SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayInput interface { + pulumi.Input + + ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput() SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput + ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutputWithContext(context.Context) SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput +} + +type SloObjectiveRawMetricQueryAzureMonitorWorkspaceArray []SloObjectiveRawMetricQueryAzureMonitorWorkspaceInput + +func (SloObjectiveRawMetricQueryAzureMonitorWorkspaceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveRawMetricQueryAzureMonitorWorkspace)(nil)).Elem() +} + +func (i SloObjectiveRawMetricQueryAzureMonitorWorkspaceArray) ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput() SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput { + return i.ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveRawMetricQueryAzureMonitorWorkspaceArray) ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput) +} + +type SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput struct{ *pulumi.OutputState } + +func (SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorWorkspace)(nil)).Elem() +} + +func (o SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput) ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput() SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput) ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput { + return o +} + +// Resource group of the workspace +func (o SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput) ResourceGroup() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitorWorkspace) string { return v.ResourceGroup }).(pulumi.StringOutput) +} + +// Subscription ID of the workspace +func (o SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput) SubscriptionId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitorWorkspace) string { return v.SubscriptionId }).(pulumi.StringOutput) +} + +// ID of the workspace +func (o SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput) WorkspaceId() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryAzureMonitorWorkspace) string { return v.WorkspaceId }).(pulumi.StringOutput) +} + +type SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveRawMetricQueryAzureMonitorWorkspace)(nil)).Elem() +} + +func (o SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput) ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput() SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput) ToSloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput { + return o +} + +func (o SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput) Index(i pulumi.IntInput) SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveRawMetricQueryAzureMonitorWorkspace { + return vs[0].([]SloObjectiveRawMetricQueryAzureMonitorWorkspace)[vs[1].(int)] + }).(SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput) +} + type SloObjectiveRawMetricQueryBigquery struct { - Location string `pulumi:"location"` + // Location of you BigQuery + Location string `pulumi:"location"` + // Project ID ProjectId string `pulumi:"projectId"` - Query string `pulumi:"query"` + // Query for the metrics + Query string `pulumi:"query"` } // SloObjectiveRawMetricQueryBigqueryInput is an input type that accepts SloObjectiveRawMetricQueryBigqueryArgs and SloObjectiveRawMetricQueryBigqueryOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryBigqueryInput` via: // -// SloObjectiveRawMetricQueryBigqueryArgs{...} +// SloObjectiveRawMetricQueryBigqueryArgs{...} type SloObjectiveRawMetricQueryBigqueryInput interface { pulumi.Input @@ -15435,9 +23805,12 @@ type SloObjectiveRawMetricQueryBigqueryInput interface { } type SloObjectiveRawMetricQueryBigqueryArgs struct { - Location pulumi.StringInput `pulumi:"location"` + // Location of you BigQuery + Location pulumi.StringInput `pulumi:"location"` + // Project ID ProjectId pulumi.StringInput `pulumi:"projectId"` - Query pulumi.StringInput `pulumi:"query"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } func (SloObjectiveRawMetricQueryBigqueryArgs) ElementType() reflect.Type { @@ -15455,7 +23828,7 @@ func (i SloObjectiveRawMetricQueryBigqueryArgs) ToSloObjectiveRawMetricQueryBigq // SloObjectiveRawMetricQueryBigqueryArrayInput is an input type that accepts SloObjectiveRawMetricQueryBigqueryArray and SloObjectiveRawMetricQueryBigqueryArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryBigqueryArrayInput` via: // -// SloObjectiveRawMetricQueryBigqueryArray{ SloObjectiveRawMetricQueryBigqueryArgs{...} } +// SloObjectiveRawMetricQueryBigqueryArray{ SloObjectiveRawMetricQueryBigqueryArgs{...} } type SloObjectiveRawMetricQueryBigqueryArrayInput interface { pulumi.Input @@ -15491,14 +23864,17 @@ func (o SloObjectiveRawMetricQueryBigqueryOutput) ToSloObjectiveRawMetricQueryBi return o } +// Location of you BigQuery func (o SloObjectiveRawMetricQueryBigqueryOutput) Location() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryBigquery) string { return v.Location }).(pulumi.StringOutput) } +// Project ID func (o SloObjectiveRawMetricQueryBigqueryOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryBigquery) string { return v.ProjectId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveRawMetricQueryBigqueryOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryBigquery) string { return v.Query }).(pulumi.StringOutput) } @@ -15524,19 +23900,28 @@ func (o SloObjectiveRawMetricQueryBigqueryArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveRawMetricQueryCloudwatch struct { + // AccountID used with cross-account observability feature + AccountId *string `pulumi:"accountId"` + // Dimensions of the metric [Optional for metrics] Dimensions []SloObjectiveRawMetricQueryCloudwatchDimension `pulumi:"dimensions"` - Json *string `pulumi:"json"` - MetricName *string `pulumi:"metricName"` - Namespace *string `pulumi:"namespace"` - Region string `pulumi:"region"` - Sql *string `pulumi:"sql"` - Stat *string `pulumi:"stat"` + // JSON query + Json *string `pulumi:"json"` + // Name of the metric [Required for metrics] + MetricName *string `pulumi:"metricName"` + // Namespace of the metric + Namespace *string `pulumi:"namespace"` + // Region of the CloudWatch instance + Region string `pulumi:"region"` + // SQL query + Sql *string `pulumi:"sql"` + // Metric data aggregations + Stat *string `pulumi:"stat"` } // SloObjectiveRawMetricQueryCloudwatchInput is an input type that accepts SloObjectiveRawMetricQueryCloudwatchArgs and SloObjectiveRawMetricQueryCloudwatchOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryCloudwatchInput` via: // -// SloObjectiveRawMetricQueryCloudwatchArgs{...} +// SloObjectiveRawMetricQueryCloudwatchArgs{...} type SloObjectiveRawMetricQueryCloudwatchInput interface { pulumi.Input @@ -15545,13 +23930,22 @@ type SloObjectiveRawMetricQueryCloudwatchInput interface { } type SloObjectiveRawMetricQueryCloudwatchArgs struct { + // AccountID used with cross-account observability feature + AccountId pulumi.StringPtrInput `pulumi:"accountId"` + // Dimensions of the metric [Optional for metrics] Dimensions SloObjectiveRawMetricQueryCloudwatchDimensionArrayInput `pulumi:"dimensions"` - Json pulumi.StringPtrInput `pulumi:"json"` - MetricName pulumi.StringPtrInput `pulumi:"metricName"` - Namespace pulumi.StringPtrInput `pulumi:"namespace"` - Region pulumi.StringInput `pulumi:"region"` - Sql pulumi.StringPtrInput `pulumi:"sql"` - Stat pulumi.StringPtrInput `pulumi:"stat"` + // JSON query + Json pulumi.StringPtrInput `pulumi:"json"` + // Name of the metric [Required for metrics] + MetricName pulumi.StringPtrInput `pulumi:"metricName"` + // Namespace of the metric + Namespace pulumi.StringPtrInput `pulumi:"namespace"` + // Region of the CloudWatch instance + Region pulumi.StringInput `pulumi:"region"` + // SQL query + Sql pulumi.StringPtrInput `pulumi:"sql"` + // Metric data aggregations + Stat pulumi.StringPtrInput `pulumi:"stat"` } func (SloObjectiveRawMetricQueryCloudwatchArgs) ElementType() reflect.Type { @@ -15569,7 +23963,7 @@ func (i SloObjectiveRawMetricQueryCloudwatchArgs) ToSloObjectiveRawMetricQueryCl // SloObjectiveRawMetricQueryCloudwatchArrayInput is an input type that accepts SloObjectiveRawMetricQueryCloudwatchArray and SloObjectiveRawMetricQueryCloudwatchArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryCloudwatchArrayInput` via: // -// SloObjectiveRawMetricQueryCloudwatchArray{ SloObjectiveRawMetricQueryCloudwatchArgs{...} } +// SloObjectiveRawMetricQueryCloudwatchArray{ SloObjectiveRawMetricQueryCloudwatchArgs{...} } type SloObjectiveRawMetricQueryCloudwatchArrayInput interface { pulumi.Input @@ -15605,32 +23999,44 @@ func (o SloObjectiveRawMetricQueryCloudwatchOutput) ToSloObjectiveRawMetricQuery return o } +// AccountID used with cross-account observability feature +func (o SloObjectiveRawMetricQueryCloudwatchOutput) AccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatch) *string { return v.AccountId }).(pulumi.StringPtrOutput) +} + +// Dimensions of the metric [Optional for metrics] func (o SloObjectiveRawMetricQueryCloudwatchOutput) Dimensions() SloObjectiveRawMetricQueryCloudwatchDimensionArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatch) []SloObjectiveRawMetricQueryCloudwatchDimension { return v.Dimensions }).(SloObjectiveRawMetricQueryCloudwatchDimensionArrayOutput) } +// JSON query func (o SloObjectiveRawMetricQueryCloudwatchOutput) Json() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatch) *string { return v.Json }).(pulumi.StringPtrOutput) } +// Name of the metric [Required for metrics] func (o SloObjectiveRawMetricQueryCloudwatchOutput) MetricName() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatch) *string { return v.MetricName }).(pulumi.StringPtrOutput) } +// Namespace of the metric func (o SloObjectiveRawMetricQueryCloudwatchOutput) Namespace() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatch) *string { return v.Namespace }).(pulumi.StringPtrOutput) } +// Region of the CloudWatch instance func (o SloObjectiveRawMetricQueryCloudwatchOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatch) string { return v.Region }).(pulumi.StringOutput) } +// SQL query func (o SloObjectiveRawMetricQueryCloudwatchOutput) Sql() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatch) *string { return v.Sql }).(pulumi.StringPtrOutput) } +// Metric data aggregations func (o SloObjectiveRawMetricQueryCloudwatchOutput) Stat() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatch) *string { return v.Stat }).(pulumi.StringPtrOutput) } @@ -15656,15 +24062,16 @@ func (o SloObjectiveRawMetricQueryCloudwatchArrayOutput) Index(i pulumi.IntInput } type SloObjectiveRawMetricQueryCloudwatchDimension struct { - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - Name string `pulumi:"name"` + // The name of the previously defined alert method. + Name string `pulumi:"name"` + // Burn rate value. Value string `pulumi:"value"` } // SloObjectiveRawMetricQueryCloudwatchDimensionInput is an input type that accepts SloObjectiveRawMetricQueryCloudwatchDimensionArgs and SloObjectiveRawMetricQueryCloudwatchDimensionOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryCloudwatchDimensionInput` via: // -// SloObjectiveRawMetricQueryCloudwatchDimensionArgs{...} +// SloObjectiveRawMetricQueryCloudwatchDimensionArgs{...} type SloObjectiveRawMetricQueryCloudwatchDimensionInput interface { pulumi.Input @@ -15673,8 +24080,9 @@ type SloObjectiveRawMetricQueryCloudwatchDimensionInput interface { } type SloObjectiveRawMetricQueryCloudwatchDimensionArgs struct { - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - Name pulumi.StringInput `pulumi:"name"` + // The name of the previously defined alert method. + Name pulumi.StringInput `pulumi:"name"` + // Burn rate value. Value pulumi.StringInput `pulumi:"value"` } @@ -15693,7 +24101,7 @@ func (i SloObjectiveRawMetricQueryCloudwatchDimensionArgs) ToSloObjectiveRawMetr // SloObjectiveRawMetricQueryCloudwatchDimensionArrayInput is an input type that accepts SloObjectiveRawMetricQueryCloudwatchDimensionArray and SloObjectiveRawMetricQueryCloudwatchDimensionArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryCloudwatchDimensionArrayInput` via: // -// SloObjectiveRawMetricQueryCloudwatchDimensionArray{ SloObjectiveRawMetricQueryCloudwatchDimensionArgs{...} } +// SloObjectiveRawMetricQueryCloudwatchDimensionArray{ SloObjectiveRawMetricQueryCloudwatchDimensionArgs{...} } type SloObjectiveRawMetricQueryCloudwatchDimensionArrayInput interface { pulumi.Input @@ -15729,11 +24137,12 @@ func (o SloObjectiveRawMetricQueryCloudwatchDimensionOutput) ToSloObjectiveRawMe return o } -// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +// The name of the previously defined alert method. func (o SloObjectiveRawMetricQueryCloudwatchDimensionOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatchDimension) string { return v.Name }).(pulumi.StringOutput) } +// Burn rate value. func (o SloObjectiveRawMetricQueryCloudwatchDimensionOutput) Value() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryCloudwatchDimension) string { return v.Value }).(pulumi.StringOutput) } @@ -15759,13 +24168,14 @@ func (o SloObjectiveRawMetricQueryCloudwatchDimensionArrayOutput) Index(i pulumi } type SloObjectiveRawMetricQueryDatadog struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveRawMetricQueryDatadogInput is an input type that accepts SloObjectiveRawMetricQueryDatadogArgs and SloObjectiveRawMetricQueryDatadogOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryDatadogInput` via: // -// SloObjectiveRawMetricQueryDatadogArgs{...} +// SloObjectiveRawMetricQueryDatadogArgs{...} type SloObjectiveRawMetricQueryDatadogInput interface { pulumi.Input @@ -15774,6 +24184,7 @@ type SloObjectiveRawMetricQueryDatadogInput interface { } type SloObjectiveRawMetricQueryDatadogArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -15792,7 +24203,7 @@ func (i SloObjectiveRawMetricQueryDatadogArgs) ToSloObjectiveRawMetricQueryDatad // SloObjectiveRawMetricQueryDatadogArrayInput is an input type that accepts SloObjectiveRawMetricQueryDatadogArray and SloObjectiveRawMetricQueryDatadogArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryDatadogArrayInput` via: // -// SloObjectiveRawMetricQueryDatadogArray{ SloObjectiveRawMetricQueryDatadogArgs{...} } +// SloObjectiveRawMetricQueryDatadogArray{ SloObjectiveRawMetricQueryDatadogArgs{...} } type SloObjectiveRawMetricQueryDatadogArrayInput interface { pulumi.Input @@ -15828,6 +24239,7 @@ func (o SloObjectiveRawMetricQueryDatadogOutput) ToSloObjectiveRawMetricQueryDat return o } +// Query for the metrics func (o SloObjectiveRawMetricQueryDatadogOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryDatadog) string { return v.Query }).(pulumi.StringOutput) } @@ -15853,13 +24265,14 @@ func (o SloObjectiveRawMetricQueryDatadogArrayOutput) Index(i pulumi.IntInput) S } type SloObjectiveRawMetricQueryDynatrace struct { + // Selector for the metrics MetricSelector string `pulumi:"metricSelector"` } // SloObjectiveRawMetricQueryDynatraceInput is an input type that accepts SloObjectiveRawMetricQueryDynatraceArgs and SloObjectiveRawMetricQueryDynatraceOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryDynatraceInput` via: // -// SloObjectiveRawMetricQueryDynatraceArgs{...} +// SloObjectiveRawMetricQueryDynatraceArgs{...} type SloObjectiveRawMetricQueryDynatraceInput interface { pulumi.Input @@ -15868,6 +24281,7 @@ type SloObjectiveRawMetricQueryDynatraceInput interface { } type SloObjectiveRawMetricQueryDynatraceArgs struct { + // Selector for the metrics MetricSelector pulumi.StringInput `pulumi:"metricSelector"` } @@ -15886,7 +24300,7 @@ func (i SloObjectiveRawMetricQueryDynatraceArgs) ToSloObjectiveRawMetricQueryDyn // SloObjectiveRawMetricQueryDynatraceArrayInput is an input type that accepts SloObjectiveRawMetricQueryDynatraceArray and SloObjectiveRawMetricQueryDynatraceArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryDynatraceArrayInput` via: // -// SloObjectiveRawMetricQueryDynatraceArray{ SloObjectiveRawMetricQueryDynatraceArgs{...} } +// SloObjectiveRawMetricQueryDynatraceArray{ SloObjectiveRawMetricQueryDynatraceArgs{...} } type SloObjectiveRawMetricQueryDynatraceArrayInput interface { pulumi.Input @@ -15922,6 +24336,7 @@ func (o SloObjectiveRawMetricQueryDynatraceOutput) ToSloObjectiveRawMetricQueryD return o } +// Selector for the metrics func (o SloObjectiveRawMetricQueryDynatraceOutput) MetricSelector() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryDynatrace) string { return v.MetricSelector }).(pulumi.StringOutput) } @@ -15947,14 +24362,16 @@ func (o SloObjectiveRawMetricQueryDynatraceArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveRawMetricQueryElasticsearch struct { + // Index of metrics we want to query Index string `pulumi:"index"` + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveRawMetricQueryElasticsearchInput is an input type that accepts SloObjectiveRawMetricQueryElasticsearchArgs and SloObjectiveRawMetricQueryElasticsearchOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryElasticsearchInput` via: // -// SloObjectiveRawMetricQueryElasticsearchArgs{...} +// SloObjectiveRawMetricQueryElasticsearchArgs{...} type SloObjectiveRawMetricQueryElasticsearchInput interface { pulumi.Input @@ -15963,7 +24380,9 @@ type SloObjectiveRawMetricQueryElasticsearchInput interface { } type SloObjectiveRawMetricQueryElasticsearchArgs struct { + // Index of metrics we want to query Index pulumi.StringInput `pulumi:"index"` + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -15982,7 +24401,7 @@ func (i SloObjectiveRawMetricQueryElasticsearchArgs) ToSloObjectiveRawMetricQuer // SloObjectiveRawMetricQueryElasticsearchArrayInput is an input type that accepts SloObjectiveRawMetricQueryElasticsearchArray and SloObjectiveRawMetricQueryElasticsearchArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryElasticsearchArrayInput` via: // -// SloObjectiveRawMetricQueryElasticsearchArray{ SloObjectiveRawMetricQueryElasticsearchArgs{...} } +// SloObjectiveRawMetricQueryElasticsearchArray{ SloObjectiveRawMetricQueryElasticsearchArgs{...} } type SloObjectiveRawMetricQueryElasticsearchArrayInput interface { pulumi.Input @@ -16018,10 +24437,12 @@ func (o SloObjectiveRawMetricQueryElasticsearchOutput) ToSloObjectiveRawMetricQu return o } +// Index of metrics we want to query func (o SloObjectiveRawMetricQueryElasticsearchOutput) Index() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryElasticsearch) string { return v.Index }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveRawMetricQueryElasticsearchOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryElasticsearch) string { return v.Query }).(pulumi.StringOutput) } @@ -16047,14 +24468,16 @@ func (o SloObjectiveRawMetricQueryElasticsearchArrayOutput) Index(i pulumi.IntIn } type SloObjectiveRawMetricQueryGcm struct { + // Project ID ProjectId string `pulumi:"projectId"` - Query string `pulumi:"query"` + // Query for the metrics + Query string `pulumi:"query"` } // SloObjectiveRawMetricQueryGcmInput is an input type that accepts SloObjectiveRawMetricQueryGcmArgs and SloObjectiveRawMetricQueryGcmOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryGcmInput` via: // -// SloObjectiveRawMetricQueryGcmArgs{...} +// SloObjectiveRawMetricQueryGcmArgs{...} type SloObjectiveRawMetricQueryGcmInput interface { pulumi.Input @@ -16063,8 +24486,10 @@ type SloObjectiveRawMetricQueryGcmInput interface { } type SloObjectiveRawMetricQueryGcmArgs struct { + // Project ID ProjectId pulumi.StringInput `pulumi:"projectId"` - Query pulumi.StringInput `pulumi:"query"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` } func (SloObjectiveRawMetricQueryGcmArgs) ElementType() reflect.Type { @@ -16082,7 +24507,7 @@ func (i SloObjectiveRawMetricQueryGcmArgs) ToSloObjectiveRawMetricQueryGcmOutput // SloObjectiveRawMetricQueryGcmArrayInput is an input type that accepts SloObjectiveRawMetricQueryGcmArray and SloObjectiveRawMetricQueryGcmArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryGcmArrayInput` via: // -// SloObjectiveRawMetricQueryGcmArray{ SloObjectiveRawMetricQueryGcmArgs{...} } +// SloObjectiveRawMetricQueryGcmArray{ SloObjectiveRawMetricQueryGcmArgs{...} } type SloObjectiveRawMetricQueryGcmArrayInput interface { pulumi.Input @@ -16118,10 +24543,12 @@ func (o SloObjectiveRawMetricQueryGcmOutput) ToSloObjectiveRawMetricQueryGcmOutp return o } +// Project ID func (o SloObjectiveRawMetricQueryGcmOutput) ProjectId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryGcm) string { return v.ProjectId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveRawMetricQueryGcmOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryGcm) string { return v.Query }).(pulumi.StringOutput) } @@ -16147,13 +24574,14 @@ func (o SloObjectiveRawMetricQueryGcmArrayOutput) Index(i pulumi.IntInput) SloOb } type SloObjectiveRawMetricQueryGrafanaLoki struct { + // Query for the logs Logql string `pulumi:"logql"` } // SloObjectiveRawMetricQueryGrafanaLokiInput is an input type that accepts SloObjectiveRawMetricQueryGrafanaLokiArgs and SloObjectiveRawMetricQueryGrafanaLokiOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryGrafanaLokiInput` via: // -// SloObjectiveRawMetricQueryGrafanaLokiArgs{...} +// SloObjectiveRawMetricQueryGrafanaLokiArgs{...} type SloObjectiveRawMetricQueryGrafanaLokiInput interface { pulumi.Input @@ -16162,6 +24590,7 @@ type SloObjectiveRawMetricQueryGrafanaLokiInput interface { } type SloObjectiveRawMetricQueryGrafanaLokiArgs struct { + // Query for the logs Logql pulumi.StringInput `pulumi:"logql"` } @@ -16180,7 +24609,7 @@ func (i SloObjectiveRawMetricQueryGrafanaLokiArgs) ToSloObjectiveRawMetricQueryG // SloObjectiveRawMetricQueryGrafanaLokiArrayInput is an input type that accepts SloObjectiveRawMetricQueryGrafanaLokiArray and SloObjectiveRawMetricQueryGrafanaLokiArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryGrafanaLokiArrayInput` via: // -// SloObjectiveRawMetricQueryGrafanaLokiArray{ SloObjectiveRawMetricQueryGrafanaLokiArgs{...} } +// SloObjectiveRawMetricQueryGrafanaLokiArray{ SloObjectiveRawMetricQueryGrafanaLokiArgs{...} } type SloObjectiveRawMetricQueryGrafanaLokiArrayInput interface { pulumi.Input @@ -16216,6 +24645,7 @@ func (o SloObjectiveRawMetricQueryGrafanaLokiOutput) ToSloObjectiveRawMetricQuer return o } +// Query for the logs func (o SloObjectiveRawMetricQueryGrafanaLokiOutput) Logql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryGrafanaLoki) string { return v.Logql }).(pulumi.StringOutput) } @@ -16241,13 +24671,14 @@ func (o SloObjectiveRawMetricQueryGrafanaLokiArrayOutput) Index(i pulumi.IntInpu } type SloObjectiveRawMetricQueryGraphite struct { + // Path to the metrics MetricPath string `pulumi:"metricPath"` } // SloObjectiveRawMetricQueryGraphiteInput is an input type that accepts SloObjectiveRawMetricQueryGraphiteArgs and SloObjectiveRawMetricQueryGraphiteOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryGraphiteInput` via: // -// SloObjectiveRawMetricQueryGraphiteArgs{...} +// SloObjectiveRawMetricQueryGraphiteArgs{...} type SloObjectiveRawMetricQueryGraphiteInput interface { pulumi.Input @@ -16256,6 +24687,7 @@ type SloObjectiveRawMetricQueryGraphiteInput interface { } type SloObjectiveRawMetricQueryGraphiteArgs struct { + // Path to the metrics MetricPath pulumi.StringInput `pulumi:"metricPath"` } @@ -16274,7 +24706,7 @@ func (i SloObjectiveRawMetricQueryGraphiteArgs) ToSloObjectiveRawMetricQueryGrap // SloObjectiveRawMetricQueryGraphiteArrayInput is an input type that accepts SloObjectiveRawMetricQueryGraphiteArray and SloObjectiveRawMetricQueryGraphiteArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryGraphiteArrayInput` via: // -// SloObjectiveRawMetricQueryGraphiteArray{ SloObjectiveRawMetricQueryGraphiteArgs{...} } +// SloObjectiveRawMetricQueryGraphiteArray{ SloObjectiveRawMetricQueryGraphiteArgs{...} } type SloObjectiveRawMetricQueryGraphiteArrayInput interface { pulumi.Input @@ -16310,6 +24742,7 @@ func (o SloObjectiveRawMetricQueryGraphiteOutput) ToSloObjectiveRawMetricQueryGr return o } +// Path to the metrics func (o SloObjectiveRawMetricQueryGraphiteOutput) MetricPath() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryGraphite) string { return v.MetricPath }).(pulumi.StringOutput) } @@ -16334,14 +24767,121 @@ func (o SloObjectiveRawMetricQueryGraphiteArrayOutput) Index(i pulumi.IntInput) }).(SloObjectiveRawMetricQueryGraphiteOutput) } +type SloObjectiveRawMetricQueryHoneycomb struct { + // Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + Attribute *string `pulumi:"attribute"` + // Calculation type + Calculation string `pulumi:"calculation"` +} + +// SloObjectiveRawMetricQueryHoneycombInput is an input type that accepts SloObjectiveRawMetricQueryHoneycombArgs and SloObjectiveRawMetricQueryHoneycombOutput values. +// You can construct a concrete instance of `SloObjectiveRawMetricQueryHoneycombInput` via: +// +// SloObjectiveRawMetricQueryHoneycombArgs{...} +type SloObjectiveRawMetricQueryHoneycombInput interface { + pulumi.Input + + ToSloObjectiveRawMetricQueryHoneycombOutput() SloObjectiveRawMetricQueryHoneycombOutput + ToSloObjectiveRawMetricQueryHoneycombOutputWithContext(context.Context) SloObjectiveRawMetricQueryHoneycombOutput +} + +type SloObjectiveRawMetricQueryHoneycombArgs struct { + // Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + Attribute pulumi.StringPtrInput `pulumi:"attribute"` + // Calculation type + Calculation pulumi.StringInput `pulumi:"calculation"` +} + +func (SloObjectiveRawMetricQueryHoneycombArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveRawMetricQueryHoneycomb)(nil)).Elem() +} + +func (i SloObjectiveRawMetricQueryHoneycombArgs) ToSloObjectiveRawMetricQueryHoneycombOutput() SloObjectiveRawMetricQueryHoneycombOutput { + return i.ToSloObjectiveRawMetricQueryHoneycombOutputWithContext(context.Background()) +} + +func (i SloObjectiveRawMetricQueryHoneycombArgs) ToSloObjectiveRawMetricQueryHoneycombOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryHoneycombOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveRawMetricQueryHoneycombOutput) +} + +// SloObjectiveRawMetricQueryHoneycombArrayInput is an input type that accepts SloObjectiveRawMetricQueryHoneycombArray and SloObjectiveRawMetricQueryHoneycombArrayOutput values. +// You can construct a concrete instance of `SloObjectiveRawMetricQueryHoneycombArrayInput` via: +// +// SloObjectiveRawMetricQueryHoneycombArray{ SloObjectiveRawMetricQueryHoneycombArgs{...} } +type SloObjectiveRawMetricQueryHoneycombArrayInput interface { + pulumi.Input + + ToSloObjectiveRawMetricQueryHoneycombArrayOutput() SloObjectiveRawMetricQueryHoneycombArrayOutput + ToSloObjectiveRawMetricQueryHoneycombArrayOutputWithContext(context.Context) SloObjectiveRawMetricQueryHoneycombArrayOutput +} + +type SloObjectiveRawMetricQueryHoneycombArray []SloObjectiveRawMetricQueryHoneycombInput + +func (SloObjectiveRawMetricQueryHoneycombArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveRawMetricQueryHoneycomb)(nil)).Elem() +} + +func (i SloObjectiveRawMetricQueryHoneycombArray) ToSloObjectiveRawMetricQueryHoneycombArrayOutput() SloObjectiveRawMetricQueryHoneycombArrayOutput { + return i.ToSloObjectiveRawMetricQueryHoneycombArrayOutputWithContext(context.Background()) +} + +func (i SloObjectiveRawMetricQueryHoneycombArray) ToSloObjectiveRawMetricQueryHoneycombArrayOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryHoneycombArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SloObjectiveRawMetricQueryHoneycombArrayOutput) +} + +type SloObjectiveRawMetricQueryHoneycombOutput struct{ *pulumi.OutputState } + +func (SloObjectiveRawMetricQueryHoneycombOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SloObjectiveRawMetricQueryHoneycomb)(nil)).Elem() +} + +func (o SloObjectiveRawMetricQueryHoneycombOutput) ToSloObjectiveRawMetricQueryHoneycombOutput() SloObjectiveRawMetricQueryHoneycombOutput { + return o +} + +func (o SloObjectiveRawMetricQueryHoneycombOutput) ToSloObjectiveRawMetricQueryHoneycombOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryHoneycombOutput { + return o +} + +// Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' +func (o SloObjectiveRawMetricQueryHoneycombOutput) Attribute() pulumi.StringPtrOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryHoneycomb) *string { return v.Attribute }).(pulumi.StringPtrOutput) +} + +// Calculation type +func (o SloObjectiveRawMetricQueryHoneycombOutput) Calculation() pulumi.StringOutput { + return o.ApplyT(func(v SloObjectiveRawMetricQueryHoneycomb) string { return v.Calculation }).(pulumi.StringOutput) +} + +type SloObjectiveRawMetricQueryHoneycombArrayOutput struct{ *pulumi.OutputState } + +func (SloObjectiveRawMetricQueryHoneycombArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SloObjectiveRawMetricQueryHoneycomb)(nil)).Elem() +} + +func (o SloObjectiveRawMetricQueryHoneycombArrayOutput) ToSloObjectiveRawMetricQueryHoneycombArrayOutput() SloObjectiveRawMetricQueryHoneycombArrayOutput { + return o +} + +func (o SloObjectiveRawMetricQueryHoneycombArrayOutput) ToSloObjectiveRawMetricQueryHoneycombArrayOutputWithContext(ctx context.Context) SloObjectiveRawMetricQueryHoneycombArrayOutput { + return o +} + +func (o SloObjectiveRawMetricQueryHoneycombArrayOutput) Index(i pulumi.IntInput) SloObjectiveRawMetricQueryHoneycombOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SloObjectiveRawMetricQueryHoneycomb { + return vs[0].([]SloObjectiveRawMetricQueryHoneycomb)[vs[1].(int)] + }).(SloObjectiveRawMetricQueryHoneycombOutput) +} + type SloObjectiveRawMetricQueryInfluxdb struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveRawMetricQueryInfluxdbInput is an input type that accepts SloObjectiveRawMetricQueryInfluxdbArgs and SloObjectiveRawMetricQueryInfluxdbOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInfluxdbInput` via: // -// SloObjectiveRawMetricQueryInfluxdbArgs{...} +// SloObjectiveRawMetricQueryInfluxdbArgs{...} type SloObjectiveRawMetricQueryInfluxdbInput interface { pulumi.Input @@ -16350,6 +24890,7 @@ type SloObjectiveRawMetricQueryInfluxdbInput interface { } type SloObjectiveRawMetricQueryInfluxdbArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -16368,7 +24909,7 @@ func (i SloObjectiveRawMetricQueryInfluxdbArgs) ToSloObjectiveRawMetricQueryInfl // SloObjectiveRawMetricQueryInfluxdbArrayInput is an input type that accepts SloObjectiveRawMetricQueryInfluxdbArray and SloObjectiveRawMetricQueryInfluxdbArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInfluxdbArrayInput` via: // -// SloObjectiveRawMetricQueryInfluxdbArray{ SloObjectiveRawMetricQueryInfluxdbArgs{...} } +// SloObjectiveRawMetricQueryInfluxdbArray{ SloObjectiveRawMetricQueryInfluxdbArgs{...} } type SloObjectiveRawMetricQueryInfluxdbArrayInput interface { pulumi.Input @@ -16404,6 +24945,7 @@ func (o SloObjectiveRawMetricQueryInfluxdbOutput) ToSloObjectiveRawMetricQueryIn return o } +// Query for the metrics func (o SloObjectiveRawMetricQueryInfluxdbOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInfluxdb) string { return v.Query }).(pulumi.StringOutput) } @@ -16429,15 +24971,18 @@ func (o SloObjectiveRawMetricQueryInfluxdbArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveRawMetricQueryInstana struct { - Applications []SloObjectiveRawMetricQueryInstanaApplication `pulumi:"applications"` + // Infrastructure metric type + Applications []SloObjectiveRawMetricQueryInstanaApplication `pulumi:"applications"` + // Infrastructure metric type Infrastructures []SloObjectiveRawMetricQueryInstanaInfrastructure `pulumi:"infrastructures"` - MetricType string `pulumi:"metricType"` + // Instana metric type 'application' or 'infrastructure' + MetricType string `pulumi:"metricType"` } // SloObjectiveRawMetricQueryInstanaInput is an input type that accepts SloObjectiveRawMetricQueryInstanaArgs and SloObjectiveRawMetricQueryInstanaOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInstanaInput` via: // -// SloObjectiveRawMetricQueryInstanaArgs{...} +// SloObjectiveRawMetricQueryInstanaArgs{...} type SloObjectiveRawMetricQueryInstanaInput interface { pulumi.Input @@ -16446,9 +24991,12 @@ type SloObjectiveRawMetricQueryInstanaInput interface { } type SloObjectiveRawMetricQueryInstanaArgs struct { - Applications SloObjectiveRawMetricQueryInstanaApplicationArrayInput `pulumi:"applications"` + // Infrastructure metric type + Applications SloObjectiveRawMetricQueryInstanaApplicationArrayInput `pulumi:"applications"` + // Infrastructure metric type Infrastructures SloObjectiveRawMetricQueryInstanaInfrastructureArrayInput `pulumi:"infrastructures"` - MetricType pulumi.StringInput `pulumi:"metricType"` + // Instana metric type 'application' or 'infrastructure' + MetricType pulumi.StringInput `pulumi:"metricType"` } func (SloObjectiveRawMetricQueryInstanaArgs) ElementType() reflect.Type { @@ -16466,7 +25014,7 @@ func (i SloObjectiveRawMetricQueryInstanaArgs) ToSloObjectiveRawMetricQueryInsta // SloObjectiveRawMetricQueryInstanaArrayInput is an input type that accepts SloObjectiveRawMetricQueryInstanaArray and SloObjectiveRawMetricQueryInstanaArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInstanaArrayInput` via: // -// SloObjectiveRawMetricQueryInstanaArray{ SloObjectiveRawMetricQueryInstanaArgs{...} } +// SloObjectiveRawMetricQueryInstanaArray{ SloObjectiveRawMetricQueryInstanaArgs{...} } type SloObjectiveRawMetricQueryInstanaArrayInput interface { pulumi.Input @@ -16502,18 +25050,21 @@ func (o SloObjectiveRawMetricQueryInstanaOutput) ToSloObjectiveRawMetricQueryIns return o } +// Infrastructure metric type func (o SloObjectiveRawMetricQueryInstanaOutput) Applications() SloObjectiveRawMetricQueryInstanaApplicationArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstana) []SloObjectiveRawMetricQueryInstanaApplication { return v.Applications }).(SloObjectiveRawMetricQueryInstanaApplicationArrayOutput) } +// Infrastructure metric type func (o SloObjectiveRawMetricQueryInstanaOutput) Infrastructures() SloObjectiveRawMetricQueryInstanaInfrastructureArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstana) []SloObjectiveRawMetricQueryInstanaInfrastructure { return v.Infrastructures }).(SloObjectiveRawMetricQueryInstanaInfrastructureArrayOutput) } +// Instana metric type 'application' or 'infrastructure' func (o SloObjectiveRawMetricQueryInstanaOutput) MetricType() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstana) string { return v.MetricType }).(pulumi.StringOutput) } @@ -16539,18 +25090,24 @@ func (o SloObjectiveRawMetricQueryInstanaArrayOutput) Index(i pulumi.IntInput) S } type SloObjectiveRawMetricQueryInstanaApplication struct { - Aggregation string `pulumi:"aggregation"` - ApiQuery string `pulumi:"apiQuery"` - GroupBies []SloObjectiveRawMetricQueryInstanaApplicationGroupBy `pulumi:"groupBies"` - IncludeInternal *bool `pulumi:"includeInternal"` - IncludeSynthetic *bool `pulumi:"includeSynthetic"` - MetricId string `pulumi:"metricId"` + // Aggregation type [Required for metrics] + Aggregation string `pulumi:"aggregation"` + // API query user passes in a JSON format + ApiQuery string `pulumi:"apiQuery"` + // Group by method + GroupBies []SloObjectiveRawMetricQueryInstanaApplicationGroupBy `pulumi:"groupBies"` + // Include internal + IncludeInternal *bool `pulumi:"includeInternal"` + // Include synthetic + IncludeSynthetic *bool `pulumi:"includeSynthetic"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId string `pulumi:"metricId"` } // SloObjectiveRawMetricQueryInstanaApplicationInput is an input type that accepts SloObjectiveRawMetricQueryInstanaApplicationArgs and SloObjectiveRawMetricQueryInstanaApplicationOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInstanaApplicationInput` via: // -// SloObjectiveRawMetricQueryInstanaApplicationArgs{...} +// SloObjectiveRawMetricQueryInstanaApplicationArgs{...} type SloObjectiveRawMetricQueryInstanaApplicationInput interface { pulumi.Input @@ -16559,12 +25116,18 @@ type SloObjectiveRawMetricQueryInstanaApplicationInput interface { } type SloObjectiveRawMetricQueryInstanaApplicationArgs struct { - Aggregation pulumi.StringInput `pulumi:"aggregation"` - ApiQuery pulumi.StringInput `pulumi:"apiQuery"` - GroupBies SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayInput `pulumi:"groupBies"` - IncludeInternal pulumi.BoolPtrInput `pulumi:"includeInternal"` - IncludeSynthetic pulumi.BoolPtrInput `pulumi:"includeSynthetic"` - MetricId pulumi.StringInput `pulumi:"metricId"` + // Aggregation type [Required for metrics] + Aggregation pulumi.StringInput `pulumi:"aggregation"` + // API query user passes in a JSON format + ApiQuery pulumi.StringInput `pulumi:"apiQuery"` + // Group by method + GroupBies SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayInput `pulumi:"groupBies"` + // Include internal + IncludeInternal pulumi.BoolPtrInput `pulumi:"includeInternal"` + // Include synthetic + IncludeSynthetic pulumi.BoolPtrInput `pulumi:"includeSynthetic"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId pulumi.StringInput `pulumi:"metricId"` } func (SloObjectiveRawMetricQueryInstanaApplicationArgs) ElementType() reflect.Type { @@ -16582,7 +25145,7 @@ func (i SloObjectiveRawMetricQueryInstanaApplicationArgs) ToSloObjectiveRawMetri // SloObjectiveRawMetricQueryInstanaApplicationArrayInput is an input type that accepts SloObjectiveRawMetricQueryInstanaApplicationArray and SloObjectiveRawMetricQueryInstanaApplicationArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInstanaApplicationArrayInput` via: // -// SloObjectiveRawMetricQueryInstanaApplicationArray{ SloObjectiveRawMetricQueryInstanaApplicationArgs{...} } +// SloObjectiveRawMetricQueryInstanaApplicationArray{ SloObjectiveRawMetricQueryInstanaApplicationArgs{...} } type SloObjectiveRawMetricQueryInstanaApplicationArrayInput interface { pulumi.Input @@ -16618,28 +25181,34 @@ func (o SloObjectiveRawMetricQueryInstanaApplicationOutput) ToSloObjectiveRawMet return o } +// Aggregation type [Required for metrics] func (o SloObjectiveRawMetricQueryInstanaApplicationOutput) Aggregation() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaApplication) string { return v.Aggregation }).(pulumi.StringOutput) } +// API query user passes in a JSON format func (o SloObjectiveRawMetricQueryInstanaApplicationOutput) ApiQuery() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaApplication) string { return v.ApiQuery }).(pulumi.StringOutput) } +// Group by method func (o SloObjectiveRawMetricQueryInstanaApplicationOutput) GroupBies() SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaApplication) []SloObjectiveRawMetricQueryInstanaApplicationGroupBy { return v.GroupBies }).(SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayOutput) } +// Include internal func (o SloObjectiveRawMetricQueryInstanaApplicationOutput) IncludeInternal() pulumi.BoolPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaApplication) *bool { return v.IncludeInternal }).(pulumi.BoolPtrOutput) } +// Include synthetic func (o SloObjectiveRawMetricQueryInstanaApplicationOutput) IncludeSynthetic() pulumi.BoolPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaApplication) *bool { return v.IncludeSynthetic }).(pulumi.BoolPtrOutput) } +// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' func (o SloObjectiveRawMetricQueryInstanaApplicationOutput) MetricId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaApplication) string { return v.MetricId }).(pulumi.StringOutput) } @@ -16665,7 +25234,9 @@ func (o SloObjectiveRawMetricQueryInstanaApplicationArrayOutput) Index(i pulumi. } type SloObjectiveRawMetricQueryInstanaApplicationGroupBy struct { - Tag string `pulumi:"tag"` + // Group by tag + Tag string `pulumi:"tag"` + // Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' TagEntity string `pulumi:"tagEntity"` TagSecondLevelKey *string `pulumi:"tagSecondLevelKey"` } @@ -16673,7 +25244,7 @@ type SloObjectiveRawMetricQueryInstanaApplicationGroupBy struct { // SloObjectiveRawMetricQueryInstanaApplicationGroupByInput is an input type that accepts SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs and SloObjectiveRawMetricQueryInstanaApplicationGroupByOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInstanaApplicationGroupByInput` via: // -// SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs{...} +// SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs{...} type SloObjectiveRawMetricQueryInstanaApplicationGroupByInput interface { pulumi.Input @@ -16682,7 +25253,9 @@ type SloObjectiveRawMetricQueryInstanaApplicationGroupByInput interface { } type SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs struct { - Tag pulumi.StringInput `pulumi:"tag"` + // Group by tag + Tag pulumi.StringInput `pulumi:"tag"` + // Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' TagEntity pulumi.StringInput `pulumi:"tagEntity"` TagSecondLevelKey pulumi.StringPtrInput `pulumi:"tagSecondLevelKey"` } @@ -16702,7 +25275,7 @@ func (i SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs) ToSloObjectiveR // SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayInput is an input type that accepts SloObjectiveRawMetricQueryInstanaApplicationGroupByArray and SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayInput` via: // -// SloObjectiveRawMetricQueryInstanaApplicationGroupByArray{ SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs{...} } +// SloObjectiveRawMetricQueryInstanaApplicationGroupByArray{ SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs{...} } type SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayInput interface { pulumi.Input @@ -16738,10 +25311,12 @@ func (o SloObjectiveRawMetricQueryInstanaApplicationGroupByOutput) ToSloObjectiv return o } +// Group by tag func (o SloObjectiveRawMetricQueryInstanaApplicationGroupByOutput) Tag() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaApplicationGroupBy) string { return v.Tag }).(pulumi.StringOutput) } +// Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' func (o SloObjectiveRawMetricQueryInstanaApplicationGroupByOutput) TagEntity() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaApplicationGroupBy) string { return v.TagEntity }).(pulumi.StringOutput) } @@ -16771,17 +25346,22 @@ func (o SloObjectiveRawMetricQueryInstanaApplicationGroupByArrayOutput) Index(i } type SloObjectiveRawMetricQueryInstanaInfrastructure struct { - MetricId string `pulumi:"metricId"` - MetricRetrievalMethod string `pulumi:"metricRetrievalMethod"` - PluginId string `pulumi:"pluginId"` - Query *string `pulumi:"query"` - SnapshotId *string `pulumi:"snapshotId"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId string `pulumi:"metricId"` + // Metric retrieval method 'query' or 'snapshot' + MetricRetrievalMethod string `pulumi:"metricRetrievalMethod"` + // Plugin ID + PluginId string `pulumi:"pluginId"` + // Query for the metrics + Query *string `pulumi:"query"` + // Snapshot ID + SnapshotId *string `pulumi:"snapshotId"` } // SloObjectiveRawMetricQueryInstanaInfrastructureInput is an input type that accepts SloObjectiveRawMetricQueryInstanaInfrastructureArgs and SloObjectiveRawMetricQueryInstanaInfrastructureOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInstanaInfrastructureInput` via: // -// SloObjectiveRawMetricQueryInstanaInfrastructureArgs{...} +// SloObjectiveRawMetricQueryInstanaInfrastructureArgs{...} type SloObjectiveRawMetricQueryInstanaInfrastructureInput interface { pulumi.Input @@ -16790,11 +25370,16 @@ type SloObjectiveRawMetricQueryInstanaInfrastructureInput interface { } type SloObjectiveRawMetricQueryInstanaInfrastructureArgs struct { - MetricId pulumi.StringInput `pulumi:"metricId"` - MetricRetrievalMethod pulumi.StringInput `pulumi:"metricRetrievalMethod"` - PluginId pulumi.StringInput `pulumi:"pluginId"` - Query pulumi.StringPtrInput `pulumi:"query"` - SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"` + // Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + MetricId pulumi.StringInput `pulumi:"metricId"` + // Metric retrieval method 'query' or 'snapshot' + MetricRetrievalMethod pulumi.StringInput `pulumi:"metricRetrievalMethod"` + // Plugin ID + PluginId pulumi.StringInput `pulumi:"pluginId"` + // Query for the metrics + Query pulumi.StringPtrInput `pulumi:"query"` + // Snapshot ID + SnapshotId pulumi.StringPtrInput `pulumi:"snapshotId"` } func (SloObjectiveRawMetricQueryInstanaInfrastructureArgs) ElementType() reflect.Type { @@ -16812,7 +25397,7 @@ func (i SloObjectiveRawMetricQueryInstanaInfrastructureArgs) ToSloObjectiveRawMe // SloObjectiveRawMetricQueryInstanaInfrastructureArrayInput is an input type that accepts SloObjectiveRawMetricQueryInstanaInfrastructureArray and SloObjectiveRawMetricQueryInstanaInfrastructureArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryInstanaInfrastructureArrayInput` via: // -// SloObjectiveRawMetricQueryInstanaInfrastructureArray{ SloObjectiveRawMetricQueryInstanaInfrastructureArgs{...} } +// SloObjectiveRawMetricQueryInstanaInfrastructureArray{ SloObjectiveRawMetricQueryInstanaInfrastructureArgs{...} } type SloObjectiveRawMetricQueryInstanaInfrastructureArrayInput interface { pulumi.Input @@ -16848,22 +25433,27 @@ func (o SloObjectiveRawMetricQueryInstanaInfrastructureOutput) ToSloObjectiveRaw return o } +// Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' func (o SloObjectiveRawMetricQueryInstanaInfrastructureOutput) MetricId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaInfrastructure) string { return v.MetricId }).(pulumi.StringOutput) } +// Metric retrieval method 'query' or 'snapshot' func (o SloObjectiveRawMetricQueryInstanaInfrastructureOutput) MetricRetrievalMethod() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaInfrastructure) string { return v.MetricRetrievalMethod }).(pulumi.StringOutput) } +// Plugin ID func (o SloObjectiveRawMetricQueryInstanaInfrastructureOutput) PluginId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaInfrastructure) string { return v.PluginId }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveRawMetricQueryInstanaInfrastructureOutput) Query() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaInfrastructure) *string { return v.Query }).(pulumi.StringPtrOutput) } +// Snapshot ID func (o SloObjectiveRawMetricQueryInstanaInfrastructureOutput) SnapshotId() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryInstanaInfrastructure) *string { return v.SnapshotId }).(pulumi.StringPtrOutput) } @@ -16889,16 +25479,20 @@ func (o SloObjectiveRawMetricQueryInstanaInfrastructureArrayOutput) Index(i pulu } type SloObjectiveRawMetricQueryLightstep struct { + // Optional value to filter by percentiles Percentile *float64 `pulumi:"percentile"` - StreamId *string `pulumi:"streamId"` - TypeOfData string `pulumi:"typeOfData"` - Uql *string `pulumi:"uql"` + // ID of the metrics stream + StreamId *string `pulumi:"streamId"` + // Type of data to filter by + TypeOfData string `pulumi:"typeOfData"` + // UQL query + Uql *string `pulumi:"uql"` } // SloObjectiveRawMetricQueryLightstepInput is an input type that accepts SloObjectiveRawMetricQueryLightstepArgs and SloObjectiveRawMetricQueryLightstepOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryLightstepInput` via: // -// SloObjectiveRawMetricQueryLightstepArgs{...} +// SloObjectiveRawMetricQueryLightstepArgs{...} type SloObjectiveRawMetricQueryLightstepInput interface { pulumi.Input @@ -16907,10 +25501,14 @@ type SloObjectiveRawMetricQueryLightstepInput interface { } type SloObjectiveRawMetricQueryLightstepArgs struct { + // Optional value to filter by percentiles Percentile pulumi.Float64PtrInput `pulumi:"percentile"` - StreamId pulumi.StringPtrInput `pulumi:"streamId"` - TypeOfData pulumi.StringInput `pulumi:"typeOfData"` - Uql pulumi.StringPtrInput `pulumi:"uql"` + // ID of the metrics stream + StreamId pulumi.StringPtrInput `pulumi:"streamId"` + // Type of data to filter by + TypeOfData pulumi.StringInput `pulumi:"typeOfData"` + // UQL query + Uql pulumi.StringPtrInput `pulumi:"uql"` } func (SloObjectiveRawMetricQueryLightstepArgs) ElementType() reflect.Type { @@ -16928,7 +25526,7 @@ func (i SloObjectiveRawMetricQueryLightstepArgs) ToSloObjectiveRawMetricQueryLig // SloObjectiveRawMetricQueryLightstepArrayInput is an input type that accepts SloObjectiveRawMetricQueryLightstepArray and SloObjectiveRawMetricQueryLightstepArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryLightstepArrayInput` via: // -// SloObjectiveRawMetricQueryLightstepArray{ SloObjectiveRawMetricQueryLightstepArgs{...} } +// SloObjectiveRawMetricQueryLightstepArray{ SloObjectiveRawMetricQueryLightstepArgs{...} } type SloObjectiveRawMetricQueryLightstepArrayInput interface { pulumi.Input @@ -16964,18 +25562,22 @@ func (o SloObjectiveRawMetricQueryLightstepOutput) ToSloObjectiveRawMetricQueryL return o } +// Optional value to filter by percentiles func (o SloObjectiveRawMetricQueryLightstepOutput) Percentile() pulumi.Float64PtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryLightstep) *float64 { return v.Percentile }).(pulumi.Float64PtrOutput) } +// ID of the metrics stream func (o SloObjectiveRawMetricQueryLightstepOutput) StreamId() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryLightstep) *string { return v.StreamId }).(pulumi.StringPtrOutput) } +// Type of data to filter by func (o SloObjectiveRawMetricQueryLightstepOutput) TypeOfData() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryLightstep) string { return v.TypeOfData }).(pulumi.StringOutput) } +// UQL query func (o SloObjectiveRawMetricQueryLightstepOutput) Uql() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryLightstep) *string { return v.Uql }).(pulumi.StringPtrOutput) } @@ -17001,13 +25603,14 @@ func (o SloObjectiveRawMetricQueryLightstepArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveRawMetricQueryNewrelic struct { + // Query for the metrics Nrql string `pulumi:"nrql"` } // SloObjectiveRawMetricQueryNewrelicInput is an input type that accepts SloObjectiveRawMetricQueryNewrelicArgs and SloObjectiveRawMetricQueryNewrelicOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryNewrelicInput` via: // -// SloObjectiveRawMetricQueryNewrelicArgs{...} +// SloObjectiveRawMetricQueryNewrelicArgs{...} type SloObjectiveRawMetricQueryNewrelicInput interface { pulumi.Input @@ -17016,6 +25619,7 @@ type SloObjectiveRawMetricQueryNewrelicInput interface { } type SloObjectiveRawMetricQueryNewrelicArgs struct { + // Query for the metrics Nrql pulumi.StringInput `pulumi:"nrql"` } @@ -17034,7 +25638,7 @@ func (i SloObjectiveRawMetricQueryNewrelicArgs) ToSloObjectiveRawMetricQueryNewr // SloObjectiveRawMetricQueryNewrelicArrayInput is an input type that accepts SloObjectiveRawMetricQueryNewrelicArray and SloObjectiveRawMetricQueryNewrelicArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryNewrelicArrayInput` via: // -// SloObjectiveRawMetricQueryNewrelicArray{ SloObjectiveRawMetricQueryNewrelicArgs{...} } +// SloObjectiveRawMetricQueryNewrelicArray{ SloObjectiveRawMetricQueryNewrelicArgs{...} } type SloObjectiveRawMetricQueryNewrelicArrayInput interface { pulumi.Input @@ -17070,6 +25674,7 @@ func (o SloObjectiveRawMetricQueryNewrelicOutput) ToSloObjectiveRawMetricQueryNe return o } +// Query for the metrics func (o SloObjectiveRawMetricQueryNewrelicOutput) Nrql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryNewrelic) string { return v.Nrql }).(pulumi.StringOutput) } @@ -17095,13 +25700,14 @@ func (o SloObjectiveRawMetricQueryNewrelicArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveRawMetricQueryOpentsdb struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveRawMetricQueryOpentsdbInput is an input type that accepts SloObjectiveRawMetricQueryOpentsdbArgs and SloObjectiveRawMetricQueryOpentsdbOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryOpentsdbInput` via: // -// SloObjectiveRawMetricQueryOpentsdbArgs{...} +// SloObjectiveRawMetricQueryOpentsdbArgs{...} type SloObjectiveRawMetricQueryOpentsdbInput interface { pulumi.Input @@ -17110,6 +25716,7 @@ type SloObjectiveRawMetricQueryOpentsdbInput interface { } type SloObjectiveRawMetricQueryOpentsdbArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -17128,7 +25735,7 @@ func (i SloObjectiveRawMetricQueryOpentsdbArgs) ToSloObjectiveRawMetricQueryOpen // SloObjectiveRawMetricQueryOpentsdbArrayInput is an input type that accepts SloObjectiveRawMetricQueryOpentsdbArray and SloObjectiveRawMetricQueryOpentsdbArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryOpentsdbArrayInput` via: // -// SloObjectiveRawMetricQueryOpentsdbArray{ SloObjectiveRawMetricQueryOpentsdbArgs{...} } +// SloObjectiveRawMetricQueryOpentsdbArray{ SloObjectiveRawMetricQueryOpentsdbArgs{...} } type SloObjectiveRawMetricQueryOpentsdbArrayInput interface { pulumi.Input @@ -17164,6 +25771,7 @@ func (o SloObjectiveRawMetricQueryOpentsdbOutput) ToSloObjectiveRawMetricQueryOp return o } +// Query for the metrics func (o SloObjectiveRawMetricQueryOpentsdbOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryOpentsdb) string { return v.Query }).(pulumi.StringOutput) } @@ -17189,15 +25797,18 @@ func (o SloObjectiveRawMetricQueryOpentsdbArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveRawMetricQueryPingdom struct { - CheckId string `pulumi:"checkId"` + // Pingdom uptime or transaction check's ID + CheckId string `pulumi:"checkId"` + // Pingdom check type - uptime or transaction CheckType *string `pulumi:"checkType"` - Status *string `pulumi:"status"` + // Optional for the Uptime checks. Use it to filter the Pingdom check results by status + Status *string `pulumi:"status"` } // SloObjectiveRawMetricQueryPingdomInput is an input type that accepts SloObjectiveRawMetricQueryPingdomArgs and SloObjectiveRawMetricQueryPingdomOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryPingdomInput` via: // -// SloObjectiveRawMetricQueryPingdomArgs{...} +// SloObjectiveRawMetricQueryPingdomArgs{...} type SloObjectiveRawMetricQueryPingdomInput interface { pulumi.Input @@ -17206,9 +25817,12 @@ type SloObjectiveRawMetricQueryPingdomInput interface { } type SloObjectiveRawMetricQueryPingdomArgs struct { - CheckId pulumi.StringInput `pulumi:"checkId"` + // Pingdom uptime or transaction check's ID + CheckId pulumi.StringInput `pulumi:"checkId"` + // Pingdom check type - uptime or transaction CheckType pulumi.StringPtrInput `pulumi:"checkType"` - Status pulumi.StringPtrInput `pulumi:"status"` + // Optional for the Uptime checks. Use it to filter the Pingdom check results by status + Status pulumi.StringPtrInput `pulumi:"status"` } func (SloObjectiveRawMetricQueryPingdomArgs) ElementType() reflect.Type { @@ -17226,7 +25840,7 @@ func (i SloObjectiveRawMetricQueryPingdomArgs) ToSloObjectiveRawMetricQueryPingd // SloObjectiveRawMetricQueryPingdomArrayInput is an input type that accepts SloObjectiveRawMetricQueryPingdomArray and SloObjectiveRawMetricQueryPingdomArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryPingdomArrayInput` via: // -// SloObjectiveRawMetricQueryPingdomArray{ SloObjectiveRawMetricQueryPingdomArgs{...} } +// SloObjectiveRawMetricQueryPingdomArray{ SloObjectiveRawMetricQueryPingdomArgs{...} } type SloObjectiveRawMetricQueryPingdomArrayInput interface { pulumi.Input @@ -17262,14 +25876,17 @@ func (o SloObjectiveRawMetricQueryPingdomOutput) ToSloObjectiveRawMetricQueryPin return o } +// Pingdom uptime or transaction check's ID func (o SloObjectiveRawMetricQueryPingdomOutput) CheckId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryPingdom) string { return v.CheckId }).(pulumi.StringOutput) } +// Pingdom check type - uptime or transaction func (o SloObjectiveRawMetricQueryPingdomOutput) CheckType() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryPingdom) *string { return v.CheckType }).(pulumi.StringPtrOutput) } +// Optional for the Uptime checks. Use it to filter the Pingdom check results by status func (o SloObjectiveRawMetricQueryPingdomOutput) Status() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryPingdom) *string { return v.Status }).(pulumi.StringPtrOutput) } @@ -17295,13 +25912,14 @@ func (o SloObjectiveRawMetricQueryPingdomArrayOutput) Index(i pulumi.IntInput) S } type SloObjectiveRawMetricQueryPrometheus struct { + // Query for the metrics Promql string `pulumi:"promql"` } // SloObjectiveRawMetricQueryPrometheusInput is an input type that accepts SloObjectiveRawMetricQueryPrometheusArgs and SloObjectiveRawMetricQueryPrometheusOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryPrometheusInput` via: // -// SloObjectiveRawMetricQueryPrometheusArgs{...} +// SloObjectiveRawMetricQueryPrometheusArgs{...} type SloObjectiveRawMetricQueryPrometheusInput interface { pulumi.Input @@ -17310,6 +25928,7 @@ type SloObjectiveRawMetricQueryPrometheusInput interface { } type SloObjectiveRawMetricQueryPrometheusArgs struct { + // Query for the metrics Promql pulumi.StringInput `pulumi:"promql"` } @@ -17328,7 +25947,7 @@ func (i SloObjectiveRawMetricQueryPrometheusArgs) ToSloObjectiveRawMetricQueryPr // SloObjectiveRawMetricQueryPrometheusArrayInput is an input type that accepts SloObjectiveRawMetricQueryPrometheusArray and SloObjectiveRawMetricQueryPrometheusArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryPrometheusArrayInput` via: // -// SloObjectiveRawMetricQueryPrometheusArray{ SloObjectiveRawMetricQueryPrometheusArgs{...} } +// SloObjectiveRawMetricQueryPrometheusArray{ SloObjectiveRawMetricQueryPrometheusArgs{...} } type SloObjectiveRawMetricQueryPrometheusArrayInput interface { pulumi.Input @@ -17364,6 +25983,7 @@ func (o SloObjectiveRawMetricQueryPrometheusOutput) ToSloObjectiveRawMetricQuery return o } +// Query for the metrics func (o SloObjectiveRawMetricQueryPrometheusOutput) Promql() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryPrometheus) string { return v.Promql }).(pulumi.StringOutput) } @@ -17389,16 +26009,20 @@ func (o SloObjectiveRawMetricQueryPrometheusArrayOutput) Index(i pulumi.IntInput } type SloObjectiveRawMetricQueryRedshift struct { - ClusterId string `pulumi:"clusterId"` + // Redshift custer ID + ClusterId string `pulumi:"clusterId"` + // Database name DatabaseName string `pulumi:"databaseName"` - Query string `pulumi:"query"` - Region string `pulumi:"region"` + // Query for the metrics + Query string `pulumi:"query"` + // Region of the CloudWatch instance + Region string `pulumi:"region"` } // SloObjectiveRawMetricQueryRedshiftInput is an input type that accepts SloObjectiveRawMetricQueryRedshiftArgs and SloObjectiveRawMetricQueryRedshiftOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryRedshiftInput` via: // -// SloObjectiveRawMetricQueryRedshiftArgs{...} +// SloObjectiveRawMetricQueryRedshiftArgs{...} type SloObjectiveRawMetricQueryRedshiftInput interface { pulumi.Input @@ -17407,10 +26031,14 @@ type SloObjectiveRawMetricQueryRedshiftInput interface { } type SloObjectiveRawMetricQueryRedshiftArgs struct { - ClusterId pulumi.StringInput `pulumi:"clusterId"` + // Redshift custer ID + ClusterId pulumi.StringInput `pulumi:"clusterId"` + // Database name DatabaseName pulumi.StringInput `pulumi:"databaseName"` - Query pulumi.StringInput `pulumi:"query"` - Region pulumi.StringInput `pulumi:"region"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` + // Region of the CloudWatch instance + Region pulumi.StringInput `pulumi:"region"` } func (SloObjectiveRawMetricQueryRedshiftArgs) ElementType() reflect.Type { @@ -17428,7 +26056,7 @@ func (i SloObjectiveRawMetricQueryRedshiftArgs) ToSloObjectiveRawMetricQueryReds // SloObjectiveRawMetricQueryRedshiftArrayInput is an input type that accepts SloObjectiveRawMetricQueryRedshiftArray and SloObjectiveRawMetricQueryRedshiftArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryRedshiftArrayInput` via: // -// SloObjectiveRawMetricQueryRedshiftArray{ SloObjectiveRawMetricQueryRedshiftArgs{...} } +// SloObjectiveRawMetricQueryRedshiftArray{ SloObjectiveRawMetricQueryRedshiftArgs{...} } type SloObjectiveRawMetricQueryRedshiftArrayInput interface { pulumi.Input @@ -17464,18 +26092,22 @@ func (o SloObjectiveRawMetricQueryRedshiftOutput) ToSloObjectiveRawMetricQueryRe return o } +// Redshift custer ID func (o SloObjectiveRawMetricQueryRedshiftOutput) ClusterId() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryRedshift) string { return v.ClusterId }).(pulumi.StringOutput) } +// Database name func (o SloObjectiveRawMetricQueryRedshiftOutput) DatabaseName() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryRedshift) string { return v.DatabaseName }).(pulumi.StringOutput) } +// Query for the metrics func (o SloObjectiveRawMetricQueryRedshiftOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryRedshift) string { return v.Query }).(pulumi.StringOutput) } +// Region of the CloudWatch instance func (o SloObjectiveRawMetricQueryRedshiftOutput) Region() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryRedshift) string { return v.Region }).(pulumi.StringOutput) } @@ -17501,13 +26133,14 @@ func (o SloObjectiveRawMetricQueryRedshiftArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveRawMetricQuerySplunk struct { + // Query for the metrics Query string `pulumi:"query"` } // SloObjectiveRawMetricQuerySplunkInput is an input type that accepts SloObjectiveRawMetricQuerySplunkArgs and SloObjectiveRawMetricQuerySplunkOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQuerySplunkInput` via: // -// SloObjectiveRawMetricQuerySplunkArgs{...} +// SloObjectiveRawMetricQuerySplunkArgs{...} type SloObjectiveRawMetricQuerySplunkInput interface { pulumi.Input @@ -17516,6 +26149,7 @@ type SloObjectiveRawMetricQuerySplunkInput interface { } type SloObjectiveRawMetricQuerySplunkArgs struct { + // Query for the metrics Query pulumi.StringInput `pulumi:"query"` } @@ -17534,7 +26168,7 @@ func (i SloObjectiveRawMetricQuerySplunkArgs) ToSloObjectiveRawMetricQuerySplunk // SloObjectiveRawMetricQuerySplunkArrayInput is an input type that accepts SloObjectiveRawMetricQuerySplunkArray and SloObjectiveRawMetricQuerySplunkArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQuerySplunkArrayInput` via: // -// SloObjectiveRawMetricQuerySplunkArray{ SloObjectiveRawMetricQuerySplunkArgs{...} } +// SloObjectiveRawMetricQuerySplunkArray{ SloObjectiveRawMetricQuerySplunkArgs{...} } type SloObjectiveRawMetricQuerySplunkArrayInput interface { pulumi.Input @@ -17570,6 +26204,7 @@ func (o SloObjectiveRawMetricQuerySplunkOutput) ToSloObjectiveRawMetricQuerySplu return o } +// Query for the metrics func (o SloObjectiveRawMetricQuerySplunkOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuerySplunk) string { return v.Query }).(pulumi.StringOutput) } @@ -17595,13 +26230,14 @@ func (o SloObjectiveRawMetricQuerySplunkArrayOutput) Index(i pulumi.IntInput) Sl } type SloObjectiveRawMetricQuerySplunkObservability struct { + // Query for the metrics Program string `pulumi:"program"` } // SloObjectiveRawMetricQuerySplunkObservabilityInput is an input type that accepts SloObjectiveRawMetricQuerySplunkObservabilityArgs and SloObjectiveRawMetricQuerySplunkObservabilityOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQuerySplunkObservabilityInput` via: // -// SloObjectiveRawMetricQuerySplunkObservabilityArgs{...} +// SloObjectiveRawMetricQuerySplunkObservabilityArgs{...} type SloObjectiveRawMetricQuerySplunkObservabilityInput interface { pulumi.Input @@ -17610,6 +26246,7 @@ type SloObjectiveRawMetricQuerySplunkObservabilityInput interface { } type SloObjectiveRawMetricQuerySplunkObservabilityArgs struct { + // Query for the metrics Program pulumi.StringInput `pulumi:"program"` } @@ -17628,7 +26265,7 @@ func (i SloObjectiveRawMetricQuerySplunkObservabilityArgs) ToSloObjectiveRawMetr // SloObjectiveRawMetricQuerySplunkObservabilityArrayInput is an input type that accepts SloObjectiveRawMetricQuerySplunkObservabilityArray and SloObjectiveRawMetricQuerySplunkObservabilityArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQuerySplunkObservabilityArrayInput` via: // -// SloObjectiveRawMetricQuerySplunkObservabilityArray{ SloObjectiveRawMetricQuerySplunkObservabilityArgs{...} } +// SloObjectiveRawMetricQuerySplunkObservabilityArray{ SloObjectiveRawMetricQuerySplunkObservabilityArgs{...} } type SloObjectiveRawMetricQuerySplunkObservabilityArrayInput interface { pulumi.Input @@ -17664,6 +26301,7 @@ func (o SloObjectiveRawMetricQuerySplunkObservabilityOutput) ToSloObjectiveRawMe return o } +// Query for the metrics func (o SloObjectiveRawMetricQuerySplunkObservabilityOutput) Program() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuerySplunkObservability) string { return v.Program }).(pulumi.StringOutput) } @@ -17689,16 +26327,20 @@ func (o SloObjectiveRawMetricQuerySplunkObservabilityArrayOutput) Index(i pulumi } type SloObjectiveRawMetricQuerySumologic struct { + // Period of data aggregation Quantization *string `pulumi:"quantization"` - Query string `pulumi:"query"` - Rollup *string `pulumi:"rollup"` - Type string `pulumi:"type"` + // Query for the metrics + Query string `pulumi:"query"` + // Aggregation function - avg, sum, min, max, count, none + Rollup *string `pulumi:"rollup"` + // Sumologic source - metrics or logs + Type string `pulumi:"type"` } // SloObjectiveRawMetricQuerySumologicInput is an input type that accepts SloObjectiveRawMetricQuerySumologicArgs and SloObjectiveRawMetricQuerySumologicOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQuerySumologicInput` via: // -// SloObjectiveRawMetricQuerySumologicArgs{...} +// SloObjectiveRawMetricQuerySumologicArgs{...} type SloObjectiveRawMetricQuerySumologicInput interface { pulumi.Input @@ -17707,10 +26349,14 @@ type SloObjectiveRawMetricQuerySumologicInput interface { } type SloObjectiveRawMetricQuerySumologicArgs struct { + // Period of data aggregation Quantization pulumi.StringPtrInput `pulumi:"quantization"` - Query pulumi.StringInput `pulumi:"query"` - Rollup pulumi.StringPtrInput `pulumi:"rollup"` - Type pulumi.StringInput `pulumi:"type"` + // Query for the metrics + Query pulumi.StringInput `pulumi:"query"` + // Aggregation function - avg, sum, min, max, count, none + Rollup pulumi.StringPtrInput `pulumi:"rollup"` + // Sumologic source - metrics or logs + Type pulumi.StringInput `pulumi:"type"` } func (SloObjectiveRawMetricQuerySumologicArgs) ElementType() reflect.Type { @@ -17728,7 +26374,7 @@ func (i SloObjectiveRawMetricQuerySumologicArgs) ToSloObjectiveRawMetricQuerySum // SloObjectiveRawMetricQuerySumologicArrayInput is an input type that accepts SloObjectiveRawMetricQuerySumologicArray and SloObjectiveRawMetricQuerySumologicArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQuerySumologicArrayInput` via: // -// SloObjectiveRawMetricQuerySumologicArray{ SloObjectiveRawMetricQuerySumologicArgs{...} } +// SloObjectiveRawMetricQuerySumologicArray{ SloObjectiveRawMetricQuerySumologicArgs{...} } type SloObjectiveRawMetricQuerySumologicArrayInput interface { pulumi.Input @@ -17764,18 +26410,22 @@ func (o SloObjectiveRawMetricQuerySumologicOutput) ToSloObjectiveRawMetricQueryS return o } +// Period of data aggregation func (o SloObjectiveRawMetricQuerySumologicOutput) Quantization() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuerySumologic) *string { return v.Quantization }).(pulumi.StringPtrOutput) } +// Query for the metrics func (o SloObjectiveRawMetricQuerySumologicOutput) Query() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuerySumologic) string { return v.Query }).(pulumi.StringOutput) } +// Aggregation function - avg, sum, min, max, count, none func (o SloObjectiveRawMetricQuerySumologicOutput) Rollup() pulumi.StringPtrOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuerySumologic) *string { return v.Rollup }).(pulumi.StringPtrOutput) } +// Sumologic source - metrics or logs func (o SloObjectiveRawMetricQuerySumologicOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v SloObjectiveRawMetricQuerySumologic) string { return v.Type }).(pulumi.StringOutput) } @@ -17801,13 +26451,14 @@ func (o SloObjectiveRawMetricQuerySumologicArrayOutput) Index(i pulumi.IntInput) } type SloObjectiveRawMetricQueryThousandeye struct { + // ID of the test TestId int `pulumi:"testId"` } // SloObjectiveRawMetricQueryThousandeyeInput is an input type that accepts SloObjectiveRawMetricQueryThousandeyeArgs and SloObjectiveRawMetricQueryThousandeyeOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryThousandeyeInput` via: // -// SloObjectiveRawMetricQueryThousandeyeArgs{...} +// SloObjectiveRawMetricQueryThousandeyeArgs{...} type SloObjectiveRawMetricQueryThousandeyeInput interface { pulumi.Input @@ -17816,6 +26467,7 @@ type SloObjectiveRawMetricQueryThousandeyeInput interface { } type SloObjectiveRawMetricQueryThousandeyeArgs struct { + // ID of the test TestId pulumi.IntInput `pulumi:"testId"` } @@ -17834,7 +26486,7 @@ func (i SloObjectiveRawMetricQueryThousandeyeArgs) ToSloObjectiveRawMetricQueryT // SloObjectiveRawMetricQueryThousandeyeArrayInput is an input type that accepts SloObjectiveRawMetricQueryThousandeyeArray and SloObjectiveRawMetricQueryThousandeyeArrayOutput values. // You can construct a concrete instance of `SloObjectiveRawMetricQueryThousandeyeArrayInput` via: // -// SloObjectiveRawMetricQueryThousandeyeArray{ SloObjectiveRawMetricQueryThousandeyeArgs{...} } +// SloObjectiveRawMetricQueryThousandeyeArray{ SloObjectiveRawMetricQueryThousandeyeArgs{...} } type SloObjectiveRawMetricQueryThousandeyeArrayInput interface { pulumi.Input @@ -17870,6 +26522,7 @@ func (o SloObjectiveRawMetricQueryThousandeyeOutput) ToSloObjectiveRawMetricQuer return o } +// ID of the test func (o SloObjectiveRawMetricQueryThousandeyeOutput) TestId() pulumi.IntOutput { return o.ApplyT(func(v SloObjectiveRawMetricQueryThousandeye) int { return v.TestId }).(pulumi.IntOutput) } @@ -17910,7 +26563,7 @@ type SloTimeWindow struct { // SloTimeWindowInput is an input type that accepts SloTimeWindowArgs and SloTimeWindowOutput values. // You can construct a concrete instance of `SloTimeWindowInput` via: // -// SloTimeWindowArgs{...} +// SloTimeWindowArgs{...} type SloTimeWindowInput interface { pulumi.Input @@ -17954,11 +26607,11 @@ func (i SloTimeWindowArgs) ToSloTimeWindowPtrOutputWithContext(ctx context.Conte // SloTimeWindowPtrInput is an input type that accepts SloTimeWindowArgs, SloTimeWindowPtr and SloTimeWindowPtrOutput values. // You can construct a concrete instance of `SloTimeWindowPtrInput` via: // -// SloTimeWindowArgs{...} +// SloTimeWindowArgs{...} // -// or: +// or: // -// nil +// nil type SloTimeWindowPtrInput interface { pulumi.Input @@ -18108,14 +26761,16 @@ func (o SloTimeWindowPtrOutput) Unit() pulumi.StringPtrOutput { } type SloTimeWindowCalendar struct { + // Date of the start StartTime string `pulumi:"startTime"` - TimeZone string `pulumi:"timeZone"` + // Timezone name in IANA Time Zone Database + TimeZone string `pulumi:"timeZone"` } // SloTimeWindowCalendarInput is an input type that accepts SloTimeWindowCalendarArgs and SloTimeWindowCalendarOutput values. // You can construct a concrete instance of `SloTimeWindowCalendarInput` via: // -// SloTimeWindowCalendarArgs{...} +// SloTimeWindowCalendarArgs{...} type SloTimeWindowCalendarInput interface { pulumi.Input @@ -18124,8 +26779,10 @@ type SloTimeWindowCalendarInput interface { } type SloTimeWindowCalendarArgs struct { + // Date of the start StartTime pulumi.StringInput `pulumi:"startTime"` - TimeZone pulumi.StringInput `pulumi:"timeZone"` + // Timezone name in IANA Time Zone Database + TimeZone pulumi.StringInput `pulumi:"timeZone"` } func (SloTimeWindowCalendarArgs) ElementType() reflect.Type { @@ -18143,7 +26800,7 @@ func (i SloTimeWindowCalendarArgs) ToSloTimeWindowCalendarOutputWithContext(ctx // SloTimeWindowCalendarArrayInput is an input type that accepts SloTimeWindowCalendarArray and SloTimeWindowCalendarArrayOutput values. // You can construct a concrete instance of `SloTimeWindowCalendarArrayInput` via: // -// SloTimeWindowCalendarArray{ SloTimeWindowCalendarArgs{...} } +// SloTimeWindowCalendarArray{ SloTimeWindowCalendarArgs{...} } type SloTimeWindowCalendarArrayInput interface { pulumi.Input @@ -18179,10 +26836,12 @@ func (o SloTimeWindowCalendarOutput) ToSloTimeWindowCalendarOutputWithContext(ct return o } +// Date of the start func (o SloTimeWindowCalendarOutput) StartTime() pulumi.StringOutput { return o.ApplyT(func(v SloTimeWindowCalendar) string { return v.StartTime }).(pulumi.StringOutput) } +// Timezone name in IANA Time Zone Database func (o SloTimeWindowCalendarOutput) TimeZone() pulumi.StringOutput { return o.ApplyT(func(v SloTimeWindowCalendar) string { return v.TimeZone }).(pulumi.StringOutput) } @@ -18212,6 +26871,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AgentAmazonPrometheusConfigPtrInput)(nil)).Elem(), AgentAmazonPrometheusConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentAppdynamicsConfigInput)(nil)).Elem(), AgentAppdynamicsConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentAppdynamicsConfigPtrInput)(nil)).Elem(), AgentAppdynamicsConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentAzureMonitorConfigInput)(nil)).Elem(), AgentAzureMonitorConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentAzureMonitorConfigPtrInput)(nil)).Elem(), AgentAzureMonitorConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentBigqueryConfigInput)(nil)).Elem(), AgentBigqueryConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentBigqueryConfigPtrInput)(nil)).Elem(), AgentBigqueryConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentCloudwatchConfigInput)(nil)).Elem(), AgentCloudwatchConfigArgs{}) @@ -18228,6 +26889,14 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AgentGrafanaLokiConfigPtrInput)(nil)).Elem(), AgentGrafanaLokiConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentGraphiteConfigInput)(nil)).Elem(), AgentGraphiteConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentGraphiteConfigPtrInput)(nil)).Elem(), AgentGraphiteConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentHistoricalDataRetrievalInput)(nil)).Elem(), AgentHistoricalDataRetrievalArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentHistoricalDataRetrievalPtrInput)(nil)).Elem(), AgentHistoricalDataRetrievalArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentHistoricalDataRetrievalDefaultDurationInput)(nil)).Elem(), AgentHistoricalDataRetrievalDefaultDurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentHistoricalDataRetrievalDefaultDurationArrayInput)(nil)).Elem(), AgentHistoricalDataRetrievalDefaultDurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentHistoricalDataRetrievalMaxDurationInput)(nil)).Elem(), AgentHistoricalDataRetrievalMaxDurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentHistoricalDataRetrievalMaxDurationArrayInput)(nil)).Elem(), AgentHistoricalDataRetrievalMaxDurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentHoneycombConfigInput)(nil)).Elem(), AgentHoneycombConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AgentHoneycombConfigPtrInput)(nil)).Elem(), AgentHoneycombConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentInfluxdbConfigInput)(nil)).Elem(), AgentInfluxdbConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentInfluxdbConfigPtrInput)(nil)).Elem(), AgentInfluxdbConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentInstanaConfigInput)(nil)).Elem(), AgentInstanaConfigArgs{}) @@ -18254,12 +26923,28 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AgentSumologicConfigPtrInput)(nil)).Elem(), AgentSumologicConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentThousandeyesConfigInput)(nil)).Elem(), AgentThousandeyesConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AgentThousandeyesConfigPtrInput)(nil)).Elem(), AgentThousandeyesConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AlertMethodPagerdutySendResolutionInput)(nil)).Elem(), AlertMethodPagerdutySendResolutionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*AlertMethodPagerdutySendResolutionPtrInput)(nil)).Elem(), AlertMethodPagerdutySendResolutionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AlertPolicyAlertMethodInput)(nil)).Elem(), AlertPolicyAlertMethodArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AlertPolicyAlertMethodArrayInput)(nil)).Elem(), AlertPolicyAlertMethodArray{}) pulumi.RegisterInputType(reflect.TypeOf((*AlertPolicyConditionInput)(nil)).Elem(), AlertPolicyConditionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AlertPolicyConditionArrayInput)(nil)).Elem(), AlertPolicyConditionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalInput)(nil)).Elem(), DirectAppdynamicsHistoricalDataRetrievalArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalPtrInput)(nil)).Elem(), DirectAppdynamicsHistoricalDataRetrievalArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalDefaultDurationInput)(nil)).Elem(), DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayInput)(nil)).Elem(), DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalMaxDurationInput)(nil)).Elem(), DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayInput)(nil)).Elem(), DirectAppdynamicsHistoricalDataRetrievalMaxDurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectAppdynamicsQueryDelayInput)(nil)).Elem(), DirectAppdynamicsQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectAppdynamicsQueryDelayPtrInput)(nil)).Elem(), DirectAppdynamicsQueryDelayArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalInput)(nil)).Elem(), DirectAzureMonitorHistoricalDataRetrievalArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalPtrInput)(nil)).Elem(), DirectAzureMonitorHistoricalDataRetrievalArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalDefaultDurationInput)(nil)).Elem(), DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayInput)(nil)).Elem(), DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalMaxDurationInput)(nil)).Elem(), DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayInput)(nil)).Elem(), DirectAzureMonitorHistoricalDataRetrievalMaxDurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorQueryDelayInput)(nil)).Elem(), DirectAzureMonitorQueryDelayArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectAzureMonitorQueryDelayPtrInput)(nil)).Elem(), DirectAzureMonitorQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectBigqueryQueryDelayInput)(nil)).Elem(), DirectBigqueryQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectBigqueryQueryDelayPtrInput)(nil)).Elem(), DirectBigqueryQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectCloudwatchHistoricalDataRetrievalInput)(nil)).Elem(), DirectCloudwatchHistoricalDataRetrievalArgs{}) @@ -18288,6 +26973,14 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DirectDynatraceQueryDelayPtrInput)(nil)).Elem(), DirectDynatraceQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectGcmQueryDelayInput)(nil)).Elem(), DirectGcmQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectGcmQueryDelayPtrInput)(nil)).Elem(), DirectGcmQueryDelayArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalInput)(nil)).Elem(), DirectHoneycombHistoricalDataRetrievalArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalPtrInput)(nil)).Elem(), DirectHoneycombHistoricalDataRetrievalArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalDefaultDurationInput)(nil)).Elem(), DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayInput)(nil)).Elem(), DirectHoneycombHistoricalDataRetrievalDefaultDurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalMaxDurationInput)(nil)).Elem(), DirectHoneycombHistoricalDataRetrievalMaxDurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombHistoricalDataRetrievalMaxDurationArrayInput)(nil)).Elem(), DirectHoneycombHistoricalDataRetrievalMaxDurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombQueryDelayInput)(nil)).Elem(), DirectHoneycombQueryDelayArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DirectHoneycombQueryDelayPtrInput)(nil)).Elem(), DirectHoneycombQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectInfluxdbQueryDelayInput)(nil)).Elem(), DirectInfluxdbQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectInfluxdbQueryDelayPtrInput)(nil)).Elem(), DirectInfluxdbQueryDelayArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DirectInstanaQueryDelayInput)(nil)).Elem(), DirectInstanaQueryDelayArgs{}) @@ -18330,6 +27023,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ProjectLabelArrayInput)(nil)).Elem(), ProjectLabelArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ServiceLabelInput)(nil)).Elem(), ServiceLabelArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServiceLabelArrayInput)(nil)).Elem(), ServiceLabelArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloAnomalyConfigInput)(nil)).Elem(), SloAnomalyConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloAnomalyConfigPtrInput)(nil)).Elem(), SloAnomalyConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloAnomalyConfigNoDataInput)(nil)).Elem(), SloAnomalyConfigNoDataArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloAnomalyConfigNoDataPtrInput)(nil)).Elem(), SloAnomalyConfigNoDataArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloAnomalyConfigNoDataAlertMethodInput)(nil)).Elem(), SloAnomalyConfigNoDataAlertMethodArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloAnomalyConfigNoDataAlertMethodArrayInput)(nil)).Elem(), SloAnomalyConfigNoDataAlertMethodArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloAttachmentInput)(nil)).Elem(), SloAttachmentArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloAttachmentArrayInput)(nil)).Elem(), SloAttachmentArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloCompositeInput)(nil)).Elem(), SloCompositeArgs{}) @@ -18344,12 +27043,80 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveArrayInput)(nil)).Elem(), SloObjectiveArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricInput)(nil)).Elem(), SloObjectiveCountMetricArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricArrayInput)(nil)).Elem(), SloObjectiveCountMetricArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInput)(nil)).Elem(), SloObjectiveCountMetricBadArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAmazonPrometheusInput)(nil)).Elem(), SloObjectiveCountMetricBadAmazonPrometheusArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAmazonPrometheusArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadAmazonPrometheusArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAppdynamicInput)(nil)).Elem(), SloObjectiveCountMetricBadAppdynamicArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAppdynamicArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadAppdynamicArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorInput)(nil)).Elem(), SloObjectiveCountMetricBadAzureMonitorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadAzureMonitorArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorDimensionInput)(nil)).Elem(), SloObjectiveCountMetricBadAzureMonitorDimensionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorDimensionArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadAzureMonitorDimensionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorWorkspaceInput)(nil)).Elem(), SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadAzureMonitorWorkspaceArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadBigqueryInput)(nil)).Elem(), SloObjectiveCountMetricBadBigqueryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadBigqueryArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadBigqueryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadCloudwatchInput)(nil)).Elem(), SloObjectiveCountMetricBadCloudwatchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadCloudwatchArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadCloudwatchArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadCloudwatchDimensionInput)(nil)).Elem(), SloObjectiveCountMetricBadCloudwatchDimensionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadCloudwatchDimensionArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadCloudwatchDimensionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadDatadogInput)(nil)).Elem(), SloObjectiveCountMetricBadDatadogArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadDatadogArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadDatadogArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadDynatraceInput)(nil)).Elem(), SloObjectiveCountMetricBadDynatraceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadDynatraceArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadDynatraceArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadElasticsearchInput)(nil)).Elem(), SloObjectiveCountMetricBadElasticsearchArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadElasticsearchArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadElasticsearchArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadGcmInput)(nil)).Elem(), SloObjectiveCountMetricBadGcmArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadGcmArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadGcmArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadGrafanaLokiInput)(nil)).Elem(), SloObjectiveCountMetricBadGrafanaLokiArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadGrafanaLokiArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadGrafanaLokiArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadGraphiteInput)(nil)).Elem(), SloObjectiveCountMetricBadGraphiteArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadGraphiteArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadGraphiteArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadHoneycombInput)(nil)).Elem(), SloObjectiveCountMetricBadHoneycombArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadHoneycombArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadHoneycombArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInfluxdbInput)(nil)).Elem(), SloObjectiveCountMetricBadInfluxdbArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInfluxdbArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadInfluxdbArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInstanaInput)(nil)).Elem(), SloObjectiveCountMetricBadInstanaArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInstanaArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadInstanaArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInstanaApplicationInput)(nil)).Elem(), SloObjectiveCountMetricBadInstanaApplicationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInstanaApplicationArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadInstanaApplicationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInstanaApplicationGroupByInput)(nil)).Elem(), SloObjectiveCountMetricBadInstanaApplicationGroupByArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInstanaApplicationGroupByArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadInstanaApplicationGroupByArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInstanaInfrastructureInput)(nil)).Elem(), SloObjectiveCountMetricBadInstanaInfrastructureArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadInstanaInfrastructureArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadInstanaInfrastructureArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadLightstepInput)(nil)).Elem(), SloObjectiveCountMetricBadLightstepArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadLightstepArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadLightstepArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadNewrelicInput)(nil)).Elem(), SloObjectiveCountMetricBadNewrelicArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadNewrelicArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadNewrelicArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadOpentsdbInput)(nil)).Elem(), SloObjectiveCountMetricBadOpentsdbArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadOpentsdbArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadOpentsdbArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadPingdomInput)(nil)).Elem(), SloObjectiveCountMetricBadPingdomArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadPingdomArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadPingdomArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadPrometheusInput)(nil)).Elem(), SloObjectiveCountMetricBadPrometheusArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadPrometheusArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadPrometheusArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadRedshiftInput)(nil)).Elem(), SloObjectiveCountMetricBadRedshiftArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadRedshiftArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadRedshiftArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadSplunkInput)(nil)).Elem(), SloObjectiveCountMetricBadSplunkArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadSplunkArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadSplunkArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadSplunkObservabilityInput)(nil)).Elem(), SloObjectiveCountMetricBadSplunkObservabilityArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadSplunkObservabilityArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadSplunkObservabilityArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadSumologicInput)(nil)).Elem(), SloObjectiveCountMetricBadSumologicArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadSumologicArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadSumologicArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadThousandeyeInput)(nil)).Elem(), SloObjectiveCountMetricBadThousandeyeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricBadThousandeyeArrayInput)(nil)).Elem(), SloObjectiveCountMetricBadThousandeyeArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodInput)(nil)).Elem(), SloObjectiveCountMetricGoodArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAmazonPrometheusInput)(nil)).Elem(), SloObjectiveCountMetricGoodAmazonPrometheusArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAmazonPrometheusArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodAmazonPrometheusArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAppdynamicInput)(nil)).Elem(), SloObjectiveCountMetricGoodAppdynamicArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAppdynamicArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodAppdynamicArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorInput)(nil)).Elem(), SloObjectiveCountMetricGoodAzureMonitorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodAzureMonitorArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorDimensionInput)(nil)).Elem(), SloObjectiveCountMetricGoodAzureMonitorDimensionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorDimensionArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodAzureMonitorDimensionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorWorkspaceInput)(nil)).Elem(), SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodAzureMonitorWorkspaceArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodBigqueryInput)(nil)).Elem(), SloObjectiveCountMetricGoodBigqueryArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodBigqueryArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodBigqueryArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodCloudwatchInput)(nil)).Elem(), SloObjectiveCountMetricGoodCloudwatchArgs{}) @@ -18368,6 +27135,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodGrafanaLokiArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodGrafanaLokiArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodGraphiteInput)(nil)).Elem(), SloObjectiveCountMetricGoodGraphiteArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodGraphiteArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodGraphiteArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodHoneycombInput)(nil)).Elem(), SloObjectiveCountMetricGoodHoneycombArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodHoneycombArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodHoneycombArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodInfluxdbInput)(nil)).Elem(), SloObjectiveCountMetricGoodInfluxdbArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodInfluxdbArrayInput)(nil)).Elem(), SloObjectiveCountMetricGoodInfluxdbArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricGoodInstanaInput)(nil)).Elem(), SloObjectiveCountMetricGoodInstanaArgs{}) @@ -18404,6 +27173,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAmazonPrometheusArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalAmazonPrometheusArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAppdynamicInput)(nil)).Elem(), SloObjectiveCountMetricTotalAppdynamicArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAppdynamicArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalAppdynamicArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorInput)(nil)).Elem(), SloObjectiveCountMetricTotalAzureMonitorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalAzureMonitorArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorDimensionInput)(nil)).Elem(), SloObjectiveCountMetricTotalAzureMonitorDimensionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorDimensionArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalAzureMonitorDimensionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorWorkspaceInput)(nil)).Elem(), SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalAzureMonitorWorkspaceArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalBigqueryInput)(nil)).Elem(), SloObjectiveCountMetricTotalBigqueryArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalBigqueryArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalBigqueryArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalCloudwatchInput)(nil)).Elem(), SloObjectiveCountMetricTotalCloudwatchArgs{}) @@ -18422,6 +27197,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalGrafanaLokiArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalGrafanaLokiArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalGraphiteInput)(nil)).Elem(), SloObjectiveCountMetricTotalGraphiteArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalGraphiteArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalGraphiteArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalHoneycombInput)(nil)).Elem(), SloObjectiveCountMetricTotalHoneycombArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalHoneycombArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalHoneycombArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalInfluxdbInput)(nil)).Elem(), SloObjectiveCountMetricTotalInfluxdbArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalInfluxdbArrayInput)(nil)).Elem(), SloObjectiveCountMetricTotalInfluxdbArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveCountMetricTotalInstanaInput)(nil)).Elem(), SloObjectiveCountMetricTotalInstanaArgs{}) @@ -18460,6 +27237,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAmazonPrometheusArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryAmazonPrometheusArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAppdynamicInput)(nil)).Elem(), SloObjectiveRawMetricQueryAppdynamicArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAppdynamicArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryAppdynamicArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorInput)(nil)).Elem(), SloObjectiveRawMetricQueryAzureMonitorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryAzureMonitorArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorDimensionInput)(nil)).Elem(), SloObjectiveRawMetricQueryAzureMonitorDimensionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorDimensionArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryAzureMonitorDimensionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorWorkspaceInput)(nil)).Elem(), SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryAzureMonitorWorkspaceArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryBigqueryInput)(nil)).Elem(), SloObjectiveRawMetricQueryBigqueryArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryBigqueryArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryBigqueryArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryCloudwatchInput)(nil)).Elem(), SloObjectiveRawMetricQueryCloudwatchArgs{}) @@ -18478,6 +27261,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryGrafanaLokiArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryGrafanaLokiArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryGraphiteInput)(nil)).Elem(), SloObjectiveRawMetricQueryGraphiteArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryGraphiteArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryGraphiteArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryHoneycombInput)(nil)).Elem(), SloObjectiveRawMetricQueryHoneycombArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryHoneycombArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryHoneycombArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryInfluxdbInput)(nil)).Elem(), SloObjectiveRawMetricQueryInfluxdbArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryInfluxdbArrayInput)(nil)).Elem(), SloObjectiveRawMetricQueryInfluxdbArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SloObjectiveRawMetricQueryInstanaInput)(nil)).Elem(), SloObjectiveRawMetricQueryInstanaArgs{}) @@ -18516,6 +27301,8 @@ func init() { pulumi.RegisterOutputType(AgentAmazonPrometheusConfigPtrOutput{}) pulumi.RegisterOutputType(AgentAppdynamicsConfigOutput{}) pulumi.RegisterOutputType(AgentAppdynamicsConfigPtrOutput{}) + pulumi.RegisterOutputType(AgentAzureMonitorConfigOutput{}) + pulumi.RegisterOutputType(AgentAzureMonitorConfigPtrOutput{}) pulumi.RegisterOutputType(AgentBigqueryConfigOutput{}) pulumi.RegisterOutputType(AgentBigqueryConfigPtrOutput{}) pulumi.RegisterOutputType(AgentCloudwatchConfigOutput{}) @@ -18532,6 +27319,14 @@ func init() { pulumi.RegisterOutputType(AgentGrafanaLokiConfigPtrOutput{}) pulumi.RegisterOutputType(AgentGraphiteConfigOutput{}) pulumi.RegisterOutputType(AgentGraphiteConfigPtrOutput{}) + pulumi.RegisterOutputType(AgentHistoricalDataRetrievalOutput{}) + pulumi.RegisterOutputType(AgentHistoricalDataRetrievalPtrOutput{}) + pulumi.RegisterOutputType(AgentHistoricalDataRetrievalDefaultDurationOutput{}) + pulumi.RegisterOutputType(AgentHistoricalDataRetrievalDefaultDurationArrayOutput{}) + pulumi.RegisterOutputType(AgentHistoricalDataRetrievalMaxDurationOutput{}) + pulumi.RegisterOutputType(AgentHistoricalDataRetrievalMaxDurationArrayOutput{}) + pulumi.RegisterOutputType(AgentHoneycombConfigOutput{}) + pulumi.RegisterOutputType(AgentHoneycombConfigPtrOutput{}) pulumi.RegisterOutputType(AgentInfluxdbConfigOutput{}) pulumi.RegisterOutputType(AgentInfluxdbConfigPtrOutput{}) pulumi.RegisterOutputType(AgentInstanaConfigOutput{}) @@ -18558,12 +27353,28 @@ func init() { pulumi.RegisterOutputType(AgentSumologicConfigPtrOutput{}) pulumi.RegisterOutputType(AgentThousandeyesConfigOutput{}) pulumi.RegisterOutputType(AgentThousandeyesConfigPtrOutput{}) + pulumi.RegisterOutputType(AlertMethodPagerdutySendResolutionOutput{}) + pulumi.RegisterOutputType(AlertMethodPagerdutySendResolutionPtrOutput{}) pulumi.RegisterOutputType(AlertPolicyAlertMethodOutput{}) pulumi.RegisterOutputType(AlertPolicyAlertMethodArrayOutput{}) pulumi.RegisterOutputType(AlertPolicyConditionOutput{}) pulumi.RegisterOutputType(AlertPolicyConditionArrayOutput{}) + pulumi.RegisterOutputType(DirectAppdynamicsHistoricalDataRetrievalOutput{}) + pulumi.RegisterOutputType(DirectAppdynamicsHistoricalDataRetrievalPtrOutput{}) + pulumi.RegisterOutputType(DirectAppdynamicsHistoricalDataRetrievalDefaultDurationOutput{}) + pulumi.RegisterOutputType(DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArrayOutput{}) + pulumi.RegisterOutputType(DirectAppdynamicsHistoricalDataRetrievalMaxDurationOutput{}) + pulumi.RegisterOutputType(DirectAppdynamicsHistoricalDataRetrievalMaxDurationArrayOutput{}) pulumi.RegisterOutputType(DirectAppdynamicsQueryDelayOutput{}) pulumi.RegisterOutputType(DirectAppdynamicsQueryDelayPtrOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorHistoricalDataRetrievalOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorHistoricalDataRetrievalPtrOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorHistoricalDataRetrievalDefaultDurationOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArrayOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorHistoricalDataRetrievalMaxDurationOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorHistoricalDataRetrievalMaxDurationArrayOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorQueryDelayOutput{}) + pulumi.RegisterOutputType(DirectAzureMonitorQueryDelayPtrOutput{}) pulumi.RegisterOutputType(DirectBigqueryQueryDelayOutput{}) pulumi.RegisterOutputType(DirectBigqueryQueryDelayPtrOutput{}) pulumi.RegisterOutputType(DirectCloudwatchHistoricalDataRetrievalOutput{}) @@ -18592,6 +27403,14 @@ func init() { pulumi.RegisterOutputType(DirectDynatraceQueryDelayPtrOutput{}) pulumi.RegisterOutputType(DirectGcmQueryDelayOutput{}) pulumi.RegisterOutputType(DirectGcmQueryDelayPtrOutput{}) + pulumi.RegisterOutputType(DirectHoneycombHistoricalDataRetrievalOutput{}) + pulumi.RegisterOutputType(DirectHoneycombHistoricalDataRetrievalPtrOutput{}) + pulumi.RegisterOutputType(DirectHoneycombHistoricalDataRetrievalDefaultDurationOutput{}) + pulumi.RegisterOutputType(DirectHoneycombHistoricalDataRetrievalDefaultDurationArrayOutput{}) + pulumi.RegisterOutputType(DirectHoneycombHistoricalDataRetrievalMaxDurationOutput{}) + pulumi.RegisterOutputType(DirectHoneycombHistoricalDataRetrievalMaxDurationArrayOutput{}) + pulumi.RegisterOutputType(DirectHoneycombQueryDelayOutput{}) + pulumi.RegisterOutputType(DirectHoneycombQueryDelayPtrOutput{}) pulumi.RegisterOutputType(DirectInfluxdbQueryDelayOutput{}) pulumi.RegisterOutputType(DirectInfluxdbQueryDelayPtrOutput{}) pulumi.RegisterOutputType(DirectInstanaQueryDelayOutput{}) @@ -18634,6 +27453,12 @@ func init() { pulumi.RegisterOutputType(ProjectLabelArrayOutput{}) pulumi.RegisterOutputType(ServiceLabelOutput{}) pulumi.RegisterOutputType(ServiceLabelArrayOutput{}) + pulumi.RegisterOutputType(SloAnomalyConfigOutput{}) + pulumi.RegisterOutputType(SloAnomalyConfigPtrOutput{}) + pulumi.RegisterOutputType(SloAnomalyConfigNoDataOutput{}) + pulumi.RegisterOutputType(SloAnomalyConfigNoDataPtrOutput{}) + pulumi.RegisterOutputType(SloAnomalyConfigNoDataAlertMethodOutput{}) + pulumi.RegisterOutputType(SloAnomalyConfigNoDataAlertMethodArrayOutput{}) pulumi.RegisterOutputType(SloAttachmentOutput{}) pulumi.RegisterOutputType(SloAttachmentArrayOutput{}) pulumi.RegisterOutputType(SloCompositeOutput{}) @@ -18648,12 +27473,80 @@ func init() { pulumi.RegisterOutputType(SloObjectiveArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAmazonPrometheusOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAmazonPrometheusArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAppdynamicOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAppdynamicArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAzureMonitorOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAzureMonitorArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAzureMonitorDimensionOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAzureMonitorDimensionArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAzureMonitorWorkspaceOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadAzureMonitorWorkspaceArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadBigqueryOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadBigqueryArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadCloudwatchOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadCloudwatchArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadCloudwatchDimensionOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadCloudwatchDimensionArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadDatadogOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadDatadogArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadDynatraceOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadDynatraceArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadElasticsearchOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadElasticsearchArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadGcmOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadGcmArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadGrafanaLokiOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadGrafanaLokiArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadGraphiteOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadGraphiteArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadHoneycombOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadHoneycombArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInfluxdbOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInfluxdbArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInstanaOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInstanaArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInstanaApplicationOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInstanaApplicationArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInstanaApplicationGroupByOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInstanaApplicationGroupByArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInstanaInfrastructureOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadInstanaInfrastructureArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadLightstepOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadLightstepArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadNewrelicOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadNewrelicArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadOpentsdbOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadOpentsdbArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadPingdomOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadPingdomArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadPrometheusOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadPrometheusArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadRedshiftOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadRedshiftArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadSplunkOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadSplunkArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadSplunkObservabilityOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadSplunkObservabilityArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadSumologicOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadSumologicArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadThousandeyeOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricBadThousandeyeArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAmazonPrometheusOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAmazonPrometheusArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAppdynamicOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAppdynamicArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAzureMonitorOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAzureMonitorArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAzureMonitorDimensionOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAzureMonitorDimensionArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAzureMonitorWorkspaceOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricGoodAzureMonitorWorkspaceArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodBigqueryOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodBigqueryArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodCloudwatchOutput{}) @@ -18672,6 +27565,8 @@ func init() { pulumi.RegisterOutputType(SloObjectiveCountMetricGoodGrafanaLokiArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodGraphiteOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodGraphiteArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricGoodHoneycombOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricGoodHoneycombArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodInfluxdbOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodInfluxdbArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricGoodInstanaOutput{}) @@ -18708,6 +27603,12 @@ func init() { pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAmazonPrometheusArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAppdynamicOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAppdynamicArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAzureMonitorOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAzureMonitorArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAzureMonitorDimensionOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAzureMonitorDimensionArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAzureMonitorWorkspaceOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricTotalAzureMonitorWorkspaceArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalBigqueryOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalBigqueryArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalCloudwatchOutput{}) @@ -18726,6 +27627,8 @@ func init() { pulumi.RegisterOutputType(SloObjectiveCountMetricTotalGrafanaLokiArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalGraphiteOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalGraphiteArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricTotalHoneycombOutput{}) + pulumi.RegisterOutputType(SloObjectiveCountMetricTotalHoneycombArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalInfluxdbOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalInfluxdbArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveCountMetricTotalInstanaOutput{}) @@ -18764,6 +27667,12 @@ func init() { pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAmazonPrometheusArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAppdynamicOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAppdynamicArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAzureMonitorOutput{}) + pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAzureMonitorArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAzureMonitorDimensionOutput{}) + pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAzureMonitorDimensionArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAzureMonitorWorkspaceOutput{}) + pulumi.RegisterOutputType(SloObjectiveRawMetricQueryAzureMonitorWorkspaceArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryBigqueryOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryBigqueryArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryCloudwatchOutput{}) @@ -18782,6 +27691,8 @@ func init() { pulumi.RegisterOutputType(SloObjectiveRawMetricQueryGrafanaLokiArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryGraphiteOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryGraphiteArrayOutput{}) + pulumi.RegisterOutputType(SloObjectiveRawMetricQueryHoneycombOutput{}) + pulumi.RegisterOutputType(SloObjectiveRawMetricQueryHoneycombArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryInfluxdbOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryInfluxdbArrayOutput{}) pulumi.RegisterOutputType(SloObjectiveRawMetricQueryInstanaOutput{}) diff --git a/sdk/go/nobl9/pulumiUtilities.go b/sdk/go/nobl9/pulumiUtilities.go deleted file mode 100644 index f26798d..0000000 --- a/sdk/go/nobl9/pulumiUtilities.go +++ /dev/null @@ -1,101 +0,0 @@ -// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package nobl9 - -import ( - "fmt" - "os" - "reflect" - "regexp" - "strconv" - "strings" - - "github.com/blang/semver" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -type envParser func(v string) interface{} - -func parseEnvBool(v string) interface{} { - b, err := strconv.ParseBool(v) - if err != nil { - return nil - } - return b -} - -func parseEnvInt(v string) interface{} { - i, err := strconv.ParseInt(v, 0, 0) - if err != nil { - return nil - } - return int(i) -} - -func parseEnvFloat(v string) interface{} { - f, err := strconv.ParseFloat(v, 64) - if err != nil { - return nil - } - return f -} - -func parseEnvStringArray(v string) interface{} { - var result pulumi.StringArray - for _, item := range strings.Split(v, ";") { - result = append(result, pulumi.String(item)) - } - return result -} - -func getEnvOrDefault(def interface{}, parser envParser, vars ...string) interface{} { - for _, v := range vars { - if value := os.Getenv(v); value != "" { - if parser != nil { - return parser(value) - } - return value - } - } - return def -} - -// PkgVersion uses reflection to determine the version of the current package. -// If a version cannot be determined, v1 will be assumed. The second return -// value is always nil. -func PkgVersion() (semver.Version, error) { - type sentinal struct{} - pkgPath := reflect.TypeOf(sentinal{}).PkgPath() - re := regexp.MustCompile("^.*/pulumi-nobl9/sdk(/v\\d+)?") - if match := re.FindStringSubmatch(pkgPath); match != nil { - vStr := match[1] - if len(vStr) == 0 { // If the version capture group was empty, default to v1. - return semver.Version{Major: 1}, nil - } - return semver.MustParse(fmt.Sprintf("%s.0.0", vStr[2:])), nil - } - return semver.Version{Major: 1}, nil -} - -// isZero is a null safe check for if a value is it's types zero value. -func isZero(v interface{}) bool { - if v == nil { - return true - } - return reflect.ValueOf(v).IsZero() -} - -// pkgResourceDefaultOpts provides package level defaults to pulumi.OptionResource. -func pkgResourceDefaultOpts(opts []pulumi.ResourceOption) []pulumi.ResourceOption { - defaults := []pulumi.ResourceOption{pulumi.PluginDownloadURL("https://github.com/piclemx/pulumi-nobl9/releases/")} - - return append(defaults, opts...) -} - -// pkgInvokeDefaultOpts provides package level defaults to pulumi.OptionInvoke. -func pkgInvokeDefaultOpts(opts []pulumi.InvokeOption) []pulumi.InvokeOption { - defaults := []pulumi.InvokeOption{pulumi.PluginDownloadURL("https://github.com/piclemx/pulumi-nobl9/releases/")} - - return append(defaults, opts...) -} diff --git a/sdk/go/nobl9/roleBinding.go b/sdk/go/nobl9/roleBinding.go index 8eddbb7..66123df 100644 --- a/sdk/go/nobl9/roleBinding.go +++ b/sdk/go/nobl9/roleBinding.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -19,23 +20,26 @@ import ( // package main // // import ( -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// _, err := nobl9.NewRoleBinding(ctx, "this", &nobl9.RoleBindingArgs{ -// ProjectRef: pulumi.String("1234567890asdfghjkl"), -// RoleRef: pulumi.String("project-owner"), -// User: pulumi.String("1234567890asdfghjkl"), -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// _, err := nobl9.NewRoleBinding(ctx, "this", &nobl9.RoleBindingArgs{ +// GroupRef: pulumi.String("test"), +// ProjectRef: pulumi.String("default"), +// RoleRef: pulumi.String("project-owner"), +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Useful Links // @@ -47,14 +51,16 @@ type RoleBinding struct { // User-friendly display name of the resource. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` + // Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + GroupRef pulumi.StringPtrOutput `pulumi:"groupRef"` // Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringOutput `pulumi:"name"` - // Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. + // Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. ProjectRef pulumi.StringPtrOutput `pulumi:"projectRef"` - // Role name; the role that you want the user to assume. + // Role name; the role that you want the user or group to assume. RoleRef pulumi.StringOutput `pulumi:"roleRef"` - // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). - User pulumi.StringOutput `pulumi:"user"` + // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). + User pulumi.StringPtrOutput `pulumi:"user"` } // NewRoleBinding registers a new resource with the given unique name, arguments, and options. @@ -67,10 +73,7 @@ func NewRoleBinding(ctx *pulumi.Context, if args.RoleRef == nil { return nil, errors.New("invalid value for required argument 'RoleRef'") } - if args.User == nil { - return nil, errors.New("invalid value for required argument 'User'") - } - opts = pkgResourceDefaultOpts(opts) + opts = internal.PkgResourceDefaultOpts(opts) var resource RoleBinding err := ctx.RegisterResource("nobl9:index/roleBinding:RoleBinding", name, args, &resource, opts...) if err != nil { @@ -95,26 +98,30 @@ func GetRoleBinding(ctx *pulumi.Context, type roleBindingState struct { // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + GroupRef *string `pulumi:"groupRef"` // Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` - // Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. + // Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. ProjectRef *string `pulumi:"projectRef"` - // Role name; the role that you want the user to assume. + // Role name; the role that you want the user or group to assume. RoleRef *string `pulumi:"roleRef"` - // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). User *string `pulumi:"user"` } type RoleBindingState struct { // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + GroupRef pulumi.StringPtrInput // Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput - // Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. + // Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. ProjectRef pulumi.StringPtrInput - // Role name; the role that you want the user to assume. + // Role name; the role that you want the user or group to assume. RoleRef pulumi.StringPtrInput - // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). User pulumi.StringPtrInput } @@ -125,28 +132,32 @@ func (RoleBindingState) ElementType() reflect.Type { type roleBindingArgs struct { // User-friendly display name of the resource. DisplayName *string `pulumi:"displayName"` + // Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + GroupRef *string `pulumi:"groupRef"` // Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name *string `pulumi:"name"` - // Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. + // Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. ProjectRef *string `pulumi:"projectRef"` - // Role name; the role that you want the user to assume. + // Role name; the role that you want the user or group to assume. RoleRef string `pulumi:"roleRef"` - // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). - User string `pulumi:"user"` + // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). + User *string `pulumi:"user"` } // The set of arguments for constructing a RoleBinding resource. type RoleBindingArgs struct { // User-friendly display name of the resource. DisplayName pulumi.StringPtrInput + // Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + GroupRef pulumi.StringPtrInput // Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). Name pulumi.StringPtrInput - // Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. + // Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. ProjectRef pulumi.StringPtrInput - // Role name; the role that you want the user to assume. + // Role name; the role that you want the user or group to assume. RoleRef pulumi.StringInput - // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). - User pulumi.StringInput + // Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). + User pulumi.StringPtrInput } func (RoleBindingArgs) ElementType() reflect.Type { @@ -175,7 +186,7 @@ func (i *RoleBinding) ToRoleBindingOutputWithContext(ctx context.Context) RoleBi // RoleBindingArrayInput is an input type that accepts RoleBindingArray and RoleBindingArrayOutput values. // You can construct a concrete instance of `RoleBindingArrayInput` via: // -// RoleBindingArray{ RoleBindingArgs{...} } +// RoleBindingArray{ RoleBindingArgs{...} } type RoleBindingArrayInput interface { pulumi.Input @@ -200,7 +211,7 @@ func (i RoleBindingArray) ToRoleBindingArrayOutputWithContext(ctx context.Contex // RoleBindingMapInput is an input type that accepts RoleBindingMap and RoleBindingMapOutput values. // You can construct a concrete instance of `RoleBindingMapInput` via: // -// RoleBindingMap{ "key": RoleBindingArgs{...} } +// RoleBindingMap{ "key": RoleBindingArgs{...} } type RoleBindingMapInput interface { pulumi.Input @@ -241,24 +252,29 @@ func (o RoleBindingOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *RoleBinding) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } +// Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. +func (o RoleBindingOutput) GroupRef() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RoleBinding) pulumi.StringPtrOutput { return v.GroupRef }).(pulumi.StringPtrOutput) +} + // Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). func (o RoleBindingOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *RoleBinding) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. +// Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. func (o RoleBindingOutput) ProjectRef() pulumi.StringPtrOutput { return o.ApplyT(func(v *RoleBinding) pulumi.StringPtrOutput { return v.ProjectRef }).(pulumi.StringPtrOutput) } -// Role name; the role that you want the user to assume. +// Role name; the role that you want the user or group to assume. func (o RoleBindingOutput) RoleRef() pulumi.StringOutput { return o.ApplyT(func(v *RoleBinding) pulumi.StringOutput { return v.RoleRef }).(pulumi.StringOutput) } -// Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). -func (o RoleBindingOutput) User() pulumi.StringOutput { - return o.ApplyT(func(v *RoleBinding) pulumi.StringOutput { return v.User }).(pulumi.StringOutput) +// Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). +func (o RoleBindingOutput) User() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RoleBinding) pulumi.StringPtrOutput { return v.User }).(pulumi.StringPtrOutput) } type RoleBindingArrayOutput struct{ *pulumi.OutputState } diff --git a/sdk/go/nobl9/service.go b/sdk/go/nobl9/service.go index ecefedd..e1d5c3f 100644 --- a/sdk/go/nobl9/service.go +++ b/sdk/go/nobl9/service.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -23,50 +24,52 @@ import ( // package main // // import ( -// "fmt" // -// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi-nobl9/sdk/go/nobl9" -// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// "fmt" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// // ) // -// func main() { -// pulumi.Run(func(ctx *pulumi.Context) error { -// thisProject, err := nobl9.NewProject(ctx, "thisProject", &nobl9.ProjectArgs{ -// DisplayName: pulumi.String("My Project"), -// Description: pulumi.String("An example N9 Terraform project"), -// }) -// if err != nil { -// return err -// } -// _, err = nobl9.NewService(ctx, "thisService", &nobl9.ServiceArgs{ -// Project: thisProject.Name, -// DisplayName: thisProject.DisplayName.ApplyT(func(displayName string) (string, error) { -// return fmt.Sprintf("%v Front Page", displayName), nil -// }).(pulumi.StringOutput), -// Description: pulumi.String("Front page service"), -// Labels: ServiceLabelArray{ -// &ServiceLabelArgs{ -// Key: pulumi.String("env"), -// Values: pulumi.StringArray{ -// pulumi.String("dev"), -// pulumi.String("prod"), -// }, -// }, -// &ServiceLabelArgs{ -// Key: pulumi.String("team"), -// Values: pulumi.StringArray{ -// pulumi.String("red"), -// }, -// }, -// }, -// }) -// if err != nil { -// return err -// } -// return nil -// }) -// } +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// thisProject, err := nobl9.NewProject(ctx, "thisProject", &nobl9.ProjectArgs{ +// DisplayName: pulumi.String("My Project"), +// Description: pulumi.String("An example N9 Terraform project"), +// }) +// if err != nil { +// return err +// } +// _, err = nobl9.NewService(ctx, "thisService", &nobl9.ServiceArgs{ +// Project: thisProject.Name, +// DisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) { +// return fmt.Sprintf("%v Front Page", displayName), nil +// }).(pulumi.StringOutput), +// Description: pulumi.String("Front page service"), +// Labels: nobl9.ServiceLabelArray{ +// &nobl9.ServiceLabelArgs{ +// Key: pulumi.String("env"), +// Values: pulumi.StringArray{ +// pulumi.String("dev"), +// pulumi.String("prod"), +// }, +// }, +// &nobl9.ServiceLabelArgs{ +// Key: pulumi.String("team"), +// Values: pulumi.StringArray{ +// pulumi.String("red"), +// }, +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// // ``` // ## Useful Links // @@ -100,7 +103,7 @@ func NewService(ctx *pulumi.Context, if args.Project == nil { return nil, errors.New("invalid value for required argument 'Project'") } - opts = pkgResourceDefaultOpts(opts) + opts = internal.PkgResourceDefaultOpts(opts) var resource Service err := ctx.RegisterResource("nobl9:index/service:Service", name, args, &resource, opts...) if err != nil { @@ -209,7 +212,7 @@ func (i *Service) ToServiceOutputWithContext(ctx context.Context) ServiceOutput // ServiceArrayInput is an input type that accepts ServiceArray and ServiceArrayOutput values. // You can construct a concrete instance of `ServiceArrayInput` via: // -// ServiceArray{ ServiceArgs{...} } +// ServiceArray{ ServiceArgs{...} } type ServiceArrayInput interface { pulumi.Input @@ -234,7 +237,7 @@ func (i ServiceArray) ToServiceArrayOutputWithContext(ctx context.Context) Servi // ServiceMapInput is an input type that accepts ServiceMap and ServiceMapOutput values. // You can construct a concrete instance of `ServiceMapInput` via: // -// ServiceMap{ "key": ServiceArgs{...} } +// ServiceMap{ "key": ServiceArgs{...} } type ServiceMapInput interface { pulumi.Input diff --git a/sdk/go/nobl9/slo.go b/sdk/go/nobl9/slo.go index da9984d..05a452a 100644 --- a/sdk/go/nobl9/slo.go +++ b/sdk/go/nobl9/slo.go @@ -7,7 +7,8 @@ import ( "context" "reflect" - "github.com/pkg/errors" + "errors" + "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -15,6 +16,171 @@ import ( // // For more information, refer to [SLO configuration documentation](https://docs.nobl9.com/yaml-guide#slo) // +// ## Example Usage +// +// ```go +// package main +// +// import ( +// +// "fmt" +// +// "github.com/piclemx/pulumi-nobl9/sdk/go/nobl9" +// "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +// +// ) +// +// func main() { +// pulumi.Run(func(ctx *pulumi.Context) error { +// thisProject, err := nobl9.NewProject(ctx, "thisProject", &nobl9.ProjectArgs{ +// DisplayName: pulumi.String("Test N9 Terraform"), +// Description: pulumi.String("An example N9 Terraform project"), +// }) +// if err != nil { +// return err +// } +// thisService, err := nobl9.NewService(ctx, "thisService", &nobl9.ServiceArgs{ +// Project: thisProject.Name, +// DisplayName: thisProject.DisplayName.ApplyT(func(displayName *string) (string, error) { +// return fmt.Sprintf("%v Front Page", displayName), nil +// }).(pulumi.StringOutput), +// Description: pulumi.String("Front page service"), +// }) +// if err != nil { +// return err +// } +// _, err = nobl9.NewSlo(ctx, "thisSlo", &nobl9.SloArgs{ +// Service: thisService.Name, +// BudgetingMethod: pulumi.String("Occurrences"), +// Project: thisProject.Name, +// Labels: nobl9.SloLabelArray{ +// &nobl9.SloLabelArgs{ +// Key: pulumi.String("env"), +// Values: pulumi.StringArray{ +// pulumi.String("dev"), +// pulumi.String("prod"), +// }, +// }, +// &nobl9.SloLabelArgs{ +// Key: pulumi.String("team"), +// Values: pulumi.StringArray{ +// pulumi.String("red"), +// }, +// }, +// }, +// Attachments: nobl9.SloAttachmentArray{ +// &nobl9.SloAttachmentArgs{ +// Url: pulumi.String("https://www.nobl9.com/"), +// DisplayName: pulumi.String("Nobl9 Reliability Center"), +// }, +// &nobl9.SloAttachmentArgs{ +// Url: pulumi.String("https://duckduckgo.com/"), +// DisplayName: pulumi.String("Nice search engine"), +// }, +// }, +// AlertPolicies: pulumi.StringArray{ +// pulumi.String("foo-front-page-latency"), +// }, +// TimeWindow: &nobl9.SloTimeWindowArgs{ +// Unit: pulumi.String("Day"), +// Count: pulumi.Int(30), +// IsRolling: pulumi.Bool(true), +// }, +// Objectives: nobl9.SloObjectiveArray{ +// &nobl9.SloObjectiveArgs{ +// Name: pulumi.String("tf-objective-1"), +// Target: pulumi.Float64(0.99), +// DisplayName: pulumi.String("OK"), +// Value: pulumi.Float64(2000), +// Op: pulumi.String("gte"), +// RawMetrics: nobl9.SloObjectiveRawMetricArray{ +// &nobl9.SloObjectiveRawMetricArgs{ +// Queries: nobl9.SloObjectiveRawMetricQueryArray{ +// &nobl9.SloObjectiveRawMetricQueryArgs{ +// Prometheuses: nobl9.SloObjectiveRawMetricQueryPrometheusArray{ +// &nobl9.SloObjectiveRawMetricQueryPrometheusArgs{ +// Promql: pulumi.String(" latency_west_c7{code=\"ALL\",instance=\"localhost:3000\",job=\"prometheus\",service=\"glob_account\"}\n"), +// }, +// }, +// }, +// }, +// }, +// }, +// }, +// }, +// Indicator: &nobl9.SloIndicatorArgs{ +// Name: pulumi.String("test-terraform-prom-agent"), +// }, +// }) +// if err != nil { +// return err +// } +// _, err = nobl9.NewSlo(ctx, "thisIndex/sloSlo", &nobl9.SloArgs{ +// Service: thisService.Name, +// BudgetingMethod: pulumi.String("Occurrences"), +// Project: thisProject.Name, +// TimeWindow: &nobl9.SloTimeWindowArgs{ +// Unit: pulumi.String("Day"), +// Count: pulumi.Int(30), +// IsRolling: pulumi.Bool(true), +// }, +// Objectives: nobl9.SloObjectiveArray{ +// &nobl9.SloObjectiveArgs{ +// Name: pulumi.String("tf-objective-1"), +// Target: pulumi.Float64(0.99), +// DisplayName: pulumi.String("OK"), +// Value: pulumi.Float64(1), +// CountMetrics: nobl9.SloObjectiveCountMetricArray{ +// &nobl9.SloObjectiveCountMetricArgs{ +// Incremental: pulumi.Bool(true), +// Goods: nobl9.SloObjectiveCountMetricGoodArray{ +// &nobl9.SloObjectiveCountMetricGoodArgs{ +// Prometheuses: nobl9.SloObjectiveCountMetricGoodPrometheusArray{ +// &nobl9.SloObjectiveCountMetricGoodPrometheusArgs{ +// Promql: pulumi.String("1.0"), +// }, +// }, +// }, +// }, +// Totals: nobl9.SloObjectiveCountMetricTotalArray{ +// &nobl9.SloObjectiveCountMetricTotalArgs{ +// Prometheuses: nobl9.SloObjectiveCountMetricTotalPrometheusArray{ +// &nobl9.SloObjectiveCountMetricTotalPrometheusArgs{ +// Promql: pulumi.String("1.0"), +// }, +// }, +// }, +// }, +// }, +// }, +// }, +// }, +// Indicator: &nobl9.SloIndicatorArgs{ +// Name: pulumi.String("test-terraform-prom-agent"), +// }, +// AnomalyConfig: &nobl9.SloAnomalyConfigArgs{ +// NoData: &nobl9.SloAnomalyConfigNoDataArgs{ +// AlertMethods: nobl9.SloAnomalyConfigNoDataAlertMethodArray{ +// &nobl9.SloAnomalyConfigNoDataAlertMethodArgs{ +// Name: pulumi.String("foo-method-method"), +// Project: pulumi.String("default"), +// }, +// &nobl9.SloAnomalyConfigNoDataAlertMethodArgs{ +// Name: pulumi.String("bar-alert-method"), +// Project: pulumi.String("default"), +// }, +// }, +// }, +// }, +// }) +// if err != nil { +// return err +// } +// return nil +// }) +// } +// +// ``` // ## Nobl9 Official Documentation // // https://docs.nobl9.com/SLOs_as_code/?_highlight=slo @@ -23,6 +189,9 @@ type Slo struct { // Alert Policies attached to SLO AlertPolicies pulumi.StringArrayOutput `pulumi:"alertPolicies"` + // Configuration for Anomalies. Currently supported Anomaly Type is NoData + AnomalyConfig SloAnomalyConfigPtrOutput `pulumi:"anomalyConfig"` + Attachment SloAttachmentArrayOutput `pulumi:"attachment"` // Deprecated: "attachments" argument is deprecated use "attachment" instead Attachments SloAttachmentArrayOutput `pulumi:"attachments"` // Method which will be use to calculate budget @@ -31,16 +200,16 @@ type Slo struct { Composite SloCompositePtrOutput `pulumi:"composite"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrOutput `pulumi:"description"` - // User-friendly display name of the resource. + // Name displayed for the attachment. Max. length: 63 characters. DisplayName pulumi.StringPtrOutput `pulumi:"displayName"` Indicator SloIndicatorOutput `pulumi:"indicator"` // [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. Labels SloLabelArrayOutput `pulumi:"labels"` - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name pulumi.StringOutput `pulumi:"name"` // [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) Objectives SloObjectiveArrayOutput `pulumi:"objectives"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project pulumi.StringOutput `pulumi:"project"` // Name of the service Service pulumi.StringOutput `pulumi:"service"` @@ -72,7 +241,7 @@ func NewSlo(ctx *pulumi.Context, if args.TimeWindow == nil { return nil, errors.New("invalid value for required argument 'TimeWindow'") } - opts = pkgResourceDefaultOpts(opts) + opts = internal.PkgResourceDefaultOpts(opts) var resource Slo err := ctx.RegisterResource("nobl9:index/slo:Slo", name, args, &resource, opts...) if err != nil { @@ -97,6 +266,9 @@ func GetSlo(ctx *pulumi.Context, type sloState struct { // Alert Policies attached to SLO AlertPolicies []string `pulumi:"alertPolicies"` + // Configuration for Anomalies. Currently supported Anomaly Type is NoData + AnomalyConfig *SloAnomalyConfig `pulumi:"anomalyConfig"` + Attachment []SloAttachment `pulumi:"attachment"` // Deprecated: "attachments" argument is deprecated use "attachment" instead Attachments []SloAttachment `pulumi:"attachments"` // Method which will be use to calculate budget @@ -105,16 +277,16 @@ type sloState struct { Composite *SloComposite `pulumi:"composite"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description *string `pulumi:"description"` - // User-friendly display name of the resource. + // Name displayed for the attachment. Max. length: 63 characters. DisplayName *string `pulumi:"displayName"` Indicator *SloIndicator `pulumi:"indicator"` // [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. Labels []SloLabel `pulumi:"labels"` - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name *string `pulumi:"name"` // [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) Objectives []SloObjective `pulumi:"objectives"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project *string `pulumi:"project"` // Name of the service Service *string `pulumi:"service"` @@ -124,6 +296,9 @@ type sloState struct { type SloState struct { // Alert Policies attached to SLO AlertPolicies pulumi.StringArrayInput + // Configuration for Anomalies. Currently supported Anomaly Type is NoData + AnomalyConfig SloAnomalyConfigPtrInput + Attachment SloAttachmentArrayInput // Deprecated: "attachments" argument is deprecated use "attachment" instead Attachments SloAttachmentArrayInput // Method which will be use to calculate budget @@ -132,16 +307,16 @@ type SloState struct { Composite SloCompositePtrInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrInput - // User-friendly display name of the resource. + // Name displayed for the attachment. Max. length: 63 characters. DisplayName pulumi.StringPtrInput Indicator SloIndicatorPtrInput // [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. Labels SloLabelArrayInput - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name pulumi.StringPtrInput // [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) Objectives SloObjectiveArrayInput - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project pulumi.StringPtrInput // Name of the service Service pulumi.StringPtrInput @@ -155,6 +330,9 @@ func (SloState) ElementType() reflect.Type { type sloArgs struct { // Alert Policies attached to SLO AlertPolicies []string `pulumi:"alertPolicies"` + // Configuration for Anomalies. Currently supported Anomaly Type is NoData + AnomalyConfig *SloAnomalyConfig `pulumi:"anomalyConfig"` + Attachment []SloAttachment `pulumi:"attachment"` // Deprecated: "attachments" argument is deprecated use "attachment" instead Attachments []SloAttachment `pulumi:"attachments"` // Method which will be use to calculate budget @@ -163,16 +341,16 @@ type sloArgs struct { Composite *SloComposite `pulumi:"composite"` // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description *string `pulumi:"description"` - // User-friendly display name of the resource. + // Name displayed for the attachment. Max. length: 63 characters. DisplayName *string `pulumi:"displayName"` Indicator SloIndicator `pulumi:"indicator"` // [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. Labels []SloLabel `pulumi:"labels"` - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name *string `pulumi:"name"` // [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) Objectives []SloObjective `pulumi:"objectives"` - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project string `pulumi:"project"` // Name of the service Service string `pulumi:"service"` @@ -183,6 +361,9 @@ type sloArgs struct { type SloArgs struct { // Alert Policies attached to SLO AlertPolicies pulumi.StringArrayInput + // Configuration for Anomalies. Currently supported Anomaly Type is NoData + AnomalyConfig SloAnomalyConfigPtrInput + Attachment SloAttachmentArrayInput // Deprecated: "attachments" argument is deprecated use "attachment" instead Attachments SloAttachmentArrayInput // Method which will be use to calculate budget @@ -191,16 +372,16 @@ type SloArgs struct { Composite SloCompositePtrInput // Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. Description pulumi.StringPtrInput - // User-friendly display name of the resource. + // Name displayed for the attachment. Max. length: 63 characters. DisplayName pulumi.StringPtrInput Indicator SloIndicatorInput // [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. Labels SloLabelArrayInput - // Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // The name of the previously defined alert method. Name pulumi.StringPtrInput // [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) Objectives SloObjectiveArrayInput - // Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + // Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. Project pulumi.StringInput // Name of the service Service pulumi.StringInput @@ -233,7 +414,7 @@ func (i *Slo) ToSloOutputWithContext(ctx context.Context) SloOutput { // SloArrayInput is an input type that accepts SloArray and SloArrayOutput values. // You can construct a concrete instance of `SloArrayInput` via: // -// SloArray{ SloArgs{...} } +// SloArray{ SloArgs{...} } type SloArrayInput interface { pulumi.Input @@ -258,7 +439,7 @@ func (i SloArray) ToSloArrayOutputWithContext(ctx context.Context) SloArrayOutpu // SloMapInput is an input type that accepts SloMap and SloMapOutput values. // You can construct a concrete instance of `SloMapInput` via: // -// SloMap{ "key": SloArgs{...} } +// SloMap{ "key": SloArgs{...} } type SloMapInput interface { pulumi.Input @@ -299,6 +480,15 @@ func (o SloOutput) AlertPolicies() pulumi.StringArrayOutput { return o.ApplyT(func(v *Slo) pulumi.StringArrayOutput { return v.AlertPolicies }).(pulumi.StringArrayOutput) } +// Configuration for Anomalies. Currently supported Anomaly Type is NoData +func (o SloOutput) AnomalyConfig() SloAnomalyConfigPtrOutput { + return o.ApplyT(func(v *Slo) SloAnomalyConfigPtrOutput { return v.AnomalyConfig }).(SloAnomalyConfigPtrOutput) +} + +func (o SloOutput) Attachment() SloAttachmentArrayOutput { + return o.ApplyT(func(v *Slo) SloAttachmentArrayOutput { return v.Attachment }).(SloAttachmentArrayOutput) +} + // Deprecated: "attachments" argument is deprecated use "attachment" instead func (o SloOutput) Attachments() SloAttachmentArrayOutput { return o.ApplyT(func(v *Slo) SloAttachmentArrayOutput { return v.Attachments }).(SloAttachmentArrayOutput) @@ -319,7 +509,7 @@ func (o SloOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Slo) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } -// User-friendly display name of the resource. +// Name displayed for the attachment. Max. length: 63 characters. func (o SloOutput) DisplayName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Slo) pulumi.StringPtrOutput { return v.DisplayName }).(pulumi.StringPtrOutput) } @@ -333,7 +523,7 @@ func (o SloOutput) Labels() SloLabelArrayOutput { return o.ApplyT(func(v *Slo) SloLabelArrayOutput { return v.Labels }).(SloLabelArrayOutput) } -// Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +// The name of the previously defined alert method. func (o SloOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *Slo) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } @@ -343,7 +533,7 @@ func (o SloOutput) Objectives() SloObjectiveArrayOutput { return o.ApplyT(func(v *Slo) SloObjectiveArrayOutput { return v.Objectives }).(SloObjectiveArrayOutput) } -// Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). +// Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. func (o SloOutput) Project() pulumi.StringOutput { return o.ApplyT(func(v *Slo) pulumi.StringOutput { return v.Project }).(pulumi.StringOutput) } diff --git a/sdk/nodejs/agent.ts b/sdk/nodejs/agent.ts index 5b6a4ca..67e0739 100644 --- a/sdk/nodejs/agent.ts +++ b/sdk/nodejs/agent.ts @@ -2,7 +2,8 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** @@ -16,7 +17,7 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const thisProject = new nobl9.Project("thisProject", { * displayName: "Test N9 Terraform", @@ -24,11 +25,8 @@ import * as utilities from "./utilities"; * }); * const thisAgent = new nobl9.Agent("thisAgent", { * project: thisProject.name, - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * agentType: "prometheus", + * releaseChannel: "stable", * prometheusConfig: { * url: "http://web.net", * }, @@ -78,6 +76,10 @@ export class Agent extends pulumi.CustomResource { * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) */ public readonly appdynamicsConfig!: pulumi.Output; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + */ + public readonly azureMonitorConfig!: pulumi.Output; /** * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) */ @@ -126,6 +128,14 @@ export class Agent extends pulumi.CustomResource { * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) */ public readonly graphiteConfig!: pulumi.Output; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + public readonly historicalDataRetrieval!: pulumi.Output; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + */ + public readonly honeycombConfig!: pulumi.Output; /** * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) */ @@ -155,7 +165,7 @@ export class Agent extends pulumi.CustomResource { */ public readonly pingdomConfig!: pulumi.Output; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Name of the Lightstep project. */ public readonly project!: pulumi.Output; /** @@ -165,15 +175,21 @@ export class Agent extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) */ public readonly redshiftConfig!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - public readonly sourceOfs!: pulumi.Output; + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + public readonly sourceOfs!: pulumi.Output; /** * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) */ @@ -211,6 +227,7 @@ export class Agent extends pulumi.CustomResource { resourceInputs["agentType"] = state ? state.agentType : undefined; resourceInputs["amazonPrometheusConfig"] = state ? state.amazonPrometheusConfig : undefined; resourceInputs["appdynamicsConfig"] = state ? state.appdynamicsConfig : undefined; + resourceInputs["azureMonitorConfig"] = state ? state.azureMonitorConfig : undefined; resourceInputs["bigqueryConfig"] = state ? state.bigqueryConfig : undefined; resourceInputs["clientId"] = state ? state.clientId : undefined; resourceInputs["clientSecret"] = state ? state.clientSecret : undefined; @@ -223,6 +240,8 @@ export class Agent extends pulumi.CustomResource { resourceInputs["gcmConfig"] = state ? state.gcmConfig : undefined; resourceInputs["grafanaLokiConfig"] = state ? state.grafanaLokiConfig : undefined; resourceInputs["graphiteConfig"] = state ? state.graphiteConfig : undefined; + resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; + resourceInputs["honeycombConfig"] = state ? state.honeycombConfig : undefined; resourceInputs["influxdbConfig"] = state ? state.influxdbConfig : undefined; resourceInputs["instanaConfig"] = state ? state.instanaConfig : undefined; resourceInputs["lightstepConfig"] = state ? state.lightstepConfig : undefined; @@ -234,6 +253,7 @@ export class Agent extends pulumi.CustomResource { resourceInputs["prometheusConfig"] = state ? state.prometheusConfig : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; resourceInputs["redshiftConfig"] = state ? state.redshiftConfig : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["splunkConfig"] = state ? state.splunkConfig : undefined; resourceInputs["splunkObservabilityConfig"] = state ? state.splunkObservabilityConfig : undefined; @@ -248,12 +268,10 @@ export class Agent extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } resourceInputs["agentType"] = args ? args.agentType : undefined; resourceInputs["amazonPrometheusConfig"] = args ? args.amazonPrometheusConfig : undefined; resourceInputs["appdynamicsConfig"] = args ? args.appdynamicsConfig : undefined; + resourceInputs["azureMonitorConfig"] = args ? args.azureMonitorConfig : undefined; resourceInputs["bigqueryConfig"] = args ? args.bigqueryConfig : undefined; resourceInputs["cloudwatchConfig"] = args ? args.cloudwatchConfig : undefined; resourceInputs["datadogConfig"] = args ? args.datadogConfig : undefined; @@ -264,6 +282,8 @@ export class Agent extends pulumi.CustomResource { resourceInputs["gcmConfig"] = args ? args.gcmConfig : undefined; resourceInputs["grafanaLokiConfig"] = args ? args.grafanaLokiConfig : undefined; resourceInputs["graphiteConfig"] = args ? args.graphiteConfig : undefined; + resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; + resourceInputs["honeycombConfig"] = args ? args.honeycombConfig : undefined; resourceInputs["influxdbConfig"] = args ? args.influxdbConfig : undefined; resourceInputs["instanaConfig"] = args ? args.instanaConfig : undefined; resourceInputs["lightstepConfig"] = args ? args.lightstepConfig : undefined; @@ -275,6 +295,7 @@ export class Agent extends pulumi.CustomResource { resourceInputs["prometheusConfig"] = args ? args.prometheusConfig : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; resourceInputs["redshiftConfig"] = args ? args.redshiftConfig : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["splunkConfig"] = args ? args.splunkConfig : undefined; resourceInputs["splunkObservabilityConfig"] = args ? args.splunkObservabilityConfig : undefined; @@ -305,6 +326,10 @@ export interface AgentState { * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) */ appdynamicsConfig?: pulumi.Input; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + */ + azureMonitorConfig?: pulumi.Input; /** * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) */ @@ -353,6 +378,14 @@ export interface AgentState { * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) */ graphiteConfig?: pulumi.Input; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + historicalDataRetrieval?: pulumi.Input; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + */ + honeycombConfig?: pulumi.Input; /** * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) */ @@ -382,7 +415,7 @@ export interface AgentState { */ pingdomConfig?: pulumi.Input; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Name of the Lightstep project. */ project?: pulumi.Input; /** @@ -398,7 +431,13 @@ export interface AgentState { */ redshiftConfig?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -439,6 +478,10 @@ export interface AgentArgs { * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) */ appdynamicsConfig?: pulumi.Input; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + */ + azureMonitorConfig?: pulumi.Input; /** * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) */ @@ -479,6 +522,14 @@ export interface AgentArgs { * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) */ graphiteConfig?: pulumi.Input; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + historicalDataRetrieval?: pulumi.Input; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + */ + honeycombConfig?: pulumi.Input; /** * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) */ @@ -508,7 +559,7 @@ export interface AgentArgs { */ pingdomConfig?: pulumi.Input; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Name of the Lightstep project. */ project: pulumi.Input; /** @@ -524,9 +575,15 @@ export interface AgentArgs { */ redshiftConfig?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; /** * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) */ diff --git a/sdk/nodejs/alertMethodDiscord.ts b/sdk/nodejs/alertMethodDiscord.ts index 95c6de9..9c00a76 100644 --- a/sdk/nodejs/alertMethodDiscord.ts +++ b/sdk/nodejs/alertMethodDiscord.ts @@ -80,9 +80,11 @@ export class AlertMethodDiscord extends pulumi.CustomResource { resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; - resourceInputs["url"] = args ? args.url : undefined; + resourceInputs["url"] = args?.url ? pulumi.secret(args.url) : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["url"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(AlertMethodDiscord.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/alertMethodEmail.ts b/sdk/nodejs/alertMethodEmail.ts index 6677b5f..15f2124 100644 --- a/sdk/nodejs/alertMethodEmail.ts +++ b/sdk/nodejs/alertMethodEmail.ts @@ -37,9 +37,11 @@ export class AlertMethodEmail extends pulumi.CustomResource { */ public readonly bccs!: pulumi.Output; /** - * The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + * This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + * + * @deprecated 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. */ - public readonly body!: pulumi.Output; + public readonly body!: pulumi.Output; /** * Carbon copy recipients. The maximum number of recipients is 10. */ @@ -61,9 +63,11 @@ export class AlertMethodEmail extends pulumi.CustomResource { */ public readonly project!: pulumi.Output; /** - * The Subject of the email alert. + * This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + * + * @deprecated 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. */ - public readonly subject!: pulumi.Output; + public readonly subject!: pulumi.Output; /** * Recipients. The maximum number of recipients is 10. */ @@ -93,15 +97,9 @@ export class AlertMethodEmail extends pulumi.CustomResource { resourceInputs["tos"] = state ? state.tos : undefined; } else { const args = argsOrState as AlertMethodEmailArgs | undefined; - if ((!args || args.body === undefined) && !opts.urn) { - throw new Error("Missing required property 'body'"); - } if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.subject === undefined) && !opts.urn) { - throw new Error("Missing required property 'subject'"); - } if ((!args || args.tos === undefined) && !opts.urn) { throw new Error("Missing required property 'tos'"); } @@ -129,7 +127,9 @@ export interface AlertMethodEmailState { */ bccs?: pulumi.Input[]>; /** - * The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + * This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + * + * @deprecated 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. */ body?: pulumi.Input; /** @@ -153,7 +153,9 @@ export interface AlertMethodEmailState { */ project?: pulumi.Input; /** - * The Subject of the email alert. + * This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + * + * @deprecated 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. */ subject?: pulumi.Input; /** @@ -171,9 +173,11 @@ export interface AlertMethodEmailArgs { */ bccs?: pulumi.Input[]>; /** - * The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + * This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + * + * @deprecated 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. */ - body: pulumi.Input; + body?: pulumi.Input; /** * Carbon copy recipients. The maximum number of recipients is 10. */ @@ -195,9 +199,11 @@ export interface AlertMethodEmailArgs { */ project: pulumi.Input; /** - * The Subject of the email alert. + * This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + * + * @deprecated 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file. */ - subject: pulumi.Input; + subject?: pulumi.Input; /** * Recipients. The maximum number of recipients is 10. */ diff --git a/sdk/nodejs/alertMethodJira.ts b/sdk/nodejs/alertMethodJira.ts index 4e64288..ea39761 100644 --- a/sdk/nodejs/alertMethodJira.ts +++ b/sdk/nodejs/alertMethodJira.ts @@ -100,7 +100,7 @@ export class AlertMethodJira extends pulumi.CustomResource { if ((!args || args.username === undefined) && !opts.urn) { throw new Error("Missing required property 'username'"); } - resourceInputs["apitoken"] = args ? args.apitoken : undefined; + resourceInputs["apitoken"] = args?.apitoken ? pulumi.secret(args.apitoken) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["name"] = args ? args.name : undefined; @@ -110,6 +110,8 @@ export class AlertMethodJira extends pulumi.CustomResource { resourceInputs["username"] = args ? args.username : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["apitoken"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(AlertMethodJira.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/alertMethodMsteams.ts b/sdk/nodejs/alertMethodMsteams.ts index adb9fb6..d54d267 100644 --- a/sdk/nodejs/alertMethodMsteams.ts +++ b/sdk/nodejs/alertMethodMsteams.ts @@ -80,9 +80,11 @@ export class AlertMethodMsteams extends pulumi.CustomResource { resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; - resourceInputs["url"] = args ? args.url : undefined; + resourceInputs["url"] = args?.url ? pulumi.secret(args.url) : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["url"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(AlertMethodMsteams.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/alertMethodOpsgenie.ts b/sdk/nodejs/alertMethodOpsgenie.ts index 862fb0b..36e5fb0 100644 --- a/sdk/nodejs/alertMethodOpsgenie.ts +++ b/sdk/nodejs/alertMethodOpsgenie.ts @@ -84,7 +84,7 @@ export class AlertMethodOpsgenie extends pulumi.CustomResource { if ((!args || args.url === undefined) && !opts.urn) { throw new Error("Missing required property 'url'"); } - resourceInputs["auth"] = args ? args.auth : undefined; + resourceInputs["auth"] = args?.auth ? pulumi.secret(args.auth) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["name"] = args ? args.name : undefined; @@ -92,6 +92,8 @@ export class AlertMethodOpsgenie extends pulumi.CustomResource { resourceInputs["url"] = args ? args.url : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["auth"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(AlertMethodOpsgenie.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/alertMethodPagerduty.ts b/sdk/nodejs/alertMethodPagerduty.ts index bf73ba5..7df66c8 100644 --- a/sdk/nodejs/alertMethodPagerduty.ts +++ b/sdk/nodejs/alertMethodPagerduty.ts @@ -2,6 +2,8 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; export class AlertMethodPagerduty extends pulumi.CustomResource { @@ -52,6 +54,10 @@ export class AlertMethodPagerduty extends pulumi.CustomResource { * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ public readonly project!: pulumi.Output; + /** + * Sends a notification after the cooldown period is over. + */ + public readonly sendResolution!: pulumi.Output; /** * Create a AlertMethodPagerduty resource with the given unique name, arguments, and options. @@ -71,6 +77,7 @@ export class AlertMethodPagerduty extends pulumi.CustomResource { resourceInputs["integrationKey"] = state ? state.integrationKey : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; + resourceInputs["sendResolution"] = state ? state.sendResolution : undefined; } else { const args = argsOrState as AlertMethodPagerdutyArgs | undefined; if ((!args || args.project === undefined) && !opts.urn) { @@ -78,11 +85,14 @@ export class AlertMethodPagerduty extends pulumi.CustomResource { } resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; - resourceInputs["integrationKey"] = args ? args.integrationKey : undefined; + resourceInputs["integrationKey"] = args?.integrationKey ? pulumi.secret(args.integrationKey) : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; + resourceInputs["sendResolution"] = args ? args.sendResolution : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["integrationKey"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(AlertMethodPagerduty.__pulumiType, name, resourceInputs, opts); } } @@ -111,6 +121,10 @@ export interface AlertMethodPagerdutyState { * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ project?: pulumi.Input; + /** + * Sends a notification after the cooldown period is over. + */ + sendResolution?: pulumi.Input; } /** @@ -137,4 +151,8 @@ export interface AlertMethodPagerdutyArgs { * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ project: pulumi.Input; + /** + * Sends a notification after the cooldown period is over. + */ + sendResolution?: pulumi.Input; } diff --git a/sdk/nodejs/alertMethodServicenow.ts b/sdk/nodejs/alertMethodServicenow.ts index 2bcb1d4..a1dcd72 100644 --- a/sdk/nodejs/alertMethodServicenow.ts +++ b/sdk/nodejs/alertMethodServicenow.ts @@ -96,11 +96,13 @@ export class AlertMethodServicenow extends pulumi.CustomResource { resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["instanceName"] = args ? args.instanceName : undefined; resourceInputs["name"] = args ? args.name : undefined; - resourceInputs["password"] = args ? args.password : undefined; + resourceInputs["password"] = args?.password ? pulumi.secret(args.password) : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["username"] = args ? args.username : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["password"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(AlertMethodServicenow.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/alertMethodSlack.ts b/sdk/nodejs/alertMethodSlack.ts index 3bfa1cc..76ab24b 100644 --- a/sdk/nodejs/alertMethodSlack.ts +++ b/sdk/nodejs/alertMethodSlack.ts @@ -80,9 +80,11 @@ export class AlertMethodSlack extends pulumi.CustomResource { resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; - resourceInputs["url"] = args ? args.url : undefined; + resourceInputs["url"] = args?.url ? pulumi.secret(args.url) : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["url"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(AlertMethodSlack.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/alertMethodWebhook.ts b/sdk/nodejs/alertMethodWebhook.ts index 7cd98d2..32f8bc2 100644 --- a/sdk/nodejs/alertMethodWebhook.ts +++ b/sdk/nodejs/alertMethodWebhook.ts @@ -92,9 +92,11 @@ export class AlertMethodWebhook extends pulumi.CustomResource { resourceInputs["project"] = args ? args.project : undefined; resourceInputs["template"] = args ? args.template : undefined; resourceInputs["templateFields"] = args ? args.templateFields : undefined; - resourceInputs["url"] = args ? args.url : undefined; + resourceInputs["url"] = args?.url ? pulumi.secret(args.url) : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["url"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(AlertMethodWebhook.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/alertPolicy.ts b/sdk/nodejs/alertPolicy.ts index e397d04..96a8cae 100644 --- a/sdk/nodejs/alertPolicy.ts +++ b/sdk/nodejs/alertPolicy.ts @@ -2,13 +2,14 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** * An **Alert Policy** expresses a set of conditions you want to track or monitor. The conditions for an Alert Policy define what is monitored and when to activate an alert: when the performance of your service is declining, Nobl9 will send a notification to a predefined channel. * - * A Nobl9 AlertPolicy accepts up to 7 conditions. All the specified conditions must be satisfied to trigger an alert. + * A Nobl9 AlertPolicy accepts up to 3 conditions. All the specified conditions must be satisfied to trigger an alert. * * For more details, refer to the [Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy). * @@ -18,7 +19,7 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const thisProject = new nobl9.Project("thisProject", { * displayName: "My Project", @@ -34,6 +35,7 @@ import * as utilities from "./utilities"; * displayName: thisProject.displayName.apply(displayName => `${displayName} Front Page Latency`), * severity: "High", * description: "Alert when page latency is > 2000 and error budget would be exhausted", + * cooldown: "5m", * conditions: [{ * measurement: "timeToBurnBudget", * valueString: "72h", @@ -43,6 +45,37 @@ import * as utilities from "./utilities"; * name: "my-alert-method", * }], * }); + * const thisIndex_alertPolicyAlertPolicy = new nobl9.AlertPolicy("thisIndex/alertPolicyAlertPolicy", { + * project: thisProject.name, + * displayName: thisProject.displayName.apply(displayName => `${displayName} Slow Burn (1x12h and 2x15min)`), + * severity: "Low", + * description: "The budget is slowly exhausting and not recovering.", + * cooldown: "5m", + * conditions: [ + * { + * measurement: "averageBurnRate", + * value: 1, + * alertingWindow: "12h", + * }, + * { + * measurement: "averageBurnRate", + * value: 2, + * alertingWindow: "15m", + * }, + * ], + * }); + * const thisNobl9Index_alertPolicyAlertPolicy = new nobl9.AlertPolicy("thisNobl9Index/alertPolicyAlertPolicy", { + * project: thisProject.name, + * displayName: thisProject.displayName.apply(displayName => `${displayName} Fast Burn (20x5min)`), + * severity: "High", + * description: "There’s been a significant spike in burn rate over a brief period.", + * cooldown: "5m", + * conditions: [{ + * measurement: "averageBurnRate", + * value: 20, + * alertingWindow: "5m", + * }], + * }); * ``` * ## Useful Links * @@ -81,6 +114,10 @@ export class AlertPolicy extends pulumi.CustomResource { * Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). */ public readonly conditions!: pulumi.Output; + /** + * An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + */ + public readonly cooldown!: pulumi.Output; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -90,11 +127,11 @@ export class AlertPolicy extends pulumi.CustomResource { */ public readonly displayName!: pulumi.Output; /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ public readonly name!: pulumi.Output; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. */ public readonly project!: pulumi.Output; /** @@ -117,6 +154,7 @@ export class AlertPolicy extends pulumi.CustomResource { const state = argsOrState as AlertPolicyState | undefined; resourceInputs["alertMethods"] = state ? state.alertMethods : undefined; resourceInputs["conditions"] = state ? state.conditions : undefined; + resourceInputs["cooldown"] = state ? state.cooldown : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; resourceInputs["name"] = state ? state.name : undefined; @@ -135,6 +173,7 @@ export class AlertPolicy extends pulumi.CustomResource { } resourceInputs["alertMethods"] = args ? args.alertMethods : undefined; resourceInputs["conditions"] = args ? args.conditions : undefined; + resourceInputs["cooldown"] = args ? args.cooldown : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["name"] = args ? args.name : undefined; @@ -155,6 +194,10 @@ export interface AlertPolicyState { * Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). */ conditions?: pulumi.Input[]>; + /** + * An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + */ + cooldown?: pulumi.Input; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -164,11 +207,11 @@ export interface AlertPolicyState { */ displayName?: pulumi.Input; /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name?: pulumi.Input; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. */ project?: pulumi.Input; /** @@ -186,6 +229,10 @@ export interface AlertPolicyArgs { * Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). */ conditions: pulumi.Input[]>; + /** + * An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + */ + cooldown?: pulumi.Input; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -195,11 +242,11 @@ export interface AlertPolicyArgs { */ displayName?: pulumi.Input; /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name?: pulumi.Input; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. */ project: pulumi.Input; /** diff --git a/sdk/nodejs/config/vars.ts b/sdk/nodejs/config/vars.ts index 51143d1..0329cff 100644 --- a/sdk/nodejs/config/vars.ts +++ b/sdk/nodejs/config/vars.ts @@ -64,10 +64,6 @@ Object.defineProperty(exports, "oktaOrgUrl", { enumerable: true, }); -/** - * Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that - * contains resources managed by the Nobl9 Terraform provider. - */ export declare const organization: string | undefined; Object.defineProperty(exports, "organization", { get() { diff --git a/sdk/nodejs/directAppdynamics.ts b/sdk/nodejs/directAppdynamics.ts index 9507fc2..76dab8d 100644 --- a/sdk/nodejs/directAppdynamics.ts +++ b/sdk/nodejs/directAppdynamics.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects with AppDynamics to collect SLI measurements and compare them to SLO targets. + * AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects to AppDynamics for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [AppDynamics Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-direct) * @@ -14,18 +15,16 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_appdynamics = new nobl9.DirectAppdynamics("test-appdynamics", { * accountName: "account name", * clientName: "client name", * clientSecret: "secret", * description: "desc", + * logCollectionEnabled: true, * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], + * releaseChannel: "stable", * url: "https://web.net", * }); * ``` @@ -85,6 +84,14 @@ export class DirectAppdynamics extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + public readonly historicalDataRetrieval!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -96,11 +103,17 @@ export class DirectAppdynamics extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -129,9 +142,12 @@ export class DirectAppdynamics extends pulumi.CustomResource { resourceInputs["clientSecret"] = state ? state.clientSecret : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; resourceInputs["url"] = state ? state.url : undefined; @@ -146,26 +162,28 @@ export class DirectAppdynamics extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } if ((!args || args.url === undefined) && !opts.urn) { throw new Error("Missing required property 'url'"); } resourceInputs["accountName"] = args ? args.accountName : undefined; resourceInputs["clientName"] = args ? args.clientName : undefined; - resourceInputs["clientSecret"] = args ? args.clientSecret : undefined; + resourceInputs["clientSecret"] = args?.clientSecret ? pulumi.secret(args.clientSecret) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["url"] = args ? args.url : undefined; resourceInputs["clientId"] = undefined /*out*/; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["clientSecret"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectAppdynamics.__pulumiType, name, resourceInputs, opts); } } @@ -198,6 +216,14 @@ export interface DirectAppdynamicsState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -211,7 +237,13 @@ export interface DirectAppdynamicsState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -248,6 +280,14 @@ export interface DirectAppdynamicsArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -261,9 +301,15 @@ export interface DirectAppdynamicsArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; /** * Base URL to the AppDynamics Controller. */ diff --git a/sdk/nodejs/directAzureMonitor.ts b/sdk/nodejs/directAzureMonitor.ts new file mode 100644 index 0000000..6a897a0 --- /dev/null +++ b/sdk/nodejs/directAzureMonitor.ts @@ -0,0 +1,273 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; +import * as utilities from "./utilities"; + +export class DirectAzureMonitor extends pulumi.CustomResource { + /** + * Get an existing DirectAzureMonitor resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: DirectAzureMonitorState, opts?: pulumi.CustomResourceOptions): DirectAzureMonitor { + return new DirectAzureMonitor(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'nobl9:index/directAzureMonitor:DirectAzureMonitor'; + + /** + * Returns true if the given object is an instance of DirectAzureMonitor. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is DirectAzureMonitor { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === DirectAzureMonitor.__pulumiType; + } + + /** + * [required] | Azure Application (client) ID. + */ + public readonly clientId!: pulumi.Output; + /** + * [required] | Azure Application (client) Secret. + */ + public readonly clientSecret!: pulumi.Output; + /** + * Optional description of the resource. Here, you can add details about who is responsible for the integration + * (team/owner) or the purpose of creating it. + */ + public readonly description!: pulumi.Output; + /** + * User-friendly display name of the resource. + */ + public readonly displayName!: pulumi.Output; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + public readonly historicalDataRetrieval!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; + /** + * Unique name of the resource, must conform to the naming convention from [DNS + * RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + public readonly name!: pulumi.Output; + /** + * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + * RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + public readonly project!: pulumi.Output; + /** + * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + */ + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + * anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + public readonly sourceOfs!: pulumi.Output; + /** + * The status of the created direct. + */ + public /*out*/ readonly status!: pulumi.Output; + /** + * [required] | Azure Tenant ID. + */ + public readonly tenantId!: pulumi.Output; + + /** + * Create a DirectAzureMonitor resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: DirectAzureMonitorArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: DirectAzureMonitorArgs | DirectAzureMonitorState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as DirectAzureMonitorState | undefined; + resourceInputs["clientId"] = state ? state.clientId : undefined; + resourceInputs["clientSecret"] = state ? state.clientSecret : undefined; + resourceInputs["description"] = state ? state.description : undefined; + resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["project"] = state ? state.project : undefined; + resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; + resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; + resourceInputs["status"] = state ? state.status : undefined; + resourceInputs["tenantId"] = state ? state.tenantId : undefined; + } else { + const args = argsOrState as DirectAzureMonitorArgs | undefined; + if ((!args || args.project === undefined) && !opts.urn) { + throw new Error("Missing required property 'project'"); + } + if ((!args || args.tenantId === undefined) && !opts.urn) { + throw new Error("Missing required property 'tenantId'"); + } + resourceInputs["clientId"] = args?.clientId ? pulumi.secret(args.clientId) : undefined; + resourceInputs["clientSecret"] = args?.clientSecret ? pulumi.secret(args.clientSecret) : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["project"] = args ? args.project : undefined; + resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; + resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; + resourceInputs["tenantId"] = args ? args.tenantId : undefined; + resourceInputs["status"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["clientId", "clientSecret"] }; + opts = pulumi.mergeOptions(opts, secretOpts); + super(DirectAzureMonitor.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering DirectAzureMonitor resources. + */ +export interface DirectAzureMonitorState { + /** + * [required] | Azure Application (client) ID. + */ + clientId?: pulumi.Input; + /** + * [required] | Azure Application (client) Secret. + */ + clientSecret?: pulumi.Input; + /** + * Optional description of the resource. Here, you can add details about who is responsible for the integration + * (team/owner) or the purpose of creating it. + */ + description?: pulumi.Input; + /** + * User-friendly display name of the resource. + */ + displayName?: pulumi.Input; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; + /** + * Unique name of the resource, must conform to the naming convention from [DNS + * RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + name?: pulumi.Input; + /** + * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + * RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + project?: pulumi.Input; + /** + * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + */ + queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + * anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; + /** + * The status of the created direct. + */ + status?: pulumi.Input; + /** + * [required] | Azure Tenant ID. + */ + tenantId?: pulumi.Input; +} + +/** + * The set of arguments for constructing a DirectAzureMonitor resource. + */ +export interface DirectAzureMonitorArgs { + /** + * [required] | Azure Application (client) ID. + */ + clientId?: pulumi.Input; + /** + * [required] | Azure Application (client) Secret. + */ + clientSecret?: pulumi.Input; + /** + * Optional description of the resource. Here, you can add details about who is responsible for the integration + * (team/owner) or the purpose of creating it. + */ + description?: pulumi.Input; + /** + * User-friendly display name of the resource. + */ + displayName?: pulumi.Input; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; + /** + * Unique name of the resource, must conform to the naming convention from [DNS + * RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + name?: pulumi.Input; + /** + * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + * RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + project: pulumi.Input; + /** + * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + */ + queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + * anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; + /** + * [required] | Azure Tenant ID. + */ + tenantId: pulumi.Input; +} diff --git a/sdk/nodejs/directBigquery.ts b/sdk/nodejs/directBigquery.ts index 23ce99f..5152261 100644 --- a/sdk/nodejs/directBigquery.ts +++ b/sdk/nodejs/directBigquery.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects with BigQuery to collect SLI measurements and compare them to SLO targets. + * Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects to BigQuery for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [BigQuery Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-direct) * @@ -14,16 +15,13 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_bigquery = new nobl9.DirectBigquery("test-bigquery", { * description: "desc", + * logCollectionEnabled: true, * project: "terraform", * serviceAccountKey: "secret", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -66,6 +64,10 @@ export class DirectBigquery extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -77,15 +79,21 @@ export class DirectBigquery extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; /** * [required] | Service Account Key. */ public readonly serviceAccountKey!: pulumi.Output; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -106,9 +114,11 @@ export class DirectBigquery extends pulumi.CustomResource { const state = argsOrState as DirectBigqueryState | undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["serviceAccountKey"] = state ? state.serviceAccountKey : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; @@ -117,19 +127,20 @@ export class DirectBigquery extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; - resourceInputs["serviceAccountKey"] = args ? args.serviceAccountKey : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; + resourceInputs["serviceAccountKey"] = args?.serviceAccountKey ? pulumi.secret(args.serviceAccountKey) : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["serviceAccountKey"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectBigquery.__pulumiType, name, resourceInputs, opts); } } @@ -146,6 +157,10 @@ export interface DirectBigqueryState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -158,12 +173,18 @@ export interface DirectBigqueryState { * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; /** * [required] | Service Account Key. */ serviceAccountKey?: pulumi.Input; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -184,6 +205,10 @@ export interface DirectBigqueryArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -196,12 +221,18 @@ export interface DirectBigqueryArgs { * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; /** * [required] | Service Account Key. */ serviceAccountKey?: pulumi.Input; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - sourceOfs: pulumi.Input[]>; + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/directCloudwatch.ts b/sdk/nodejs/directCloudwatch.ts index c23a118..346ba41 100644 --- a/sdk/nodejs/directCloudwatch.ts +++ b/sdk/nodejs/directCloudwatch.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects with Amazon CloudWatch to collect SLI measurements and compare them to SLO targets. + * Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects to Amazon CloudWatch for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Amazon CloudWatch Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-direct) * @@ -14,10 +15,9 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_cloudwatch = new nobl9.DirectCloudwatch("test-cloudwatch", { - * accessKeyId: "secret", * description: "desc", * historicalDataRetrieval: { * defaultDurations: [{ @@ -29,12 +29,9 @@ import * as utilities from "./utilities"; * value: 15, * }], * }, + * logCollectionEnabled: true, * project: "terraform", - * secretAccessKey: "secret", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], + * roleArn: "secret", * }); * ``` * ## Nobl9 Official Documentation @@ -69,10 +66,6 @@ export class DirectCloudwatch extends pulumi.CustomResource { return obj['__pulumiType'] === DirectCloudwatch.__pulumiType; } - /** - * [required] | AWS Access Key ID. - */ - public readonly accessKeyId!: pulumi.Output; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -84,7 +77,11 @@ export class DirectCloudwatch extends pulumi.CustomResource { /** * [Replay configuration documentation](https://docs.nobl9.com/replay) */ - public readonly historicalDataRetrieval!: pulumi.Output; + public readonly historicalDataRetrieval!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -96,15 +93,21 @@ export class DirectCloudwatch extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; /** - * [required] | AWS Secret Access Key. + * [required] | ARN of the AWS IAM Role to assume. */ - public readonly secretAccessKey!: pulumi.Output; + public readonly roleArn!: pulumi.Output; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -123,14 +126,15 @@ export class DirectCloudwatch extends pulumi.CustomResource { opts = opts || {}; if (opts.id) { const state = argsOrState as DirectCloudwatchState | undefined; - resourceInputs["accessKeyId"] = state ? state.accessKeyId : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; - resourceInputs["secretAccessKey"] = state ? state.secretAccessKey : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; + resourceInputs["roleArn"] = state ? state.roleArn : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; } else { @@ -138,21 +142,21 @@ export class DirectCloudwatch extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } - resourceInputs["accessKeyId"] = args ? args.accessKeyId : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; - resourceInputs["secretAccessKey"] = args ? args.secretAccessKey : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; + resourceInputs["roleArn"] = args?.roleArn ? pulumi.secret(args.roleArn) : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["roleArn"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectCloudwatch.__pulumiType, name, resourceInputs, opts); } } @@ -161,10 +165,6 @@ export class DirectCloudwatch extends pulumi.CustomResource { * Input properties used for looking up and filtering DirectCloudwatch resources. */ export interface DirectCloudwatchState { - /** - * [required] | AWS Access Key ID. - */ - accessKeyId?: pulumi.Input; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -177,6 +177,10 @@ export interface DirectCloudwatchState { * [Replay configuration documentation](https://docs.nobl9.com/replay) */ historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -190,11 +194,17 @@ export interface DirectCloudwatchState { */ queryDelay?: pulumi.Input; /** - * [required] | AWS Secret Access Key. + * Release channel of the created datasource [stable/beta] */ - secretAccessKey?: pulumi.Input; + releaseChannel?: pulumi.Input; /** - * Source of Metrics and/or Services. + * [required] | ARN of the AWS IAM Role to assume. + */ + roleArn?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -207,10 +217,6 @@ export interface DirectCloudwatchState { * The set of arguments for constructing a DirectCloudwatch resource. */ export interface DirectCloudwatchArgs { - /** - * [required] | AWS Access Key ID. - */ - accessKeyId?: pulumi.Input; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -223,6 +229,10 @@ export interface DirectCloudwatchArgs { * [Replay configuration documentation](https://docs.nobl9.com/replay) */ historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -236,11 +246,17 @@ export interface DirectCloudwatchArgs { */ queryDelay?: pulumi.Input; /** - * [required] | AWS Secret Access Key. + * Release channel of the created datasource [stable/beta] */ - secretAccessKey?: pulumi.Input; + releaseChannel?: pulumi.Input; /** - * Source of Metrics and/or Services. + * [required] | ARN of the AWS IAM Role to assume. */ - sourceOfs: pulumi.Input[]>; + roleArn?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/directDatadog.ts b/sdk/nodejs/directDatadog.ts index 81bb9ef..6d69c7e 100644 --- a/sdk/nodejs/directDatadog.ts +++ b/sdk/nodejs/directDatadog.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects with Datadog to collect SLI measurements and compare them to SLO targets. + * Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects to Datadog for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Datadog Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/datadog#datadog-direct). * @@ -14,7 +15,7 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_datadog = new nobl9.DirectDatadog("test-datadog", { * apiKey: "secret", @@ -30,12 +31,9 @@ import * as utilities from "./utilities"; * value: 30, * }], * }, + * logCollectionEnabled: true, * project: "terraform", * site: "eu", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -89,7 +87,11 @@ export class DirectDatadog extends pulumi.CustomResource { /** * [Replay configuration documentation](https://docs.nobl9.com/replay) */ - public readonly historicalDataRetrieval!: pulumi.Output; + public readonly historicalDataRetrieval!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -101,15 +103,21 @@ export class DirectDatadog extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; /** * `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). */ public readonly site!: pulumi.Output; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -133,9 +141,11 @@ export class DirectDatadog extends pulumi.CustomResource { resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["site"] = state ? state.site : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; @@ -147,22 +157,23 @@ export class DirectDatadog extends pulumi.CustomResource { if ((!args || args.site === undefined) && !opts.urn) { throw new Error("Missing required property 'site'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } - resourceInputs["apiKey"] = args ? args.apiKey : undefined; - resourceInputs["applicationKey"] = args ? args.applicationKey : undefined; + resourceInputs["apiKey"] = args?.apiKey ? pulumi.secret(args.apiKey) : undefined; + resourceInputs["applicationKey"] = args?.applicationKey ? pulumi.secret(args.applicationKey) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["site"] = args ? args.site : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["apiKey", "applicationKey"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectDatadog.__pulumiType, name, resourceInputs, opts); } } @@ -191,6 +202,10 @@ export interface DirectDatadogState { * [Replay configuration documentation](https://docs.nobl9.com/replay) */ historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -203,12 +218,18 @@ export interface DirectDatadogState { * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; /** * `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). */ site?: pulumi.Input; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -241,6 +262,10 @@ export interface DirectDatadogArgs { * [Replay configuration documentation](https://docs.nobl9.com/replay) */ historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -253,12 +278,18 @@ export interface DirectDatadogArgs { * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; /** * `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). */ site: pulumi.Input; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - sourceOfs: pulumi.Input[]>; + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/directDynatrace.ts b/sdk/nodejs/directDynatrace.ts index 1224c27..7f5899b 100644 --- a/sdk/nodejs/directDynatrace.ts +++ b/sdk/nodejs/directDynatrace.ts @@ -2,19 +2,19 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects with Dynatrace to collect SLI measurements and compare them to SLO targets. - * + * Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects to Dynatrace for SLI measurement collection and comparison with SLO targets. * For more information, refer to [Dynatrace Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/dynatrace#dynatrace-direct). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_dynatrace = new nobl9.DirectDynatrace("test-dynatrace", { * description: "desc", @@ -29,11 +29,8 @@ import * as utilities from "./utilities"; * value: 10, * }], * }, + * logCollectionEnabled: true, * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * url: "https://web.net", * }); * ``` @@ -84,7 +81,11 @@ export class DirectDynatrace extends pulumi.CustomResource { /** * [Replay configuration documentation](https://docs.nobl9.com/replay) */ - public readonly historicalDataRetrieval!: pulumi.Output; + public readonly historicalDataRetrieval!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -96,11 +97,17 @@ export class DirectDynatrace extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - public readonly sourceOfs!: pulumi.Output; + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -127,9 +134,11 @@ export class DirectDynatrace extends pulumi.CustomResource { resourceInputs["displayName"] = state ? state.displayName : undefined; resourceInputs["dynatraceToken"] = state ? state.dynatraceToken : undefined; resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; resourceInputs["url"] = state ? state.url : undefined; @@ -138,24 +147,25 @@ export class DirectDynatrace extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } if ((!args || args.url === undefined) && !opts.urn) { throw new Error("Missing required property 'url'"); } resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; - resourceInputs["dynatraceToken"] = args ? args.dynatraceToken : undefined; + resourceInputs["dynatraceToken"] = args?.dynatraceToken ? pulumi.secret(args.dynatraceToken) : undefined; resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["url"] = args ? args.url : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["dynatraceToken"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectDynatrace.__pulumiType, name, resourceInputs, opts); } } @@ -180,6 +190,10 @@ export interface DirectDynatraceState { * [Replay configuration documentation](https://docs.nobl9.com/replay) */ historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -193,7 +207,13 @@ export interface DirectDynatraceState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -226,6 +246,10 @@ export interface DirectDynatraceArgs { * [Replay configuration documentation](https://docs.nobl9.com/replay) */ historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -239,9 +263,15 @@ export interface DirectDynatraceArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; /** * Dynatrace API URL. */ diff --git a/sdk/nodejs/directGcm.ts b/sdk/nodejs/directGcm.ts index a961aa3..deeee1f 100644 --- a/sdk/nodejs/directGcm.ts +++ b/sdk/nodejs/directGcm.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects with GCM to collect SLI measurements and compare them to SLO targets. + * Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects to GCM for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Google Cloud Monitoring Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-direct). * @@ -14,16 +15,13 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_gcm = new nobl9.DirectGcm("test-gcm", { * description: "desc", + * logCollectionEnabled: true, * project: "terraform", * serviceAccountKey: "secret", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -66,6 +64,10 @@ export class DirectGcm extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -77,15 +79,21 @@ export class DirectGcm extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; /** * [required] | Service Account Key. */ public readonly serviceAccountKey!: pulumi.Output; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -106,9 +114,11 @@ export class DirectGcm extends pulumi.CustomResource { const state = argsOrState as DirectGcmState | undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["serviceAccountKey"] = state ? state.serviceAccountKey : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; @@ -117,19 +127,20 @@ export class DirectGcm extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; - resourceInputs["serviceAccountKey"] = args ? args.serviceAccountKey : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; + resourceInputs["serviceAccountKey"] = args?.serviceAccountKey ? pulumi.secret(args.serviceAccountKey) : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["serviceAccountKey"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectGcm.__pulumiType, name, resourceInputs, opts); } } @@ -146,6 +157,10 @@ export interface DirectGcmState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -158,12 +173,18 @@ export interface DirectGcmState { * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; /** * [required] | Service Account Key. */ serviceAccountKey?: pulumi.Input; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -184,6 +205,10 @@ export interface DirectGcmArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -196,12 +221,18 @@ export interface DirectGcmArgs { * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; /** * [required] | Service Account Key. */ serviceAccountKey?: pulumi.Input; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - sourceOfs: pulumi.Input[]>; + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/directHoneycomb.ts b/sdk/nodejs/directHoneycomb.ts new file mode 100644 index 0000000..2ffbf29 --- /dev/null +++ b/sdk/nodejs/directHoneycomb.ts @@ -0,0 +1,267 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; +import * as utilities from "./utilities"; + +/** + * Honeycomb is an observability platform that integrates system metrics with high-cardinality application data for in-depth analysis and swift debugging of complex software systems. Nobl9 connects to Honeycomb for SLI measurement collection and comparison with SLO targets. + * + * For more information, refer to [Honeycomb Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/honeycomb#hc-direct). + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; + * + * const test_honeycomb = new nobl9.DirectHoneycomb("test-honeycomb", { + * apiKey: "secret", + * description: "desc", + * historicalDataRetrieval: { + * defaultDurations: [{ + * unit: "Day", + * value: 7, + * }], + * maxDurations: [{ + * unit: "Day", + * value: 7, + * }], + * }, + * logCollectionEnabled: true, + * project: "terraform", + * queryDelay: { + * unit: "Minute", + * value: 6, + * }, + * releaseChannel: "beta", + * }); + * ``` + * ## Nobl9 Official Documentation + * + * https://docs.nobl9.com/ + */ +export class DirectHoneycomb extends pulumi.CustomResource { + /** + * Get an existing DirectHoneycomb resource's state with the given name, ID, and optional extra + * properties used to qualify the lookup. + * + * @param name The _unique_ name of the resulting resource. + * @param id The _unique_ provider ID of the resource to lookup. + * @param state Any extra arguments used during the lookup. + * @param opts Optional settings to control the behavior of the CustomResource. + */ + public static get(name: string, id: pulumi.Input, state?: DirectHoneycombState, opts?: pulumi.CustomResourceOptions): DirectHoneycomb { + return new DirectHoneycomb(name, state, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'nobl9:index/directHoneycomb:DirectHoneycomb'; + + /** + * Returns true if the given object is an instance of DirectHoneycomb. This is designed to work even + * when multiple copies of the Pulumi SDK have been loaded into the same process. + */ + public static isInstance(obj: any): obj is DirectHoneycomb { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === DirectHoneycomb.__pulumiType; + } + + /** + * [required] | Honeycomb API Key. + */ + public readonly apiKey!: pulumi.Output; + /** + * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + */ + public readonly description!: pulumi.Output; + /** + * User-friendly display name of the resource. + */ + public readonly displayName!: pulumi.Output; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + public readonly historicalDataRetrieval!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; + /** + * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + public readonly name!: pulumi.Output; + /** + * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + public readonly project!: pulumi.Output; + /** + * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + */ + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + public readonly sourceOfs!: pulumi.Output; + /** + * The status of the created direct. + */ + public /*out*/ readonly status!: pulumi.Output; + + /** + * Create a DirectHoneycomb resource with the given unique name, arguments, and options. + * + * @param name The _unique_ name of the resource. + * @param args The arguments to use to populate this resource's properties. + * @param opts A bag of options that control this resource's behavior. + */ + constructor(name: string, args: DirectHoneycombArgs, opts?: pulumi.CustomResourceOptions) + constructor(name: string, argsOrState?: DirectHoneycombArgs | DirectHoneycombState, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (opts.id) { + const state = argsOrState as DirectHoneycombState | undefined; + resourceInputs["apiKey"] = state ? state.apiKey : undefined; + resourceInputs["description"] = state ? state.description : undefined; + resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; + resourceInputs["name"] = state ? state.name : undefined; + resourceInputs["project"] = state ? state.project : undefined; + resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; + resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; + resourceInputs["status"] = state ? state.status : undefined; + } else { + const args = argsOrState as DirectHoneycombArgs | undefined; + if ((!args || args.project === undefined) && !opts.urn) { + throw new Error("Missing required property 'project'"); + } + resourceInputs["apiKey"] = args?.apiKey ? pulumi.secret(args.apiKey) : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["project"] = args ? args.project : undefined; + resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; + resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; + resourceInputs["status"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["apiKey"] }; + opts = pulumi.mergeOptions(opts, secretOpts); + super(DirectHoneycomb.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * Input properties used for looking up and filtering DirectHoneycomb resources. + */ +export interface DirectHoneycombState { + /** + * [required] | Honeycomb API Key. + */ + apiKey?: pulumi.Input; + /** + * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + */ + description?: pulumi.Input; + /** + * User-friendly display name of the resource. + */ + displayName?: pulumi.Input; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; + /** + * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + name?: pulumi.Input; + /** + * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + project?: pulumi.Input; + /** + * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + */ + queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; + /** + * The status of the created direct. + */ + status?: pulumi.Input; +} + +/** + * The set of arguments for constructing a DirectHoneycomb resource. + */ +export interface DirectHoneycombArgs { + /** + * [required] | Honeycomb API Key. + */ + apiKey?: pulumi.Input; + /** + * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + */ + description?: pulumi.Input; + /** + * User-friendly display name of the resource. + */ + displayName?: pulumi.Input; + /** + * [Replay configuration documentation](https://docs.nobl9.com/replay) + */ + historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; + /** + * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + name?: pulumi.Input; + /** + * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + */ + project: pulumi.Input; + /** + * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + */ + queryDelay?: pulumi.Input; + /** + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/directInfluxdb.ts b/sdk/nodejs/directInfluxdb.ts index 8957e7a..dcd925d 100644 --- a/sdk/nodejs/directInfluxdb.ts +++ b/sdk/nodejs/directInfluxdb.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects with InfluxDB to collect SLI measurements and compare them to SLO targets. + * InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects to InfluxDB for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [InfluxDB Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-direct). * @@ -14,17 +15,14 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_influxdb = new nobl9.DirectInfluxdb("test-influxdb", { * apiToken: "secret", * description: "desc", + * logCollectionEnabled: true, * organizationId: "secret", * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * url: "https://web.net", * }); * ``` @@ -72,6 +70,10 @@ export class DirectInfluxdb extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -87,11 +89,17 @@ export class DirectInfluxdb extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -117,10 +125,12 @@ export class DirectInfluxdb extends pulumi.CustomResource { resourceInputs["apiToken"] = state ? state.apiToken : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["organizationId"] = state ? state.organizationId : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; resourceInputs["url"] = state ? state.url : undefined; @@ -129,24 +139,25 @@ export class DirectInfluxdb extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } if ((!args || args.url === undefined) && !opts.urn) { throw new Error("Missing required property 'url'"); } - resourceInputs["apiToken"] = args ? args.apiToken : undefined; + resourceInputs["apiToken"] = args?.apiToken ? pulumi.secret(args.apiToken) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; - resourceInputs["organizationId"] = args ? args.organizationId : undefined; + resourceInputs["organizationId"] = args?.organizationId ? pulumi.secret(args.organizationId) : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["url"] = args ? args.url : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["apiToken", "organizationId"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectInfluxdb.__pulumiType, name, resourceInputs, opts); } } @@ -167,6 +178,10 @@ export interface DirectInfluxdbState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -184,7 +199,13 @@ export interface DirectInfluxdbState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -213,6 +234,10 @@ export interface DirectInfluxdbArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -230,9 +255,15 @@ export interface DirectInfluxdbArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; /** * API URL endpoint to the InfluxDB's instance. */ diff --git a/sdk/nodejs/directInstana.ts b/sdk/nodejs/directInstana.ts index 7ff19ce..fe4aaca 100644 --- a/sdk/nodejs/directInstana.ts +++ b/sdk/nodejs/directInstana.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects with Instana to collect SLI measurements and compare them to SLO targets. + * Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects to Instana for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Instana Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/instana#instana-direct). * @@ -14,16 +15,13 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_instana = new nobl9.DirectInstana("test-instana", { * apiToken: "secret", * description: "desc", + * logCollectionEnabled: true, * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * url: "https://web.net", * }); * ``` @@ -71,6 +69,10 @@ export class DirectInstana extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -82,11 +84,17 @@ export class DirectInstana extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -112,9 +120,11 @@ export class DirectInstana extends pulumi.CustomResource { resourceInputs["apiToken"] = state ? state.apiToken : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; resourceInputs["url"] = state ? state.url : undefined; @@ -123,23 +133,24 @@ export class DirectInstana extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } if ((!args || args.url === undefined) && !opts.urn) { throw new Error("Missing required property 'url'"); } - resourceInputs["apiToken"] = args ? args.apiToken : undefined; + resourceInputs["apiToken"] = args?.apiToken ? pulumi.secret(args.apiToken) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["url"] = args ? args.url : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["apiToken"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectInstana.__pulumiType, name, resourceInputs, opts); } } @@ -160,6 +171,10 @@ export interface DirectInstanaState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -173,7 +188,13 @@ export interface DirectInstanaState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -202,6 +223,10 @@ export interface DirectInstanaArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -215,9 +240,15 @@ export interface DirectInstanaArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; /** * Instana API URL. */ diff --git a/sdk/nodejs/directLightstep.ts b/sdk/nodejs/directLightstep.ts index 4b2d3b4..69f5f9f 100644 --- a/sdk/nodejs/directLightstep.ts +++ b/sdk/nodejs/directLightstep.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects with Lightstep to collect SLI measurements and compare them to SLO targets. + * Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects to Lightstep for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Lightstep Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-direct). * @@ -14,7 +15,7 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_lightstep = new nobl9.DirectLightstep("test-lightstep", { * appToken: "secret", @@ -31,11 +32,8 @@ import * as utilities from "./utilities"; * }, * lightstepOrganization: "acme", * lightstepProject: "project1", + * logCollectionEnabled: true, * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -85,7 +83,7 @@ export class DirectLightstep extends pulumi.CustomResource { /** * [Replay configuration documentation](https://docs.nobl9.com/replay) */ - public readonly historicalDataRetrieval!: pulumi.Output; + public readonly historicalDataRetrieval!: pulumi.Output; /** * Organization name registered in Lightstep. */ @@ -94,6 +92,10 @@ export class DirectLightstep extends pulumi.CustomResource { * Name of the Lightstep project. */ public readonly lightstepProject!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -105,15 +107,25 @@ export class DirectLightstep extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ public /*out*/ readonly status!: pulumi.Output; + /** + * Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + */ + public readonly url!: pulumi.Output; /** * Create a DirectLightstep resource with the given unique name, arguments, and options. @@ -134,11 +146,14 @@ export class DirectLightstep extends pulumi.CustomResource { resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; resourceInputs["lightstepOrganization"] = state ? state.lightstepOrganization : undefined; resourceInputs["lightstepProject"] = state ? state.lightstepProject : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; + resourceInputs["url"] = state ? state.url : undefined; } else { const args = argsOrState as DirectLightstepArgs | undefined; if ((!args || args.lightstepOrganization === undefined) && !opts.urn) { @@ -150,22 +165,24 @@ export class DirectLightstep extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } - resourceInputs["appToken"] = args ? args.appToken : undefined; + resourceInputs["appToken"] = args?.appToken ? pulumi.secret(args.appToken) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; resourceInputs["lightstepOrganization"] = args ? args.lightstepOrganization : undefined; resourceInputs["lightstepProject"] = args ? args.lightstepProject : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; + resourceInputs["url"] = args ? args.url : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["appToken"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectLightstep.__pulumiType, name, resourceInputs, opts); } } @@ -198,6 +215,10 @@ export interface DirectLightstepState { * Name of the Lightstep project. */ lightstepProject?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -211,13 +232,23 @@ export interface DirectLightstepState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** * The status of the created direct. */ status?: pulumi.Input; + /** + * Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + */ + url?: pulumi.Input; } /** @@ -248,6 +279,10 @@ export interface DirectLightstepArgs { * Name of the Lightstep project. */ lightstepProject: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -261,7 +296,17 @@ export interface DirectLightstepArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; + /** + * Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. */ - sourceOfs: pulumi.Input[]>; + url?: pulumi.Input; } diff --git a/sdk/nodejs/directNewrelic.ts b/sdk/nodejs/directNewrelic.ts index e038045..ab04bb5 100644 --- a/sdk/nodejs/directNewrelic.ts +++ b/sdk/nodejs/directNewrelic.ts @@ -2,19 +2,19 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects with New Relic to collect SLI measurements and compare them to SLO targets. - * + * New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects to New Relic for SLI measurement collection and comparison with SLO targets. * For more information, refer to [New Relic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-direct). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_newrelic = new nobl9.DirectNewrelic("test-newrelic", { * accountId: 1234, @@ -30,11 +30,8 @@ import * as utilities from "./utilities"; * }], * }, * insightsQueryKey: "secret", + * logCollectionEnabled: true, * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -84,11 +81,15 @@ export class DirectNewrelic extends pulumi.CustomResource { /** * [Replay configuration documentation](https://docs.nobl9.com/replay) */ - public readonly historicalDataRetrieval!: pulumi.Output; + public readonly historicalDataRetrieval!: pulumi.Output; /** * [required] | New Relic Insights Query Key. */ public readonly insightsQueryKey!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -100,11 +101,17 @@ export class DirectNewrelic extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - public readonly sourceOfs!: pulumi.Output; + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -128,9 +135,11 @@ export class DirectNewrelic extends pulumi.CustomResource { resourceInputs["displayName"] = state ? state.displayName : undefined; resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; resourceInputs["insightsQueryKey"] = state ? state.insightsQueryKey : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; } else { @@ -141,21 +150,22 @@ export class DirectNewrelic extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } resourceInputs["accountId"] = args ? args.accountId : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; - resourceInputs["insightsQueryKey"] = args ? args.insightsQueryKey : undefined; + resourceInputs["insightsQueryKey"] = args?.insightsQueryKey ? pulumi.secret(args.insightsQueryKey) : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["insightsQueryKey"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectNewrelic.__pulumiType, name, resourceInputs, opts); } } @@ -184,6 +194,10 @@ export interface DirectNewrelicState { * [required] | New Relic Insights Query Key. */ insightsQueryKey?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -197,7 +211,13 @@ export interface DirectNewrelicState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -230,6 +250,10 @@ export interface DirectNewrelicArgs { * [required] | New Relic Insights Query Key. */ insightsQueryKey?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -243,7 +267,13 @@ export interface DirectNewrelicArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/directPingdom.ts b/sdk/nodejs/directPingdom.ts index 4f31a25..d1d85df 100644 --- a/sdk/nodejs/directPingdom.ts +++ b/sdk/nodejs/directPingdom.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects with Pingdom to collect SLI measurements and compare them to SLO targets. + * Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects to Pingdom for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Pingdom Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-direct). * @@ -14,16 +15,13 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_pingdom = new nobl9.DirectPingdom("test-pingdom", { * apiToken: "secret", * description: "desc", + * logCollectionEnabled: true, * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -70,6 +68,10 @@ export class DirectPingdom extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -81,11 +83,17 @@ export class DirectPingdom extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -107,9 +115,11 @@ export class DirectPingdom extends pulumi.CustomResource { resourceInputs["apiToken"] = state ? state.apiToken : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; } else { @@ -117,19 +127,20 @@ export class DirectPingdom extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } - resourceInputs["apiToken"] = args ? args.apiToken : undefined; + resourceInputs["apiToken"] = args?.apiToken ? pulumi.secret(args.apiToken) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["apiToken"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectPingdom.__pulumiType, name, resourceInputs, opts); } } @@ -150,6 +161,10 @@ export interface DirectPingdomState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -163,7 +178,13 @@ export interface DirectPingdomState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -188,6 +209,10 @@ export interface DirectPingdomArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -201,7 +226,13 @@ export interface DirectPingdomArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/directRedshift.ts b/sdk/nodejs/directRedshift.ts index 8f2499a..544ff7f 100644 --- a/sdk/nodejs/directRedshift.ts +++ b/sdk/nodejs/directRedshift.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects with Amazon Redshift to collect SLI measurements and compare them to SLO targets. + * Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects to Amazon Redshift for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Amazon Redshift Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-direct). * @@ -14,18 +15,14 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_redshift = new nobl9.DirectRedshift("test-redshift", { - * accessKeyId: "secret", * description: "desc", + * logCollectionEnabled: true, * project: "terraform", - * secretAccessKey: "secret", + * roleArn: "secret", * secretArn: "aws:arn", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -60,10 +57,6 @@ export class DirectRedshift extends pulumi.CustomResource { return obj['__pulumiType'] === DirectRedshift.__pulumiType; } - /** - * [required] | AWS Access Key ID. - */ - public readonly accessKeyId!: pulumi.Output; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -72,6 +65,10 @@ export class DirectRedshift extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -83,19 +80,25 @@ export class DirectRedshift extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; + /** + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; /** - * [required] | AWS Secret Access Key. + * [required] | ARN of the AWS IAM Role to assume. */ - public readonly secretAccessKey!: pulumi.Output; + public readonly roleArn!: pulumi.Output; /** * AWS Secret ARN. */ public readonly secretArn!: pulumi.Output; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -114,13 +117,14 @@ export class DirectRedshift extends pulumi.CustomResource { opts = opts || {}; if (opts.id) { const state = argsOrState as DirectRedshiftState | undefined; - resourceInputs["accessKeyId"] = state ? state.accessKeyId : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; - resourceInputs["secretAccessKey"] = state ? state.secretAccessKey : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; + resourceInputs["roleArn"] = state ? state.roleArn : undefined; resourceInputs["secretArn"] = state ? state.secretArn : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; @@ -129,21 +133,21 @@ export class DirectRedshift extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } - resourceInputs["accessKeyId"] = args ? args.accessKeyId : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; - resourceInputs["secretAccessKey"] = args ? args.secretAccessKey : undefined; - resourceInputs["secretArn"] = args ? args.secretArn : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; + resourceInputs["roleArn"] = args?.roleArn ? pulumi.secret(args.roleArn) : undefined; + resourceInputs["secretArn"] = args?.secretArn ? pulumi.secret(args.secretArn) : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["roleArn", "secretArn"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectRedshift.__pulumiType, name, resourceInputs, opts); } } @@ -152,10 +156,6 @@ export class DirectRedshift extends pulumi.CustomResource { * Input properties used for looking up and filtering DirectRedshift resources. */ export interface DirectRedshiftState { - /** - * [required] | AWS Access Key ID. - */ - accessKeyId?: pulumi.Input; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -164,6 +164,10 @@ export interface DirectRedshiftState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -177,15 +181,21 @@ export interface DirectRedshiftState { */ queryDelay?: pulumi.Input; /** - * [required] | AWS Secret Access Key. + * Release channel of the created datasource [stable/beta] */ - secretAccessKey?: pulumi.Input; + releaseChannel?: pulumi.Input; + /** + * [required] | ARN of the AWS IAM Role to assume. + */ + roleArn?: pulumi.Input; /** * AWS Secret ARN. */ secretArn?: pulumi.Input; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -198,10 +208,6 @@ export interface DirectRedshiftState { * The set of arguments for constructing a DirectRedshift resource. */ export interface DirectRedshiftArgs { - /** - * [required] | AWS Access Key ID. - */ - accessKeyId?: pulumi.Input; /** * Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. */ @@ -210,6 +216,10 @@ export interface DirectRedshiftArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -223,15 +233,21 @@ export interface DirectRedshiftArgs { */ queryDelay?: pulumi.Input; /** - * [required] | AWS Secret Access Key. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * [required] | ARN of the AWS IAM Role to assume. */ - secretAccessKey?: pulumi.Input; + roleArn?: pulumi.Input; /** * AWS Secret ARN. */ secretArn?: pulumi.Input; /** - * Source of Metrics and/or Services. + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - sourceOfs: pulumi.Input[]>; + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/directSplunk.ts b/sdk/nodejs/directSplunk.ts index 7dc0984..ba135b2 100644 --- a/sdk/nodejs/directSplunk.ts +++ b/sdk/nodejs/directSplunk.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects with Splunk to collect SLI measurements and compare them to SLO targets. + * Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects to Splunk for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Splunk Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk#splunk-direct). * @@ -14,7 +15,7 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_splunk = new nobl9.DirectSplunk("test-splunk", { * accessToken: "secret", @@ -29,11 +30,8 @@ import * as utilities from "./utilities"; * value: 30, * }], * }, + * logCollectionEnabled: true, * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * url: "https://web.net", * }); * ``` @@ -84,7 +82,11 @@ export class DirectSplunk extends pulumi.CustomResource { /** * [Replay configuration documentation](https://docs.nobl9.com/replay) */ - public readonly historicalDataRetrieval!: pulumi.Output; + public readonly historicalDataRetrieval!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -96,11 +98,17 @@ export class DirectSplunk extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -127,9 +135,11 @@ export class DirectSplunk extends pulumi.CustomResource { resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; resourceInputs["historicalDataRetrieval"] = state ? state.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; resourceInputs["url"] = state ? state.url : undefined; @@ -138,24 +148,25 @@ export class DirectSplunk extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } if ((!args || args.url === undefined) && !opts.urn) { throw new Error("Missing required property 'url'"); } - resourceInputs["accessToken"] = args ? args.accessToken : undefined; + resourceInputs["accessToken"] = args?.accessToken ? pulumi.secret(args.accessToken) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["historicalDataRetrieval"] = args ? args.historicalDataRetrieval : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["url"] = args ? args.url : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["accessToken"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectSplunk.__pulumiType, name, resourceInputs, opts); } } @@ -180,6 +191,10 @@ export interface DirectSplunkState { * [Replay configuration documentation](https://docs.nobl9.com/replay) */ historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -193,7 +208,13 @@ export interface DirectSplunkState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -226,6 +247,10 @@ export interface DirectSplunkArgs { * [Replay configuration documentation](https://docs.nobl9.com/replay) */ historicalDataRetrieval?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -239,9 +264,15 @@ export interface DirectSplunkArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; /** * Base API URL to the Splunk Search app. */ diff --git a/sdk/nodejs/directSplunkObservability.ts b/sdk/nodejs/directSplunkObservability.ts index e32291b..3057c20 100644 --- a/sdk/nodejs/directSplunkObservability.ts +++ b/sdk/nodejs/directSplunkObservability.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects with Splunk Observability to collect SLI measurements and compare them to SLO targets. + * Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects to Splunk Observability for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Splunk Observability Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-direct). * @@ -14,17 +15,13 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * - * const test_splunkobservability = new nobl9.DirectSplunkObservability("test-splunkobservability", { + * const test_splunk_observability = new nobl9.DirectSplunkObservability("test-splunk-observability", { * accessToken: "secret", * description: "desc", * project: "terraform", * realm: "eu", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -82,15 +79,21 @@ export class DirectSplunkObservability extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** * SplunkObservability Realm. */ public readonly realm!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - public readonly sourceOfs!: pulumi.Output; + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -116,6 +119,7 @@ export class DirectSplunkObservability extends pulumi.CustomResource { resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; resourceInputs["realm"] = state ? state.realm : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; } else { @@ -126,20 +130,20 @@ export class DirectSplunkObservability extends pulumi.CustomResource { if ((!args || args.realm === undefined) && !opts.urn) { throw new Error("Missing required property 'realm'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } - resourceInputs["accessToken"] = args ? args.accessToken : undefined; + resourceInputs["accessToken"] = args?.accessToken ? pulumi.secret(args.accessToken) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; resourceInputs["realm"] = args ? args.realm : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["accessToken"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectSplunkObservability.__pulumiType, name, resourceInputs, opts); } } @@ -177,7 +181,13 @@ export interface DirectSplunkObservabilityState { */ realm?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -219,7 +229,13 @@ export interface DirectSplunkObservabilityArgs { */ realm: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/directSumologic.ts b/sdk/nodejs/directSumologic.ts index 090d6ae..9c5d4ab 100644 --- a/sdk/nodejs/directSumologic.ts +++ b/sdk/nodejs/directSumologic.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects with Sumo Logic to collect SLI measurements and compare them to SLO targets. + * Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects to Sumo Logic for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [Sumo Logic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-direct). * @@ -14,14 +15,14 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_sumologic = new nobl9.DirectSumologic("test-sumologic", { * accessId: "secret", * accessKey: "secret", * description: "desc", + * logCollectionEnabled: true, * project: "terraform", - * sourceOfs: ["Metrics"], * url: "http://web.net", * }); * ``` @@ -73,6 +74,10 @@ export class DirectSumologic extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -84,11 +89,17 @@ export class DirectSumologic extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -115,9 +126,11 @@ export class DirectSumologic extends pulumi.CustomResource { resourceInputs["accessKey"] = state ? state.accessKey : undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; resourceInputs["url"] = state ? state.url : undefined; @@ -126,24 +139,25 @@ export class DirectSumologic extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } if ((!args || args.url === undefined) && !opts.urn) { throw new Error("Missing required property 'url'"); } - resourceInputs["accessId"] = args ? args.accessId : undefined; - resourceInputs["accessKey"] = args ? args.accessKey : undefined; + resourceInputs["accessId"] = args?.accessId ? pulumi.secret(args.accessId) : undefined; + resourceInputs["accessKey"] = args?.accessKey ? pulumi.secret(args.accessKey) : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["url"] = args ? args.url : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["accessId", "accessKey"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectSumologic.__pulumiType, name, resourceInputs, opts); } } @@ -168,6 +182,10 @@ export interface DirectSumologicState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -181,7 +199,13 @@ export interface DirectSumologicState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -214,6 +238,10 @@ export interface DirectSumologicArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -227,9 +255,15 @@ export interface DirectSumologicArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; /** * Sumo Logic API URL. */ diff --git a/sdk/nodejs/directThousandeyes.ts b/sdk/nodejs/directThousandeyes.ts index 4171455..88c175d 100644 --- a/sdk/nodejs/directThousandeyes.ts +++ b/sdk/nodejs/directThousandeyes.ts @@ -2,11 +2,12 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** - * ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects with ThousandEyes to collect SLI measurements and compare them to SLO targets. + * ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects to ThousandEyes for SLI measurement collection and comparison with SLO targets. * * For more information, refer to [ThousandEyes Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/thousandeyes#thousandeyes-direct). * @@ -14,16 +15,13 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const test_thousandeyes = new nobl9.DirectThousandeyes("test-thousandeyes", { * description: "desc", + * logCollectionEnabled: true, * oauthBearerToken: "secret", * project: "terraform", - * sourceOfs: [ - * "Metrics", - * "Services", - * ], * }); * ``` * ## Nobl9 Official Documentation @@ -66,6 +64,10 @@ export class DirectThousandeyes extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + public readonly logCollectionEnabled!: pulumi.Output; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -81,11 +83,17 @@ export class DirectThousandeyes extends pulumi.CustomResource { /** * [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. */ - public readonly queryDelay!: pulumi.Output; + public readonly queryDelay!: pulumi.Output; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + public readonly releaseChannel!: pulumi.Output; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ - public readonly sourceOfs!: pulumi.Output; + public readonly sourceOfs!: pulumi.Output; /** * The status of the created direct. */ @@ -106,10 +114,12 @@ export class DirectThousandeyes extends pulumi.CustomResource { const state = argsOrState as DirectThousandeyesState | undefined; resourceInputs["description"] = state ? state.description : undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["logCollectionEnabled"] = state ? state.logCollectionEnabled : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["oauthBearerToken"] = state ? state.oauthBearerToken : undefined; resourceInputs["project"] = state ? state.project : undefined; resourceInputs["queryDelay"] = state ? state.queryDelay : undefined; + resourceInputs["releaseChannel"] = state ? state.releaseChannel : undefined; resourceInputs["sourceOfs"] = state ? state.sourceOfs : undefined; resourceInputs["status"] = state ? state.status : undefined; } else { @@ -117,19 +127,20 @@ export class DirectThousandeyes extends pulumi.CustomResource { if ((!args || args.project === undefined) && !opts.urn) { throw new Error("Missing required property 'project'"); } - if ((!args || args.sourceOfs === undefined) && !opts.urn) { - throw new Error("Missing required property 'sourceOfs'"); - } resourceInputs["description"] = args ? args.description : undefined; resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["logCollectionEnabled"] = args ? args.logCollectionEnabled : undefined; resourceInputs["name"] = args ? args.name : undefined; - resourceInputs["oauthBearerToken"] = args ? args.oauthBearerToken : undefined; + resourceInputs["oauthBearerToken"] = args?.oauthBearerToken ? pulumi.secret(args.oauthBearerToken) : undefined; resourceInputs["project"] = args ? args.project : undefined; resourceInputs["queryDelay"] = args ? args.queryDelay : undefined; + resourceInputs["releaseChannel"] = args ? args.releaseChannel : undefined; resourceInputs["sourceOfs"] = args ? args.sourceOfs : undefined; resourceInputs["status"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["oauthBearerToken"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(DirectThousandeyes.__pulumiType, name, resourceInputs, opts); } } @@ -146,6 +157,10 @@ export interface DirectThousandeyesState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -163,7 +178,13 @@ export interface DirectThousandeyesState { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] + */ + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. */ sourceOfs?: pulumi.Input[]>; /** @@ -184,6 +205,10 @@ export interface DirectThousandeyesArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + */ + logCollectionEnabled?: pulumi.Input; /** * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ @@ -201,7 +226,13 @@ export interface DirectThousandeyesArgs { */ queryDelay?: pulumi.Input; /** - * Source of Metrics and/or Services. + * Release channel of the created datasource [stable/beta] */ - sourceOfs: pulumi.Input[]>; + releaseChannel?: pulumi.Input; + /** + * This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + * + * @deprecated 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file. + */ + sourceOfs?: pulumi.Input[]>; } diff --git a/sdk/nodejs/getAwsIamRoleExternalId.ts b/sdk/nodejs/getAwsIamRoleExternalId.ts new file mode 100644 index 0000000..9016bd4 --- /dev/null +++ b/sdk/nodejs/getAwsIamRoleExternalId.ts @@ -0,0 +1,86 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +import * as pulumi from "@pulumi/pulumi"; +import * as utilities from "./utilities"; + +/** + * Returns external ID and AWS account ID that can be used to create [cross-account IAM roles in AWS](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cross-account-iam-roles-new). + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as nobl9 from "@pulumi/nobl9"; + * + * const this = nobl9.getAwsIamRoleExternalId({ + * name: "my-datasource-name", + * }); + * ``` + */ +export function getAwsIamRoleExternalId(args: GetAwsIamRoleExternalIdArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("nobl9:index/getAwsIamRoleExternalId:getAwsIamRoleExternalId", { + "name": args.name, + }, opts); +} + +/** + * A collection of arguments for invoking getAwsIamRoleExternalId. + */ +export interface GetAwsIamRoleExternalIdArgs { + /** + * Data source name + */ + name: string; +} + +/** + * A collection of values returned by getAwsIamRoleExternalId. + */ +export interface GetAwsIamRoleExternalIdResult { + /** + * External ID + */ + readonly accountId: string; + /** + * Nobl9 AWS Account ID + */ + readonly externalId: string; + /** + * The provider-assigned unique ID for this managed resource. + */ + readonly id: string; + /** + * Data source name + */ + readonly name: string; +} +/** + * Returns external ID and AWS account ID that can be used to create [cross-account IAM roles in AWS](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cross-account-iam-roles-new). + * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as nobl9 from "@pulumi/nobl9"; + * + * const this = nobl9.getAwsIamRoleExternalId({ + * name: "my-datasource-name", + * }); + * ``` + */ +export function getAwsIamRoleExternalIdOutput(args: GetAwsIamRoleExternalIdOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getAwsIamRoleExternalId(a, opts)) +} + +/** + * A collection of arguments for invoking getAwsIamRoleExternalId. + */ +export interface GetAwsIamRoleExternalIdOutputArgs { + /** + * Data source name + */ + name: pulumi.Input; +} diff --git a/sdk/nodejs/index.ts b/sdk/nodejs/index.ts index ebbf2fb..7da7893 100644 --- a/sdk/nodejs/index.ts +++ b/sdk/nodejs/index.ts @@ -5,38 +5,181 @@ import * as pulumi from "@pulumi/pulumi"; import * as utilities from "./utilities"; // Export members: -export * from "./agent"; -export * from "./alertMethodDiscord"; -export * from "./alertMethodEmail"; -export * from "./alertMethodJira"; -export * from "./alertMethodMsteams"; -export * from "./alertMethodOpsgenie"; -export * from "./alertMethodPagerduty"; -export * from "./alertMethodServicenow"; -export * from "./alertMethodSlack"; -export * from "./alertMethodWebhook"; -export * from "./alertPolicy"; -export * from "./directAppdynamics"; -export * from "./directBigquery"; -export * from "./directCloudwatch"; -export * from "./directDatadog"; -export * from "./directDynatrace"; -export * from "./directGcm"; -export * from "./directInfluxdb"; -export * from "./directInstana"; -export * from "./directLightstep"; -export * from "./directNewrelic"; -export * from "./directPingdom"; -export * from "./directRedshift"; -export * from "./directSplunk"; -export * from "./directSplunkObservability"; -export * from "./directSumologic"; -export * from "./directThousandeyes"; -export * from "./project"; -export * from "./provider"; -export * from "./roleBinding"; -export * from "./service"; -export * from "./slo"; +export { AgentArgs, AgentState } from "./agent"; +export type Agent = import("./agent").Agent; +export const Agent: typeof import("./agent").Agent = null as any; +utilities.lazyLoad(exports, ["Agent"], () => require("./agent")); + +export { AlertMethodDiscordArgs, AlertMethodDiscordState } from "./alertMethodDiscord"; +export type AlertMethodDiscord = import("./alertMethodDiscord").AlertMethodDiscord; +export const AlertMethodDiscord: typeof import("./alertMethodDiscord").AlertMethodDiscord = null as any; +utilities.lazyLoad(exports, ["AlertMethodDiscord"], () => require("./alertMethodDiscord")); + +export { AlertMethodEmailArgs, AlertMethodEmailState } from "./alertMethodEmail"; +export type AlertMethodEmail = import("./alertMethodEmail").AlertMethodEmail; +export const AlertMethodEmail: typeof import("./alertMethodEmail").AlertMethodEmail = null as any; +utilities.lazyLoad(exports, ["AlertMethodEmail"], () => require("./alertMethodEmail")); + +export { AlertMethodJiraArgs, AlertMethodJiraState } from "./alertMethodJira"; +export type AlertMethodJira = import("./alertMethodJira").AlertMethodJira; +export const AlertMethodJira: typeof import("./alertMethodJira").AlertMethodJira = null as any; +utilities.lazyLoad(exports, ["AlertMethodJira"], () => require("./alertMethodJira")); + +export { AlertMethodMsteamsArgs, AlertMethodMsteamsState } from "./alertMethodMsteams"; +export type AlertMethodMsteams = import("./alertMethodMsteams").AlertMethodMsteams; +export const AlertMethodMsteams: typeof import("./alertMethodMsteams").AlertMethodMsteams = null as any; +utilities.lazyLoad(exports, ["AlertMethodMsteams"], () => require("./alertMethodMsteams")); + +export { AlertMethodOpsgenieArgs, AlertMethodOpsgenieState } from "./alertMethodOpsgenie"; +export type AlertMethodOpsgenie = import("./alertMethodOpsgenie").AlertMethodOpsgenie; +export const AlertMethodOpsgenie: typeof import("./alertMethodOpsgenie").AlertMethodOpsgenie = null as any; +utilities.lazyLoad(exports, ["AlertMethodOpsgenie"], () => require("./alertMethodOpsgenie")); + +export { AlertMethodPagerdutyArgs, AlertMethodPagerdutyState } from "./alertMethodPagerduty"; +export type AlertMethodPagerduty = import("./alertMethodPagerduty").AlertMethodPagerduty; +export const AlertMethodPagerduty: typeof import("./alertMethodPagerduty").AlertMethodPagerduty = null as any; +utilities.lazyLoad(exports, ["AlertMethodPagerduty"], () => require("./alertMethodPagerduty")); + +export { AlertMethodServicenowArgs, AlertMethodServicenowState } from "./alertMethodServicenow"; +export type AlertMethodServicenow = import("./alertMethodServicenow").AlertMethodServicenow; +export const AlertMethodServicenow: typeof import("./alertMethodServicenow").AlertMethodServicenow = null as any; +utilities.lazyLoad(exports, ["AlertMethodServicenow"], () => require("./alertMethodServicenow")); + +export { AlertMethodSlackArgs, AlertMethodSlackState } from "./alertMethodSlack"; +export type AlertMethodSlack = import("./alertMethodSlack").AlertMethodSlack; +export const AlertMethodSlack: typeof import("./alertMethodSlack").AlertMethodSlack = null as any; +utilities.lazyLoad(exports, ["AlertMethodSlack"], () => require("./alertMethodSlack")); + +export { AlertMethodWebhookArgs, AlertMethodWebhookState } from "./alertMethodWebhook"; +export type AlertMethodWebhook = import("./alertMethodWebhook").AlertMethodWebhook; +export const AlertMethodWebhook: typeof import("./alertMethodWebhook").AlertMethodWebhook = null as any; +utilities.lazyLoad(exports, ["AlertMethodWebhook"], () => require("./alertMethodWebhook")); + +export { AlertPolicyArgs, AlertPolicyState } from "./alertPolicy"; +export type AlertPolicy = import("./alertPolicy").AlertPolicy; +export const AlertPolicy: typeof import("./alertPolicy").AlertPolicy = null as any; +utilities.lazyLoad(exports, ["AlertPolicy"], () => require("./alertPolicy")); + +export { DirectAppdynamicsArgs, DirectAppdynamicsState } from "./directAppdynamics"; +export type DirectAppdynamics = import("./directAppdynamics").DirectAppdynamics; +export const DirectAppdynamics: typeof import("./directAppdynamics").DirectAppdynamics = null as any; +utilities.lazyLoad(exports, ["DirectAppdynamics"], () => require("./directAppdynamics")); + +export { DirectAzureMonitorArgs, DirectAzureMonitorState } from "./directAzureMonitor"; +export type DirectAzureMonitor = import("./directAzureMonitor").DirectAzureMonitor; +export const DirectAzureMonitor: typeof import("./directAzureMonitor").DirectAzureMonitor = null as any; +utilities.lazyLoad(exports, ["DirectAzureMonitor"], () => require("./directAzureMonitor")); + +export { DirectBigqueryArgs, DirectBigqueryState } from "./directBigquery"; +export type DirectBigquery = import("./directBigquery").DirectBigquery; +export const DirectBigquery: typeof import("./directBigquery").DirectBigquery = null as any; +utilities.lazyLoad(exports, ["DirectBigquery"], () => require("./directBigquery")); + +export { DirectCloudwatchArgs, DirectCloudwatchState } from "./directCloudwatch"; +export type DirectCloudwatch = import("./directCloudwatch").DirectCloudwatch; +export const DirectCloudwatch: typeof import("./directCloudwatch").DirectCloudwatch = null as any; +utilities.lazyLoad(exports, ["DirectCloudwatch"], () => require("./directCloudwatch")); + +export { DirectDatadogArgs, DirectDatadogState } from "./directDatadog"; +export type DirectDatadog = import("./directDatadog").DirectDatadog; +export const DirectDatadog: typeof import("./directDatadog").DirectDatadog = null as any; +utilities.lazyLoad(exports, ["DirectDatadog"], () => require("./directDatadog")); + +export { DirectDynatraceArgs, DirectDynatraceState } from "./directDynatrace"; +export type DirectDynatrace = import("./directDynatrace").DirectDynatrace; +export const DirectDynatrace: typeof import("./directDynatrace").DirectDynatrace = null as any; +utilities.lazyLoad(exports, ["DirectDynatrace"], () => require("./directDynatrace")); + +export { DirectGcmArgs, DirectGcmState } from "./directGcm"; +export type DirectGcm = import("./directGcm").DirectGcm; +export const DirectGcm: typeof import("./directGcm").DirectGcm = null as any; +utilities.lazyLoad(exports, ["DirectGcm"], () => require("./directGcm")); + +export { DirectHoneycombArgs, DirectHoneycombState } from "./directHoneycomb"; +export type DirectHoneycomb = import("./directHoneycomb").DirectHoneycomb; +export const DirectHoneycomb: typeof import("./directHoneycomb").DirectHoneycomb = null as any; +utilities.lazyLoad(exports, ["DirectHoneycomb"], () => require("./directHoneycomb")); + +export { DirectInfluxdbArgs, DirectInfluxdbState } from "./directInfluxdb"; +export type DirectInfluxdb = import("./directInfluxdb").DirectInfluxdb; +export const DirectInfluxdb: typeof import("./directInfluxdb").DirectInfluxdb = null as any; +utilities.lazyLoad(exports, ["DirectInfluxdb"], () => require("./directInfluxdb")); + +export { DirectInstanaArgs, DirectInstanaState } from "./directInstana"; +export type DirectInstana = import("./directInstana").DirectInstana; +export const DirectInstana: typeof import("./directInstana").DirectInstana = null as any; +utilities.lazyLoad(exports, ["DirectInstana"], () => require("./directInstana")); + +export { DirectLightstepArgs, DirectLightstepState } from "./directLightstep"; +export type DirectLightstep = import("./directLightstep").DirectLightstep; +export const DirectLightstep: typeof import("./directLightstep").DirectLightstep = null as any; +utilities.lazyLoad(exports, ["DirectLightstep"], () => require("./directLightstep")); + +export { DirectNewrelicArgs, DirectNewrelicState } from "./directNewrelic"; +export type DirectNewrelic = import("./directNewrelic").DirectNewrelic; +export const DirectNewrelic: typeof import("./directNewrelic").DirectNewrelic = null as any; +utilities.lazyLoad(exports, ["DirectNewrelic"], () => require("./directNewrelic")); + +export { DirectPingdomArgs, DirectPingdomState } from "./directPingdom"; +export type DirectPingdom = import("./directPingdom").DirectPingdom; +export const DirectPingdom: typeof import("./directPingdom").DirectPingdom = null as any; +utilities.lazyLoad(exports, ["DirectPingdom"], () => require("./directPingdom")); + +export { DirectRedshiftArgs, DirectRedshiftState } from "./directRedshift"; +export type DirectRedshift = import("./directRedshift").DirectRedshift; +export const DirectRedshift: typeof import("./directRedshift").DirectRedshift = null as any; +utilities.lazyLoad(exports, ["DirectRedshift"], () => require("./directRedshift")); + +export { DirectSplunkArgs, DirectSplunkState } from "./directSplunk"; +export type DirectSplunk = import("./directSplunk").DirectSplunk; +export const DirectSplunk: typeof import("./directSplunk").DirectSplunk = null as any; +utilities.lazyLoad(exports, ["DirectSplunk"], () => require("./directSplunk")); + +export { DirectSplunkObservabilityArgs, DirectSplunkObservabilityState } from "./directSplunkObservability"; +export type DirectSplunkObservability = import("./directSplunkObservability").DirectSplunkObservability; +export const DirectSplunkObservability: typeof import("./directSplunkObservability").DirectSplunkObservability = null as any; +utilities.lazyLoad(exports, ["DirectSplunkObservability"], () => require("./directSplunkObservability")); + +export { DirectSumologicArgs, DirectSumologicState } from "./directSumologic"; +export type DirectSumologic = import("./directSumologic").DirectSumologic; +export const DirectSumologic: typeof import("./directSumologic").DirectSumologic = null as any; +utilities.lazyLoad(exports, ["DirectSumologic"], () => require("./directSumologic")); + +export { DirectThousandeyesArgs, DirectThousandeyesState } from "./directThousandeyes"; +export type DirectThousandeyes = import("./directThousandeyes").DirectThousandeyes; +export const DirectThousandeyes: typeof import("./directThousandeyes").DirectThousandeyes = null as any; +utilities.lazyLoad(exports, ["DirectThousandeyes"], () => require("./directThousandeyes")); + +export { GetAwsIamRoleExternalIdArgs, GetAwsIamRoleExternalIdResult, GetAwsIamRoleExternalIdOutputArgs } from "./getAwsIamRoleExternalId"; +export const getAwsIamRoleExternalId: typeof import("./getAwsIamRoleExternalId").getAwsIamRoleExternalId = null as any; +export const getAwsIamRoleExternalIdOutput: typeof import("./getAwsIamRoleExternalId").getAwsIamRoleExternalIdOutput = null as any; +utilities.lazyLoad(exports, ["getAwsIamRoleExternalId","getAwsIamRoleExternalIdOutput"], () => require("./getAwsIamRoleExternalId")); + +export { ProjectArgs, ProjectState } from "./project"; +export type Project = import("./project").Project; +export const Project: typeof import("./project").Project = null as any; +utilities.lazyLoad(exports, ["Project"], () => require("./project")); + +export { ProviderArgs } from "./provider"; +export type Provider = import("./provider").Provider; +export const Provider: typeof import("./provider").Provider = null as any; +utilities.lazyLoad(exports, ["Provider"], () => require("./provider")); + +export { RoleBindingArgs, RoleBindingState } from "./roleBinding"; +export type RoleBinding = import("./roleBinding").RoleBinding; +export const RoleBinding: typeof import("./roleBinding").RoleBinding = null as any; +utilities.lazyLoad(exports, ["RoleBinding"], () => require("./roleBinding")); + +export { ServiceArgs, ServiceState } from "./service"; +export type Service = import("./service").Service; +export const Service: typeof import("./service").Service = null as any; +utilities.lazyLoad(exports, ["Service"], () => require("./service")); + +export { SloArgs, SloState } from "./slo"; +export type Slo = import("./slo").Slo; +export const Slo: typeof import("./slo").Slo = null as any; +utilities.lazyLoad(exports, ["Slo"], () => require("./slo")); + // Export sub-modules: import * as config from "./config"; @@ -47,39 +190,6 @@ export { types, }; -// Import resources to register: -import { Agent } from "./agent"; -import { AlertMethodDiscord } from "./alertMethodDiscord"; -import { AlertMethodEmail } from "./alertMethodEmail"; -import { AlertMethodJira } from "./alertMethodJira"; -import { AlertMethodMsteams } from "./alertMethodMsteams"; -import { AlertMethodOpsgenie } from "./alertMethodOpsgenie"; -import { AlertMethodPagerduty } from "./alertMethodPagerduty"; -import { AlertMethodServicenow } from "./alertMethodServicenow"; -import { AlertMethodSlack } from "./alertMethodSlack"; -import { AlertMethodWebhook } from "./alertMethodWebhook"; -import { AlertPolicy } from "./alertPolicy"; -import { DirectAppdynamics } from "./directAppdynamics"; -import { DirectBigquery } from "./directBigquery"; -import { DirectCloudwatch } from "./directCloudwatch"; -import { DirectDatadog } from "./directDatadog"; -import { DirectDynatrace } from "./directDynatrace"; -import { DirectGcm } from "./directGcm"; -import { DirectInfluxdb } from "./directInfluxdb"; -import { DirectInstana } from "./directInstana"; -import { DirectLightstep } from "./directLightstep"; -import { DirectNewrelic } from "./directNewrelic"; -import { DirectPingdom } from "./directPingdom"; -import { DirectRedshift } from "./directRedshift"; -import { DirectSplunk } from "./directSplunk"; -import { DirectSplunkObservability } from "./directSplunkObservability"; -import { DirectSumologic } from "./directSumologic"; -import { DirectThousandeyes } from "./directThousandeyes"; -import { Project } from "./project"; -import { RoleBinding } from "./roleBinding"; -import { Service } from "./service"; -import { Slo } from "./slo"; - const _module = { version: utilities.getVersion(), construct: (name: string, type: string, urn: string): pulumi.Resource => { @@ -108,6 +218,8 @@ const _module = { return new AlertPolicy(name, undefined, { urn }) case "nobl9:index/directAppdynamics:DirectAppdynamics": return new DirectAppdynamics(name, undefined, { urn }) + case "nobl9:index/directAzureMonitor:DirectAzureMonitor": + return new DirectAzureMonitor(name, undefined, { urn }) case "nobl9:index/directBigquery:DirectBigquery": return new DirectBigquery(name, undefined, { urn }) case "nobl9:index/directCloudwatch:DirectCloudwatch": @@ -118,6 +230,8 @@ const _module = { return new DirectDynatrace(name, undefined, { urn }) case "nobl9:index/directGcm:DirectGcm": return new DirectGcm(name, undefined, { urn }) + case "nobl9:index/directHoneycomb:DirectHoneycomb": + return new DirectHoneycomb(name, undefined, { urn }) case "nobl9:index/directInfluxdb:DirectInfluxdb": return new DirectInfluxdb(name, undefined, { urn }) case "nobl9:index/directInstana:DirectInstana": @@ -163,11 +277,13 @@ pulumi.runtime.registerResourceModule("nobl9", "index/alertMethodSlack", _module pulumi.runtime.registerResourceModule("nobl9", "index/alertMethodWebhook", _module) pulumi.runtime.registerResourceModule("nobl9", "index/alertPolicy", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directAppdynamics", _module) +pulumi.runtime.registerResourceModule("nobl9", "index/directAzureMonitor", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directBigquery", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directCloudwatch", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directDatadog", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directDynatrace", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directGcm", _module) +pulumi.runtime.registerResourceModule("nobl9", "index/directHoneycomb", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directInfluxdb", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directInstana", _module) pulumi.runtime.registerResourceModule("nobl9", "index/directLightstep", _module) @@ -182,9 +298,6 @@ pulumi.runtime.registerResourceModule("nobl9", "index/project", _module) pulumi.runtime.registerResourceModule("nobl9", "index/roleBinding", _module) pulumi.runtime.registerResourceModule("nobl9", "index/service", _module) pulumi.runtime.registerResourceModule("nobl9", "index/slo", _module) - -import { Provider } from "./provider"; - pulumi.runtime.registerResourcePackage("nobl9", { version: utilities.getVersion(), constructProvider: (name: string, type: string, urn: string): pulumi.ProviderResource => { diff --git a/sdk/nodejs/package.json b/sdk/nodejs/package.json index d1378cb..11ba243 100644 --- a/sdk/nodejs/package.json +++ b/sdk/nodejs/package.json @@ -1,19 +1,17 @@ { - "name": "@pulumi/nobl9", + "name": "@piclemx/pulumi-nobl9", "version": "${VERSION}", - "description": "A Pulumi package for creating and managing Nobl9 cloud resources.", + "description": "A Pulumi package for creating and managing Nobl9 resources. Based on terraform-provider-nobl9: version v0.24.5", "keywords": [ "pulumi", "nobl9", - "n9", - "category/cloud" + "category/monitoring" ], - "homepage": "https://www.pulumi.com", + "homepage": "https://github.com/piclemx/pulumi-nobl9", "repository": "https://github.com/piclemx/pulumi-nobl9", "license": "Apache-2.0", "scripts": { - "build": "tsc", - "install": "node scripts/install-pulumi-plugin.js resource nobl9 ${VERSION}" + "build": "tsc" }, "dependencies": { "@pulumi/pulumi": "^3.0.0" @@ -26,6 +24,6 @@ "pulumi": { "resource": true, "name": "nobl9", - "server": "https://github.com/piclemx/pulumi-nobl9/releases/" + "server": "github://api.github.com/piclemx/pulumi-nobl9" } } diff --git a/sdk/nodejs/project.ts b/sdk/nodejs/project.ts index 56e7c6b..2a05505 100644 --- a/sdk/nodejs/project.ts +++ b/sdk/nodejs/project.ts @@ -2,7 +2,8 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** @@ -18,9 +19,9 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * - * const thisProject = new nobl9.Project("this", { + * const _this = new nobl9.Project("this", { * description: "An example N9 Terraform project", * displayName: "My Project", * labels: [ diff --git a/sdk/nodejs/provider.ts b/sdk/nodejs/provider.ts index fe3a2a7..1528d66 100644 --- a/sdk/nodejs/provider.ts +++ b/sdk/nodejs/provider.ts @@ -22,7 +22,7 @@ export class Provider extends pulumi.ProviderResource { if (obj === undefined || obj === null) { return false; } - return obj['__pulumiType'] === Provider.__pulumiType; + return obj['__pulumiType'] === "pulumi:providers:" + Provider.__pulumiType; } /** @@ -51,11 +51,11 @@ export class Provider extends pulumi.ProviderResource { * Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that * contains resources managed by the Nobl9 Terraform provider. */ - public readonly organization!: pulumi.Output; + public readonly organization!: pulumi.Output; /** * Nobl9 project used when importing resources. */ - public readonly project!: pulumi.Output; + public readonly project!: pulumi.Output; /** * Create a Provider resource with the given unique name, arguments, and options. @@ -74,14 +74,8 @@ export class Provider extends pulumi.ProviderResource { if ((!args || args.clientSecret === undefined) && !opts.urn) { throw new Error("Missing required property 'clientSecret'"); } - if ((!args || args.organization === undefined) && !opts.urn) { - throw new Error("Missing required property 'organization'"); - } - if ((!args || args.project === undefined) && !opts.urn) { - throw new Error("Missing required property 'project'"); - } resourceInputs["clientId"] = args ? args.clientId : undefined; - resourceInputs["clientSecret"] = args ? args.clientSecret : undefined; + resourceInputs["clientSecret"] = args?.clientSecret ? pulumi.secret(args.clientSecret) : undefined; resourceInputs["ingestUrl"] = args ? args.ingestUrl : undefined; resourceInputs["oktaAuthServer"] = args ? args.oktaAuthServer : undefined; resourceInputs["oktaOrgUrl"] = args ? args.oktaOrgUrl : undefined; @@ -89,6 +83,8 @@ export class Provider extends pulumi.ProviderResource { resourceInputs["project"] = args ? args.project : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const secretOpts = { additionalSecretOutputs: ["clientSecret"] }; + opts = pulumi.mergeOptions(opts, secretOpts); super(Provider.__pulumiType, name, resourceInputs, opts); } } @@ -123,9 +119,9 @@ export interface ProviderArgs { * Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that * contains resources managed by the Nobl9 Terraform provider. */ - organization: pulumi.Input; + organization?: pulumi.Input; /** * Nobl9 project used when importing resources. */ - project: pulumi.Input; + project?: pulumi.Input; } diff --git a/sdk/nodejs/roleBinding.ts b/sdk/nodejs/roleBinding.ts index 1c7b6c9..1b7b329 100644 --- a/sdk/nodejs/roleBinding.ts +++ b/sdk/nodejs/roleBinding.ts @@ -11,12 +11,12 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * - * const thisRoleBinding = new nobl9.RoleBinding("this", { - * projectRef: "1234567890asdfghjkl", + * const _this = new nobl9.RoleBinding("this", { + * groupRef: "test", + * projectRef: "default", * roleRef: "project-owner", - * user: "1234567890asdfghjkl", * }); * ``` * ## Useful Links @@ -57,22 +57,26 @@ export class RoleBinding extends pulumi.CustomResource { * User-friendly display name of the resource. */ public readonly displayName!: pulumi.Output; + /** + * Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + */ + public readonly groupRef!: pulumi.Output; /** * Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ public readonly name!: pulumi.Output; /** - * Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. + * Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. */ public readonly projectRef!: pulumi.Output; /** - * Role name; the role that you want the user to assume. + * Role name; the role that you want the user or group to assume. */ public readonly roleRef!: pulumi.Output; /** - * Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + * Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). */ - public readonly user!: pulumi.Output; + public readonly user!: pulumi.Output; /** * Create a RoleBinding resource with the given unique name, arguments, and options. @@ -88,6 +92,7 @@ export class RoleBinding extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as RoleBindingState | undefined; resourceInputs["displayName"] = state ? state.displayName : undefined; + resourceInputs["groupRef"] = state ? state.groupRef : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["projectRef"] = state ? state.projectRef : undefined; resourceInputs["roleRef"] = state ? state.roleRef : undefined; @@ -97,10 +102,8 @@ export class RoleBinding extends pulumi.CustomResource { if ((!args || args.roleRef === undefined) && !opts.urn) { throw new Error("Missing required property 'roleRef'"); } - if ((!args || args.user === undefined) && !opts.urn) { - throw new Error("Missing required property 'user'"); - } resourceInputs["displayName"] = args ? args.displayName : undefined; + resourceInputs["groupRef"] = args ? args.groupRef : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["projectRef"] = args ? args.projectRef : undefined; resourceInputs["roleRef"] = args ? args.roleRef : undefined; @@ -119,20 +122,24 @@ export interface RoleBindingState { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + */ + groupRef?: pulumi.Input; /** * Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ name?: pulumi.Input; /** - * Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. + * Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. */ projectRef?: pulumi.Input; /** - * Role name; the role that you want the user to assume. + * Role name; the role that you want the user or group to assume. */ roleRef?: pulumi.Input; /** - * Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + * Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). */ user?: pulumi.Input; } @@ -145,20 +152,24 @@ export interface RoleBindingArgs { * User-friendly display name of the resource. */ displayName?: pulumi.Input; + /** + * Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + */ + groupRef?: pulumi.Input; /** * Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). */ name?: pulumi.Input; /** - * Project name, the project in which we want the user to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. + * Project name, the project in which we want the user or group to assume the specified role. When `projectRef` is empty, `roleRef` must contain an Organization Role. */ projectRef?: pulumi.Input; /** - * Role name; the role that you want the user to assume. + * Role name; the role that you want the user or group to assume. */ roleRef: pulumi.Input; /** - * Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + * Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). */ - user: pulumi.Input; + user?: pulumi.Input; } diff --git a/sdk/nodejs/scripts/install-pulumi-plugin.js b/sdk/nodejs/scripts/install-pulumi-plugin.js deleted file mode 100644 index 3c55f73..0000000 --- a/sdk/nodejs/scripts/install-pulumi-plugin.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; -var childProcess = require("child_process"); - -var args = process.argv.slice(2); - -if (args.indexOf("${VERSION}") !== -1) { - process.exit(0); -} - -var res = childProcess.spawnSync("pulumi", ["plugin", "install", "--server", "https://github.com/piclemx/pulumi-nobl9/releases/"].concat(args), { - stdio: ["ignore", "inherit", "inherit"] -}); - -if (res.error && res.error.code === "ENOENT") { - console.error("\nThere was an error installing the resource provider plugin. " + - "It looks like `pulumi` is not installed on your system. " + - "Please visit https://pulumi.com/ to install the Pulumi CLI.\n" + - "You may try manually installing the plugin by running " + - "`pulumi plugin install " + args.join(" ") + "`"); -} else if (res.error || res.status !== 0) { - console.error("\nThere was an error installing the resource provider plugin. " + - "You may try to manually installing the plugin by running " + - "`pulumi plugin install " + args.join(" ") + "`"); -} - -process.exit(0); diff --git a/sdk/nodejs/service.ts b/sdk/nodejs/service.ts index 0ef6beb..653e06b 100644 --- a/sdk/nodejs/service.ts +++ b/sdk/nodejs/service.ts @@ -2,7 +2,8 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** @@ -16,7 +17,7 @@ import * as utilities from "./utilities"; * * ```typescript * import * as pulumi from "@pulumi/pulumi"; - * import * as nobl9 from "@pulumi/nobl9"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; * * const thisProject = new nobl9.Project("thisProject", { * displayName: "My Project", diff --git a/sdk/nodejs/slo.ts b/sdk/nodejs/slo.ts index ef28abb..a19c82c 100644 --- a/sdk/nodejs/slo.ts +++ b/sdk/nodejs/slo.ts @@ -2,7 +2,8 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "./types"; +import * as inputs from "./types/input"; +import * as outputs from "./types/output"; import * as utilities from "./utilities"; /** @@ -10,6 +11,119 @@ import * as utilities from "./utilities"; * * For more information, refer to [SLO configuration documentation](https://docs.nobl9.com/yaml-guide#slo) * + * ## Example Usage + * + * ```typescript + * import * as pulumi from "@pulumi/pulumi"; + * import * as nobl9 from "@piclemx/pulumi-nobl9"; + * + * const thisProject = new nobl9.Project("thisProject", { + * displayName: "Test N9 Terraform", + * description: "An example N9 Terraform project", + * }); + * const thisService = new nobl9.Service("thisService", { + * project: thisProject.name, + * displayName: thisProject.displayName.apply(displayName => `${displayName} Front Page`), + * description: "Front page service", + * }); + * const thisSlo = new nobl9.Slo("thisSlo", { + * service: thisService.name, + * budgetingMethod: "Occurrences", + * project: thisProject.name, + * labels: [ + * { + * key: "env", + * values: [ + * "dev", + * "prod", + * ], + * }, + * { + * key: "team", + * values: ["red"], + * }, + * ], + * attachments: [ + * { + * url: "https://www.nobl9.com/", + * displayName: "Nobl9 Reliability Center", + * }, + * { + * url: "https://duckduckgo.com/", + * displayName: "Nice search engine", + * }, + * ], + * alertPolicies: ["foo-front-page-latency"], + * timeWindow: { + * unit: "Day", + * count: 30, + * isRolling: true, + * }, + * objectives: [{ + * name: "tf-objective-1", + * target: 0.99, + * displayName: "OK", + * value: 2000, + * op: "gte", + * rawMetrics: [{ + * queries: [{ + * prometheuses: [{ + * promql: " latency_west_c7{code=\"ALL\",instance=\"localhost:3000\",job=\"prometheus\",service=\"glob_account\"}\n", + * }], + * }], + * }], + * }], + * indicator: { + * name: "test-terraform-prom-agent", + * }, + * }); + * const thisIndex_sloSlo = new nobl9.Slo("thisIndex/sloSlo", { + * service: thisService.name, + * budgetingMethod: "Occurrences", + * project: thisProject.name, + * timeWindow: { + * unit: "Day", + * count: 30, + * isRolling: true, + * }, + * objectives: [{ + * name: "tf-objective-1", + * target: 0.99, + * displayName: "OK", + * value: 1, + * countMetrics: [{ + * incremental: true, + * goods: [{ + * prometheuses: [{ + * promql: "1.0", + * }], + * }], + * totals: [{ + * prometheuses: [{ + * promql: "1.0", + * }], + * }], + * }], + * }], + * indicator: { + * name: "test-terraform-prom-agent", + * }, + * anomalyConfig: { + * noData: { + * alertMethods: [ + * { + * name: "foo-method-method", + * project: "default", + * }, + * { + * name: "bar-alert-method", + * project: "default", + * }, + * ], + * }, + * }, + * }); + * ``` * ## Nobl9 Official Documentation * * https://docs.nobl9.com/SLOs_as_code/?_highlight=slo @@ -46,6 +160,11 @@ export class Slo extends pulumi.CustomResource { * Alert Policies attached to SLO */ public readonly alertPolicies!: pulumi.Output; + /** + * Configuration for Anomalies. Currently supported Anomaly Type is NoData + */ + public readonly anomalyConfig!: pulumi.Output; + public readonly attachment!: pulumi.Output; /** * @deprecated "attachments" argument is deprecated use "attachment" instead */ @@ -63,7 +182,7 @@ export class Slo extends pulumi.CustomResource { */ public readonly description!: pulumi.Output; /** - * User-friendly display name of the resource. + * Name displayed for the attachment. Max. length: 63 characters. */ public readonly displayName!: pulumi.Output; /** @@ -74,7 +193,7 @@ export class Slo extends pulumi.CustomResource { */ public readonly labels!: pulumi.Output; /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ public readonly name!: pulumi.Output; /** @@ -82,7 +201,7 @@ export class Slo extends pulumi.CustomResource { */ public readonly objectives!: pulumi.Output; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. */ public readonly project!: pulumi.Output; /** @@ -107,6 +226,8 @@ export class Slo extends pulumi.CustomResource { if (opts.id) { const state = argsOrState as SloState | undefined; resourceInputs["alertPolicies"] = state ? state.alertPolicies : undefined; + resourceInputs["anomalyConfig"] = state ? state.anomalyConfig : undefined; + resourceInputs["attachment"] = state ? state.attachment : undefined; resourceInputs["attachments"] = state ? state.attachments : undefined; resourceInputs["budgetingMethod"] = state ? state.budgetingMethod : undefined; resourceInputs["composite"] = state ? state.composite : undefined; @@ -140,6 +261,8 @@ export class Slo extends pulumi.CustomResource { throw new Error("Missing required property 'timeWindow'"); } resourceInputs["alertPolicies"] = args ? args.alertPolicies : undefined; + resourceInputs["anomalyConfig"] = args ? args.anomalyConfig : undefined; + resourceInputs["attachment"] = args ? args.attachment : undefined; resourceInputs["attachments"] = args ? args.attachments : undefined; resourceInputs["budgetingMethod"] = args ? args.budgetingMethod : undefined; resourceInputs["composite"] = args ? args.composite : undefined; @@ -166,6 +289,11 @@ export interface SloState { * Alert Policies attached to SLO */ alertPolicies?: pulumi.Input[]>; + /** + * Configuration for Anomalies. Currently supported Anomaly Type is NoData + */ + anomalyConfig?: pulumi.Input; + attachment?: pulumi.Input[]>; /** * @deprecated "attachments" argument is deprecated use "attachment" instead */ @@ -183,7 +311,7 @@ export interface SloState { */ description?: pulumi.Input; /** - * User-friendly display name of the resource. + * Name displayed for the attachment. Max. length: 63 characters. */ displayName?: pulumi.Input; /** @@ -194,7 +322,7 @@ export interface SloState { */ labels?: pulumi.Input[]>; /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name?: pulumi.Input; /** @@ -202,7 +330,7 @@ export interface SloState { */ objectives?: pulumi.Input[]>; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. */ project?: pulumi.Input; /** @@ -222,6 +350,11 @@ export interface SloArgs { * Alert Policies attached to SLO */ alertPolicies?: pulumi.Input[]>; + /** + * Configuration for Anomalies. Currently supported Anomaly Type is NoData + */ + anomalyConfig?: pulumi.Input; + attachment?: pulumi.Input[]>; /** * @deprecated "attachments" argument is deprecated use "attachment" instead */ @@ -239,7 +372,7 @@ export interface SloArgs { */ description?: pulumi.Input; /** - * User-friendly display name of the resource. + * Name displayed for the attachment. Max. length: 63 characters. */ displayName?: pulumi.Input; /** @@ -250,7 +383,7 @@ export interface SloArgs { */ labels?: pulumi.Input[]>; /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name?: pulumi.Input; /** @@ -258,7 +391,7 @@ export interface SloArgs { */ objectives: pulumi.Input[]>; /** - * Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. */ project: pulumi.Input; /** diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 724af3c..e9a853f 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -27,11 +27,13 @@ "config/index.ts", "config/vars.ts", "directAppdynamics.ts", + "directAzureMonitor.ts", "directBigquery.ts", "directCloudwatch.ts", "directDatadog.ts", "directDynatrace.ts", "directGcm.ts", + "directHoneycomb.ts", "directInfluxdb.ts", "directInstana.ts", "directLightstep.ts", @@ -42,6 +44,7 @@ "directSplunkObservability.ts", "directSumologic.ts", "directThousandeyes.ts", + "getAwsIamRoleExternalId.ts", "index.ts", "project.ts", "provider.ts", diff --git a/sdk/nodejs/types/index.ts b/sdk/nodejs/types/index.ts index a6057c6..c7b9909 100644 --- a/sdk/nodejs/types/index.ts +++ b/sdk/nodejs/types/index.ts @@ -1,6 +1,8 @@ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** +import * as utilities from "../utilities"; + // Export sub-modules: import * as input from "./input"; import * as output from "./output"; diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 010b7cd..c0e8fb1 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -2,7 +2,8 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "../types"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; export interface AgentAmazonPrometheusConfig { /** @@ -22,6 +23,13 @@ export interface AgentAppdynamicsConfig { url: pulumi.Input; } +export interface AgentAzureMonitorConfig { + /** + * Azure Tenant Id. + */ + tenantId: pulumi.Input; +} + export interface AgentBigqueryConfig { } @@ -66,6 +74,42 @@ export interface AgentGraphiteConfig { url: pulumi.Input; } +export interface AgentHistoricalDataRetrieval { + /** + * Used by default for any SLOs connected to this data source. + */ + defaultDurations: pulumi.Input[]>; + /** + * Defines the maximum period for which data can be retrieved. + */ + maxDurations: pulumi.Input[]>; +} + +export interface AgentHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + +export interface AgentHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + +export interface AgentHoneycombConfig { +} + export interface AgentInfluxdbConfig { /** * API URL endpoint to the InfluxDB's instance. @@ -89,6 +133,10 @@ export interface AgentLightstepConfig { * Name of the Lightstep project. */ project: pulumi.Input; + /** + * Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + */ + url?: pulumi.Input; } export interface AgentNewrelicConfig { @@ -153,6 +201,13 @@ export interface AgentSumologicConfig { export interface AgentThousandeyesConfig { } +export interface AlertMethodPagerdutySendResolution { + /** + * A message that will be attached to your 'all clear' notification. + */ + message?: pulumi.Input; +} + export interface AlertPolicyAlertMethod { /** * The name of the previously defined alert method. @@ -165,12 +220,16 @@ export interface AlertPolicyAlertMethod { } export interface AlertPolicyCondition { + /** + * Duration over which the burn rate is evaluated. + */ + alertingWindow?: pulumi.Input; /** * Indicates how long a given condition needs to be valid to mark the condition as true. */ lastsFor?: pulumi.Input; /** - * One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + * One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. */ measurement: pulumi.Input; /** @@ -178,11 +237,44 @@ export interface AlertPolicyCondition { */ value?: pulumi.Input; /** - * Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + * Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. */ valueString?: pulumi.Input; } +export interface DirectAppdynamicsHistoricalDataRetrieval { + /** + * Used by default for any SLOs connected to this data source. + */ + defaultDurations: pulumi.Input[]>; + /** + * Defines the maximum period for which data can be retrieved. + */ + maxDurations: pulumi.Input[]>; +} + +export interface DirectAppdynamicsHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + +export interface DirectAppdynamicsHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + export interface DirectAppdynamicsQueryDelay { /** * Must be one of Minute or Second. @@ -194,6 +286,50 @@ export interface DirectAppdynamicsQueryDelay { value: pulumi.Input; } +export interface DirectAzureMonitorHistoricalDataRetrieval { + /** + * Used by default for any SLOs connected to this data source. + */ + defaultDurations: pulumi.Input[]>; + /** + * Defines the maximum period for which data can be retrieved. + */ + maxDurations: pulumi.Input[]>; +} + +export interface DirectAzureMonitorHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + +export interface DirectAzureMonitorHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + +export interface DirectAzureMonitorQueryDelay { + /** + * Must be one of Minute or Second. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + export interface DirectBigqueryQueryDelay { /** * Must be one of Minute or Second. @@ -217,12 +353,24 @@ export interface DirectCloudwatchHistoricalDataRetrieval { } export interface DirectCloudwatchHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } export interface DirectCloudwatchHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } @@ -249,12 +397,24 @@ export interface DirectDatadogHistoricalDataRetrieval { } export interface DirectDatadogHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } export interface DirectDatadogHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } @@ -281,12 +441,24 @@ export interface DirectDynatraceHistoricalDataRetrieval { } export interface DirectDynatraceHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } export interface DirectDynatraceHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } @@ -312,6 +484,50 @@ export interface DirectGcmQueryDelay { value: pulumi.Input; } +export interface DirectHoneycombHistoricalDataRetrieval { + /** + * Used by default for any SLOs connected to this data source. + */ + defaultDurations: pulumi.Input[]>; + /** + * Defines the maximum period for which data can be retrieved. + */ + maxDurations: pulumi.Input[]>; +} + +export interface DirectHoneycombHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + +export interface DirectHoneycombHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + +export interface DirectHoneycombQueryDelay { + /** + * Must be one of Minute or Second. + */ + unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ + value: pulumi.Input; +} + export interface DirectInfluxdbQueryDelay { /** * Must be one of Minute or Second. @@ -346,12 +562,24 @@ export interface DirectLightstepHistoricalDataRetrieval { } export interface DirectLightstepHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } export interface DirectLightstepHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } @@ -378,12 +606,24 @@ export interface DirectNewrelicHistoricalDataRetrieval { } export interface DirectNewrelicHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } export interface DirectNewrelicHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } @@ -432,12 +672,24 @@ export interface DirectSplunkHistoricalDataRetrieval { } export interface DirectSplunkHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } export interface DirectSplunkHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: pulumi.Input; + /** + * Must be an integer greater than or equal to 0. + */ value: pulumi.Input; } @@ -507,6 +759,31 @@ export interface ServiceLabel { values: pulumi.Input[]>; } +export interface SloAnomalyConfig { + /** + * Alert Policies attached to SLO + */ + noData: pulumi.Input; +} + +export interface SloAnomalyConfigNoData { + /** + * Alert methods attached to Anomaly Config + */ + alertMethods: pulumi.Input[]>; +} + +export interface SloAnomalyConfigNoDataAlertMethod { + /** + * The name of the previously defined alert method. + */ + name: pulumi.Input; + /** + * Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + */ + project: pulumi.Input; +} + export interface SloAttachment { /** * Name displayed for the attachment. Max. length: 63 characters. @@ -530,7 +807,13 @@ export interface SloComposite { } export interface SloCompositeBurnRateCondition { + /** + * Type of logical operation + */ op: pulumi.Input; + /** + * Burn rate value. + */ value: pulumi.Input; } @@ -562,7 +845,7 @@ export interface SloLabel { export interface SloObjective { /** - * Compares two time series, indicating the ratio of the count of good values to total values. + * Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. */ countMetrics?: pulumi.Input[]>; /** @@ -596,516 +879,2020 @@ export interface SloObjective { } export interface SloObjectiveCountMetric { + /** + * Configuration for bad time series metrics. + */ + bads?: pulumi.Input[]>; + /** + * Configuration for good time series metrics. + */ goods?: pulumi.Input[]>; + /** + * Should the metrics be incrementing or not + */ incremental: pulumi.Input; - totals?: pulumi.Input[]>; -} - -export interface SloObjectiveCountMetricGood { - amazonPrometheuses?: pulumi.Input[]>; - appdynamics?: pulumi.Input[]>; - bigqueries?: pulumi.Input[]>; - cloudwatches?: pulumi.Input[]>; - datadogs?: pulumi.Input[]>; - dynatraces?: pulumi.Input[]>; - elasticsearches?: pulumi.Input[]>; - gcms?: pulumi.Input[]>; - grafanaLokis?: pulumi.Input[]>; - graphites?: pulumi.Input[]>; - influxdbs?: pulumi.Input[]>; - instanas?: pulumi.Input[]>; - lightsteps?: pulumi.Input[]>; - newrelics?: pulumi.Input[]>; - opentsdbs?: pulumi.Input[]>; - pingdoms?: pulumi.Input[]>; - prometheuses?: pulumi.Input[]>; - redshifts?: pulumi.Input[]>; - splunkObservabilities?: pulumi.Input[]>; - splunks?: pulumi.Input[]>; - sumologics?: pulumi.Input[]>; - thousandeyes?: pulumi.Input[]>; + /** + * Configuration for metric source + */ + totals: pulumi.Input[]>; } -export interface SloObjectiveCountMetricGoodAmazonPrometheus { - promql: pulumi.Input; +export interface SloObjectiveCountMetricBad { + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + */ + amazonPrometheuses?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + */ + appdynamics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + */ + azureMonitors?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + */ + bigqueries?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + */ + cloudwatches?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + */ + datadogs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + */ + dynatraces?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + */ + elasticsearches?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + */ + gcms?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + */ + grafanaLokis?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + */ + graphites?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + */ + honeycombs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + */ + influxdbs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + */ + instanas?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + */ + lightsteps?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + */ + newrelics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + */ + opentsdbs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + */ + pingdoms?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + */ + prometheuses?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + */ + redshifts?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + */ + splunkObservabilities?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + */ + splunks?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + */ + sumologics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + */ + thousandeyes?: pulumi.Input[]>; +} + +export interface SloObjectiveCountMetricBadAmazonPrometheus { + /** + * Query for the metrics + */ + promql: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadAppdynamic { + /** + * Name of the added application + */ + applicationName: pulumi.Input; + /** + * Path to the metrics + */ + metricPath: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadAzureMonitor { + /** + * Aggregation type [Required for metrics] + */ + aggregation?: pulumi.Input; + /** + * Specifies source: 'metrics' or 'logs' + */ + dataType: pulumi.Input; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: pulumi.Input[]>; + /** + * Logs query in Kusto Query Language [Required for logs] + */ + kqlQuery?: pulumi.Input; + /** + * Name of the metric [Required for metrics] + */ + metricName?: pulumi.Input; + /** + * Namespace of the metric [Optional for metrics] + */ + metricNamespace?: pulumi.Input; + /** + * Identifier of the Azure Cloud resource [Required for metrics] + */ + resourceId?: pulumi.Input; + /** + * Log analytics workspace [Required for logs] + */ + workspaces?: pulumi.Input[]>; +} + +export interface SloObjectiveCountMetricBadAzureMonitorDimension { + /** + * The name of the previously defined alert method. + */ + name: pulumi.Input; + /** + * Burn rate value. + */ + value: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadAzureMonitorWorkspace { + /** + * Resource group of the workspace + */ + resourceGroup: pulumi.Input; + /** + * Subscription ID of the workspace + */ + subscriptionId: pulumi.Input; + /** + * ID of the workspace + */ + workspaceId: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadBigquery { + /** + * Location of you BigQuery + */ + location: pulumi.Input; + /** + * Project ID + */ + projectId: pulumi.Input; + /** + * Query for the metrics + */ + query: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadCloudwatch { + /** + * AccountID used with cross-account observability feature + */ + accountId?: pulumi.Input; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: pulumi.Input[]>; + /** + * JSON query + */ + json?: pulumi.Input; + /** + * Name of the metric [Required for metrics] + */ + metricName?: pulumi.Input; + /** + * Namespace of the metric + */ + namespace?: pulumi.Input; + /** + * Region of the CloudWatch instance + */ + region: pulumi.Input; + /** + * SQL query + */ + sql?: pulumi.Input; + /** + * Metric data aggregations + */ + stat?: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadCloudwatchDimension { + /** + * The name of the previously defined alert method. + */ + name: pulumi.Input; + /** + * Burn rate value. + */ + value: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadDatadog { + /** + * Query for the metrics + */ + query: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadDynatrace { + /** + * Selector for the metrics + */ + metricSelector: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadElasticsearch { + /** + * Index of metrics we want to query + */ + index: pulumi.Input; + /** + * Query for the metrics + */ + query: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadGcm { + /** + * Project ID + */ + projectId: pulumi.Input; + /** + * Query for the metrics + */ + query: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadGrafanaLoki { + /** + * Query for the logs + */ + logql: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadGraphite { + /** + * Path to the metrics + */ + metricPath: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadHoneycomb { + /** + * Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + */ + attribute?: pulumi.Input; + /** + * Calculation type + */ + calculation: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadInfluxdb { + /** + * Query for the metrics + */ + query: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadInstana { + /** + * Infrastructure metric type + */ + applications?: pulumi.Input[]>; + /** + * Infrastructure metric type + */ + infrastructures?: pulumi.Input[]>; + /** + * Instana metric type 'application' or 'infrastructure' + */ + metricType: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadInstanaApplication { + /** + * Aggregation type [Required for metrics] + */ + aggregation: pulumi.Input; + /** + * API query user passes in a JSON format + */ + apiQuery: pulumi.Input; + /** + * Group by method + */ + groupBies: pulumi.Input[]>; + /** + * Include internal + */ + includeInternal?: pulumi.Input; + /** + * Include synthetic + */ + includeSynthetic?: pulumi.Input; + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ + metricId: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadInstanaApplicationGroupBy { + /** + * Group by tag + */ + tag: pulumi.Input; + /** + * Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + */ + tagEntity: pulumi.Input; + tagSecondLevelKey?: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadInstanaInfrastructure { + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ + metricId: pulumi.Input; + /** + * Metric retrieval method 'query' or 'snapshot' + */ + metricRetrievalMethod: pulumi.Input; + /** + * Plugin ID + */ + pluginId: pulumi.Input; + /** + * Query for the metrics + */ + query?: pulumi.Input; + /** + * Snapshot ID + */ + snapshotId?: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadLightstep { + /** + * Optional value to filter by percentiles + */ + percentile?: pulumi.Input; + /** + * ID of the metrics stream + */ + streamId?: pulumi.Input; + /** + * Type of data to filter by + */ + typeOfData: pulumi.Input; + /** + * UQL query + */ + uql?: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadNewrelic { + /** + * Query for the metrics + */ + nrql: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadOpentsdb { + /** + * Query for the metrics + */ + query: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadPingdom { + /** + * Pingdom uptime or transaction check's ID + */ + checkId: pulumi.Input; + /** + * Pingdom check type - uptime or transaction + */ + checkType?: pulumi.Input; + /** + * Optional for the Uptime checks. Use it to filter the Pingdom check results by status + */ + status?: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadPrometheus { + /** + * Query for the metrics + */ + promql: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadRedshift { + /** + * Redshift custer ID + */ + clusterId: pulumi.Input; + /** + * Database name + */ + databaseName: pulumi.Input; + /** + * Query for the metrics + */ + query: pulumi.Input; + /** + * Region of the CloudWatch instance + */ + region: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadSplunk { + /** + * Query for the metrics + */ + query: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadSplunkObservability { + /** + * Query for the metrics + */ + program: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadSumologic { + /** + * Period of data aggregation + */ + quantization?: pulumi.Input; + /** + * Query for the metrics + */ + query: pulumi.Input; + /** + * Aggregation function - avg, sum, min, max, count, none + */ + rollup?: pulumi.Input; + /** + * Sumologic source - metrics or logs + */ + type: pulumi.Input; +} + +export interface SloObjectiveCountMetricBadThousandeye { + /** + * ID of the test + */ + testId: pulumi.Input; +} + +export interface SloObjectiveCountMetricGood { + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + */ + amazonPrometheuses?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + */ + appdynamics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + */ + azureMonitors?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + */ + bigqueries?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + */ + cloudwatches?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + */ + datadogs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + */ + dynatraces?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + */ + elasticsearches?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + */ + gcms?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + */ + grafanaLokis?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + */ + graphites?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + */ + honeycombs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + */ + influxdbs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + */ + instanas?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + */ + lightsteps?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + */ + newrelics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + */ + opentsdbs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + */ + pingdoms?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + */ + prometheuses?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + */ + redshifts?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + */ + splunkObservabilities?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + */ + splunks?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + */ + sumologics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + */ + thousandeyes?: pulumi.Input[]>; +} + +export interface SloObjectiveCountMetricGoodAmazonPrometheus { + /** + * Query for the metrics + */ + promql: pulumi.Input; } export interface SloObjectiveCountMetricGoodAppdynamic { + /** + * Name of the added application + */ applicationName: pulumi.Input; + /** + * Path to the metrics + */ metricPath: pulumi.Input; } +export interface SloObjectiveCountMetricGoodAzureMonitor { + /** + * Aggregation type [Required for metrics] + */ + aggregation?: pulumi.Input; + /** + * Specifies source: 'metrics' or 'logs' + */ + dataType: pulumi.Input; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: pulumi.Input[]>; + /** + * Logs query in Kusto Query Language [Required for logs] + */ + kqlQuery?: pulumi.Input; + /** + * Name of the metric [Required for metrics] + */ + metricName?: pulumi.Input; + /** + * Namespace of the metric [Optional for metrics] + */ + metricNamespace?: pulumi.Input; + /** + * Identifier of the Azure Cloud resource [Required for metrics] + */ + resourceId?: pulumi.Input; + /** + * Log analytics workspace [Required for logs] + */ + workspaces?: pulumi.Input[]>; +} + +export interface SloObjectiveCountMetricGoodAzureMonitorDimension { + /** + * The name of the previously defined alert method. + */ + name: pulumi.Input; + /** + * Burn rate value. + */ + value: pulumi.Input; +} + +export interface SloObjectiveCountMetricGoodAzureMonitorWorkspace { + /** + * Resource group of the workspace + */ + resourceGroup: pulumi.Input; + /** + * Subscription ID of the workspace + */ + subscriptionId: pulumi.Input; + /** + * ID of the workspace + */ + workspaceId: pulumi.Input; +} + export interface SloObjectiveCountMetricGoodBigquery { + /** + * Location of you BigQuery + */ location: pulumi.Input; + /** + * Project ID + */ projectId: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricGoodCloudwatch { + /** + * AccountID used with cross-account observability feature + */ + accountId?: pulumi.Input; + /** + * Dimensions of the metric [Optional for metrics] + */ dimensions?: pulumi.Input[]>; + /** + * JSON query + */ json?: pulumi.Input; + /** + * Name of the metric [Required for metrics] + */ metricName?: pulumi.Input; + /** + * Namespace of the metric + */ namespace?: pulumi.Input; + /** + * Region of the CloudWatch instance + */ region: pulumi.Input; + /** + * SQL query + */ sql?: pulumi.Input; + /** + * Metric data aggregations + */ stat?: pulumi.Input; } export interface SloObjectiveCountMetricGoodCloudwatchDimension { /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name: pulumi.Input; + /** + * Burn rate value. + */ value: pulumi.Input; } export interface SloObjectiveCountMetricGoodDatadog { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricGoodDynatrace { + /** + * Selector for the metrics + */ metricSelector: pulumi.Input; } export interface SloObjectiveCountMetricGoodElasticsearch { + /** + * Index of metrics we want to query + */ index: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricGoodGcm { + /** + * Project ID + */ projectId: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricGoodGrafanaLoki { + /** + * Query for the logs + */ logql: pulumi.Input; } export interface SloObjectiveCountMetricGoodGraphite { + /** + * Path to the metrics + */ metricPath: pulumi.Input; } +export interface SloObjectiveCountMetricGoodHoneycomb { + /** + * Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + */ + attribute?: pulumi.Input; + /** + * Calculation type + */ + calculation: pulumi.Input; +} + export interface SloObjectiveCountMetricGoodInfluxdb { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricGoodInstana { + /** + * Infrastructure metric type + */ applications?: pulumi.Input[]>; + /** + * Infrastructure metric type + */ infrastructures?: pulumi.Input[]>; + /** + * Instana metric type 'application' or 'infrastructure' + */ metricType: pulumi.Input; } export interface SloObjectiveCountMetricGoodInstanaApplication { + /** + * Aggregation type [Required for metrics] + */ aggregation: pulumi.Input; + /** + * API query user passes in a JSON format + */ apiQuery: pulumi.Input; + /** + * Group by method + */ groupBies: pulumi.Input[]>; + /** + * Include internal + */ includeInternal?: pulumi.Input; + /** + * Include synthetic + */ includeSynthetic?: pulumi.Input; + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: pulumi.Input; } export interface SloObjectiveCountMetricGoodInstanaApplicationGroupBy { + /** + * Group by tag + */ tag: pulumi.Input; + /** + * Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + */ tagEntity: pulumi.Input; tagSecondLevelKey?: pulumi.Input; } export interface SloObjectiveCountMetricGoodInstanaInfrastructure { + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: pulumi.Input; + /** + * Metric retrieval method 'query' or 'snapshot' + */ metricRetrievalMethod: pulumi.Input; + /** + * Plugin ID + */ pluginId: pulumi.Input; + /** + * Query for the metrics + */ query?: pulumi.Input; + /** + * Snapshot ID + */ snapshotId?: pulumi.Input; } export interface SloObjectiveCountMetricGoodLightstep { + /** + * Optional value to filter by percentiles + */ percentile?: pulumi.Input; + /** + * ID of the metrics stream + */ streamId?: pulumi.Input; + /** + * Type of data to filter by + */ typeOfData: pulumi.Input; + /** + * UQL query + */ uql?: pulumi.Input; } export interface SloObjectiveCountMetricGoodNewrelic { + /** + * Query for the metrics + */ nrql: pulumi.Input; } export interface SloObjectiveCountMetricGoodOpentsdb { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricGoodPingdom { + /** + * Pingdom uptime or transaction check's ID + */ checkId: pulumi.Input; + /** + * Pingdom check type - uptime or transaction + */ checkType?: pulumi.Input; + /** + * Optional for the Uptime checks. Use it to filter the Pingdom check results by status + */ status?: pulumi.Input; } export interface SloObjectiveCountMetricGoodPrometheus { + /** + * Query for the metrics + */ promql: pulumi.Input; } export interface SloObjectiveCountMetricGoodRedshift { + /** + * Redshift custer ID + */ clusterId: pulumi.Input; + /** + * Database name + */ databaseName: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; + /** + * Region of the CloudWatch instance + */ region: pulumi.Input; } export interface SloObjectiveCountMetricGoodSplunk { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricGoodSplunkObservability { + /** + * Query for the metrics + */ program: pulumi.Input; } export interface SloObjectiveCountMetricGoodSumologic { + /** + * Period of data aggregation + */ quantization?: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; + /** + * Aggregation function - avg, sum, min, max, count, none + */ rollup?: pulumi.Input; + /** + * Sumologic source - metrics or logs + */ type: pulumi.Input; } export interface SloObjectiveCountMetricGoodThousandeye { + /** + * ID of the test + */ testId: pulumi.Input; } export interface SloObjectiveCountMetricTotal { + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + */ amazonPrometheuses?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + */ appdynamics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + */ + azureMonitors?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + */ bigqueries?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + */ cloudwatches?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + */ datadogs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + */ dynatraces?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + */ elasticsearches?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + */ gcms?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + */ grafanaLokis?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + */ graphites?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + */ + honeycombs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + */ influxdbs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + */ instanas?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + */ lightsteps?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + */ newrelics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + */ opentsdbs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + */ pingdoms?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + */ prometheuses?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + */ redshifts?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + */ splunkObservabilities?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + */ splunks?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + */ sumologics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + */ thousandeyes?: pulumi.Input[]>; } export interface SloObjectiveCountMetricTotalAmazonPrometheus { + /** + * Query for the metrics + */ promql: pulumi.Input; } export interface SloObjectiveCountMetricTotalAppdynamic { + /** + * Name of the added application + */ applicationName: pulumi.Input; + /** + * Path to the metrics + */ metricPath: pulumi.Input; } +export interface SloObjectiveCountMetricTotalAzureMonitor { + /** + * Aggregation type [Required for metrics] + */ + aggregation?: pulumi.Input; + /** + * Specifies source: 'metrics' or 'logs' + */ + dataType: pulumi.Input; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: pulumi.Input[]>; + /** + * Logs query in Kusto Query Language [Required for logs] + */ + kqlQuery?: pulumi.Input; + /** + * Name of the metric [Required for metrics] + */ + metricName?: pulumi.Input; + /** + * Namespace of the metric [Optional for metrics] + */ + metricNamespace?: pulumi.Input; + /** + * Identifier of the Azure Cloud resource [Required for metrics] + */ + resourceId?: pulumi.Input; + /** + * Log analytics workspace [Required for logs] + */ + workspaces?: pulumi.Input[]>; +} + +export interface SloObjectiveCountMetricTotalAzureMonitorDimension { + /** + * The name of the previously defined alert method. + */ + name: pulumi.Input; + /** + * Burn rate value. + */ + value: pulumi.Input; +} + +export interface SloObjectiveCountMetricTotalAzureMonitorWorkspace { + /** + * Resource group of the workspace + */ + resourceGroup: pulumi.Input; + /** + * Subscription ID of the workspace + */ + subscriptionId: pulumi.Input; + /** + * ID of the workspace + */ + workspaceId: pulumi.Input; +} + export interface SloObjectiveCountMetricTotalBigquery { + /** + * Location of you BigQuery + */ location: pulumi.Input; + /** + * Project ID + */ projectId: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricTotalCloudwatch { + /** + * AccountID used with cross-account observability feature + */ + accountId?: pulumi.Input; + /** + * Dimensions of the metric [Optional for metrics] + */ dimensions?: pulumi.Input[]>; + /** + * JSON query + */ json?: pulumi.Input; + /** + * Name of the metric [Required for metrics] + */ metricName?: pulumi.Input; + /** + * Namespace of the metric + */ namespace?: pulumi.Input; + /** + * Region of the CloudWatch instance + */ region: pulumi.Input; + /** + * SQL query + */ sql?: pulumi.Input; + /** + * Metric data aggregations + */ stat?: pulumi.Input; } export interface SloObjectiveCountMetricTotalCloudwatchDimension { /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name: pulumi.Input; + /** + * Burn rate value. + */ value: pulumi.Input; } export interface SloObjectiveCountMetricTotalDatadog { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricTotalDynatrace { + /** + * Selector for the metrics + */ metricSelector: pulumi.Input; } export interface SloObjectiveCountMetricTotalElasticsearch { + /** + * Index of metrics we want to query + */ index: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricTotalGcm { + /** + * Project ID + */ projectId: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricTotalGrafanaLoki { + /** + * Query for the logs + */ logql: pulumi.Input; } export interface SloObjectiveCountMetricTotalGraphite { + /** + * Path to the metrics + */ metricPath: pulumi.Input; } +export interface SloObjectiveCountMetricTotalHoneycomb { + /** + * Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + */ + attribute?: pulumi.Input; + /** + * Calculation type + */ + calculation: pulumi.Input; +} + export interface SloObjectiveCountMetricTotalInfluxdb { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricTotalInstana { + /** + * Infrastructure metric type + */ applications?: pulumi.Input[]>; + /** + * Infrastructure metric type + */ infrastructures?: pulumi.Input[]>; + /** + * Instana metric type 'application' or 'infrastructure' + */ metricType: pulumi.Input; } export interface SloObjectiveCountMetricTotalInstanaApplication { + /** + * Aggregation type [Required for metrics] + */ aggregation: pulumi.Input; + /** + * API query user passes in a JSON format + */ apiQuery: pulumi.Input; + /** + * Group by method + */ groupBies: pulumi.Input[]>; + /** + * Include internal + */ includeInternal?: pulumi.Input; + /** + * Include synthetic + */ includeSynthetic?: pulumi.Input; + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: pulumi.Input; } export interface SloObjectiveCountMetricTotalInstanaApplicationGroupBy { + /** + * Group by tag + */ tag: pulumi.Input; + /** + * Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + */ tagEntity: pulumi.Input; tagSecondLevelKey?: pulumi.Input; } export interface SloObjectiveCountMetricTotalInstanaInfrastructure { + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: pulumi.Input; + /** + * Metric retrieval method 'query' or 'snapshot' + */ metricRetrievalMethod: pulumi.Input; + /** + * Plugin ID + */ pluginId: pulumi.Input; + /** + * Query for the metrics + */ query?: pulumi.Input; + /** + * Snapshot ID + */ snapshotId?: pulumi.Input; } export interface SloObjectiveCountMetricTotalLightstep { + /** + * Optional value to filter by percentiles + */ percentile?: pulumi.Input; + /** + * ID of the metrics stream + */ streamId?: pulumi.Input; + /** + * Type of data to filter by + */ typeOfData: pulumi.Input; + /** + * UQL query + */ uql?: pulumi.Input; } export interface SloObjectiveCountMetricTotalNewrelic { + /** + * Query for the metrics + */ nrql: pulumi.Input; } export interface SloObjectiveCountMetricTotalOpentsdb { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricTotalPingdom { + /** + * Pingdom uptime or transaction check's ID + */ checkId: pulumi.Input; + /** + * Pingdom check type - uptime or transaction + */ checkType?: pulumi.Input; + /** + * Optional for the Uptime checks. Use it to filter the Pingdom check results by status + */ status?: pulumi.Input; } export interface SloObjectiveCountMetricTotalPrometheus { + /** + * Query for the metrics + */ promql: pulumi.Input; } export interface SloObjectiveCountMetricTotalRedshift { + /** + * Redshift custer ID + */ clusterId: pulumi.Input; + /** + * Database name + */ databaseName: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; + /** + * Region of the CloudWatch instance + */ region: pulumi.Input; } export interface SloObjectiveCountMetricTotalSplunk { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveCountMetricTotalSplunkObservability { + /** + * Query for the metrics + */ program: pulumi.Input; } export interface SloObjectiveCountMetricTotalSumologic { + /** + * Period of data aggregation + */ quantization?: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; + /** + * Aggregation function - avg, sum, min, max, count, none + */ rollup?: pulumi.Input; + /** + * Sumologic source - metrics or logs + */ type: pulumi.Input; } export interface SloObjectiveCountMetricTotalThousandeye { + /** + * ID of the test + */ testId: pulumi.Input; } export interface SloObjectiveRawMetric { - queries?: pulumi.Input[]>; + /** + * Query for the metrics + */ + queries: pulumi.Input[]>; } export interface SloObjectiveRawMetricQuery { + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + */ amazonPrometheuses?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + */ appdynamics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + */ + azureMonitors?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + */ bigqueries?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + */ cloudwatches?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + */ datadogs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + */ dynatraces?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + */ elasticsearches?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + */ gcms?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + */ grafanaLokis?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + */ graphites?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + */ + honeycombs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + */ influxdbs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + */ instanas?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + */ lightsteps?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + */ newrelics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + */ opentsdbs?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + */ pingdoms?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + */ prometheuses?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + */ redshifts?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + */ splunkObservabilities?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + */ splunks?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + */ sumologics?: pulumi.Input[]>; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + */ thousandeyes?: pulumi.Input[]>; } export interface SloObjectiveRawMetricQueryAmazonPrometheus { + /** + * Query for the metrics + */ promql: pulumi.Input; } export interface SloObjectiveRawMetricQueryAppdynamic { + /** + * Name of the added application + */ applicationName: pulumi.Input; + /** + * Path to the metrics + */ metricPath: pulumi.Input; } +export interface SloObjectiveRawMetricQueryAzureMonitor { + /** + * Aggregation type [Required for metrics] + */ + aggregation?: pulumi.Input; + /** + * Specifies source: 'metrics' or 'logs' + */ + dataType: pulumi.Input; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: pulumi.Input[]>; + /** + * Logs query in Kusto Query Language [Required for logs] + */ + kqlQuery?: pulumi.Input; + /** + * Name of the metric [Required for metrics] + */ + metricName?: pulumi.Input; + /** + * Namespace of the metric [Optional for metrics] + */ + metricNamespace?: pulumi.Input; + /** + * Identifier of the Azure Cloud resource [Required for metrics] + */ + resourceId?: pulumi.Input; + /** + * Log analytics workspace [Required for logs] + */ + workspaces?: pulumi.Input[]>; +} + +export interface SloObjectiveRawMetricQueryAzureMonitorDimension { + /** + * The name of the previously defined alert method. + */ + name: pulumi.Input; + /** + * Burn rate value. + */ + value: pulumi.Input; +} + +export interface SloObjectiveRawMetricQueryAzureMonitorWorkspace { + /** + * Resource group of the workspace + */ + resourceGroup: pulumi.Input; + /** + * Subscription ID of the workspace + */ + subscriptionId: pulumi.Input; + /** + * ID of the workspace + */ + workspaceId: pulumi.Input; +} + export interface SloObjectiveRawMetricQueryBigquery { + /** + * Location of you BigQuery + */ location: pulumi.Input; + /** + * Project ID + */ projectId: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveRawMetricQueryCloudwatch { + /** + * AccountID used with cross-account observability feature + */ + accountId?: pulumi.Input; + /** + * Dimensions of the metric [Optional for metrics] + */ dimensions?: pulumi.Input[]>; + /** + * JSON query + */ json?: pulumi.Input; + /** + * Name of the metric [Required for metrics] + */ metricName?: pulumi.Input; + /** + * Namespace of the metric + */ namespace?: pulumi.Input; + /** + * Region of the CloudWatch instance + */ region: pulumi.Input; + /** + * SQL query + */ sql?: pulumi.Input; + /** + * Metric data aggregations + */ stat?: pulumi.Input; } export interface SloObjectiveRawMetricQueryCloudwatchDimension { /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name: pulumi.Input; + /** + * Burn rate value. + */ value: pulumi.Input; } export interface SloObjectiveRawMetricQueryDatadog { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveRawMetricQueryDynatrace { + /** + * Selector for the metrics + */ metricSelector: pulumi.Input; } export interface SloObjectiveRawMetricQueryElasticsearch { + /** + * Index of metrics we want to query + */ index: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveRawMetricQueryGcm { + /** + * Project ID + */ projectId: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveRawMetricQueryGrafanaLoki { + /** + * Query for the logs + */ logql: pulumi.Input; } export interface SloObjectiveRawMetricQueryGraphite { + /** + * Path to the metrics + */ metricPath: pulumi.Input; } +export interface SloObjectiveRawMetricQueryHoneycomb { + /** + * Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + */ + attribute?: pulumi.Input; + /** + * Calculation type + */ + calculation: pulumi.Input; +} + export interface SloObjectiveRawMetricQueryInfluxdb { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveRawMetricQueryInstana { + /** + * Infrastructure metric type + */ applications?: pulumi.Input[]>; + /** + * Infrastructure metric type + */ infrastructures?: pulumi.Input[]>; + /** + * Instana metric type 'application' or 'infrastructure' + */ metricType: pulumi.Input; } export interface SloObjectiveRawMetricQueryInstanaApplication { + /** + * Aggregation type [Required for metrics] + */ aggregation: pulumi.Input; + /** + * API query user passes in a JSON format + */ apiQuery: pulumi.Input; + /** + * Group by method + */ groupBies: pulumi.Input[]>; + /** + * Include internal + */ includeInternal?: pulumi.Input; + /** + * Include synthetic + */ includeSynthetic?: pulumi.Input; + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: pulumi.Input; } export interface SloObjectiveRawMetricQueryInstanaApplicationGroupBy { + /** + * Group by tag + */ tag: pulumi.Input; + /** + * Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + */ tagEntity: pulumi.Input; tagSecondLevelKey?: pulumi.Input; } export interface SloObjectiveRawMetricQueryInstanaInfrastructure { + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: pulumi.Input; + /** + * Metric retrieval method 'query' or 'snapshot' + */ metricRetrievalMethod: pulumi.Input; + /** + * Plugin ID + */ pluginId: pulumi.Input; + /** + * Query for the metrics + */ query?: pulumi.Input; + /** + * Snapshot ID + */ snapshotId?: pulumi.Input; } export interface SloObjectiveRawMetricQueryLightstep { + /** + * Optional value to filter by percentiles + */ percentile?: pulumi.Input; + /** + * ID of the metrics stream + */ streamId?: pulumi.Input; + /** + * Type of data to filter by + */ typeOfData: pulumi.Input; + /** + * UQL query + */ uql?: pulumi.Input; } export interface SloObjectiveRawMetricQueryNewrelic { + /** + * Query for the metrics + */ nrql: pulumi.Input; } export interface SloObjectiveRawMetricQueryOpentsdb { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveRawMetricQueryPingdom { + /** + * Pingdom uptime or transaction check's ID + */ checkId: pulumi.Input; + /** + * Pingdom check type - uptime or transaction + */ checkType?: pulumi.Input; + /** + * Optional for the Uptime checks. Use it to filter the Pingdom check results by status + */ status?: pulumi.Input; } export interface SloObjectiveRawMetricQueryPrometheus { + /** + * Query for the metrics + */ promql: pulumi.Input; } export interface SloObjectiveRawMetricQueryRedshift { + /** + * Redshift custer ID + */ clusterId: pulumi.Input; + /** + * Database name + */ databaseName: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; + /** + * Region of the CloudWatch instance + */ region: pulumi.Input; } export interface SloObjectiveRawMetricQuerySplunk { + /** + * Query for the metrics + */ query: pulumi.Input; } export interface SloObjectiveRawMetricQuerySplunkObservability { + /** + * Query for the metrics + */ program: pulumi.Input; } export interface SloObjectiveRawMetricQuerySumologic { + /** + * Period of data aggregation + */ quantization?: pulumi.Input; + /** + * Query for the metrics + */ query: pulumi.Input; + /** + * Aggregation function - avg, sum, min, max, count, none + */ rollup?: pulumi.Input; + /** + * Sumologic source - metrics or logs + */ type: pulumi.Input; } export interface SloObjectiveRawMetricQueryThousandeye { + /** + * ID of the test + */ testId: pulumi.Input; } @@ -1133,7 +2920,12 @@ export interface SloTimeWindow { } export interface SloTimeWindowCalendar { + /** + * Date of the start + */ startTime: pulumi.Input; + /** + * Timezone name in IANA Time Zone Database + */ timeZone: pulumi.Input; } - diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index d3c1f09..5f0121e 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -2,7 +2,8 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** import * as pulumi from "@pulumi/pulumi"; -import { input as inputs, output as outputs } from "../types"; +import * as inputs from "../types/input"; +import * as outputs from "../types/output"; export interface AgentAmazonPrometheusConfig { /** @@ -22,6 +23,13 @@ export interface AgentAppdynamicsConfig { url: string; } +export interface AgentAzureMonitorConfig { + /** + * Azure Tenant Id. + */ + tenantId: string; +} + export interface AgentBigqueryConfig { } @@ -66,6 +74,42 @@ export interface AgentGraphiteConfig { url: string; } +export interface AgentHistoricalDataRetrieval { + /** + * Used by default for any SLOs connected to this data source. + */ + defaultDurations: outputs.AgentHistoricalDataRetrievalDefaultDuration[]; + /** + * Defines the maximum period for which data can be retrieved. + */ + maxDurations: outputs.AgentHistoricalDataRetrievalMaxDuration[]; +} + +export interface AgentHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + +export interface AgentHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + +export interface AgentHoneycombConfig { +} + export interface AgentInfluxdbConfig { /** * API URL endpoint to the InfluxDB's instance. @@ -89,6 +133,10 @@ export interface AgentLightstepConfig { * Name of the Lightstep project. */ project: string; + /** + * Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + */ + url?: string; } export interface AgentNewrelicConfig { @@ -153,6 +201,13 @@ export interface AgentSumologicConfig { export interface AgentThousandeyesConfig { } +export interface AlertMethodPagerdutySendResolution { + /** + * A message that will be attached to your 'all clear' notification. + */ + message?: string; +} + export interface AlertPolicyAlertMethod { /** * The name of the previously defined alert method. @@ -165,12 +220,16 @@ export interface AlertPolicyAlertMethod { } export interface AlertPolicyCondition { + /** + * Duration over which the burn rate is evaluated. + */ + alertingWindow?: string; /** * Indicates how long a given condition needs to be valid to mark the condition as true. */ lastsFor?: string; /** - * One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + * One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. */ measurement: string; /** @@ -178,11 +237,44 @@ export interface AlertPolicyCondition { */ value?: number; /** - * Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + * Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. */ valueString?: string; } +export interface DirectAppdynamicsHistoricalDataRetrieval { + /** + * Used by default for any SLOs connected to this data source. + */ + defaultDurations: outputs.DirectAppdynamicsHistoricalDataRetrievalDefaultDuration[]; + /** + * Defines the maximum period for which data can be retrieved. + */ + maxDurations: outputs.DirectAppdynamicsHistoricalDataRetrievalMaxDuration[]; +} + +export interface DirectAppdynamicsHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + +export interface DirectAppdynamicsHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + export interface DirectAppdynamicsQueryDelay { /** * Must be one of Minute or Second. @@ -194,6 +286,50 @@ export interface DirectAppdynamicsQueryDelay { value: number; } +export interface DirectAzureMonitorHistoricalDataRetrieval { + /** + * Used by default for any SLOs connected to this data source. + */ + defaultDurations: outputs.DirectAzureMonitorHistoricalDataRetrievalDefaultDuration[]; + /** + * Defines the maximum period for which data can be retrieved. + */ + maxDurations: outputs.DirectAzureMonitorHistoricalDataRetrievalMaxDuration[]; +} + +export interface DirectAzureMonitorHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + +export interface DirectAzureMonitorHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + +export interface DirectAzureMonitorQueryDelay { + /** + * Must be one of Minute or Second. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + export interface DirectBigqueryQueryDelay { /** * Must be one of Minute or Second. @@ -217,12 +353,24 @@ export interface DirectCloudwatchHistoricalDataRetrieval { } export interface DirectCloudwatchHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } export interface DirectCloudwatchHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } @@ -249,12 +397,24 @@ export interface DirectDatadogHistoricalDataRetrieval { } export interface DirectDatadogHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } export interface DirectDatadogHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } @@ -281,12 +441,24 @@ export interface DirectDynatraceHistoricalDataRetrieval { } export interface DirectDynatraceHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } export interface DirectDynatraceHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } @@ -312,6 +484,50 @@ export interface DirectGcmQueryDelay { value: number; } +export interface DirectHoneycombHistoricalDataRetrieval { + /** + * Used by default for any SLOs connected to this data source. + */ + defaultDurations: outputs.DirectHoneycombHistoricalDataRetrievalDefaultDuration[]; + /** + * Defines the maximum period for which data can be retrieved. + */ + maxDurations: outputs.DirectHoneycombHistoricalDataRetrievalMaxDuration[]; +} + +export interface DirectHoneycombHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + +export interface DirectHoneycombHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + +export interface DirectHoneycombQueryDelay { + /** + * Must be one of Minute or Second. + */ + unit: string; + /** + * Must be an integer greater than or equal to 0. + */ + value: number; +} + export interface DirectInfluxdbQueryDelay { /** * Must be one of Minute or Second. @@ -346,12 +562,24 @@ export interface DirectLightstepHistoricalDataRetrieval { } export interface DirectLightstepHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } export interface DirectLightstepHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } @@ -378,12 +606,24 @@ export interface DirectNewrelicHistoricalDataRetrieval { } export interface DirectNewrelicHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } export interface DirectNewrelicHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } @@ -432,12 +672,24 @@ export interface DirectSplunkHistoricalDataRetrieval { } export interface DirectSplunkHistoricalDataRetrievalDefaultDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } export interface DirectSplunkHistoricalDataRetrievalMaxDuration { + /** + * Must be one of Minute, Hour, or Day. + */ unit: string; + /** + * Must be an integer greater than or equal to 0. + */ value: number; } @@ -507,6 +759,31 @@ export interface ServiceLabel { values: string[]; } +export interface SloAnomalyConfig { + /** + * Alert Policies attached to SLO + */ + noData: outputs.SloAnomalyConfigNoData; +} + +export interface SloAnomalyConfigNoData { + /** + * Alert methods attached to Anomaly Config + */ + alertMethods: outputs.SloAnomalyConfigNoDataAlertMethod[]; +} + +export interface SloAnomalyConfigNoDataAlertMethod { + /** + * The name of the previously defined alert method. + */ + name: string; + /** + * Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + */ + project: string; +} + export interface SloAttachment { /** * Name displayed for the attachment. Max. length: 63 characters. @@ -530,7 +807,13 @@ export interface SloComposite { } export interface SloCompositeBurnRateCondition { + /** + * Type of logical operation + */ op: string; + /** + * Burn rate value. + */ value: number; } @@ -562,7 +845,7 @@ export interface SloLabel { export interface SloObjective { /** - * Compares two time series, indicating the ratio of the count of good values to total values. + * Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. */ countMetrics?: outputs.SloObjectiveCountMetric[]; /** @@ -596,516 +879,2020 @@ export interface SloObjective { } export interface SloObjectiveCountMetric { + /** + * Configuration for bad time series metrics. + */ + bads?: outputs.SloObjectiveCountMetricBad[]; + /** + * Configuration for good time series metrics. + */ goods?: outputs.SloObjectiveCountMetricGood[]; + /** + * Should the metrics be incrementing or not + */ incremental: boolean; - totals?: outputs.SloObjectiveCountMetricTotal[]; -} - -export interface SloObjectiveCountMetricGood { - amazonPrometheuses?: outputs.SloObjectiveCountMetricGoodAmazonPrometheus[]; - appdynamics?: outputs.SloObjectiveCountMetricGoodAppdynamic[]; - bigqueries?: outputs.SloObjectiveCountMetricGoodBigquery[]; - cloudwatches?: outputs.SloObjectiveCountMetricGoodCloudwatch[]; - datadogs?: outputs.SloObjectiveCountMetricGoodDatadog[]; - dynatraces?: outputs.SloObjectiveCountMetricGoodDynatrace[]; - elasticsearches?: outputs.SloObjectiveCountMetricGoodElasticsearch[]; - gcms?: outputs.SloObjectiveCountMetricGoodGcm[]; - grafanaLokis?: outputs.SloObjectiveCountMetricGoodGrafanaLoki[]; - graphites?: outputs.SloObjectiveCountMetricGoodGraphite[]; - influxdbs?: outputs.SloObjectiveCountMetricGoodInfluxdb[]; - instanas?: outputs.SloObjectiveCountMetricGoodInstana[]; - lightsteps?: outputs.SloObjectiveCountMetricGoodLightstep[]; - newrelics?: outputs.SloObjectiveCountMetricGoodNewrelic[]; - opentsdbs?: outputs.SloObjectiveCountMetricGoodOpentsdb[]; - pingdoms?: outputs.SloObjectiveCountMetricGoodPingdom[]; - prometheuses?: outputs.SloObjectiveCountMetricGoodPrometheus[]; - redshifts?: outputs.SloObjectiveCountMetricGoodRedshift[]; - splunkObservabilities?: outputs.SloObjectiveCountMetricGoodSplunkObservability[]; - splunks?: outputs.SloObjectiveCountMetricGoodSplunk[]; - sumologics?: outputs.SloObjectiveCountMetricGoodSumologic[]; - thousandeyes?: outputs.SloObjectiveCountMetricGoodThousandeye[]; + /** + * Configuration for metric source + */ + totals: outputs.SloObjectiveCountMetricTotal[]; } -export interface SloObjectiveCountMetricGoodAmazonPrometheus { - promql: string; +export interface SloObjectiveCountMetricBad { + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + */ + amazonPrometheuses?: outputs.SloObjectiveCountMetricBadAmazonPrometheus[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + */ + appdynamics?: outputs.SloObjectiveCountMetricBadAppdynamic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + */ + azureMonitors?: outputs.SloObjectiveCountMetricBadAzureMonitor[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + */ + bigqueries?: outputs.SloObjectiveCountMetricBadBigquery[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + */ + cloudwatches?: outputs.SloObjectiveCountMetricBadCloudwatch[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + */ + datadogs?: outputs.SloObjectiveCountMetricBadDatadog[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + */ + dynatraces?: outputs.SloObjectiveCountMetricBadDynatrace[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + */ + elasticsearches?: outputs.SloObjectiveCountMetricBadElasticsearch[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + */ + gcms?: outputs.SloObjectiveCountMetricBadGcm[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + */ + grafanaLokis?: outputs.SloObjectiveCountMetricBadGrafanaLoki[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + */ + graphites?: outputs.SloObjectiveCountMetricBadGraphite[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + */ + honeycombs?: outputs.SloObjectiveCountMetricBadHoneycomb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + */ + influxdbs?: outputs.SloObjectiveCountMetricBadInfluxdb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + */ + instanas?: outputs.SloObjectiveCountMetricBadInstana[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + */ + lightsteps?: outputs.SloObjectiveCountMetricBadLightstep[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + */ + newrelics?: outputs.SloObjectiveCountMetricBadNewrelic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + */ + opentsdbs?: outputs.SloObjectiveCountMetricBadOpentsdb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + */ + pingdoms?: outputs.SloObjectiveCountMetricBadPingdom[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + */ + prometheuses?: outputs.SloObjectiveCountMetricBadPrometheus[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + */ + redshifts?: outputs.SloObjectiveCountMetricBadRedshift[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + */ + splunkObservabilities?: outputs.SloObjectiveCountMetricBadSplunkObservability[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + */ + splunks?: outputs.SloObjectiveCountMetricBadSplunk[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + */ + sumologics?: outputs.SloObjectiveCountMetricBadSumologic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + */ + thousandeyes?: outputs.SloObjectiveCountMetricBadThousandeye[]; +} + +export interface SloObjectiveCountMetricBadAmazonPrometheus { + /** + * Query for the metrics + */ + promql: string; +} + +export interface SloObjectiveCountMetricBadAppdynamic { + /** + * Name of the added application + */ + applicationName: string; + /** + * Path to the metrics + */ + metricPath: string; +} + +export interface SloObjectiveCountMetricBadAzureMonitor { + /** + * Aggregation type [Required for metrics] + */ + aggregation?: string; + /** + * Specifies source: 'metrics' or 'logs' + */ + dataType: string; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: outputs.SloObjectiveCountMetricBadAzureMonitorDimension[]; + /** + * Logs query in Kusto Query Language [Required for logs] + */ + kqlQuery?: string; + /** + * Name of the metric [Required for metrics] + */ + metricName?: string; + /** + * Namespace of the metric [Optional for metrics] + */ + metricNamespace?: string; + /** + * Identifier of the Azure Cloud resource [Required for metrics] + */ + resourceId?: string; + /** + * Log analytics workspace [Required for logs] + */ + workspaces?: outputs.SloObjectiveCountMetricBadAzureMonitorWorkspace[]; +} + +export interface SloObjectiveCountMetricBadAzureMonitorDimension { + /** + * The name of the previously defined alert method. + */ + name: string; + /** + * Burn rate value. + */ + value: string; +} + +export interface SloObjectiveCountMetricBadAzureMonitorWorkspace { + /** + * Resource group of the workspace + */ + resourceGroup: string; + /** + * Subscription ID of the workspace + */ + subscriptionId: string; + /** + * ID of the workspace + */ + workspaceId: string; +} + +export interface SloObjectiveCountMetricBadBigquery { + /** + * Location of you BigQuery + */ + location: string; + /** + * Project ID + */ + projectId: string; + /** + * Query for the metrics + */ + query: string; +} + +export interface SloObjectiveCountMetricBadCloudwatch { + /** + * AccountID used with cross-account observability feature + */ + accountId?: string; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: outputs.SloObjectiveCountMetricBadCloudwatchDimension[]; + /** + * JSON query + */ + json?: string; + /** + * Name of the metric [Required for metrics] + */ + metricName?: string; + /** + * Namespace of the metric + */ + namespace?: string; + /** + * Region of the CloudWatch instance + */ + region: string; + /** + * SQL query + */ + sql?: string; + /** + * Metric data aggregations + */ + stat?: string; +} + +export interface SloObjectiveCountMetricBadCloudwatchDimension { + /** + * The name of the previously defined alert method. + */ + name: string; + /** + * Burn rate value. + */ + value: string; +} + +export interface SloObjectiveCountMetricBadDatadog { + /** + * Query for the metrics + */ + query: string; +} + +export interface SloObjectiveCountMetricBadDynatrace { + /** + * Selector for the metrics + */ + metricSelector: string; +} + +export interface SloObjectiveCountMetricBadElasticsearch { + /** + * Index of metrics we want to query + */ + index: string; + /** + * Query for the metrics + */ + query: string; +} + +export interface SloObjectiveCountMetricBadGcm { + /** + * Project ID + */ + projectId: string; + /** + * Query for the metrics + */ + query: string; +} + +export interface SloObjectiveCountMetricBadGrafanaLoki { + /** + * Query for the logs + */ + logql: string; +} + +export interface SloObjectiveCountMetricBadGraphite { + /** + * Path to the metrics + */ + metricPath: string; +} + +export interface SloObjectiveCountMetricBadHoneycomb { + /** + * Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + */ + attribute?: string; + /** + * Calculation type + */ + calculation: string; +} + +export interface SloObjectiveCountMetricBadInfluxdb { + /** + * Query for the metrics + */ + query: string; +} + +export interface SloObjectiveCountMetricBadInstana { + /** + * Infrastructure metric type + */ + applications?: outputs.SloObjectiveCountMetricBadInstanaApplication[]; + /** + * Infrastructure metric type + */ + infrastructures?: outputs.SloObjectiveCountMetricBadInstanaInfrastructure[]; + /** + * Instana metric type 'application' or 'infrastructure' + */ + metricType: string; +} + +export interface SloObjectiveCountMetricBadInstanaApplication { + /** + * Aggregation type [Required for metrics] + */ + aggregation: string; + /** + * API query user passes in a JSON format + */ + apiQuery: string; + /** + * Group by method + */ + groupBies: outputs.SloObjectiveCountMetricBadInstanaApplicationGroupBy[]; + /** + * Include internal + */ + includeInternal?: boolean; + /** + * Include synthetic + */ + includeSynthetic?: boolean; + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ + metricId: string; +} + +export interface SloObjectiveCountMetricBadInstanaApplicationGroupBy { + /** + * Group by tag + */ + tag: string; + /** + * Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + */ + tagEntity: string; + tagSecondLevelKey?: string; +} + +export interface SloObjectiveCountMetricBadInstanaInfrastructure { + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ + metricId: string; + /** + * Metric retrieval method 'query' or 'snapshot' + */ + metricRetrievalMethod: string; + /** + * Plugin ID + */ + pluginId: string; + /** + * Query for the metrics + */ + query?: string; + /** + * Snapshot ID + */ + snapshotId?: string; +} + +export interface SloObjectiveCountMetricBadLightstep { + /** + * Optional value to filter by percentiles + */ + percentile?: number; + /** + * ID of the metrics stream + */ + streamId?: string; + /** + * Type of data to filter by + */ + typeOfData: string; + /** + * UQL query + */ + uql?: string; +} + +export interface SloObjectiveCountMetricBadNewrelic { + /** + * Query for the metrics + */ + nrql: string; +} + +export interface SloObjectiveCountMetricBadOpentsdb { + /** + * Query for the metrics + */ + query: string; +} + +export interface SloObjectiveCountMetricBadPingdom { + /** + * Pingdom uptime or transaction check's ID + */ + checkId: string; + /** + * Pingdom check type - uptime or transaction + */ + checkType?: string; + /** + * Optional for the Uptime checks. Use it to filter the Pingdom check results by status + */ + status?: string; +} + +export interface SloObjectiveCountMetricBadPrometheus { + /** + * Query for the metrics + */ + promql: string; +} + +export interface SloObjectiveCountMetricBadRedshift { + /** + * Redshift custer ID + */ + clusterId: string; + /** + * Database name + */ + databaseName: string; + /** + * Query for the metrics + */ + query: string; + /** + * Region of the CloudWatch instance + */ + region: string; +} + +export interface SloObjectiveCountMetricBadSplunk { + /** + * Query for the metrics + */ + query: string; +} + +export interface SloObjectiveCountMetricBadSplunkObservability { + /** + * Query for the metrics + */ + program: string; +} + +export interface SloObjectiveCountMetricBadSumologic { + /** + * Period of data aggregation + */ + quantization?: string; + /** + * Query for the metrics + */ + query: string; + /** + * Aggregation function - avg, sum, min, max, count, none + */ + rollup?: string; + /** + * Sumologic source - metrics or logs + */ + type: string; +} + +export interface SloObjectiveCountMetricBadThousandeye { + /** + * ID of the test + */ + testId: number; +} + +export interface SloObjectiveCountMetricGood { + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + */ + amazonPrometheuses?: outputs.SloObjectiveCountMetricGoodAmazonPrometheus[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + */ + appdynamics?: outputs.SloObjectiveCountMetricGoodAppdynamic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + */ + azureMonitors?: outputs.SloObjectiveCountMetricGoodAzureMonitor[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + */ + bigqueries?: outputs.SloObjectiveCountMetricGoodBigquery[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + */ + cloudwatches?: outputs.SloObjectiveCountMetricGoodCloudwatch[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + */ + datadogs?: outputs.SloObjectiveCountMetricGoodDatadog[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + */ + dynatraces?: outputs.SloObjectiveCountMetricGoodDynatrace[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + */ + elasticsearches?: outputs.SloObjectiveCountMetricGoodElasticsearch[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + */ + gcms?: outputs.SloObjectiveCountMetricGoodGcm[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + */ + grafanaLokis?: outputs.SloObjectiveCountMetricGoodGrafanaLoki[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + */ + graphites?: outputs.SloObjectiveCountMetricGoodGraphite[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + */ + honeycombs?: outputs.SloObjectiveCountMetricGoodHoneycomb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + */ + influxdbs?: outputs.SloObjectiveCountMetricGoodInfluxdb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + */ + instanas?: outputs.SloObjectiveCountMetricGoodInstana[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + */ + lightsteps?: outputs.SloObjectiveCountMetricGoodLightstep[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + */ + newrelics?: outputs.SloObjectiveCountMetricGoodNewrelic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + */ + opentsdbs?: outputs.SloObjectiveCountMetricGoodOpentsdb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + */ + pingdoms?: outputs.SloObjectiveCountMetricGoodPingdom[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + */ + prometheuses?: outputs.SloObjectiveCountMetricGoodPrometheus[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + */ + redshifts?: outputs.SloObjectiveCountMetricGoodRedshift[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + */ + splunkObservabilities?: outputs.SloObjectiveCountMetricGoodSplunkObservability[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + */ + splunks?: outputs.SloObjectiveCountMetricGoodSplunk[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + */ + sumologics?: outputs.SloObjectiveCountMetricGoodSumologic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + */ + thousandeyes?: outputs.SloObjectiveCountMetricGoodThousandeye[]; +} + +export interface SloObjectiveCountMetricGoodAmazonPrometheus { + /** + * Query for the metrics + */ + promql: string; } export interface SloObjectiveCountMetricGoodAppdynamic { + /** + * Name of the added application + */ applicationName: string; + /** + * Path to the metrics + */ metricPath: string; } +export interface SloObjectiveCountMetricGoodAzureMonitor { + /** + * Aggregation type [Required for metrics] + */ + aggregation?: string; + /** + * Specifies source: 'metrics' or 'logs' + */ + dataType: string; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: outputs.SloObjectiveCountMetricGoodAzureMonitorDimension[]; + /** + * Logs query in Kusto Query Language [Required for logs] + */ + kqlQuery?: string; + /** + * Name of the metric [Required for metrics] + */ + metricName?: string; + /** + * Namespace of the metric [Optional for metrics] + */ + metricNamespace?: string; + /** + * Identifier of the Azure Cloud resource [Required for metrics] + */ + resourceId?: string; + /** + * Log analytics workspace [Required for logs] + */ + workspaces?: outputs.SloObjectiveCountMetricGoodAzureMonitorWorkspace[]; +} + +export interface SloObjectiveCountMetricGoodAzureMonitorDimension { + /** + * The name of the previously defined alert method. + */ + name: string; + /** + * Burn rate value. + */ + value: string; +} + +export interface SloObjectiveCountMetricGoodAzureMonitorWorkspace { + /** + * Resource group of the workspace + */ + resourceGroup: string; + /** + * Subscription ID of the workspace + */ + subscriptionId: string; + /** + * ID of the workspace + */ + workspaceId: string; +} + export interface SloObjectiveCountMetricGoodBigquery { + /** + * Location of you BigQuery + */ location: string; + /** + * Project ID + */ projectId: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricGoodCloudwatch { + /** + * AccountID used with cross-account observability feature + */ + accountId?: string; + /** + * Dimensions of the metric [Optional for metrics] + */ dimensions?: outputs.SloObjectiveCountMetricGoodCloudwatchDimension[]; + /** + * JSON query + */ json?: string; + /** + * Name of the metric [Required for metrics] + */ metricName?: string; + /** + * Namespace of the metric + */ namespace?: string; + /** + * Region of the CloudWatch instance + */ region: string; + /** + * SQL query + */ sql?: string; + /** + * Metric data aggregations + */ stat?: string; } export interface SloObjectiveCountMetricGoodCloudwatchDimension { /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name: string; + /** + * Burn rate value. + */ value: string; } export interface SloObjectiveCountMetricGoodDatadog { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricGoodDynatrace { + /** + * Selector for the metrics + */ metricSelector: string; } export interface SloObjectiveCountMetricGoodElasticsearch { + /** + * Index of metrics we want to query + */ index: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricGoodGcm { + /** + * Project ID + */ projectId: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricGoodGrafanaLoki { + /** + * Query for the logs + */ logql: string; } export interface SloObjectiveCountMetricGoodGraphite { + /** + * Path to the metrics + */ metricPath: string; } +export interface SloObjectiveCountMetricGoodHoneycomb { + /** + * Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + */ + attribute?: string; + /** + * Calculation type + */ + calculation: string; +} + export interface SloObjectiveCountMetricGoodInfluxdb { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricGoodInstana { + /** + * Infrastructure metric type + */ applications?: outputs.SloObjectiveCountMetricGoodInstanaApplication[]; + /** + * Infrastructure metric type + */ infrastructures?: outputs.SloObjectiveCountMetricGoodInstanaInfrastructure[]; + /** + * Instana metric type 'application' or 'infrastructure' + */ metricType: string; } export interface SloObjectiveCountMetricGoodInstanaApplication { + /** + * Aggregation type [Required for metrics] + */ aggregation: string; + /** + * API query user passes in a JSON format + */ apiQuery: string; + /** + * Group by method + */ groupBies: outputs.SloObjectiveCountMetricGoodInstanaApplicationGroupBy[]; + /** + * Include internal + */ includeInternal?: boolean; + /** + * Include synthetic + */ includeSynthetic?: boolean; + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: string; } export interface SloObjectiveCountMetricGoodInstanaApplicationGroupBy { + /** + * Group by tag + */ tag: string; + /** + * Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + */ tagEntity: string; tagSecondLevelKey?: string; } export interface SloObjectiveCountMetricGoodInstanaInfrastructure { + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: string; + /** + * Metric retrieval method 'query' or 'snapshot' + */ metricRetrievalMethod: string; + /** + * Plugin ID + */ pluginId: string; + /** + * Query for the metrics + */ query?: string; + /** + * Snapshot ID + */ snapshotId?: string; } export interface SloObjectiveCountMetricGoodLightstep { + /** + * Optional value to filter by percentiles + */ percentile?: number; + /** + * ID of the metrics stream + */ streamId?: string; + /** + * Type of data to filter by + */ typeOfData: string; + /** + * UQL query + */ uql?: string; } export interface SloObjectiveCountMetricGoodNewrelic { + /** + * Query for the metrics + */ nrql: string; } export interface SloObjectiveCountMetricGoodOpentsdb { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricGoodPingdom { + /** + * Pingdom uptime or transaction check's ID + */ checkId: string; + /** + * Pingdom check type - uptime or transaction + */ checkType?: string; + /** + * Optional for the Uptime checks. Use it to filter the Pingdom check results by status + */ status?: string; } export interface SloObjectiveCountMetricGoodPrometheus { + /** + * Query for the metrics + */ promql: string; } export interface SloObjectiveCountMetricGoodRedshift { + /** + * Redshift custer ID + */ clusterId: string; + /** + * Database name + */ databaseName: string; + /** + * Query for the metrics + */ query: string; + /** + * Region of the CloudWatch instance + */ region: string; } export interface SloObjectiveCountMetricGoodSplunk { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricGoodSplunkObservability { + /** + * Query for the metrics + */ program: string; } export interface SloObjectiveCountMetricGoodSumologic { + /** + * Period of data aggregation + */ quantization?: string; + /** + * Query for the metrics + */ query: string; + /** + * Aggregation function - avg, sum, min, max, count, none + */ rollup?: string; + /** + * Sumologic source - metrics or logs + */ type: string; } export interface SloObjectiveCountMetricGoodThousandeye { + /** + * ID of the test + */ testId: number; } export interface SloObjectiveCountMetricTotal { + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + */ amazonPrometheuses?: outputs.SloObjectiveCountMetricTotalAmazonPrometheus[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + */ appdynamics?: outputs.SloObjectiveCountMetricTotalAppdynamic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + */ + azureMonitors?: outputs.SloObjectiveCountMetricTotalAzureMonitor[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + */ bigqueries?: outputs.SloObjectiveCountMetricTotalBigquery[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + */ cloudwatches?: outputs.SloObjectiveCountMetricTotalCloudwatch[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + */ datadogs?: outputs.SloObjectiveCountMetricTotalDatadog[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + */ dynatraces?: outputs.SloObjectiveCountMetricTotalDynatrace[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + */ elasticsearches?: outputs.SloObjectiveCountMetricTotalElasticsearch[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + */ gcms?: outputs.SloObjectiveCountMetricTotalGcm[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + */ grafanaLokis?: outputs.SloObjectiveCountMetricTotalGrafanaLoki[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + */ graphites?: outputs.SloObjectiveCountMetricTotalGraphite[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + */ + honeycombs?: outputs.SloObjectiveCountMetricTotalHoneycomb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + */ influxdbs?: outputs.SloObjectiveCountMetricTotalInfluxdb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + */ instanas?: outputs.SloObjectiveCountMetricTotalInstana[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + */ lightsteps?: outputs.SloObjectiveCountMetricTotalLightstep[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + */ newrelics?: outputs.SloObjectiveCountMetricTotalNewrelic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + */ opentsdbs?: outputs.SloObjectiveCountMetricTotalOpentsdb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + */ pingdoms?: outputs.SloObjectiveCountMetricTotalPingdom[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + */ prometheuses?: outputs.SloObjectiveCountMetricTotalPrometheus[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + */ redshifts?: outputs.SloObjectiveCountMetricTotalRedshift[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + */ splunkObservabilities?: outputs.SloObjectiveCountMetricTotalSplunkObservability[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + */ splunks?: outputs.SloObjectiveCountMetricTotalSplunk[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + */ sumologics?: outputs.SloObjectiveCountMetricTotalSumologic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + */ thousandeyes?: outputs.SloObjectiveCountMetricTotalThousandeye[]; } export interface SloObjectiveCountMetricTotalAmazonPrometheus { + /** + * Query for the metrics + */ promql: string; } export interface SloObjectiveCountMetricTotalAppdynamic { + /** + * Name of the added application + */ applicationName: string; + /** + * Path to the metrics + */ metricPath: string; } +export interface SloObjectiveCountMetricTotalAzureMonitor { + /** + * Aggregation type [Required for metrics] + */ + aggregation?: string; + /** + * Specifies source: 'metrics' or 'logs' + */ + dataType: string; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: outputs.SloObjectiveCountMetricTotalAzureMonitorDimension[]; + /** + * Logs query in Kusto Query Language [Required for logs] + */ + kqlQuery?: string; + /** + * Name of the metric [Required for metrics] + */ + metricName?: string; + /** + * Namespace of the metric [Optional for metrics] + */ + metricNamespace?: string; + /** + * Identifier of the Azure Cloud resource [Required for metrics] + */ + resourceId?: string; + /** + * Log analytics workspace [Required for logs] + */ + workspaces?: outputs.SloObjectiveCountMetricTotalAzureMonitorWorkspace[]; +} + +export interface SloObjectiveCountMetricTotalAzureMonitorDimension { + /** + * The name of the previously defined alert method. + */ + name: string; + /** + * Burn rate value. + */ + value: string; +} + +export interface SloObjectiveCountMetricTotalAzureMonitorWorkspace { + /** + * Resource group of the workspace + */ + resourceGroup: string; + /** + * Subscription ID of the workspace + */ + subscriptionId: string; + /** + * ID of the workspace + */ + workspaceId: string; +} + export interface SloObjectiveCountMetricTotalBigquery { + /** + * Location of you BigQuery + */ location: string; + /** + * Project ID + */ projectId: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricTotalCloudwatch { + /** + * AccountID used with cross-account observability feature + */ + accountId?: string; + /** + * Dimensions of the metric [Optional for metrics] + */ dimensions?: outputs.SloObjectiveCountMetricTotalCloudwatchDimension[]; + /** + * JSON query + */ json?: string; + /** + * Name of the metric [Required for metrics] + */ metricName?: string; + /** + * Namespace of the metric + */ namespace?: string; + /** + * Region of the CloudWatch instance + */ region: string; + /** + * SQL query + */ sql?: string; + /** + * Metric data aggregations + */ stat?: string; } export interface SloObjectiveCountMetricTotalCloudwatchDimension { /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name: string; + /** + * Burn rate value. + */ value: string; } export interface SloObjectiveCountMetricTotalDatadog { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricTotalDynatrace { + /** + * Selector for the metrics + */ metricSelector: string; } export interface SloObjectiveCountMetricTotalElasticsearch { + /** + * Index of metrics we want to query + */ index: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricTotalGcm { + /** + * Project ID + */ projectId: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricTotalGrafanaLoki { + /** + * Query for the logs + */ logql: string; } export interface SloObjectiveCountMetricTotalGraphite { + /** + * Path to the metrics + */ metricPath: string; } +export interface SloObjectiveCountMetricTotalHoneycomb { + /** + * Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + */ + attribute?: string; + /** + * Calculation type + */ + calculation: string; +} + export interface SloObjectiveCountMetricTotalInfluxdb { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricTotalInstana { + /** + * Infrastructure metric type + */ applications?: outputs.SloObjectiveCountMetricTotalInstanaApplication[]; + /** + * Infrastructure metric type + */ infrastructures?: outputs.SloObjectiveCountMetricTotalInstanaInfrastructure[]; + /** + * Instana metric type 'application' or 'infrastructure' + */ metricType: string; } export interface SloObjectiveCountMetricTotalInstanaApplication { + /** + * Aggregation type [Required for metrics] + */ aggregation: string; + /** + * API query user passes in a JSON format + */ apiQuery: string; + /** + * Group by method + */ groupBies: outputs.SloObjectiveCountMetricTotalInstanaApplicationGroupBy[]; + /** + * Include internal + */ includeInternal?: boolean; + /** + * Include synthetic + */ includeSynthetic?: boolean; + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: string; } export interface SloObjectiveCountMetricTotalInstanaApplicationGroupBy { + /** + * Group by tag + */ tag: string; + /** + * Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + */ tagEntity: string; tagSecondLevelKey?: string; } export interface SloObjectiveCountMetricTotalInstanaInfrastructure { + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: string; + /** + * Metric retrieval method 'query' or 'snapshot' + */ metricRetrievalMethod: string; + /** + * Plugin ID + */ pluginId: string; + /** + * Query for the metrics + */ query?: string; + /** + * Snapshot ID + */ snapshotId?: string; } export interface SloObjectiveCountMetricTotalLightstep { + /** + * Optional value to filter by percentiles + */ percentile?: number; + /** + * ID of the metrics stream + */ streamId?: string; + /** + * Type of data to filter by + */ typeOfData: string; + /** + * UQL query + */ uql?: string; } export interface SloObjectiveCountMetricTotalNewrelic { + /** + * Query for the metrics + */ nrql: string; } export interface SloObjectiveCountMetricTotalOpentsdb { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricTotalPingdom { + /** + * Pingdom uptime or transaction check's ID + */ checkId: string; + /** + * Pingdom check type - uptime or transaction + */ checkType?: string; + /** + * Optional for the Uptime checks. Use it to filter the Pingdom check results by status + */ status?: string; } export interface SloObjectiveCountMetricTotalPrometheus { + /** + * Query for the metrics + */ promql: string; } export interface SloObjectiveCountMetricTotalRedshift { + /** + * Redshift custer ID + */ clusterId: string; + /** + * Database name + */ databaseName: string; + /** + * Query for the metrics + */ query: string; + /** + * Region of the CloudWatch instance + */ region: string; } export interface SloObjectiveCountMetricTotalSplunk { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveCountMetricTotalSplunkObservability { + /** + * Query for the metrics + */ program: string; } export interface SloObjectiveCountMetricTotalSumologic { + /** + * Period of data aggregation + */ quantization?: string; + /** + * Query for the metrics + */ query: string; + /** + * Aggregation function - avg, sum, min, max, count, none + */ rollup?: string; + /** + * Sumologic source - metrics or logs + */ type: string; } export interface SloObjectiveCountMetricTotalThousandeye { + /** + * ID of the test + */ testId: number; } export interface SloObjectiveRawMetric { - queries?: outputs.SloObjectiveRawMetricQuery[]; + /** + * Query for the metrics + */ + queries: outputs.SloObjectiveRawMetricQuery[]; } export interface SloObjectiveRawMetricQuery { + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + */ amazonPrometheuses?: outputs.SloObjectiveRawMetricQueryAmazonPrometheus[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + */ appdynamics?: outputs.SloObjectiveRawMetricQueryAppdynamic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + */ + azureMonitors?: outputs.SloObjectiveRawMetricQueryAzureMonitor[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + */ bigqueries?: outputs.SloObjectiveRawMetricQueryBigquery[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + */ cloudwatches?: outputs.SloObjectiveRawMetricQueryCloudwatch[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + */ datadogs?: outputs.SloObjectiveRawMetricQueryDatadog[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + */ dynatraces?: outputs.SloObjectiveRawMetricQueryDynatrace[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + */ elasticsearches?: outputs.SloObjectiveRawMetricQueryElasticsearch[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + */ gcms?: outputs.SloObjectiveRawMetricQueryGcm[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + */ grafanaLokis?: outputs.SloObjectiveRawMetricQueryGrafanaLoki[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + */ graphites?: outputs.SloObjectiveRawMetricQueryGraphite[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + */ + honeycombs?: outputs.SloObjectiveRawMetricQueryHoneycomb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + */ influxdbs?: outputs.SloObjectiveRawMetricQueryInfluxdb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + */ instanas?: outputs.SloObjectiveRawMetricQueryInstana[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + */ lightsteps?: outputs.SloObjectiveRawMetricQueryLightstep[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + */ newrelics?: outputs.SloObjectiveRawMetricQueryNewrelic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + */ opentsdbs?: outputs.SloObjectiveRawMetricQueryOpentsdb[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + */ pingdoms?: outputs.SloObjectiveRawMetricQueryPingdom[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + */ prometheuses?: outputs.SloObjectiveRawMetricQueryPrometheus[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + */ redshifts?: outputs.SloObjectiveRawMetricQueryRedshift[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + */ splunkObservabilities?: outputs.SloObjectiveRawMetricQuerySplunkObservability[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + */ splunks?: outputs.SloObjectiveRawMetricQuerySplunk[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + */ sumologics?: outputs.SloObjectiveRawMetricQuerySumologic[]; + /** + * [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + */ thousandeyes?: outputs.SloObjectiveRawMetricQueryThousandeye[]; } export interface SloObjectiveRawMetricQueryAmazonPrometheus { + /** + * Query for the metrics + */ promql: string; } export interface SloObjectiveRawMetricQueryAppdynamic { + /** + * Name of the added application + */ applicationName: string; + /** + * Path to the metrics + */ metricPath: string; } +export interface SloObjectiveRawMetricQueryAzureMonitor { + /** + * Aggregation type [Required for metrics] + */ + aggregation?: string; + /** + * Specifies source: 'metrics' or 'logs' + */ + dataType: string; + /** + * Dimensions of the metric [Optional for metrics] + */ + dimensions?: outputs.SloObjectiveRawMetricQueryAzureMonitorDimension[]; + /** + * Logs query in Kusto Query Language [Required for logs] + */ + kqlQuery?: string; + /** + * Name of the metric [Required for metrics] + */ + metricName?: string; + /** + * Namespace of the metric [Optional for metrics] + */ + metricNamespace?: string; + /** + * Identifier of the Azure Cloud resource [Required for metrics] + */ + resourceId?: string; + /** + * Log analytics workspace [Required for logs] + */ + workspaces?: outputs.SloObjectiveRawMetricQueryAzureMonitorWorkspace[]; +} + +export interface SloObjectiveRawMetricQueryAzureMonitorDimension { + /** + * The name of the previously defined alert method. + */ + name: string; + /** + * Burn rate value. + */ + value: string; +} + +export interface SloObjectiveRawMetricQueryAzureMonitorWorkspace { + /** + * Resource group of the workspace + */ + resourceGroup: string; + /** + * Subscription ID of the workspace + */ + subscriptionId: string; + /** + * ID of the workspace + */ + workspaceId: string; +} + export interface SloObjectiveRawMetricQueryBigquery { + /** + * Location of you BigQuery + */ location: string; + /** + * Project ID + */ projectId: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveRawMetricQueryCloudwatch { + /** + * AccountID used with cross-account observability feature + */ + accountId?: string; + /** + * Dimensions of the metric [Optional for metrics] + */ dimensions?: outputs.SloObjectiveRawMetricQueryCloudwatchDimension[]; + /** + * JSON query + */ json?: string; + /** + * Name of the metric [Required for metrics] + */ metricName?: string; + /** + * Namespace of the metric + */ namespace?: string; + /** + * Region of the CloudWatch instance + */ region: string; + /** + * SQL query + */ sql?: string; + /** + * Metric data aggregations + */ stat?: string; } export interface SloObjectiveRawMetricQueryCloudwatchDimension { /** - * Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + * The name of the previously defined alert method. */ name: string; + /** + * Burn rate value. + */ value: string; } export interface SloObjectiveRawMetricQueryDatadog { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveRawMetricQueryDynatrace { + /** + * Selector for the metrics + */ metricSelector: string; } export interface SloObjectiveRawMetricQueryElasticsearch { + /** + * Index of metrics we want to query + */ index: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveRawMetricQueryGcm { + /** + * Project ID + */ projectId: string; + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveRawMetricQueryGrafanaLoki { + /** + * Query for the logs + */ logql: string; } export interface SloObjectiveRawMetricQueryGraphite { + /** + * Path to the metrics + */ metricPath: string; } +export interface SloObjectiveRawMetricQueryHoneycomb { + /** + * Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + */ + attribute?: string; + /** + * Calculation type + */ + calculation: string; +} + export interface SloObjectiveRawMetricQueryInfluxdb { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveRawMetricQueryInstana { + /** + * Infrastructure metric type + */ applications?: outputs.SloObjectiveRawMetricQueryInstanaApplication[]; + /** + * Infrastructure metric type + */ infrastructures?: outputs.SloObjectiveRawMetricQueryInstanaInfrastructure[]; + /** + * Instana metric type 'application' or 'infrastructure' + */ metricType: string; } export interface SloObjectiveRawMetricQueryInstanaApplication { + /** + * Aggregation type [Required for metrics] + */ aggregation: string; + /** + * API query user passes in a JSON format + */ apiQuery: string; + /** + * Group by method + */ groupBies: outputs.SloObjectiveRawMetricQueryInstanaApplicationGroupBy[]; + /** + * Include internal + */ includeInternal?: boolean; + /** + * Include synthetic + */ includeSynthetic?: boolean; + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: string; } export interface SloObjectiveRawMetricQueryInstanaApplicationGroupBy { + /** + * Group by tag + */ tag: string; + /** + * Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + */ tagEntity: string; tagSecondLevelKey?: string; } export interface SloObjectiveRawMetricQueryInstanaInfrastructure { + /** + * Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + */ metricId: string; + /** + * Metric retrieval method 'query' or 'snapshot' + */ metricRetrievalMethod: string; + /** + * Plugin ID + */ pluginId: string; + /** + * Query for the metrics + */ query?: string; + /** + * Snapshot ID + */ snapshotId?: string; } export interface SloObjectiveRawMetricQueryLightstep { + /** + * Optional value to filter by percentiles + */ percentile?: number; + /** + * ID of the metrics stream + */ streamId?: string; + /** + * Type of data to filter by + */ typeOfData: string; + /** + * UQL query + */ uql?: string; } export interface SloObjectiveRawMetricQueryNewrelic { + /** + * Query for the metrics + */ nrql: string; } export interface SloObjectiveRawMetricQueryOpentsdb { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveRawMetricQueryPingdom { + /** + * Pingdom uptime or transaction check's ID + */ checkId: string; + /** + * Pingdom check type - uptime or transaction + */ checkType?: string; + /** + * Optional for the Uptime checks. Use it to filter the Pingdom check results by status + */ status?: string; } export interface SloObjectiveRawMetricQueryPrometheus { + /** + * Query for the metrics + */ promql: string; } export interface SloObjectiveRawMetricQueryRedshift { + /** + * Redshift custer ID + */ clusterId: string; + /** + * Database name + */ databaseName: string; + /** + * Query for the metrics + */ query: string; + /** + * Region of the CloudWatch instance + */ region: string; } export interface SloObjectiveRawMetricQuerySplunk { + /** + * Query for the metrics + */ query: string; } export interface SloObjectiveRawMetricQuerySplunkObservability { + /** + * Query for the metrics + */ program: string; } export interface SloObjectiveRawMetricQuerySumologic { + /** + * Period of data aggregation + */ quantization?: string; + /** + * Query for the metrics + */ query: string; + /** + * Aggregation function - avg, sum, min, max, count, none + */ rollup?: string; + /** + * Sumologic source - metrics or logs + */ type: string; } export interface SloObjectiveRawMetricQueryThousandeye { + /** + * ID of the test + */ testId: number; } @@ -1133,7 +2920,13 @@ export interface SloTimeWindow { } export interface SloTimeWindowCalendar { + /** + * Date of the start + */ startTime: string; + /** + * Timezone name in IANA Time Zone Database + */ timeZone: string; } diff --git a/sdk/nodejs/utilities.ts b/sdk/nodejs/utilities.ts index 785c19c..d36c510 100644 --- a/sdk/nodejs/utilities.ts +++ b/sdk/nodejs/utilities.ts @@ -2,6 +2,9 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** +import * as runtime from "@pulumi/pulumi/runtime"; +import * as pulumi from "@pulumi/pulumi"; + export function getEnv(...vars: string[]): string | undefined { for (const v of vars) { const value = process.env[v]; @@ -50,5 +53,43 @@ export function getVersion(): string { /** @internal */ export function resourceOptsDefaults(): any { - return { version: getVersion(), pluginDownloadURL: "https://github.com/piclemx/pulumi-nobl9/releases/" }; + return { version: getVersion(), pluginDownloadURL: "github://api.github.com/piclemx/pulumi-nobl9" }; +} + +/** @internal */ +export function lazyLoad(exports: any, props: string[], loadModule: any) { + for (let property of props) { + Object.defineProperty(exports, property, { + enumerable: true, + get: function() { + return loadModule()[property]; + }, + }); + } +} + +export async function callAsync( + tok: string, + props: pulumi.Inputs, + res?: pulumi.Resource, + opts?: {property?: string}, +): Promise { + const o: any = runtime.call(tok, props, res); + const value = await o.promise(true /*withUnknowns*/); + const isKnown = await o.isKnown; + const isSecret = await o.isSecret; + const problem: string|undefined = + !isKnown ? "an unknown value" + : isSecret ? "a secret value" + : undefined; + // Ingoring o.resources silently. They are typically non-empty, r.f() calls include r as a dependency. + if (problem) { + throw new Error(`Plain resource method "${tok}" incorrectly returned ${problem}. ` + + "This is an error in the provider, please report this to the provider developer."); + } + // Extract a single property if requested. + if (opts && opts.property) { + return value[opts.property]; + } + return value; } diff --git a/sdk/python/README.md b/sdk/python/README.md index 0dc21b1..8e12cf1 100644 --- a/sdk/python/README.md +++ b/sdk/python/README.md @@ -1,458 +1,49 @@ -# Terraform Bridge Provider Boilerplate +# Nobl9 Resource Provider -This repository contains boilerplate code for building a new Pulumi provider which wraps an existing Terraform provider. +The Nobl9 Resource Provider lets you manage [nobl9](https://www.pulumi.com/registry/packages/nobl9/) resources. -## Background +## Installing -This repository is part of the [guide for authoring and publishing a Pulumi Package](https://www.pulumi.com/docs/guides/pulumi-packages/how-to-author). +This package is available for several languages/platforms: -Learn about the concepts behind [Pulumi Packages](https://www.pulumi.com/docs/guides/pulumi-packages/#pulumi-packages). +### Node.js (JavaScript/TypeScript) -## Creating a Pulumi Terraform Bridge Provider - -The following instructions cover: - -- providers maintained by Pulumi (denoted with a "Pulumi Official" checkmark on the Pulumi registry) -- providers published and maintained by the Pulumi community, referred to as "third-party" providers - -We showcase a Pulumi-owned provider based on an upstream provider named `terraform-provider-foo`. Substitute appropriate values below for your use case. - -> Note: If the name of the desired Pulumi provider differs from the name of the Terraform provider, you will need to carefully distinguish between the references - see for an example. - -### Prerequisites - -Ensure the following tools are installed and present in your `$PATH`: - -- [`pulumictl`](https://github.com/pulumi/pulumictl#installation) -- [Go 1.17](https://golang.org/dl/) or 1.latest -- [NodeJS](https://nodejs.org/en/) 14.x. We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage NodeJS installations. -- [Yarn](https://yarnpkg.com/) -- [TypeScript](https://www.typescriptlang.org/) -- [Python](https://www.python.org/downloads/) (called as `python3`). For recent versions of MacOS, the system-installed version is fine. -- [.NET](https://dotnet.microsoft.com/download) - -### Creating and Initializing the Repository - -Pulumi offers this repository as a [GitHub template repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) for convenience. From this repository: - -1. Click "Use this template". -1. Set the following options: - - Owner: pulumi (third-party: your GitHub organization/username) - - Repository name: pulumi-foo (third-party: preface your repo name with "pulumi" as standard practice) - - Description: Pulumi provider for Foo - - Repository type: Public -1. Clone the generated repository. - -From the templated repository: - -1. Run the following command to update files to use the name of your provider (third-party: use your GitHub organization/username): - - ```bash - make prepare NAME=foo REPOSITORY=github.com/pulumi/pulumi-foo - ``` - - This will do the following: - - rename folders in `provider/cmd` to `pulumi-resource-foo` and `pulumi-tfgen-foo` - - replace dependencies in `provider/go.mod` to reflect your repository name - - find and replace all instances of the boilerplate `nobl9` with the `NAME` of your provider. - - Note for third-party providers: - - Make sure to set the correct GitHub organization/username in all files referencing your provider as a dependency: - - `examples/go.mod` - - `provider/resources.go` - - `sdk/go.mod` - - `provider/cmd/pulumi-resource-foo/main.go` - - `provider/cmd/pulumi-tfgen-foo/main.go` - -2. Modify `README-PROVIDER.md` to include the following (we'll rename it to `README.md` toward the end of this guide): - - Any desired build status badges. - - An introductory paragraph describing the type of resources the provider manages, e.g. "The Foo provider for Pulumi manages resources for [Foo](http://example.com/). - - In the "Installing" section, correct package names for the various SDK libraries in the languages Pulumi supports. - - In the "Configuration" section, any configurable options for the provider. These may include, but are not limited to, environment variables or options that can be set via [`pulumi config set`](https://www.pulumi.com/docs/reference/cli/pulumi_config_set/). - - In the "Reference" section, provide a link to the to-be-published documentation. - - Feel free to refer to [the Pulumi AWS provider README](https://github.com/pulumi/pulumi-aws) as an example. - -### Composing the Provider Code - Prerequisites - -Pulumi provider repositories have the following general structure: - -- `examples/` contains sample code which may optionally be included as integration tests to be run as part of a CI/CD pipeline. -- `provider/` contains the Go code used to create the provider as well as generate the SDKs in the various languages that Pulumi supports. - - `provider/cmd/pulumi-tfgen-foo` generates the Pulumi resource schema (`schema.json`), based on the Terraform provider's resources. - - `provider/cmd/pulumi-resource-foo` generates the SDKs in all supported languages from the schema, placing them in the `sdk/` folder. - - `provider/pkg/resources.go` is the location where we will define the Terraform-to-Pulumi mappings for resources. -- `sdk/` contains the generated SDK code for each of the language platforms that Pulumi supports, with each supported platform in a separate subfolder. - -1. In `provider/go.mod`, add a reference to the upstream Terraform provider in the `require` section, e.g. - - ```go - github.com/foo/terraform-provider-foo v0.4.0 - ``` - -1. In `provider/resources.go`, ensure the reference in the `import` section uses the correct Go module path, e.g.: - - ```go - github.com/foo/terraform-provider-foo/foo - ``` - -1. Download the dependencies: - - ```bash - cd provider && go mod tidy && cd - - ``` - -1. Create the schema by running the following command: - - ```bash - make tfgen - ``` - - Note warnings about unmapped resources and data sources in the command's output. We map these in the next section, e.g.: - - ```text - warning: resource foo_something not found in provider map; skipping - warning: resource foo_something_else not found in provider map; skipping - warning: data source foo_something not found in provider map; skipping - warning: data source foo_something_else not found in provider map; skipping - ``` - -## Adding Mappings, Building the Provider and SDKs - -In this section we will add the mappings that allow the interoperation between the Pulumi provider and the Terraform provider. Terraform resources map to an identically named concept in Pulumi. Terraform data sources map to plain old functions in your supported programming language of choice. Pulumi also allows provider functions and resources to be grouped into _namespaces_ to improve the cohesion of a provider's code, thereby making it easier for developers to use. If your provider has a large number of resources, consider using namespaces to improve usability. - -The following instructions all pertain to `provider/resources.go`, in the section of the code where we construct a `tfbridge.ProviderInfo` object: - -1. **Add resource mappings:** For each resource in the provider, add an entry in the `Resources` property of the `tfbridge.ProviderInfo`, e.g.: - - ```go - // Most providers will have all resources (and data sources) in the main module. - // Note the mapping from snake_case HCL naming conventions to UpperCamelCase Pulumi SDK naming conventions. - // The name of the provider is omitted from the mapped name due to the presence of namespaces in all supported Pulumi languages. - "foo_something": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "Something")}, - "foo_something_else": {Tok: tfbridge.MakeResource(mainPkg, mainMod, "SomethingElse")}, - ``` - -1. **Add CSharpName (if necessary):** Dotnet does not allow for fields named the same as the enclosing type, which sometimes results in errors during the dotnet SDK build. - If you see something like - - ```text - error CS0542: 'ApiKey': member names cannot be the same as their enclosing type [/Users/guin/go/src/github.com/pulumi/pulumi-artifactory/sdk/dotnet/Pulumi.Artifactory.csproj] - ``` - - you'll want to give your Resource a CSharpName, which can have any value that makes sense: - - ```go - "foo_something_dotnet": { - Tok: tfbridge.MakeResource(mainPkg, mainMod, "SomethingDotnet"), - Fields: map[string]*tfbridge.SchemaInfo{ - "something_dotnet": { - CSharpName: "SpecialName", - }, - }, - }, - ``` - - [See the underlying terraform-bridge code here.](https://github.com/pulumi/pulumi-terraform-bridge/blob/master/pkg/tfbridge/info.go#L168) -1. **Add data source mappings:** For each data source in the provider, add an entry in the `DataSources` property of the `tfbridge.ProviderInfo`, e.g.: - - ```go - // Note the 'get' prefix for data sources - "foo_something": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getSomething")}, - "foo_something_else": {Tok: tfbridge.MakeDataSource(mainPkg, mainMod, "getSomethingElse")}, - ``` - -1. **Add documentation mapping (sometimes needed):** If the upstream provider's repo is not a part of the `terraform-providers` GitHub organization, specify the `GitHubOrg` property of `tfbridge.ProviderInfo` to ensure that documentation is picked up by the codegen process, and that attribution for the upstream provider is correct, e.g.: - - ```go - GitHubOrg: "foo", - ``` - -1. **Add provider configuration overrides (not typically needed):** Pulumi's Terraform bridge automatically detects configuration options for the upstream provider. However, in rare cases these settings may need to be overridden, e.g. if we want to change an environment variable default from `API_KEY` to `FOO_API_KEY`. Examples of common uses cases: - - ```go - "additional_required_parameter": {}, - "additional_optional_string_parameter": { - Default: &tfbridge.DefaultInfo{ - Value: "default_value", - }, - "additional_optional_boolean_parameter": { - Default: &tfbridge.DefaultInfo{ - Value: true, - }, - // Renamed environment variables can be accounted for like so: - "apikey": { - Default: &tfbridge.DefaultInfo{ - EnvVars: []string{"FOO_API_KEY"}, - }, - ``` - -1. Build the provider binary and ensure there are no warnings about unmapped resources and no warnings about unmapped data sources: - - ```bash - make provider - ``` - - You may see warnings about documentation and examples, including "unexpected code snippets". These can be safely ignored for now. Pulumi will add additional documentation on mapping docs in a future revision of this guide. - -1. Build the SDKs in the various languages Pulumi supports: - - ```bash - make build_sdks - ``` - -1. Ensure the Golang SDK is a proper go module: - - ```bash - cd sdk && go mod tidy && cd - - ``` - - This will pull in the correct dependencies in `sdk/go.mod` as well as setting the dependency tree in `sdk/go.sum`. - -1. Finally, ensure the provider code conforms to Go standards: - - ```bash - make lint_provider - ``` - - Fix any issues found by the linter. - -**Note:** If you make revisions to code in `resources.go`, you must re-run the `make tfgen` target to regenerate the schema. -The `make tfgen` target will take the file `schema.json` and serialize it to a byte array so that it can be included in the build output. -(This is a holdover from Go 1.16, which does not have the ability to directly embed text files. We are working on removing the need for this step.) - -## Sample Program - -In this section, we will create a Pulumi program in TypeScript that utilizes the provider we created to ensure everything is working properly. - -1. Create an account with the provider's service and generate any necessary credentials, e.g. API keys. - - Email: - - Password: (Create a random password in 1Password with the maximum length and complexity allowed by the provider.) - - Ensure all secrets (passwords, generated API keys) are stored in Pulumi's 1Password vault. - -1. Copy the `pulumi-resource-foo` binary generated by `make provider` and place it in your `$PATH` (`$GOPATH/bin` is a convenient choice), e.g.: - - ```bash - cp bin/pulumi-resource-foo $GOPATH/bin - ``` - -1. Tell Yarn to use your local copy of the SDK: - - ```bash - make install_nodejs_sdk - ``` - -1. Create a new Pulumi program in the `examples/` directory, e.g.: - - ```bash - mkdir examples/my-example/ts # Change "my-example" to something more meaningful. - cd examples/my-example/ts - pulumi new typescript - # (Go through the prompts with the default values) - npm install - yarn link @pulumi/foo - ``` - -1. Create a minimal program for the provider, i.e. one that creates the smallest-footprint resource. Place this code in `index.ts`. -1. Configure any necessary environment variables for authentication, e.g `$FOO_USERNAME`, `$FOO_TOKEN`, in your local environment. -1. Ensure the program runs successfully via `pulumi up`. -1. Once the program completes successfully, verify the resource was created in the provider's UI. -1. Destroy any resources created by the program via `pulumi destroy`. - -Optionally, you may create additional examples for SDKs in other languages supported by Pulumi: - -1. Python: - - ```bash - mkdir examples/my-example/py - cd examples/my-example/py - pulumi new python - # (Go through the prompts with the default values) - source venv/bin/activate # use the virtual Python env that Pulumi sets up for you - pip install pulumi_foo - ``` - -1. Follow the steps above to verify the program runs successfully. - -## Add End-to-end Testing - -We can run integration tests on our examples using the `*_test.go` files in the `examples/` folder. - -1. Add code to `examples_nodejs_test.go` to call the example you created, e.g.: - - ```go - // Swap out MyExample and "my-example" below with the name of your integration test. - func TestAccMyExampleTs(t *testing.T) { - test := getJSBaseOptions(t). - With(integration.ProgramTestOptions{ - Dir: filepath.Join(getCwd(t), "my-example", "ts"), - }) - integration.ProgramTest(t, &test) - } - ``` - -1. Add a similar function for each example that you want to run in an integration test. For examples written in other languages, create similar files for `examples_${LANGUAGE}_test.go`. - -1. You can run these tests locally via Make: - - ```bash - make test - ``` - - You can also run each test file separately via test tags: - - ```bash - cd examples && go test -v -tags=nodejs - ``` - -## Configuring CI with GitHub Actions - -### Third-party providers - -1. Follow the instructions laid out in the [deployment templates](./deployment-templates/README-DEPLOYMENT.md). - -### Pulumi Internal - -In this section, we'll add the necessary configuration to work with GitHub Actions for Pulumi's standard CI/CD workflows for providers. - -1. Generate GitHub workflows per [the instructions in the ci-mgmt repository](https://github.com/pulumi/ci-mgmt/) and copy to `.github/` in this repository. - -1. Ensure that any required secrets are present as repository-level [secrets](https://docs.github.com/en/actions/security-guides/encrypted-secrets) in GitHub. These will be used by the integration tests during the CI/CD process. - -1. Repository settings: Toggle `Allow auto-merge` on in your provider repo to automate GitHub Actions workflow updates. - -## Final Steps - -1. Ensure all required configurations (API keys, etc.) are documented in README-PROVIDER.md. - -1. Replace this file with the README for the provider and push your changes: - - ```bash - mv README-PROVIDER.md README.md - ``` - -1. If publishing the npm package fails during the "Publish SDKs" Action, perform the following steps: - 1. Go to [NPM Packages](https://www.npmjs.com/) and sign in as pulumi-bot. - 1. Click on the bot's profile pic and navigate to "Packages". - 1. On the left, under "Organizations, click on the Pulumi organization. - 1. On the last page of the listed packages, you should see the new package. - 1. Under "Settings", set the Package Status to "public". - -Now you are ready to use the provider, cut releases, and have some well-deserved :ice_cream:! - -## Building the Provider Locally - -There are 2 ways the provider can be built locally: - -`make provider` will use the current operating system and architecture to create a binary that can be used on your PATH. - -To build the provider for another set of operating systems / architectures, the project uses [goreleaser](https://goreleaser.com/). -Goreleaser, a CLI tool, that allows a user to build a matrix of binaries. - -Create a `.goreleaser.yml` file in the root of your project: - -```yaml - -archives: -- id: archive - name_template: "{{ .Binary }}-{{ .Tag }}-{{ .Os }}-{{ .Arch }}" -before: - hooks: - - make tfgen -builds: -- binary: pulumi-resource-nobl9 - dir: provider - goarch: - - amd64 - - arm64 - goos: - - darwin - - windows - - linux - ignore: [] - ldflags: - - -X github.com/piclemx/pulumi-nobl9/provider/pkg/version.Version={{.Tag}} - main: ./cmd/pulumi-resource-nobl9/ - sort: asc - use: git -release: - disable: false -snapshot: - name_template: "{{ .Tag }}-SNAPSHOT" -``` - -To build the provider for the combination of architectures and operating systems, you can run the following CLI command: +To use from JavaScript or TypeScript in Node.js, install using either `npm`: ```bash -goreleaser build --rm-dist --skip-validate +npm install @piclemx/pulumi-nobl9 ``` -That will ensure that a list of binaries are available to use: +or `yarn`: ```bash - -▶ tree dist -dist -├── CHANGELOG.md -├── artifacts.json -├── config.yaml -├── metadata.json -├── pulumi-nobl9_darwin_amd64_v1 -│ └── pulumi-resource-nobl9 -├── pulumi-nobl9_darwin_arm64 -│ └── pulumi-resource-nobl9 -├── pulumi-nobl9_linux_amd64_v1 -│ └── pulumi-resource-nobl9 -├── pulumi-nobl9_linux_arm64 -│ └── pulumi-resource-nobl9 -├── pulumi-nobl9_windows_amd64_v1 -│ └── pulumi-resource-nobl9.exe -└── pulumi-nobl9_windows_arm64 - └── pulumi-resource-nobl9.exe +yarn add @piclemx/pulumi-nobl9 ``` -Any of the provider binaries can be used to target the correct machine architecture +### Python -## The Shim Pattern +To use from Python, install using `pip`: -If you receive the following error: `use of internal package github.com/example/terraform-provider-example/internal/provider not allowed`, you need to use -the shim model below, and replace the example item: - ```bash +pip install piclemx_pulumi_nobl9 +``` -mkdir -p provider/shim -cat <<-EOF> provider/shim/go.mod -module github.com/example/terraform-provider-example/shim - -go 1.18 - -require github.com/hashicorp/terraform-plugin-sdk/v2 v2.22.0 -require github.com/example/terraform-provider-example v1.0.0 - -EOF - -cat <<-EOF> provider/shim/shim.go -package shim +### Go -import ( - "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" - "github.com/example/terraform-provider-example/internal/provider" -) +To use from Go, use `go get` to grab the latest version of the library: -// fix provider.Provider here to match whats in internal/provider -func Provider() *schema.Provider { - return provider.Provider() -} +```bash +go get github.com/piclemx/pulumi-nobl9/sdk/go/... +``` -EOF +### .NET -cd provider/shim/ && go mod tidy && cd ../../ +To use from .NET, install using `dotnet add package`: -cat <> provider/go.mod -replace github.com/example/terraform-provider-example/shim => ./shim -require github.com/example/terraform-provider-example/shim v0.0.0 -EOF +```bash +dotnet add package Piclemx.Nobl9 +``` -cd provider && go mod tidy +## Reference -``` - +For detailed reference documentation, please visit [the Pulumi registry](https://www.pulumi.com/registry/packages/nobl9/api-docs/). diff --git a/sdk/python/pulumi_nobl9/README.md b/sdk/python/piclemx_pulumi_nobl9/README.md similarity index 100% rename from sdk/python/pulumi_nobl9/README.md rename to sdk/python/piclemx_pulumi_nobl9/README.md diff --git a/sdk/python/pulumi_nobl9/__init__.py b/sdk/python/piclemx_pulumi_nobl9/__init__.py similarity index 78% rename from sdk/python/pulumi_nobl9/__init__.py rename to sdk/python/piclemx_pulumi_nobl9/__init__.py index 782cba3..127e7f0 100644 --- a/sdk/python/pulumi_nobl9/__init__.py +++ b/sdk/python/piclemx_pulumi_nobl9/__init__.py @@ -17,11 +17,13 @@ from .alert_method_webhook import * from .alert_policy import * from .direct_appdynamics import * +from .direct_azure_monitor import * from .direct_bigquery import * from .direct_cloudwatch import * from .direct_datadog import * from .direct_dynatrace import * from .direct_gcm import * +from .direct_honeycomb import * from .direct_influxdb import * from .direct_instana import * from .direct_lightstep import * @@ -32,6 +34,7 @@ from .direct_splunk_observability import * from .direct_sumologic import * from .direct_thousandeyes import * +from .get_aws_iam_role_external_id import * from .project import * from .provider import * from .role_binding import * @@ -42,10 +45,10 @@ # Make subpackages available: if typing.TYPE_CHECKING: - import pulumi_nobl9.config as __config + import piclemx_pulumi_nobl9.config as __config config = __config else: - config = _utilities.lazy_import('pulumi_nobl9.config') + config = _utilities.lazy_import('piclemx_pulumi_nobl9.config') _utilities.register( resource_modules=""" @@ -53,7 +56,7 @@ { "pkg": "nobl9", "mod": "index/agent", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/agent:Agent": "Agent" } @@ -61,7 +64,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodDiscord", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodDiscord:AlertMethodDiscord": "AlertMethodDiscord" } @@ -69,7 +72,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodEmail", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodEmail:AlertMethodEmail": "AlertMethodEmail" } @@ -77,7 +80,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodJira", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodJira:AlertMethodJira": "AlertMethodJira" } @@ -85,7 +88,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodMsteams", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodMsteams:AlertMethodMsteams": "AlertMethodMsteams" } @@ -93,7 +96,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodOpsgenie", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodOpsgenie:AlertMethodOpsgenie": "AlertMethodOpsgenie" } @@ -101,7 +104,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodPagerduty", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodPagerduty:AlertMethodPagerduty": "AlertMethodPagerduty" } @@ -109,7 +112,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodServicenow", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodServicenow:AlertMethodServicenow": "AlertMethodServicenow" } @@ -117,7 +120,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodSlack", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodSlack:AlertMethodSlack": "AlertMethodSlack" } @@ -125,7 +128,7 @@ { "pkg": "nobl9", "mod": "index/alertMethodWebhook", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertMethodWebhook:AlertMethodWebhook": "AlertMethodWebhook" } @@ -133,7 +136,7 @@ { "pkg": "nobl9", "mod": "index/alertPolicy", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/alertPolicy:AlertPolicy": "AlertPolicy" } @@ -141,15 +144,23 @@ { "pkg": "nobl9", "mod": "index/directAppdynamics", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directAppdynamics:DirectAppdynamics": "DirectAppdynamics" } }, + { + "pkg": "nobl9", + "mod": "index/directAzureMonitor", + "fqn": "piclemx_pulumi_nobl9", + "classes": { + "nobl9:index/directAzureMonitor:DirectAzureMonitor": "DirectAzureMonitor" + } + }, { "pkg": "nobl9", "mod": "index/directBigquery", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directBigquery:DirectBigquery": "DirectBigquery" } @@ -157,7 +168,7 @@ { "pkg": "nobl9", "mod": "index/directCloudwatch", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directCloudwatch:DirectCloudwatch": "DirectCloudwatch" } @@ -165,7 +176,7 @@ { "pkg": "nobl9", "mod": "index/directDatadog", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directDatadog:DirectDatadog": "DirectDatadog" } @@ -173,7 +184,7 @@ { "pkg": "nobl9", "mod": "index/directDynatrace", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directDynatrace:DirectDynatrace": "DirectDynatrace" } @@ -181,15 +192,23 @@ { "pkg": "nobl9", "mod": "index/directGcm", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directGcm:DirectGcm": "DirectGcm" } }, + { + "pkg": "nobl9", + "mod": "index/directHoneycomb", + "fqn": "piclemx_pulumi_nobl9", + "classes": { + "nobl9:index/directHoneycomb:DirectHoneycomb": "DirectHoneycomb" + } + }, { "pkg": "nobl9", "mod": "index/directInfluxdb", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directInfluxdb:DirectInfluxdb": "DirectInfluxdb" } @@ -197,7 +216,7 @@ { "pkg": "nobl9", "mod": "index/directInstana", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directInstana:DirectInstana": "DirectInstana" } @@ -205,7 +224,7 @@ { "pkg": "nobl9", "mod": "index/directLightstep", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directLightstep:DirectLightstep": "DirectLightstep" } @@ -213,7 +232,7 @@ { "pkg": "nobl9", "mod": "index/directNewrelic", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directNewrelic:DirectNewrelic": "DirectNewrelic" } @@ -221,7 +240,7 @@ { "pkg": "nobl9", "mod": "index/directPingdom", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directPingdom:DirectPingdom": "DirectPingdom" } @@ -229,7 +248,7 @@ { "pkg": "nobl9", "mod": "index/directRedshift", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directRedshift:DirectRedshift": "DirectRedshift" } @@ -237,7 +256,7 @@ { "pkg": "nobl9", "mod": "index/directSplunk", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directSplunk:DirectSplunk": "DirectSplunk" } @@ -245,7 +264,7 @@ { "pkg": "nobl9", "mod": "index/directSplunkObservability", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directSplunkObservability:DirectSplunkObservability": "DirectSplunkObservability" } @@ -253,7 +272,7 @@ { "pkg": "nobl9", "mod": "index/directSumologic", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directSumologic:DirectSumologic": "DirectSumologic" } @@ -261,7 +280,7 @@ { "pkg": "nobl9", "mod": "index/directThousandeyes", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/directThousandeyes:DirectThousandeyes": "DirectThousandeyes" } @@ -269,7 +288,7 @@ { "pkg": "nobl9", "mod": "index/project", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/project:Project": "Project" } @@ -277,7 +296,7 @@ { "pkg": "nobl9", "mod": "index/roleBinding", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/roleBinding:RoleBinding": "RoleBinding" } @@ -285,7 +304,7 @@ { "pkg": "nobl9", "mod": "index/service", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/service:Service": "Service" } @@ -293,7 +312,7 @@ { "pkg": "nobl9", "mod": "index/slo", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "classes": { "nobl9:index/slo:Slo": "Slo" } @@ -305,7 +324,7 @@ { "pkg": "nobl9", "token": "pulumi:providers:nobl9", - "fqn": "pulumi_nobl9", + "fqn": "piclemx_pulumi_nobl9", "class": "Provider" } ] diff --git a/sdk/python/pulumi_nobl9/_inputs.py b/sdk/python/piclemx_pulumi_nobl9/_inputs.py similarity index 51% rename from sdk/python/pulumi_nobl9/_inputs.py rename to sdk/python/piclemx_pulumi_nobl9/_inputs.py index ab07b73..c026b6d 100644 --- a/sdk/python/pulumi_nobl9/_inputs.py +++ b/sdk/python/piclemx_pulumi_nobl9/_inputs.py @@ -12,6 +12,7 @@ __all__ = [ 'AgentAmazonPrometheusConfigArgs', 'AgentAppdynamicsConfigArgs', + 'AgentAzureMonitorConfigArgs', 'AgentBigqueryConfigArgs', 'AgentCloudwatchConfigArgs', 'AgentDatadogConfigArgs', @@ -20,6 +21,10 @@ 'AgentGcmConfigArgs', 'AgentGrafanaLokiConfigArgs', 'AgentGraphiteConfigArgs', + 'AgentHistoricalDataRetrievalArgs', + 'AgentHistoricalDataRetrievalDefaultDurationArgs', + 'AgentHistoricalDataRetrievalMaxDurationArgs', + 'AgentHoneycombConfigArgs', 'AgentInfluxdbConfigArgs', 'AgentInstanaConfigArgs', 'AgentLightstepConfigArgs', @@ -33,9 +38,17 @@ 'AgentSplunkObservabilityConfigArgs', 'AgentSumologicConfigArgs', 'AgentThousandeyesConfigArgs', + 'AlertMethodPagerdutySendResolutionArgs', 'AlertPolicyAlertMethodArgs', 'AlertPolicyConditionArgs', + 'DirectAppdynamicsHistoricalDataRetrievalArgs', + 'DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs', + 'DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs', 'DirectAppdynamicsQueryDelayArgs', + 'DirectAzureMonitorHistoricalDataRetrievalArgs', + 'DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs', + 'DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs', + 'DirectAzureMonitorQueryDelayArgs', 'DirectBigqueryQueryDelayArgs', 'DirectCloudwatchHistoricalDataRetrievalArgs', 'DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs', @@ -50,6 +63,10 @@ 'DirectDynatraceHistoricalDataRetrievalMaxDurationArgs', 'DirectDynatraceQueryDelayArgs', 'DirectGcmQueryDelayArgs', + 'DirectHoneycombHistoricalDataRetrievalArgs', + 'DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs', + 'DirectHoneycombHistoricalDataRetrievalMaxDurationArgs', + 'DirectHoneycombQueryDelayArgs', 'DirectInfluxdbQueryDelayArgs', 'DirectInstanaQueryDelayArgs', 'DirectLightstepHistoricalDataRetrievalArgs', @@ -71,6 +88,9 @@ 'DirectThousandeyesQueryDelayArgs', 'ProjectLabelArgs', 'ServiceLabelArgs', + 'SloAnomalyConfigArgs', + 'SloAnomalyConfigNoDataArgs', + 'SloAnomalyConfigNoDataAlertMethodArgs', 'SloAttachmentArgs', 'SloCompositeArgs', 'SloCompositeBurnRateConditionArgs', @@ -78,9 +98,43 @@ 'SloLabelArgs', 'SloObjectiveArgs', 'SloObjectiveCountMetricArgs', + 'SloObjectiveCountMetricBadArgs', + 'SloObjectiveCountMetricBadAmazonPrometheusArgs', + 'SloObjectiveCountMetricBadAppdynamicArgs', + 'SloObjectiveCountMetricBadAzureMonitorArgs', + 'SloObjectiveCountMetricBadAzureMonitorDimensionArgs', + 'SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs', + 'SloObjectiveCountMetricBadBigqueryArgs', + 'SloObjectiveCountMetricBadCloudwatchArgs', + 'SloObjectiveCountMetricBadCloudwatchDimensionArgs', + 'SloObjectiveCountMetricBadDatadogArgs', + 'SloObjectiveCountMetricBadDynatraceArgs', + 'SloObjectiveCountMetricBadElasticsearchArgs', + 'SloObjectiveCountMetricBadGcmArgs', + 'SloObjectiveCountMetricBadGrafanaLokiArgs', + 'SloObjectiveCountMetricBadGraphiteArgs', + 'SloObjectiveCountMetricBadHoneycombArgs', + 'SloObjectiveCountMetricBadInfluxdbArgs', + 'SloObjectiveCountMetricBadInstanaArgs', + 'SloObjectiveCountMetricBadInstanaApplicationArgs', + 'SloObjectiveCountMetricBadInstanaApplicationGroupByArgs', + 'SloObjectiveCountMetricBadInstanaInfrastructureArgs', + 'SloObjectiveCountMetricBadLightstepArgs', + 'SloObjectiveCountMetricBadNewrelicArgs', + 'SloObjectiveCountMetricBadOpentsdbArgs', + 'SloObjectiveCountMetricBadPingdomArgs', + 'SloObjectiveCountMetricBadPrometheusArgs', + 'SloObjectiveCountMetricBadRedshiftArgs', + 'SloObjectiveCountMetricBadSplunkArgs', + 'SloObjectiveCountMetricBadSplunkObservabilityArgs', + 'SloObjectiveCountMetricBadSumologicArgs', + 'SloObjectiveCountMetricBadThousandeyeArgs', 'SloObjectiveCountMetricGoodArgs', 'SloObjectiveCountMetricGoodAmazonPrometheusArgs', 'SloObjectiveCountMetricGoodAppdynamicArgs', + 'SloObjectiveCountMetricGoodAzureMonitorArgs', + 'SloObjectiveCountMetricGoodAzureMonitorDimensionArgs', + 'SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs', 'SloObjectiveCountMetricGoodBigqueryArgs', 'SloObjectiveCountMetricGoodCloudwatchArgs', 'SloObjectiveCountMetricGoodCloudwatchDimensionArgs', @@ -90,6 +144,7 @@ 'SloObjectiveCountMetricGoodGcmArgs', 'SloObjectiveCountMetricGoodGrafanaLokiArgs', 'SloObjectiveCountMetricGoodGraphiteArgs', + 'SloObjectiveCountMetricGoodHoneycombArgs', 'SloObjectiveCountMetricGoodInfluxdbArgs', 'SloObjectiveCountMetricGoodInstanaArgs', 'SloObjectiveCountMetricGoodInstanaApplicationArgs', @@ -108,6 +163,9 @@ 'SloObjectiveCountMetricTotalArgs', 'SloObjectiveCountMetricTotalAmazonPrometheusArgs', 'SloObjectiveCountMetricTotalAppdynamicArgs', + 'SloObjectiveCountMetricTotalAzureMonitorArgs', + 'SloObjectiveCountMetricTotalAzureMonitorDimensionArgs', + 'SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs', 'SloObjectiveCountMetricTotalBigqueryArgs', 'SloObjectiveCountMetricTotalCloudwatchArgs', 'SloObjectiveCountMetricTotalCloudwatchDimensionArgs', @@ -117,6 +175,7 @@ 'SloObjectiveCountMetricTotalGcmArgs', 'SloObjectiveCountMetricTotalGrafanaLokiArgs', 'SloObjectiveCountMetricTotalGraphiteArgs', + 'SloObjectiveCountMetricTotalHoneycombArgs', 'SloObjectiveCountMetricTotalInfluxdbArgs', 'SloObjectiveCountMetricTotalInstanaArgs', 'SloObjectiveCountMetricTotalInstanaApplicationArgs', @@ -136,6 +195,9 @@ 'SloObjectiveRawMetricQueryArgs', 'SloObjectiveRawMetricQueryAmazonPrometheusArgs', 'SloObjectiveRawMetricQueryAppdynamicArgs', + 'SloObjectiveRawMetricQueryAzureMonitorArgs', + 'SloObjectiveRawMetricQueryAzureMonitorDimensionArgs', + 'SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs', 'SloObjectiveRawMetricQueryBigqueryArgs', 'SloObjectiveRawMetricQueryCloudwatchArgs', 'SloObjectiveRawMetricQueryCloudwatchDimensionArgs', @@ -145,6 +207,7 @@ 'SloObjectiveRawMetricQueryGcmArgs', 'SloObjectiveRawMetricQueryGrafanaLokiArgs', 'SloObjectiveRawMetricQueryGraphiteArgs', + 'SloObjectiveRawMetricQueryHoneycombArgs', 'SloObjectiveRawMetricQueryInfluxdbArgs', 'SloObjectiveRawMetricQueryInstanaArgs', 'SloObjectiveRawMetricQueryInstanaApplicationArgs', @@ -223,6 +286,28 @@ def url(self, value: pulumi.Input[str]): pulumi.set(self, "url", value) +@pulumi.input_type +class AgentAzureMonitorConfigArgs: + def __init__(__self__, *, + tenant_id: pulumi.Input[str]): + """ + :param pulumi.Input[str] tenant_id: Azure Tenant Id. + """ + pulumi.set(__self__, "tenant_id", tenant_id) + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> pulumi.Input[str]: + """ + Azure Tenant Id. + """ + return pulumi.get(self, "tenant_id") + + @tenant_id.setter + def tenant_id(self, value: pulumi.Input[str]): + pulumi.set(self, "tenant_id", value) + + @pulumi.input_type class AgentBigqueryConfigArgs: def __init__(__self__): @@ -351,6 +436,123 @@ def url(self, value: pulumi.Input[str]): pulumi.set(self, "url", value) +@pulumi.input_type +class AgentHistoricalDataRetrievalArgs: + def __init__(__self__, *, + default_durations: pulumi.Input[Sequence[pulumi.Input['AgentHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['AgentHistoricalDataRetrievalMaxDurationArgs']]]): + """ + :param pulumi.Input[Sequence[pulumi.Input['AgentHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['AgentHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + """ + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['AgentHistoricalDataRetrievalDefaultDurationArgs']]]: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") + + @default_durations.setter + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['AgentHistoricalDataRetrievalDefaultDurationArgs']]]): + pulumi.set(self, "default_durations", value) + + @property + @pulumi.getter(name="maxDurations") + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['AgentHistoricalDataRetrievalMaxDurationArgs']]]: + """ + Defines the maximum period for which data can be retrieved. + """ + return pulumi.get(self, "max_durations") + + @max_durations.setter + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['AgentHistoricalDataRetrievalMaxDurationArgs']]]): + pulumi.set(self, "max_durations", value) + + +@pulumi.input_type +class AgentHistoricalDataRetrievalDefaultDurationArgs: + def __init__(__self__, *, + unit: pulumi.Input[str], + value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class AgentHistoricalDataRetrievalMaxDurationArgs: + def __init__(__self__, *, + unit: pulumi.Input[str], + value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class AgentHoneycombConfigArgs: + def __init__(__self__): + pass + + @pulumi.input_type class AgentInfluxdbConfigArgs: def __init__(__self__, *, @@ -399,13 +601,17 @@ def url(self, value: pulumi.Input[str]): class AgentLightstepConfigArgs: def __init__(__self__, *, organization: pulumi.Input[str], - project: pulumi.Input[str]): + project: pulumi.Input[str], + url: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] organization: Organization name registered in Lightstep. :param pulumi.Input[str] project: Name of the Lightstep project. + :param pulumi.Input[str] url: Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. """ pulumi.set(__self__, "organization", organization) pulumi.set(__self__, "project", project) + if url is not None: + pulumi.set(__self__, "url", url) @property @pulumi.getter @@ -431,6 +637,18 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) + @property + @pulumi.getter + def url(self) -> Optional[pulumi.Input[str]]: + """ + Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + """ + return pulumi.get(self, "url") + + @url.setter + def url(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "url", value) + @pulumi.input_type class AgentNewrelicConfigArgs: @@ -619,6 +837,29 @@ def __init__(__self__): pass +@pulumi.input_type +class AlertMethodPagerdutySendResolutionArgs: + def __init__(__self__, *, + message: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] message: A message that will be attached to your 'all clear' notification. + """ + if message is not None: + pulumi.set(__self__, "message", message) + + @property + @pulumi.getter + def message(self) -> Optional[pulumi.Input[str]]: + """ + A message that will be attached to your 'all clear' notification. + """ + return pulumi.get(self, "message") + + @message.setter + def message(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "message", value) + + @pulumi.input_type class AlertPolicyAlertMethodArgs: def __init__(__self__, *, @@ -661,16 +902,20 @@ def project(self, value: Optional[pulumi.Input[str]]): class AlertPolicyConditionArgs: def __init__(__self__, *, measurement: pulumi.Input[str], + alerting_window: Optional[pulumi.Input[str]] = None, lasts_for: Optional[pulumi.Input[str]] = None, value: Optional[pulumi.Input[float]] = None, value_string: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] measurement: One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + :param pulumi.Input[str] measurement: One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. + :param pulumi.Input[str] alerting_window: Duration over which the burn rate is evaluated. :param pulumi.Input[str] lasts_for: Indicates how long a given condition needs to be valid to mark the condition as true. :param pulumi.Input[float] value: For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned. - :param pulumi.Input[str] value_string: Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + :param pulumi.Input[str] value_string: Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. """ pulumi.set(__self__, "measurement", measurement) + if alerting_window is not None: + pulumi.set(__self__, "alerting_window", alerting_window) if lasts_for is not None: pulumi.set(__self__, "lasts_for", lasts_for) if value is not None: @@ -682,7 +927,7 @@ def __init__(__self__, *, @pulumi.getter def measurement(self) -> pulumi.Input[str]: """ - One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. """ return pulumi.get(self, "measurement") @@ -690,6 +935,18 @@ def measurement(self) -> pulumi.Input[str]: def measurement(self, value: pulumi.Input[str]): pulumi.set(self, "measurement", value) + @property + @pulumi.getter(name="alertingWindow") + def alerting_window(self) -> Optional[pulumi.Input[str]]: + """ + Duration over which the burn rate is evaluated. + """ + return pulumi.get(self, "alerting_window") + + @alerting_window.setter + def alerting_window(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "alerting_window", value) + @property @pulumi.getter(name="lastsFor") def lasts_for(self) -> Optional[pulumi.Input[str]]: @@ -718,7 +975,7 @@ def value(self, value: Optional[pulumi.Input[float]]): @pulumi.getter(name="valueString") def value_string(self) -> Optional[pulumi.Input[str]]: """ - Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. """ return pulumi.get(self, "value_string") @@ -728,12 +985,49 @@ def value_string(self, value: Optional[pulumi.Input[str]]): @pulumi.input_type -class DirectAppdynamicsQueryDelayArgs: +class DirectAppdynamicsHistoricalDataRetrievalArgs: + def __init__(__self__, *, + default_durations: pulumi.Input[Sequence[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs']]]): + """ + :param pulumi.Input[Sequence[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + """ + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs']]]: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") + + @default_durations.setter + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs']]]): + pulumi.set(self, "default_durations", value) + + @property + @pulumi.getter(name="maxDurations") + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs']]]: + """ + Defines the maximum period for which data can be retrieved. + """ + return pulumi.get(self, "max_durations") + + @max_durations.setter + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs']]]): + pulumi.set(self, "max_durations", value) + + +@pulumi.input_type +class DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): """ - :param pulumi.Input[str] unit: Must be one of Minute or Second. + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. """ pulumi.set(__self__, "unit", unit) @@ -743,7 +1037,7 @@ def __init__(__self__, *, @pulumi.getter def unit(self) -> pulumi.Input[str]: """ - Must be one of Minute or Second. + Must be one of Minute, Hour, or Day. """ return pulumi.get(self, "unit") @@ -765,7 +1059,44 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectBigqueryQueryDelayArgs: +class DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs: + def __init__(__self__, *, + unit: pulumi.Input[str], + value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class DirectAppdynamicsQueryDelayArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): @@ -802,53 +1133,60 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectCloudwatchHistoricalDataRetrievalArgs: +class DirectAzureMonitorHistoricalDataRetrievalArgs: def __init__(__self__, *, - default_durations: pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs']]], - max_durations: pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs']]]): + default_durations: pulumi.Input[Sequence[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs']]]): """ - :param pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. - :param pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + :param pulumi.Input[Sequence[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs']]]: + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs']]]: """ Used by default for any SLOs connected to this data source. """ return pulumi.get(self, "default_durations") @default_durations.setter - def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs']]]): + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs']]]): pulumi.set(self, "default_durations", value) @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs']]]: + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs']]]: """ Defines the maximum period for which data can be retrieved. """ return pulumi.get(self, "max_durations") @max_durations.setter - def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs']]]): + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs']]]): pulumi.set(self, "max_durations", value) @pulumi.input_type -class DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs: +class DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -858,6 +1196,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -866,16 +1207,23 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs: +class DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -885,6 +1233,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -893,7 +1244,7 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectCloudwatchQueryDelayArgs: +class DirectAzureMonitorQueryDelayArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): @@ -930,53 +1281,97 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectDatadogHistoricalDataRetrievalArgs: +class DirectBigqueryQueryDelayArgs: def __init__(__self__, *, - default_durations: pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs']]], - max_durations: pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalMaxDurationArgs']]]): + unit: pulumi.Input[str], + value: pulumi.Input[int]): """ - :param pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. - :param pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + :param pulumi.Input[str] unit: Must be one of Minute or Second. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. """ - pulumi.set(__self__, "default_durations", default_durations) - pulumi.set(__self__, "max_durations", max_durations) + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) @property - @pulumi.getter(name="defaultDurations") - def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs']]]: + @pulumi.getter + def unit(self) -> pulumi.Input[str]: """ - Used by default for any SLOs connected to this data source. + Must be one of Minute or Second. """ - return pulumi.get(self, "default_durations") + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class DirectCloudwatchHistoricalDataRetrievalArgs: + def __init__(__self__, *, + default_durations: pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs']]]): + """ + :param pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + """ + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs']]]: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") @default_durations.setter - def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs']]]): + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs']]]): pulumi.set(self, "default_durations", value) @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalMaxDurationArgs']]]: + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs']]]: """ Defines the maximum period for which data can be retrieved. """ return pulumi.get(self, "max_durations") @max_durations.setter - def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalMaxDurationArgs']]]): + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs']]]): pulumi.set(self, "max_durations", value) @pulumi.input_type -class DirectDatadogHistoricalDataRetrievalDefaultDurationArgs: +class DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -986,6 +1381,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -994,16 +1392,23 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectDatadogHistoricalDataRetrievalMaxDurationArgs: +class DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1013,6 +1418,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1021,7 +1429,7 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectDatadogQueryDelayArgs: +class DirectCloudwatchQueryDelayArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): @@ -1058,53 +1466,60 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectDynatraceHistoricalDataRetrievalArgs: +class DirectDatadogHistoricalDataRetrievalArgs: def __init__(__self__, *, - default_durations: pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs']]], - max_durations: pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs']]]): + default_durations: pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalMaxDurationArgs']]]): """ - :param pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. - :param pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + :param pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs']]]: + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs']]]: """ Used by default for any SLOs connected to this data source. """ return pulumi.get(self, "default_durations") @default_durations.setter - def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs']]]): + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs']]]): pulumi.set(self, "default_durations", value) @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs']]]: + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalMaxDurationArgs']]]: """ Defines the maximum period for which data can be retrieved. """ return pulumi.get(self, "max_durations") @max_durations.setter - def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs']]]): + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectDatadogHistoricalDataRetrievalMaxDurationArgs']]]): pulumi.set(self, "max_durations", value) @pulumi.input_type -class DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs: +class DirectDatadogHistoricalDataRetrievalDefaultDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1114,6 +1529,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1122,16 +1540,23 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectDynatraceHistoricalDataRetrievalMaxDurationArgs: +class DirectDatadogHistoricalDataRetrievalMaxDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1141,6 +1566,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1149,7 +1577,7 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectDynatraceQueryDelayArgs: +class DirectDatadogQueryDelayArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): @@ -1186,12 +1614,49 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectGcmQueryDelayArgs: +class DirectDynatraceHistoricalDataRetrievalArgs: + def __init__(__self__, *, + default_durations: pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs']]]): + """ + :param pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + """ + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs']]]: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") + + @default_durations.setter + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs']]]): + pulumi.set(self, "default_durations", value) + + @property + @pulumi.getter(name="maxDurations") + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs']]]: + """ + Defines the maximum period for which data can be retrieved. + """ + return pulumi.get(self, "max_durations") + + @max_durations.setter + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs']]]): + pulumi.set(self, "max_durations", value) + + +@pulumi.input_type +class DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): """ - :param pulumi.Input[str] unit: Must be one of Minute or Second. + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. """ pulumi.set(__self__, "unit", unit) @@ -1201,7 +1666,7 @@ def __init__(__self__, *, @pulumi.getter def unit(self) -> pulumi.Input[str]: """ - Must be one of Minute or Second. + Must be one of Minute, Hour, or Day. """ return pulumi.get(self, "unit") @@ -1223,7 +1688,44 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectInfluxdbQueryDelayArgs: +class DirectDynatraceHistoricalDataRetrievalMaxDurationArgs: + def __init__(__self__, *, + unit: pulumi.Input[str], + value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class DirectDynatraceQueryDelayArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): @@ -1260,7 +1762,7 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectInstanaQueryDelayArgs: +class DirectGcmQueryDelayArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): @@ -1297,53 +1799,60 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectLightstepHistoricalDataRetrievalArgs: +class DirectHoneycombHistoricalDataRetrievalArgs: def __init__(__self__, *, - default_durations: pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs']]], - max_durations: pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalMaxDurationArgs']]]): + default_durations: pulumi.Input[Sequence[pulumi.Input['DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['DirectHoneycombHistoricalDataRetrievalMaxDurationArgs']]]): """ - :param pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. - :param pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + :param pulumi.Input[Sequence[pulumi.Input['DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['DirectHoneycombHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs']]]: + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs']]]: """ Used by default for any SLOs connected to this data source. """ return pulumi.get(self, "default_durations") @default_durations.setter - def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs']]]): + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs']]]): pulumi.set(self, "default_durations", value) @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalMaxDurationArgs']]]: + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectHoneycombHistoricalDataRetrievalMaxDurationArgs']]]: """ Defines the maximum period for which data can be retrieved. """ return pulumi.get(self, "max_durations") @max_durations.setter - def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalMaxDurationArgs']]]): + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectHoneycombHistoricalDataRetrievalMaxDurationArgs']]]): pulumi.set(self, "max_durations", value) @pulumi.input_type -class DirectLightstepHistoricalDataRetrievalDefaultDurationArgs: +class DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1353,6 +1862,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1361,16 +1873,23 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectLightstepHistoricalDataRetrievalMaxDurationArgs: +class DirectHoneycombHistoricalDataRetrievalMaxDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1380,6 +1899,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1388,7 +1910,7 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectLightstepQueryDelayArgs: +class DirectHoneycombQueryDelayArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): @@ -1425,53 +1947,282 @@ def value(self, value: pulumi.Input[int]): @pulumi.input_type -class DirectNewrelicHistoricalDataRetrievalArgs: +class DirectInfluxdbQueryDelayArgs: def __init__(__self__, *, - default_durations: pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs']]], - max_durations: pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs']]]): + unit: pulumi.Input[str], + value: pulumi.Input[int]): """ - :param pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. - :param pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + :param pulumi.Input[str] unit: Must be one of Minute or Second. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. """ - pulumi.set(__self__, "default_durations", default_durations) - pulumi.set(__self__, "max_durations", max_durations) + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) @property - @pulumi.getter(name="defaultDurations") - def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs']]]: + @pulumi.getter + def unit(self) -> pulumi.Input[str]: """ - Used by default for any SLOs connected to this data source. + Must be one of Minute or Second. """ - return pulumi.get(self, "default_durations") + return pulumi.get(self, "unit") - @default_durations.setter - def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs']]]): - pulumi.set(self, "default_durations", value) + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) @property - @pulumi.getter(name="maxDurations") - def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs']]]: + @pulumi.getter + def value(self) -> pulumi.Input[int]: """ - Defines the maximum period for which data can be retrieved. + Must be an integer greater than or equal to 0. """ - return pulumi.get(self, "max_durations") + return pulumi.get(self, "value") - @max_durations.setter - def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs']]]): - pulumi.set(self, "max_durations", value) + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) @pulumi.input_type -class DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs: +class DirectInstanaQueryDelayArgs: + def __init__(__self__, *, + unit: pulumi.Input[str], + value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute or Second. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute or Second. + """ + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class DirectLightstepHistoricalDataRetrievalArgs: + def __init__(__self__, *, + default_durations: pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalMaxDurationArgs']]]): + """ + :param pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + """ + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs']]]: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") + + @default_durations.setter + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs']]]): + pulumi.set(self, "default_durations", value) + + @property + @pulumi.getter(name="maxDurations") + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalMaxDurationArgs']]]: + """ + Defines the maximum period for which data can be retrieved. + """ + return pulumi.get(self, "max_durations") + + @max_durations.setter + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectLightstepHistoricalDataRetrievalMaxDurationArgs']]]): + pulumi.set(self, "max_durations", value) + + +@pulumi.input_type +class DirectLightstepHistoricalDataRetrievalDefaultDurationArgs: + def __init__(__self__, *, + unit: pulumi.Input[str], + value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class DirectLightstepHistoricalDataRetrievalMaxDurationArgs: + def __init__(__self__, *, + unit: pulumi.Input[str], + value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class DirectLightstepQueryDelayArgs: + def __init__(__self__, *, + unit: pulumi.Input[str], + value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute or Second. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute or Second. + """ + return pulumi.get(self, "unit") + + @unit.setter + def unit(self, value: pulumi.Input[str]): + pulumi.set(self, "unit", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class DirectNewrelicHistoricalDataRetrievalArgs: + def __init__(__self__, *, + default_durations: pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs']]], + max_durations: pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs']]]): + """ + :param pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs']]] default_durations: Used by default for any SLOs connected to this data source. + :param pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs']]] max_durations: Defines the maximum period for which data can be retrieved. + """ + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs']]]: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") + + @default_durations.setter + def default_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs']]]): + pulumi.set(self, "default_durations", value) + + @property + @pulumi.getter(name="maxDurations") + def max_durations(self) -> pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs']]]: + """ + Defines the maximum period for which data can be retrieved. + """ + return pulumi.get(self, "max_durations") + + @max_durations.setter + def max_durations(self, value: pulumi.Input[Sequence[pulumi.Input['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs']]]): + pulumi.set(self, "max_durations", value) + + +@pulumi.input_type +class DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1481,6 +2232,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1493,12 +2247,19 @@ class DirectNewrelicHistoricalDataRetrievalMaxDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1508,6 +2269,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1668,12 +2432,19 @@ class DirectSplunkHistoricalDataRetrievalDefaultDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1683,6 +2454,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1695,12 +2469,19 @@ class DirectSplunkHistoricalDataRetrievalMaxDurationArgs: def __init__(__self__, *, unit: pulumi.Input[str], value: pulumi.Input[int]): + """ + :param pulumi.Input[str] unit: Must be one of Minute, Hour, or Day. + :param pulumi.Input[int] value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> pulumi.Input[str]: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @unit.setter @@ -1710,6 +2491,9 @@ def unit(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[int]: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @value.setter @@ -1940,13 +2724,94 @@ def values(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): @pulumi.input_type -class SloAttachmentArgs: +class SloAnomalyConfigArgs: def __init__(__self__, *, - url: pulumi.Input[str], - display_name: Optional[pulumi.Input[str]] = None): + no_data: pulumi.Input['SloAnomalyConfigNoDataArgs']): """ - :param pulumi.Input[str] url: URL to the attachment - :param pulumi.Input[str] display_name: Name displayed for the attachment. Max. length: 63 characters. + :param pulumi.Input['SloAnomalyConfigNoDataArgs'] no_data: Alert Policies attached to SLO + """ + pulumi.set(__self__, "no_data", no_data) + + @property + @pulumi.getter(name="noData") + def no_data(self) -> pulumi.Input['SloAnomalyConfigNoDataArgs']: + """ + Alert Policies attached to SLO + """ + return pulumi.get(self, "no_data") + + @no_data.setter + def no_data(self, value: pulumi.Input['SloAnomalyConfigNoDataArgs']): + pulumi.set(self, "no_data", value) + + +@pulumi.input_type +class SloAnomalyConfigNoDataArgs: + def __init__(__self__, *, + alert_methods: pulumi.Input[Sequence[pulumi.Input['SloAnomalyConfigNoDataAlertMethodArgs']]]): + """ + :param pulumi.Input[Sequence[pulumi.Input['SloAnomalyConfigNoDataAlertMethodArgs']]] alert_methods: Alert methods attached to Anomaly Config + """ + pulumi.set(__self__, "alert_methods", alert_methods) + + @property + @pulumi.getter(name="alertMethods") + def alert_methods(self) -> pulumi.Input[Sequence[pulumi.Input['SloAnomalyConfigNoDataAlertMethodArgs']]]: + """ + Alert methods attached to Anomaly Config + """ + return pulumi.get(self, "alert_methods") + + @alert_methods.setter + def alert_methods(self, value: pulumi.Input[Sequence[pulumi.Input['SloAnomalyConfigNoDataAlertMethodArgs']]]): + pulumi.set(self, "alert_methods", value) + + +@pulumi.input_type +class SloAnomalyConfigNoDataAlertMethodArgs: + def __init__(__self__, *, + name: pulumi.Input[str], + project: pulumi.Input[str]): + """ + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "project", project) + + @property + @pulumi.getter + def name(self) -> pulumi.Input[str]: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: pulumi.Input[str]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def project(self) -> pulumi.Input[str]: + """ + Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + """ + return pulumi.get(self, "project") + + @project.setter + def project(self, value: pulumi.Input[str]): + pulumi.set(self, "project", value) + + +@pulumi.input_type +class SloAttachmentArgs: + def __init__(__self__, *, + url: pulumi.Input[str], + display_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] url: URL to the attachment + :param pulumi.Input[str] display_name: Name displayed for the attachment. Max. length: 63 characters. """ pulumi.set(__self__, "url", url) if display_name is not None: @@ -2020,12 +2885,19 @@ class SloCompositeBurnRateConditionArgs: def __init__(__self__, *, op: pulumi.Input[str], value: pulumi.Input[float]): + """ + :param pulumi.Input[str] op: Type of logical operation + :param pulumi.Input[float] value: Burn rate value. + """ pulumi.set(__self__, "op", op) pulumi.set(__self__, "value", value) @property @pulumi.getter def op(self) -> pulumi.Input[str]: + """ + Type of logical operation + """ return pulumi.get(self, "op") @op.setter @@ -2035,6 +2907,9 @@ def op(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[float]: + """ + Burn rate value. + """ return pulumi.get(self, "value") @value.setter @@ -2148,7 +3023,7 @@ def __init__(__self__, *, :param pulumi.Input[str] display_name: Name to be displayed :param pulumi.Input[float] target: Designated value :param pulumi.Input[float] value: Value - :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricArgs']]] count_metrics: Compares two time series, indicating the ratio of the count of good values to total values. + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricArgs']]] count_metrics: Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. :param pulumi.Input[str] name: Objective's name. This field is computed if not provided. :param pulumi.Input[str] op: Type of logical operation :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricArgs']]] raw_metrics: Raw data is used to compare objective values. @@ -2208,7 +3083,7 @@ def value(self, value: pulumi.Input[float]): @pulumi.getter(name="countMetrics") def count_metrics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricArgs']]]]: """ - Compares two time series, indicating the ratio of the count of good values to total values. + Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. """ return pulumi.get(self, "count_metrics") @@ -2269,71 +3144,130 @@ def time_slice_target(self, value: Optional[pulumi.Input[float]]): class SloObjectiveCountMetricArgs: def __init__(__self__, *, incremental: pulumi.Input[bool], - goods: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodArgs']]]] = None, - totals: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalArgs']]]] = None): + totals: pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalArgs']]], + bads: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadArgs']]]] = None, + goods: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodArgs']]]] = None): + """ + :param pulumi.Input[bool] incremental: Should the metrics be incrementing or not + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalArgs']]] totals: Configuration for metric source + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadArgs']]] bads: Configuration for bad time series metrics. + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodArgs']]] goods: Configuration for good time series metrics. + """ pulumi.set(__self__, "incremental", incremental) + pulumi.set(__self__, "totals", totals) + if bads is not None: + pulumi.set(__self__, "bads", bads) if goods is not None: pulumi.set(__self__, "goods", goods) - if totals is not None: - pulumi.set(__self__, "totals", totals) @property @pulumi.getter def incremental(self) -> pulumi.Input[bool]: + """ + Should the metrics be incrementing or not + """ return pulumi.get(self, "incremental") @incremental.setter def incremental(self, value: pulumi.Input[bool]): pulumi.set(self, "incremental", value) + @property + @pulumi.getter + def totals(self) -> pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalArgs']]]: + """ + Configuration for metric source + """ + return pulumi.get(self, "totals") + + @totals.setter + def totals(self, value: pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalArgs']]]): + pulumi.set(self, "totals", value) + + @property + @pulumi.getter + def bads(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadArgs']]]]: + """ + Configuration for bad time series metrics. + """ + return pulumi.get(self, "bads") + + @bads.setter + def bads(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadArgs']]]]): + pulumi.set(self, "bads", value) + @property @pulumi.getter def goods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodArgs']]]]: + """ + Configuration for good time series metrics. + """ return pulumi.get(self, "goods") @goods.setter def goods(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodArgs']]]]): pulumi.set(self, "goods", value) - @property - @pulumi.getter - def totals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalArgs']]]]: - return pulumi.get(self, "totals") - - @totals.setter - def totals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalArgs']]]]): - pulumi.set(self, "totals", value) - @pulumi.input_type -class SloObjectiveCountMetricGoodArgs: - def __init__(__self__, *, - amazon_prometheuses: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAmazonPrometheusArgs']]]] = None, - appdynamics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAppdynamicArgs']]]] = None, - bigqueries: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodBigqueryArgs']]]] = None, - cloudwatches: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchArgs']]]] = None, - datadogs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDatadogArgs']]]] = None, - dynatraces: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDynatraceArgs']]]] = None, - elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodElasticsearchArgs']]]] = None, - gcms: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGcmArgs']]]] = None, - grafana_lokis: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGrafanaLokiArgs']]]] = None, - graphites: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGraphiteArgs']]]] = None, - influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInfluxdbArgs']]]] = None, - instanas: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaArgs']]]] = None, - lightsteps: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodLightstepArgs']]]] = None, - newrelics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodNewrelicArgs']]]] = None, - opentsdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodOpentsdbArgs']]]] = None, - pingdoms: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodPingdomArgs']]]] = None, - prometheuses: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodPrometheusArgs']]]] = None, - redshifts: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodRedshiftArgs']]]] = None, - splunk_observabilities: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSplunkObservabilityArgs']]]] = None, - splunks: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSplunkArgs']]]] = None, - sumologics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSumologicArgs']]]] = None, - thousandeyes: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodThousandeyeArgs']]]] = None): +class SloObjectiveCountMetricBadArgs: + def __init__(__self__, *, + amazon_prometheuses: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAmazonPrometheusArgs']]]] = None, + appdynamics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAppdynamicArgs']]]] = None, + azure_monitors: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorArgs']]]] = None, + bigqueries: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadBigqueryArgs']]]] = None, + cloudwatches: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadCloudwatchArgs']]]] = None, + datadogs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadDatadogArgs']]]] = None, + dynatraces: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadDynatraceArgs']]]] = None, + elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadElasticsearchArgs']]]] = None, + gcms: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGcmArgs']]]] = None, + grafana_lokis: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGrafanaLokiArgs']]]] = None, + graphites: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGraphiteArgs']]]] = None, + honeycombs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadHoneycombArgs']]]] = None, + influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInfluxdbArgs']]]] = None, + instanas: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaArgs']]]] = None, + lightsteps: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadLightstepArgs']]]] = None, + newrelics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadNewrelicArgs']]]] = None, + opentsdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadOpentsdbArgs']]]] = None, + pingdoms: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadPingdomArgs']]]] = None, + prometheuses: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadPrometheusArgs']]]] = None, + redshifts: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadRedshiftArgs']]]] = None, + splunk_observabilities: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSplunkObservabilityArgs']]]] = None, + splunks: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSplunkArgs']]]] = None, + sumologics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSumologicArgs']]]] = None, + thousandeyes: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadThousandeyeArgs']]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAmazonPrometheusArgs']]] amazon_prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAppdynamicArgs']]] appdynamics: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorArgs']]] azure_monitors: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadBigqueryArgs']]] bigqueries: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadCloudwatchArgs']]] cloudwatches: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadDatadogArgs']]] datadogs: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadDynatraceArgs']]] dynatraces: [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadElasticsearchArgs']]] elasticsearches: [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGcmArgs']]] gcms: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGrafanaLokiArgs']]] grafana_lokis: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGraphiteArgs']]] graphites: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadHoneycombArgs']]] honeycombs: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInfluxdbArgs']]] influxdbs: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaArgs']]] instanas: [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadLightstepArgs']]] lightsteps: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadNewrelicArgs']]] newrelics: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadOpentsdbArgs']]] opentsdbs: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadPingdomArgs']]] pingdoms: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadPrometheusArgs']]] prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadRedshiftArgs']]] redshifts: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSplunkObservabilityArgs']]] splunk_observabilities: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSplunkArgs']]] splunks: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSumologicArgs']]] sumologics: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadThousandeyeArgs']]] thousandeyes: [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ if amazon_prometheuses is not None: pulumi.set(__self__, "amazon_prometheuses", amazon_prometheuses) if appdynamics is not None: pulumi.set(__self__, "appdynamics", appdynamics) + if azure_monitors is not None: + pulumi.set(__self__, "azure_monitors", azure_monitors) if bigqueries is not None: pulumi.set(__self__, "bigqueries", bigqueries) if cloudwatches is not None: @@ -2350,6 +3284,8 @@ def __init__(__self__, *, pulumi.set(__self__, "grafana_lokis", grafana_lokis) if graphites is not None: pulumi.set(__self__, "graphites", graphites) + if honeycombs is not None: + pulumi.set(__self__, "honeycombs", honeycombs) if influxdbs is not None: pulumi.set(__self__, "influxdbs", influxdbs) if instanas is not None: @@ -2377,115 +3313,1974 @@ def __init__(__self__, *, @property @pulumi.getter(name="amazonPrometheuses") - def amazon_prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAmazonPrometheusArgs']]]]: + def amazon_prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAmazonPrometheusArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + """ return pulumi.get(self, "amazon_prometheuses") @amazon_prometheuses.setter - def amazon_prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAmazonPrometheusArgs']]]]): + def amazon_prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAmazonPrometheusArgs']]]]): pulumi.set(self, "amazon_prometheuses", value) @property @pulumi.getter - def appdynamics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAppdynamicArgs']]]]: + def appdynamics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAppdynamicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + """ return pulumi.get(self, "appdynamics") @appdynamics.setter - def appdynamics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAppdynamicArgs']]]]): + def appdynamics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAppdynamicArgs']]]]): pulumi.set(self, "appdynamics", value) + @property + @pulumi.getter(name="azureMonitors") + def azure_monitors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + """ + return pulumi.get(self, "azure_monitors") + + @azure_monitors.setter + def azure_monitors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorArgs']]]]): + pulumi.set(self, "azure_monitors", value) + @property @pulumi.getter - def bigqueries(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodBigqueryArgs']]]]: + def bigqueries(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadBigqueryArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + """ return pulumi.get(self, "bigqueries") @bigqueries.setter - def bigqueries(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodBigqueryArgs']]]]): + def bigqueries(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadBigqueryArgs']]]]): pulumi.set(self, "bigqueries", value) @property @pulumi.getter - def cloudwatches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchArgs']]]]: + def cloudwatches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadCloudwatchArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + """ return pulumi.get(self, "cloudwatches") @cloudwatches.setter - def cloudwatches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchArgs']]]]): + def cloudwatches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadCloudwatchArgs']]]]): pulumi.set(self, "cloudwatches", value) @property @pulumi.getter - def datadogs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDatadogArgs']]]]: + def datadogs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadDatadogArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + """ return pulumi.get(self, "datadogs") @datadogs.setter - def datadogs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDatadogArgs']]]]): + def datadogs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadDatadogArgs']]]]): pulumi.set(self, "datadogs", value) @property @pulumi.getter - def dynatraces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDynatraceArgs']]]]: + def dynatraces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadDynatraceArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + """ return pulumi.get(self, "dynatraces") @dynatraces.setter - def dynatraces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDynatraceArgs']]]]): + def dynatraces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadDynatraceArgs']]]]): pulumi.set(self, "dynatraces", value) @property @pulumi.getter - def elasticsearches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodElasticsearchArgs']]]]: + def elasticsearches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadElasticsearchArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + """ return pulumi.get(self, "elasticsearches") @elasticsearches.setter - def elasticsearches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodElasticsearchArgs']]]]): + def elasticsearches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadElasticsearchArgs']]]]): pulumi.set(self, "elasticsearches", value) @property @pulumi.getter - def gcms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGcmArgs']]]]: + def gcms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGcmArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + """ return pulumi.get(self, "gcms") @gcms.setter - def gcms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGcmArgs']]]]): + def gcms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGcmArgs']]]]): pulumi.set(self, "gcms", value) @property @pulumi.getter(name="grafanaLokis") - def grafana_lokis(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGrafanaLokiArgs']]]]: + def grafana_lokis(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGrafanaLokiArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + """ return pulumi.get(self, "grafana_lokis") @grafana_lokis.setter - def grafana_lokis(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGrafanaLokiArgs']]]]): + def grafana_lokis(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGrafanaLokiArgs']]]]): pulumi.set(self, "grafana_lokis", value) @property @pulumi.getter - def graphites(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGraphiteArgs']]]]: + def graphites(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGraphiteArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + """ return pulumi.get(self, "graphites") @graphites.setter - def graphites(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGraphiteArgs']]]]): + def graphites(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadGraphiteArgs']]]]): pulumi.set(self, "graphites", value) @property @pulumi.getter - def influxdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInfluxdbArgs']]]]: + def honeycombs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadHoneycombArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + """ + return pulumi.get(self, "honeycombs") + + @honeycombs.setter + def honeycombs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadHoneycombArgs']]]]): + pulumi.set(self, "honeycombs", value) + + @property + @pulumi.getter + def influxdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInfluxdbArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + """ return pulumi.get(self, "influxdbs") @influxdbs.setter - def influxdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInfluxdbArgs']]]]): + def influxdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInfluxdbArgs']]]]): pulumi.set(self, "influxdbs", value) @property @pulumi.getter - def instanas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaArgs']]]]: + def instanas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + """ return pulumi.get(self, "instanas") @instanas.setter - def instanas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaArgs']]]]): + def instanas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaArgs']]]]): pulumi.set(self, "instanas", value) @property @pulumi.getter - def lightsteps(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodLightstepArgs']]]]: + def lightsteps(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadLightstepArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + """ + return pulumi.get(self, "lightsteps") + + @lightsteps.setter + def lightsteps(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadLightstepArgs']]]]): + pulumi.set(self, "lightsteps", value) + + @property + @pulumi.getter + def newrelics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadNewrelicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + """ + return pulumi.get(self, "newrelics") + + @newrelics.setter + def newrelics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadNewrelicArgs']]]]): + pulumi.set(self, "newrelics", value) + + @property + @pulumi.getter + def opentsdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadOpentsdbArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + """ + return pulumi.get(self, "opentsdbs") + + @opentsdbs.setter + def opentsdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadOpentsdbArgs']]]]): + pulumi.set(self, "opentsdbs", value) + + @property + @pulumi.getter + def pingdoms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadPingdomArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + """ + return pulumi.get(self, "pingdoms") + + @pingdoms.setter + def pingdoms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadPingdomArgs']]]]): + pulumi.set(self, "pingdoms", value) + + @property + @pulumi.getter + def prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadPrometheusArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + """ + return pulumi.get(self, "prometheuses") + + @prometheuses.setter + def prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadPrometheusArgs']]]]): + pulumi.set(self, "prometheuses", value) + + @property + @pulumi.getter + def redshifts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadRedshiftArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + """ + return pulumi.get(self, "redshifts") + + @redshifts.setter + def redshifts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadRedshiftArgs']]]]): + pulumi.set(self, "redshifts", value) + + @property + @pulumi.getter(name="splunkObservabilities") + def splunk_observabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSplunkObservabilityArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + """ + return pulumi.get(self, "splunk_observabilities") + + @splunk_observabilities.setter + def splunk_observabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSplunkObservabilityArgs']]]]): + pulumi.set(self, "splunk_observabilities", value) + + @property + @pulumi.getter + def splunks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSplunkArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + """ + return pulumi.get(self, "splunks") + + @splunks.setter + def splunks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSplunkArgs']]]]): + pulumi.set(self, "splunks", value) + + @property + @pulumi.getter + def sumologics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSumologicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + """ + return pulumi.get(self, "sumologics") + + @sumologics.setter + def sumologics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadSumologicArgs']]]]): + pulumi.set(self, "sumologics", value) + + @property + @pulumi.getter + def thousandeyes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadThousandeyeArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ + return pulumi.get(self, "thousandeyes") + + @thousandeyes.setter + def thousandeyes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadThousandeyeArgs']]]]): + pulumi.set(self, "thousandeyes", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadAmazonPrometheusArgs: + def __init__(__self__, *, + promql: pulumi.Input[str]): + """ + :param pulumi.Input[str] promql: Query for the metrics + """ + pulumi.set(__self__, "promql", promql) + + @property + @pulumi.getter + def promql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "promql") + + @promql.setter + def promql(self, value: pulumi.Input[str]): + pulumi.set(self, "promql", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadAppdynamicArgs: + def __init__(__self__, *, + application_name: pulumi.Input[str], + metric_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] application_name: Name of the added application + :param pulumi.Input[str] metric_path: Path to the metrics + """ + pulumi.set(__self__, "application_name", application_name) + pulumi.set(__self__, "metric_path", metric_path) + + @property + @pulumi.getter(name="applicationName") + def application_name(self) -> pulumi.Input[str]: + """ + Name of the added application + """ + return pulumi.get(self, "application_name") + + @application_name.setter + def application_name(self, value: pulumi.Input[str]): + pulumi.set(self, "application_name", value) + + @property + @pulumi.getter(name="metricPath") + def metric_path(self) -> pulumi.Input[str]: + """ + Path to the metrics + """ + return pulumi.get(self, "metric_path") + + @metric_path.setter + def metric_path(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_path", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadAzureMonitorArgs: + def __init__(__self__, *, + data_type: pulumi.Input[str], + aggregation: Optional[pulumi.Input[str]] = None, + dimensions: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorDimensionArgs']]]] = None, + kql_query: Optional[pulumi.Input[str]] = None, + metric_name: Optional[pulumi.Input[str]] = None, + metric_namespace: Optional[pulumi.Input[str]] = None, + resource_id: Optional[pulumi.Input[str]] = None, + workspaces: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs']]]] = None): + """ + :param pulumi.Input[str] data_type: Specifies source: 'metrics' or 'logs' + :param pulumi.Input[str] aggregation: Aggregation type [Required for metrics] + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorDimensionArgs']]] dimensions: Dimensions of the metric [Optional for metrics] + :param pulumi.Input[str] kql_query: Logs query in Kusto Query Language [Required for logs] + :param pulumi.Input[str] metric_name: Name of the metric [Required for metrics] + :param pulumi.Input[str] metric_namespace: Namespace of the metric [Optional for metrics] + :param pulumi.Input[str] resource_id: Identifier of the Azure Cloud resource [Required for metrics] + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs']]] workspaces: Log analytics workspace [Required for logs] + """ + pulumi.set(__self__, "data_type", data_type) + if aggregation is not None: + pulumi.set(__self__, "aggregation", aggregation) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if kql_query is not None: + pulumi.set(__self__, "kql_query", kql_query) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if metric_namespace is not None: + pulumi.set(__self__, "metric_namespace", metric_namespace) + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if workspaces is not None: + pulumi.set(__self__, "workspaces", workspaces) + + @property + @pulumi.getter(name="dataType") + def data_type(self) -> pulumi.Input[str]: + """ + Specifies source: 'metrics' or 'logs' + """ + return pulumi.get(self, "data_type") + + @data_type.setter + def data_type(self, value: pulumi.Input[str]): + pulumi.set(self, "data_type", value) + + @property + @pulumi.getter + def aggregation(self) -> Optional[pulumi.Input[str]]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @aggregation.setter + def aggregation(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "aggregation", value) + + @property + @pulumi.getter + def dimensions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorDimensionArgs']]]]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @dimensions.setter + def dimensions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorDimensionArgs']]]]): + pulumi.set(self, "dimensions", value) + + @property + @pulumi.getter(name="kqlQuery") + def kql_query(self) -> Optional[pulumi.Input[str]]: + """ + Logs query in Kusto Query Language [Required for logs] + """ + return pulumi.get(self, "kql_query") + + @kql_query.setter + def kql_query(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kql_query", value) + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @metric_name.setter + def metric_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_name", value) + + @property + @pulumi.getter(name="metricNamespace") + def metric_namespace(self) -> Optional[pulumi.Input[str]]: + """ + Namespace of the metric [Optional for metrics] + """ + return pulumi.get(self, "metric_namespace") + + @metric_namespace.setter + def metric_namespace(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_namespace", value) + + @property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[pulumi.Input[str]]: + """ + Identifier of the Azure Cloud resource [Required for metrics] + """ + return pulumi.get(self, "resource_id") + + @resource_id.setter + def resource_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "resource_id", value) + + @property + @pulumi.getter + def workspaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs']]]]: + """ + Log analytics workspace [Required for logs] + """ + return pulumi.get(self, "workspaces") + + @workspaces.setter + def workspaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs']]]]): + pulumi.set(self, "workspaces", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadAzureMonitorDimensionArgs: + def __init__(__self__, *, + name: pulumi.Input[str], + value: pulumi.Input[str]): + """ + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> pulumi.Input[str]: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: pulumi.Input[str]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + """ + Burn rate value. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs: + def __init__(__self__, *, + resource_group: pulumi.Input[str], + subscription_id: pulumi.Input[str], + workspace_id: pulumi.Input[str]): + """ + :param pulumi.Input[str] resource_group: Resource group of the workspace + :param pulumi.Input[str] subscription_id: Subscription ID of the workspace + :param pulumi.Input[str] workspace_id: ID of the workspace + """ + pulumi.set(__self__, "resource_group", resource_group) + pulumi.set(__self__, "subscription_id", subscription_id) + pulumi.set(__self__, "workspace_id", workspace_id) + + @property + @pulumi.getter(name="resourceGroup") + def resource_group(self) -> pulumi.Input[str]: + """ + Resource group of the workspace + """ + return pulumi.get(self, "resource_group") + + @resource_group.setter + def resource_group(self, value: pulumi.Input[str]): + pulumi.set(self, "resource_group", value) + + @property + @pulumi.getter(name="subscriptionId") + def subscription_id(self) -> pulumi.Input[str]: + """ + Subscription ID of the workspace + """ + return pulumi.get(self, "subscription_id") + + @subscription_id.setter + def subscription_id(self, value: pulumi.Input[str]): + pulumi.set(self, "subscription_id", value) + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> pulumi.Input[str]: + """ + ID of the workspace + """ + return pulumi.get(self, "workspace_id") + + @workspace_id.setter + def workspace_id(self, value: pulumi.Input[str]): + pulumi.set(self, "workspace_id", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadBigqueryArgs: + def __init__(__self__, *, + location: pulumi.Input[str], + project_id: pulumi.Input[str], + query: pulumi.Input[str]): + """ + :param pulumi.Input[str] location: Location of you BigQuery + :param pulumi.Input[str] project_id: Project ID + :param pulumi.Input[str] query: Query for the metrics + """ + pulumi.set(__self__, "location", location) + pulumi.set(__self__, "project_id", project_id) + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def location(self) -> pulumi.Input[str]: + """ + Location of you BigQuery + """ + return pulumi.get(self, "location") + + @location.setter + def location(self, value: pulumi.Input[str]): + pulumi.set(self, "location", value) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> pulumi.Input[str]: + """ + Project ID + """ + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: pulumi.Input[str]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadCloudwatchArgs: + def __init__(__self__, *, + region: pulumi.Input[str], + account_id: Optional[pulumi.Input[str]] = None, + dimensions: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadCloudwatchDimensionArgs']]]] = None, + json: Optional[pulumi.Input[str]] = None, + metric_name: Optional[pulumi.Input[str]] = None, + namespace: Optional[pulumi.Input[str]] = None, + sql: Optional[pulumi.Input[str]] = None, + stat: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] region: Region of the CloudWatch instance + :param pulumi.Input[str] account_id: AccountID used with cross-account observability feature + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadCloudwatchDimensionArgs']]] dimensions: Dimensions of the metric [Optional for metrics] + :param pulumi.Input[str] json: JSON query + :param pulumi.Input[str] metric_name: Name of the metric [Required for metrics] + :param pulumi.Input[str] namespace: Namespace of the metric + :param pulumi.Input[str] sql: SQL query + :param pulumi.Input[str] stat: Metric data aggregations + """ + pulumi.set(__self__, "region", region) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if json is not None: + pulumi.set(__self__, "json", json) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if namespace is not None: + pulumi.set(__self__, "namespace", namespace) + if sql is not None: + pulumi.set(__self__, "sql", sql) + if stat is not None: + pulumi.set(__self__, "stat", stat) + + @property + @pulumi.getter + def region(self) -> pulumi.Input[str]: + """ + Region of the CloudWatch instance + """ + return pulumi.get(self, "region") + + @region.setter + def region(self, value: pulumi.Input[str]): + pulumi.set(self, "region", value) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[pulumi.Input[str]]: + """ + AccountID used with cross-account observability feature + """ + return pulumi.get(self, "account_id") + + @account_id.setter + def account_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "account_id", value) + + @property + @pulumi.getter + def dimensions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadCloudwatchDimensionArgs']]]]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @dimensions.setter + def dimensions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadCloudwatchDimensionArgs']]]]): + pulumi.set(self, "dimensions", value) + + @property + @pulumi.getter + def json(self) -> Optional[pulumi.Input[str]]: + """ + JSON query + """ + return pulumi.get(self, "json") + + @json.setter + def json(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "json", value) + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @metric_name.setter + def metric_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_name", value) + + @property + @pulumi.getter + def namespace(self) -> Optional[pulumi.Input[str]]: + """ + Namespace of the metric + """ + return pulumi.get(self, "namespace") + + @namespace.setter + def namespace(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "namespace", value) + + @property + @pulumi.getter + def sql(self) -> Optional[pulumi.Input[str]]: + """ + SQL query + """ + return pulumi.get(self, "sql") + + @sql.setter + def sql(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "sql", value) + + @property + @pulumi.getter + def stat(self) -> Optional[pulumi.Input[str]]: + """ + Metric data aggregations + """ + return pulumi.get(self, "stat") + + @stat.setter + def stat(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "stat", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadCloudwatchDimensionArgs: + def __init__(__self__, *, + name: pulumi.Input[str], + value: pulumi.Input[str]): + """ + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> pulumi.Input[str]: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: pulumi.Input[str]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + """ + Burn rate value. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadDatadogArgs: + def __init__(__self__, *, + query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadDynatraceArgs: + def __init__(__self__, *, + metric_selector: pulumi.Input[str]): + """ + :param pulumi.Input[str] metric_selector: Selector for the metrics + """ + pulumi.set(__self__, "metric_selector", metric_selector) + + @property + @pulumi.getter(name="metricSelector") + def metric_selector(self) -> pulumi.Input[str]: + """ + Selector for the metrics + """ + return pulumi.get(self, "metric_selector") + + @metric_selector.setter + def metric_selector(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_selector", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadElasticsearchArgs: + def __init__(__self__, *, + index: pulumi.Input[str], + query: pulumi.Input[str]): + """ + :param pulumi.Input[str] index: Index of metrics we want to query + :param pulumi.Input[str] query: Query for the metrics + """ + pulumi.set(__self__, "index", index) + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def index(self) -> pulumi.Input[str]: + """ + Index of metrics we want to query + """ + return pulumi.get(self, "index") + + @index.setter + def index(self, value: pulumi.Input[str]): + pulumi.set(self, "index", value) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadGcmArgs: + def __init__(__self__, *, + project_id: pulumi.Input[str], + query: pulumi.Input[str]): + """ + :param pulumi.Input[str] project_id: Project ID + :param pulumi.Input[str] query: Query for the metrics + """ + pulumi.set(__self__, "project_id", project_id) + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> pulumi.Input[str]: + """ + Project ID + """ + return pulumi.get(self, "project_id") + + @project_id.setter + def project_id(self, value: pulumi.Input[str]): + pulumi.set(self, "project_id", value) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadGrafanaLokiArgs: + def __init__(__self__, *, + logql: pulumi.Input[str]): + """ + :param pulumi.Input[str] logql: Query for the logs + """ + pulumi.set(__self__, "logql", logql) + + @property + @pulumi.getter + def logql(self) -> pulumi.Input[str]: + """ + Query for the logs + """ + return pulumi.get(self, "logql") + + @logql.setter + def logql(self, value: pulumi.Input[str]): + pulumi.set(self, "logql", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadGraphiteArgs: + def __init__(__self__, *, + metric_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] metric_path: Path to the metrics + """ + pulumi.set(__self__, "metric_path", metric_path) + + @property + @pulumi.getter(name="metricPath") + def metric_path(self) -> pulumi.Input[str]: + """ + Path to the metrics + """ + return pulumi.get(self, "metric_path") + + @metric_path.setter + def metric_path(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_path", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadHoneycombArgs: + def __init__(__self__, *, + calculation: pulumi.Input[str], + attribute: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] calculation: Calculation type + :param pulumi.Input[str] attribute: Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + pulumi.set(__self__, "calculation", calculation) + if attribute is not None: + pulumi.set(__self__, "attribute", attribute) + + @property + @pulumi.getter + def calculation(self) -> pulumi.Input[str]: + """ + Calculation type + """ + return pulumi.get(self, "calculation") + + @calculation.setter + def calculation(self, value: pulumi.Input[str]): + pulumi.set(self, "calculation", value) + + @property + @pulumi.getter + def attribute(self) -> Optional[pulumi.Input[str]]: + """ + Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + return pulumi.get(self, "attribute") + + @attribute.setter + def attribute(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "attribute", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadInfluxdbArgs: + def __init__(__self__, *, + query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadInstanaArgs: + def __init__(__self__, *, + metric_type: pulumi.Input[str], + applications: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaApplicationArgs']]]] = None, + infrastructures: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaInfrastructureArgs']]]] = None): + """ + :param pulumi.Input[str] metric_type: Instana metric type 'application' or 'infrastructure' + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaApplicationArgs']]] applications: Infrastructure metric type + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaInfrastructureArgs']]] infrastructures: Infrastructure metric type + """ + pulumi.set(__self__, "metric_type", metric_type) + if applications is not None: + pulumi.set(__self__, "applications", applications) + if infrastructures is not None: + pulumi.set(__self__, "infrastructures", infrastructures) + + @property + @pulumi.getter(name="metricType") + def metric_type(self) -> pulumi.Input[str]: + """ + Instana metric type 'application' or 'infrastructure' + """ + return pulumi.get(self, "metric_type") + + @metric_type.setter + def metric_type(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_type", value) + + @property + @pulumi.getter + def applications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaApplicationArgs']]]]: + """ + Infrastructure metric type + """ + return pulumi.get(self, "applications") + + @applications.setter + def applications(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaApplicationArgs']]]]): + pulumi.set(self, "applications", value) + + @property + @pulumi.getter + def infrastructures(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaInfrastructureArgs']]]]: + """ + Infrastructure metric type + """ + return pulumi.get(self, "infrastructures") + + @infrastructures.setter + def infrastructures(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaInfrastructureArgs']]]]): + pulumi.set(self, "infrastructures", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadInstanaApplicationArgs: + def __init__(__self__, *, + aggregation: pulumi.Input[str], + api_query: pulumi.Input[str], + group_bies: pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaApplicationGroupByArgs']]], + metric_id: pulumi.Input[str], + include_internal: Optional[pulumi.Input[bool]] = None, + include_synthetic: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[str] aggregation: Aggregation type [Required for metrics] + :param pulumi.Input[str] api_query: API query user passes in a JSON format + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaApplicationGroupByArgs']]] group_bies: Group by method + :param pulumi.Input[str] metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param pulumi.Input[bool] include_internal: Include internal + :param pulumi.Input[bool] include_synthetic: Include synthetic + """ + pulumi.set(__self__, "aggregation", aggregation) + pulumi.set(__self__, "api_query", api_query) + pulumi.set(__self__, "group_bies", group_bies) + pulumi.set(__self__, "metric_id", metric_id) + if include_internal is not None: + pulumi.set(__self__, "include_internal", include_internal) + if include_synthetic is not None: + pulumi.set(__self__, "include_synthetic", include_synthetic) + + @property + @pulumi.getter + def aggregation(self) -> pulumi.Input[str]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @aggregation.setter + def aggregation(self, value: pulumi.Input[str]): + pulumi.set(self, "aggregation", value) + + @property + @pulumi.getter(name="apiQuery") + def api_query(self) -> pulumi.Input[str]: + """ + API query user passes in a JSON format + """ + return pulumi.get(self, "api_query") + + @api_query.setter + def api_query(self, value: pulumi.Input[str]): + pulumi.set(self, "api_query", value) + + @property + @pulumi.getter(name="groupBies") + def group_bies(self) -> pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaApplicationGroupByArgs']]]: + """ + Group by method + """ + return pulumi.get(self, "group_bies") + + @group_bies.setter + def group_bies(self, value: pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricBadInstanaApplicationGroupByArgs']]]): + pulumi.set(self, "group_bies", value) + + @property + @pulumi.getter(name="metricId") + def metric_id(self) -> pulumi.Input[str]: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ + return pulumi.get(self, "metric_id") + + @metric_id.setter + def metric_id(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_id", value) + + @property + @pulumi.getter(name="includeInternal") + def include_internal(self) -> Optional[pulumi.Input[bool]]: + """ + Include internal + """ + return pulumi.get(self, "include_internal") + + @include_internal.setter + def include_internal(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "include_internal", value) + + @property + @pulumi.getter(name="includeSynthetic") + def include_synthetic(self) -> Optional[pulumi.Input[bool]]: + """ + Include synthetic + """ + return pulumi.get(self, "include_synthetic") + + @include_synthetic.setter + def include_synthetic(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "include_synthetic", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadInstanaApplicationGroupByArgs: + def __init__(__self__, *, + tag: pulumi.Input[str], + tag_entity: pulumi.Input[str], + tag_second_level_key: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] tag: Group by tag + :param pulumi.Input[str] tag_entity: Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ + pulumi.set(__self__, "tag", tag) + pulumi.set(__self__, "tag_entity", tag_entity) + if tag_second_level_key is not None: + pulumi.set(__self__, "tag_second_level_key", tag_second_level_key) + + @property + @pulumi.getter + def tag(self) -> pulumi.Input[str]: + """ + Group by tag + """ + return pulumi.get(self, "tag") + + @tag.setter + def tag(self, value: pulumi.Input[str]): + pulumi.set(self, "tag", value) + + @property + @pulumi.getter(name="tagEntity") + def tag_entity(self) -> pulumi.Input[str]: + """ + Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ + return pulumi.get(self, "tag_entity") + + @tag_entity.setter + def tag_entity(self, value: pulumi.Input[str]): + pulumi.set(self, "tag_entity", value) + + @property + @pulumi.getter(name="tagSecondLevelKey") + def tag_second_level_key(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "tag_second_level_key") + + @tag_second_level_key.setter + def tag_second_level_key(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "tag_second_level_key", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadInstanaInfrastructureArgs: + def __init__(__self__, *, + metric_id: pulumi.Input[str], + metric_retrieval_method: pulumi.Input[str], + plugin_id: pulumi.Input[str], + query: Optional[pulumi.Input[str]] = None, + snapshot_id: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param pulumi.Input[str] metric_retrieval_method: Metric retrieval method 'query' or 'snapshot' + :param pulumi.Input[str] plugin_id: Plugin ID + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] snapshot_id: Snapshot ID + """ + pulumi.set(__self__, "metric_id", metric_id) + pulumi.set(__self__, "metric_retrieval_method", metric_retrieval_method) + pulumi.set(__self__, "plugin_id", plugin_id) + if query is not None: + pulumi.set(__self__, "query", query) + if snapshot_id is not None: + pulumi.set(__self__, "snapshot_id", snapshot_id) + + @property + @pulumi.getter(name="metricId") + def metric_id(self) -> pulumi.Input[str]: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ + return pulumi.get(self, "metric_id") + + @metric_id.setter + def metric_id(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_id", value) + + @property + @pulumi.getter(name="metricRetrievalMethod") + def metric_retrieval_method(self) -> pulumi.Input[str]: + """ + Metric retrieval method 'query' or 'snapshot' + """ + return pulumi.get(self, "metric_retrieval_method") + + @metric_retrieval_method.setter + def metric_retrieval_method(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_retrieval_method", value) + + @property + @pulumi.getter(name="pluginId") + def plugin_id(self) -> pulumi.Input[str]: + """ + Plugin ID + """ + return pulumi.get(self, "plugin_id") + + @plugin_id.setter + def plugin_id(self, value: pulumi.Input[str]): + pulumi.set(self, "plugin_id", value) + + @property + @pulumi.getter + def query(self) -> Optional[pulumi.Input[str]]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "query", value) + + @property + @pulumi.getter(name="snapshotId") + def snapshot_id(self) -> Optional[pulumi.Input[str]]: + """ + Snapshot ID + """ + return pulumi.get(self, "snapshot_id") + + @snapshot_id.setter + def snapshot_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "snapshot_id", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadLightstepArgs: + def __init__(__self__, *, + type_of_data: pulumi.Input[str], + percentile: Optional[pulumi.Input[float]] = None, + stream_id: Optional[pulumi.Input[str]] = None, + uql: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] type_of_data: Type of data to filter by + :param pulumi.Input[float] percentile: Optional value to filter by percentiles + :param pulumi.Input[str] stream_id: ID of the metrics stream + :param pulumi.Input[str] uql: UQL query + """ + pulumi.set(__self__, "type_of_data", type_of_data) + if percentile is not None: + pulumi.set(__self__, "percentile", percentile) + if stream_id is not None: + pulumi.set(__self__, "stream_id", stream_id) + if uql is not None: + pulumi.set(__self__, "uql", uql) + + @property + @pulumi.getter(name="typeOfData") + def type_of_data(self) -> pulumi.Input[str]: + """ + Type of data to filter by + """ + return pulumi.get(self, "type_of_data") + + @type_of_data.setter + def type_of_data(self, value: pulumi.Input[str]): + pulumi.set(self, "type_of_data", value) + + @property + @pulumi.getter + def percentile(self) -> Optional[pulumi.Input[float]]: + """ + Optional value to filter by percentiles + """ + return pulumi.get(self, "percentile") + + @percentile.setter + def percentile(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "percentile", value) + + @property + @pulumi.getter(name="streamId") + def stream_id(self) -> Optional[pulumi.Input[str]]: + """ + ID of the metrics stream + """ + return pulumi.get(self, "stream_id") + + @stream_id.setter + def stream_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "stream_id", value) + + @property + @pulumi.getter + def uql(self) -> Optional[pulumi.Input[str]]: + """ + UQL query + """ + return pulumi.get(self, "uql") + + @uql.setter + def uql(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "uql", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadNewrelicArgs: + def __init__(__self__, *, + nrql: pulumi.Input[str]): + """ + :param pulumi.Input[str] nrql: Query for the metrics + """ + pulumi.set(__self__, "nrql", nrql) + + @property + @pulumi.getter + def nrql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "nrql") + + @nrql.setter + def nrql(self, value: pulumi.Input[str]): + pulumi.set(self, "nrql", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadOpentsdbArgs: + def __init__(__self__, *, + query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadPingdomArgs: + def __init__(__self__, *, + check_id: pulumi.Input[str], + check_type: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] check_id: Pingdom uptime or transaction check's ID + :param pulumi.Input[str] check_type: Pingdom check type - uptime or transaction + :param pulumi.Input[str] status: Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ + pulumi.set(__self__, "check_id", check_id) + if check_type is not None: + pulumi.set(__self__, "check_type", check_type) + if status is not None: + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter(name="checkId") + def check_id(self) -> pulumi.Input[str]: + """ + Pingdom uptime or transaction check's ID + """ + return pulumi.get(self, "check_id") + + @check_id.setter + def check_id(self, value: pulumi.Input[str]): + pulumi.set(self, "check_id", value) + + @property + @pulumi.getter(name="checkType") + def check_type(self) -> Optional[pulumi.Input[str]]: + """ + Pingdom check type - uptime or transaction + """ + return pulumi.get(self, "check_type") + + @check_type.setter + def check_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "check_type", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadPrometheusArgs: + def __init__(__self__, *, + promql: pulumi.Input[str]): + """ + :param pulumi.Input[str] promql: Query for the metrics + """ + pulumi.set(__self__, "promql", promql) + + @property + @pulumi.getter + def promql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "promql") + + @promql.setter + def promql(self, value: pulumi.Input[str]): + pulumi.set(self, "promql", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadRedshiftArgs: + def __init__(__self__, *, + cluster_id: pulumi.Input[str], + database_name: pulumi.Input[str], + query: pulumi.Input[str], + region: pulumi.Input[str]): + """ + :param pulumi.Input[str] cluster_id: Redshift custer ID + :param pulumi.Input[str] database_name: Database name + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] region: Region of the CloudWatch instance + """ + pulumi.set(__self__, "cluster_id", cluster_id) + pulumi.set(__self__, "database_name", database_name) + pulumi.set(__self__, "query", query) + pulumi.set(__self__, "region", region) + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> pulumi.Input[str]: + """ + Redshift custer ID + """ + return pulumi.get(self, "cluster_id") + + @cluster_id.setter + def cluster_id(self, value: pulumi.Input[str]): + pulumi.set(self, "cluster_id", value) + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> pulumi.Input[str]: + """ + Database name + """ + return pulumi.get(self, "database_name") + + @database_name.setter + def database_name(self, value: pulumi.Input[str]): + pulumi.set(self, "database_name", value) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + @property + @pulumi.getter + def region(self) -> pulumi.Input[str]: + """ + Region of the CloudWatch instance + """ + return pulumi.get(self, "region") + + @region.setter + def region(self, value: pulumi.Input[str]): + pulumi.set(self, "region", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadSplunkArgs: + def __init__(__self__, *, + query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadSplunkObservabilityArgs: + def __init__(__self__, *, + program: pulumi.Input[str]): + """ + :param pulumi.Input[str] program: Query for the metrics + """ + pulumi.set(__self__, "program", program) + + @property + @pulumi.getter + def program(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "program") + + @program.setter + def program(self, value: pulumi.Input[str]): + pulumi.set(self, "program", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadSumologicArgs: + def __init__(__self__, *, + query: pulumi.Input[str], + type: pulumi.Input[str], + quantization: Optional[pulumi.Input[str]] = None, + rollup: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] type: Sumologic source - metrics or logs + :param pulumi.Input[str] quantization: Period of data aggregation + :param pulumi.Input[str] rollup: Aggregation function - avg, sum, min, max, count, none + """ + pulumi.set(__self__, "query", query) + pulumi.set(__self__, "type", type) + if quantization is not None: + pulumi.set(__self__, "quantization", quantization) + if rollup is not None: + pulumi.set(__self__, "rollup", rollup) + + @property + @pulumi.getter + def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @query.setter + def query(self, value: pulumi.Input[str]): + pulumi.set(self, "query", value) + + @property + @pulumi.getter + def type(self) -> pulumi.Input[str]: + """ + Sumologic source - metrics or logs + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input[str]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def quantization(self) -> Optional[pulumi.Input[str]]: + """ + Period of data aggregation + """ + return pulumi.get(self, "quantization") + + @quantization.setter + def quantization(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "quantization", value) + + @property + @pulumi.getter + def rollup(self) -> Optional[pulumi.Input[str]]: + """ + Aggregation function - avg, sum, min, max, count, none + """ + return pulumi.get(self, "rollup") + + @rollup.setter + def rollup(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "rollup", value) + + +@pulumi.input_type +class SloObjectiveCountMetricBadThousandeyeArgs: + def __init__(__self__, *, + test_id: pulumi.Input[int]): + """ + :param pulumi.Input[int] test_id: ID of the test + """ + pulumi.set(__self__, "test_id", test_id) + + @property + @pulumi.getter(name="testId") + def test_id(self) -> pulumi.Input[int]: + """ + ID of the test + """ + return pulumi.get(self, "test_id") + + @test_id.setter + def test_id(self, value: pulumi.Input[int]): + pulumi.set(self, "test_id", value) + + +@pulumi.input_type +class SloObjectiveCountMetricGoodArgs: + def __init__(__self__, *, + amazon_prometheuses: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAmazonPrometheusArgs']]]] = None, + appdynamics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAppdynamicArgs']]]] = None, + azure_monitors: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorArgs']]]] = None, + bigqueries: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodBigqueryArgs']]]] = None, + cloudwatches: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchArgs']]]] = None, + datadogs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDatadogArgs']]]] = None, + dynatraces: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDynatraceArgs']]]] = None, + elasticsearches: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodElasticsearchArgs']]]] = None, + gcms: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGcmArgs']]]] = None, + grafana_lokis: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGrafanaLokiArgs']]]] = None, + graphites: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGraphiteArgs']]]] = None, + honeycombs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodHoneycombArgs']]]] = None, + influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInfluxdbArgs']]]] = None, + instanas: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaArgs']]]] = None, + lightsteps: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodLightstepArgs']]]] = None, + newrelics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodNewrelicArgs']]]] = None, + opentsdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodOpentsdbArgs']]]] = None, + pingdoms: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodPingdomArgs']]]] = None, + prometheuses: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodPrometheusArgs']]]] = None, + redshifts: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodRedshiftArgs']]]] = None, + splunk_observabilities: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSplunkObservabilityArgs']]]] = None, + splunks: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSplunkArgs']]]] = None, + sumologics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSumologicArgs']]]] = None, + thousandeyes: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodThousandeyeArgs']]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAmazonPrometheusArgs']]] amazon_prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAppdynamicArgs']]] appdynamics: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorArgs']]] azure_monitors: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodBigqueryArgs']]] bigqueries: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchArgs']]] cloudwatches: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDatadogArgs']]] datadogs: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDynatraceArgs']]] dynatraces: [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodElasticsearchArgs']]] elasticsearches: [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGcmArgs']]] gcms: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGrafanaLokiArgs']]] grafana_lokis: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGraphiteArgs']]] graphites: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodHoneycombArgs']]] honeycombs: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInfluxdbArgs']]] influxdbs: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaArgs']]] instanas: [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodLightstepArgs']]] lightsteps: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodNewrelicArgs']]] newrelics: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodOpentsdbArgs']]] opentsdbs: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodPingdomArgs']]] pingdoms: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodPrometheusArgs']]] prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodRedshiftArgs']]] redshifts: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSplunkObservabilityArgs']]] splunk_observabilities: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSplunkArgs']]] splunks: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSumologicArgs']]] sumologics: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodThousandeyeArgs']]] thousandeyes: [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ + if amazon_prometheuses is not None: + pulumi.set(__self__, "amazon_prometheuses", amazon_prometheuses) + if appdynamics is not None: + pulumi.set(__self__, "appdynamics", appdynamics) + if azure_monitors is not None: + pulumi.set(__self__, "azure_monitors", azure_monitors) + if bigqueries is not None: + pulumi.set(__self__, "bigqueries", bigqueries) + if cloudwatches is not None: + pulumi.set(__self__, "cloudwatches", cloudwatches) + if datadogs is not None: + pulumi.set(__self__, "datadogs", datadogs) + if dynatraces is not None: + pulumi.set(__self__, "dynatraces", dynatraces) + if elasticsearches is not None: + pulumi.set(__self__, "elasticsearches", elasticsearches) + if gcms is not None: + pulumi.set(__self__, "gcms", gcms) + if grafana_lokis is not None: + pulumi.set(__self__, "grafana_lokis", grafana_lokis) + if graphites is not None: + pulumi.set(__self__, "graphites", graphites) + if honeycombs is not None: + pulumi.set(__self__, "honeycombs", honeycombs) + if influxdbs is not None: + pulumi.set(__self__, "influxdbs", influxdbs) + if instanas is not None: + pulumi.set(__self__, "instanas", instanas) + if lightsteps is not None: + pulumi.set(__self__, "lightsteps", lightsteps) + if newrelics is not None: + pulumi.set(__self__, "newrelics", newrelics) + if opentsdbs is not None: + pulumi.set(__self__, "opentsdbs", opentsdbs) + if pingdoms is not None: + pulumi.set(__self__, "pingdoms", pingdoms) + if prometheuses is not None: + pulumi.set(__self__, "prometheuses", prometheuses) + if redshifts is not None: + pulumi.set(__self__, "redshifts", redshifts) + if splunk_observabilities is not None: + pulumi.set(__self__, "splunk_observabilities", splunk_observabilities) + if splunks is not None: + pulumi.set(__self__, "splunks", splunks) + if sumologics is not None: + pulumi.set(__self__, "sumologics", sumologics) + if thousandeyes is not None: + pulumi.set(__self__, "thousandeyes", thousandeyes) + + @property + @pulumi.getter(name="amazonPrometheuses") + def amazon_prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAmazonPrometheusArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + """ + return pulumi.get(self, "amazon_prometheuses") + + @amazon_prometheuses.setter + def amazon_prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAmazonPrometheusArgs']]]]): + pulumi.set(self, "amazon_prometheuses", value) + + @property + @pulumi.getter + def appdynamics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAppdynamicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + """ + return pulumi.get(self, "appdynamics") + + @appdynamics.setter + def appdynamics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAppdynamicArgs']]]]): + pulumi.set(self, "appdynamics", value) + + @property + @pulumi.getter(name="azureMonitors") + def azure_monitors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + """ + return pulumi.get(self, "azure_monitors") + + @azure_monitors.setter + def azure_monitors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorArgs']]]]): + pulumi.set(self, "azure_monitors", value) + + @property + @pulumi.getter + def bigqueries(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodBigqueryArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + """ + return pulumi.get(self, "bigqueries") + + @bigqueries.setter + def bigqueries(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodBigqueryArgs']]]]): + pulumi.set(self, "bigqueries", value) + + @property + @pulumi.getter + def cloudwatches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + """ + return pulumi.get(self, "cloudwatches") + + @cloudwatches.setter + def cloudwatches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchArgs']]]]): + pulumi.set(self, "cloudwatches", value) + + @property + @pulumi.getter + def datadogs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDatadogArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + """ + return pulumi.get(self, "datadogs") + + @datadogs.setter + def datadogs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDatadogArgs']]]]): + pulumi.set(self, "datadogs", value) + + @property + @pulumi.getter + def dynatraces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDynatraceArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + """ + return pulumi.get(self, "dynatraces") + + @dynatraces.setter + def dynatraces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodDynatraceArgs']]]]): + pulumi.set(self, "dynatraces", value) + + @property + @pulumi.getter + def elasticsearches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodElasticsearchArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + """ + return pulumi.get(self, "elasticsearches") + + @elasticsearches.setter + def elasticsearches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodElasticsearchArgs']]]]): + pulumi.set(self, "elasticsearches", value) + + @property + @pulumi.getter + def gcms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGcmArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + """ + return pulumi.get(self, "gcms") + + @gcms.setter + def gcms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGcmArgs']]]]): + pulumi.set(self, "gcms", value) + + @property + @pulumi.getter(name="grafanaLokis") + def grafana_lokis(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGrafanaLokiArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + """ + return pulumi.get(self, "grafana_lokis") + + @grafana_lokis.setter + def grafana_lokis(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGrafanaLokiArgs']]]]): + pulumi.set(self, "grafana_lokis", value) + + @property + @pulumi.getter + def graphites(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGraphiteArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + """ + return pulumi.get(self, "graphites") + + @graphites.setter + def graphites(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodGraphiteArgs']]]]): + pulumi.set(self, "graphites", value) + + @property + @pulumi.getter + def honeycombs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodHoneycombArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + """ + return pulumi.get(self, "honeycombs") + + @honeycombs.setter + def honeycombs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodHoneycombArgs']]]]): + pulumi.set(self, "honeycombs", value) + + @property + @pulumi.getter + def influxdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInfluxdbArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + """ + return pulumi.get(self, "influxdbs") + + @influxdbs.setter + def influxdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInfluxdbArgs']]]]): + pulumi.set(self, "influxdbs", value) + + @property + @pulumi.getter + def instanas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + """ + return pulumi.get(self, "instanas") + + @instanas.setter + def instanas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaArgs']]]]): + pulumi.set(self, "instanas", value) + + @property + @pulumi.getter + def lightsteps(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodLightstepArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + """ return pulumi.get(self, "lightsteps") @lightsteps.setter @@ -2495,6 +5290,9 @@ def lightsteps(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def newrelics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodNewrelicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + """ return pulumi.get(self, "newrelics") @newrelics.setter @@ -2504,6 +5302,9 @@ def newrelics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter def opentsdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodOpentsdbArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + """ return pulumi.get(self, "opentsdbs") @opentsdbs.setter @@ -2513,6 +5314,9 @@ def opentsdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter def pingdoms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodPingdomArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + """ return pulumi.get(self, "pingdoms") @pingdoms.setter @@ -2522,6 +5326,9 @@ def pingdoms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObject @property @pulumi.getter def prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodPrometheusArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + """ return pulumi.get(self, "prometheuses") @prometheuses.setter @@ -2531,6 +5338,9 @@ def prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloOb @property @pulumi.getter def redshifts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodRedshiftArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + """ return pulumi.get(self, "redshifts") @redshifts.setter @@ -2540,6 +5350,9 @@ def redshifts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter(name="splunkObservabilities") def splunk_observabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSplunkObservabilityArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + """ return pulumi.get(self, "splunk_observabilities") @splunk_observabilities.setter @@ -2549,6 +5362,9 @@ def splunk_observabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.In @property @pulumi.getter def splunks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSplunkArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + """ return pulumi.get(self, "splunks") @splunks.setter @@ -2558,6 +5374,9 @@ def splunks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjecti @property @pulumi.getter def sumologics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodSumologicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + """ return pulumi.get(self, "sumologics") @sumologics.setter @@ -2567,6 +5386,9 @@ def sumologics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def thousandeyes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodThousandeyeArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ return pulumi.get(self, "thousandeyes") @thousandeyes.setter @@ -2578,11 +5400,17 @@ def thousandeyes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloOb class SloObjectiveCountMetricGoodAmazonPrometheusArgs: def __init__(__self__, *, promql: pulumi.Input[str]): + """ + :param pulumi.Input[str] promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter def promql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "promql") @promql.setter @@ -2595,12 +5423,19 @@ class SloObjectiveCountMetricGoodAppdynamicArgs: def __init__(__self__, *, application_name: pulumi.Input[str], metric_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] application_name: Name of the added application + :param pulumi.Input[str] metric_path: Path to the metrics + """ pulumi.set(__self__, "application_name", application_name) pulumi.set(__self__, "metric_path", metric_path) @property @pulumi.getter(name="applicationName") def application_name(self) -> pulumi.Input[str]: + """ + Name of the added application + """ return pulumi.get(self, "application_name") @application_name.setter @@ -2610,6 +5445,9 @@ def application_name(self, value: pulumi.Input[str]): @property @pulumi.getter(name="metricPath") def metric_path(self) -> pulumi.Input[str]: + """ + Path to the metrics + """ return pulumi.get(self, "metric_path") @metric_path.setter @@ -2617,12 +5455,240 @@ def metric_path(self, value: pulumi.Input[str]): pulumi.set(self, "metric_path", value) +@pulumi.input_type +class SloObjectiveCountMetricGoodAzureMonitorArgs: + def __init__(__self__, *, + data_type: pulumi.Input[str], + aggregation: Optional[pulumi.Input[str]] = None, + dimensions: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorDimensionArgs']]]] = None, + kql_query: Optional[pulumi.Input[str]] = None, + metric_name: Optional[pulumi.Input[str]] = None, + metric_namespace: Optional[pulumi.Input[str]] = None, + resource_id: Optional[pulumi.Input[str]] = None, + workspaces: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs']]]] = None): + """ + :param pulumi.Input[str] data_type: Specifies source: 'metrics' or 'logs' + :param pulumi.Input[str] aggregation: Aggregation type [Required for metrics] + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorDimensionArgs']]] dimensions: Dimensions of the metric [Optional for metrics] + :param pulumi.Input[str] kql_query: Logs query in Kusto Query Language [Required for logs] + :param pulumi.Input[str] metric_name: Name of the metric [Required for metrics] + :param pulumi.Input[str] metric_namespace: Namespace of the metric [Optional for metrics] + :param pulumi.Input[str] resource_id: Identifier of the Azure Cloud resource [Required for metrics] + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs']]] workspaces: Log analytics workspace [Required for logs] + """ + pulumi.set(__self__, "data_type", data_type) + if aggregation is not None: + pulumi.set(__self__, "aggregation", aggregation) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if kql_query is not None: + pulumi.set(__self__, "kql_query", kql_query) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if metric_namespace is not None: + pulumi.set(__self__, "metric_namespace", metric_namespace) + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if workspaces is not None: + pulumi.set(__self__, "workspaces", workspaces) + + @property + @pulumi.getter(name="dataType") + def data_type(self) -> pulumi.Input[str]: + """ + Specifies source: 'metrics' or 'logs' + """ + return pulumi.get(self, "data_type") + + @data_type.setter + def data_type(self, value: pulumi.Input[str]): + pulumi.set(self, "data_type", value) + + @property + @pulumi.getter + def aggregation(self) -> Optional[pulumi.Input[str]]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @aggregation.setter + def aggregation(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "aggregation", value) + + @property + @pulumi.getter + def dimensions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorDimensionArgs']]]]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @dimensions.setter + def dimensions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorDimensionArgs']]]]): + pulumi.set(self, "dimensions", value) + + @property + @pulumi.getter(name="kqlQuery") + def kql_query(self) -> Optional[pulumi.Input[str]]: + """ + Logs query in Kusto Query Language [Required for logs] + """ + return pulumi.get(self, "kql_query") + + @kql_query.setter + def kql_query(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kql_query", value) + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @metric_name.setter + def metric_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_name", value) + + @property + @pulumi.getter(name="metricNamespace") + def metric_namespace(self) -> Optional[pulumi.Input[str]]: + """ + Namespace of the metric [Optional for metrics] + """ + return pulumi.get(self, "metric_namespace") + + @metric_namespace.setter + def metric_namespace(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_namespace", value) + + @property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[pulumi.Input[str]]: + """ + Identifier of the Azure Cloud resource [Required for metrics] + """ + return pulumi.get(self, "resource_id") + + @resource_id.setter + def resource_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "resource_id", value) + + @property + @pulumi.getter + def workspaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs']]]]: + """ + Log analytics workspace [Required for logs] + """ + return pulumi.get(self, "workspaces") + + @workspaces.setter + def workspaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs']]]]): + pulumi.set(self, "workspaces", value) + + +@pulumi.input_type +class SloObjectiveCountMetricGoodAzureMonitorDimensionArgs: + def __init__(__self__, *, + name: pulumi.Input[str], + value: pulumi.Input[str]): + """ + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> pulumi.Input[str]: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: pulumi.Input[str]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + """ + Burn rate value. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs: + def __init__(__self__, *, + resource_group: pulumi.Input[str], + subscription_id: pulumi.Input[str], + workspace_id: pulumi.Input[str]): + """ + :param pulumi.Input[str] resource_group: Resource group of the workspace + :param pulumi.Input[str] subscription_id: Subscription ID of the workspace + :param pulumi.Input[str] workspace_id: ID of the workspace + """ + pulumi.set(__self__, "resource_group", resource_group) + pulumi.set(__self__, "subscription_id", subscription_id) + pulumi.set(__self__, "workspace_id", workspace_id) + + @property + @pulumi.getter(name="resourceGroup") + def resource_group(self) -> pulumi.Input[str]: + """ + Resource group of the workspace + """ + return pulumi.get(self, "resource_group") + + @resource_group.setter + def resource_group(self, value: pulumi.Input[str]): + pulumi.set(self, "resource_group", value) + + @property + @pulumi.getter(name="subscriptionId") + def subscription_id(self) -> pulumi.Input[str]: + """ + Subscription ID of the workspace + """ + return pulumi.get(self, "subscription_id") + + @subscription_id.setter + def subscription_id(self, value: pulumi.Input[str]): + pulumi.set(self, "subscription_id", value) + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> pulumi.Input[str]: + """ + ID of the workspace + """ + return pulumi.get(self, "workspace_id") + + @workspace_id.setter + def workspace_id(self, value: pulumi.Input[str]): + pulumi.set(self, "workspace_id", value) + + @pulumi.input_type class SloObjectiveCountMetricGoodBigqueryArgs: def __init__(__self__, *, location: pulumi.Input[str], project_id: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] location: Location of you BigQuery + :param pulumi.Input[str] project_id: Project ID + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "location", location) pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @@ -2630,6 +5696,9 @@ def __init__(__self__, *, @property @pulumi.getter def location(self) -> pulumi.Input[str]: + """ + Location of you BigQuery + """ return pulumi.get(self, "location") @location.setter @@ -2639,6 +5708,9 @@ def location(self, value: pulumi.Input[str]): @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: + """ + Project ID + """ return pulumi.get(self, "project_id") @project_id.setter @@ -2648,6 +5720,9 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -2659,13 +5734,26 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveCountMetricGoodCloudwatchArgs: def __init__(__self__, *, region: pulumi.Input[str], + account_id: Optional[pulumi.Input[str]] = None, dimensions: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchDimensionArgs']]]] = None, json: Optional[pulumi.Input[str]] = None, metric_name: Optional[pulumi.Input[str]] = None, namespace: Optional[pulumi.Input[str]] = None, sql: Optional[pulumi.Input[str]] = None, stat: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] region: Region of the CloudWatch instance + :param pulumi.Input[str] account_id: AccountID used with cross-account observability feature + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchDimensionArgs']]] dimensions: Dimensions of the metric [Optional for metrics] + :param pulumi.Input[str] json: JSON query + :param pulumi.Input[str] metric_name: Name of the metric [Required for metrics] + :param pulumi.Input[str] namespace: Namespace of the metric + :param pulumi.Input[str] sql: SQL query + :param pulumi.Input[str] stat: Metric data aggregations + """ pulumi.set(__self__, "region", region) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) if dimensions is not None: pulumi.set(__self__, "dimensions", dimensions) if json is not None: @@ -2682,15 +5770,33 @@ def __init__(__self__, *, @property @pulumi.getter def region(self) -> pulumi.Input[str]: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @region.setter def region(self, value: pulumi.Input[str]): pulumi.set(self, "region", value) + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[pulumi.Input[str]]: + """ + AccountID used with cross-account observability feature + """ + return pulumi.get(self, "account_id") + + @account_id.setter + def account_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "account_id", value) + @property @pulumi.getter def dimensions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodCloudwatchDimensionArgs']]]]: + """ + Dimensions of the metric [Optional for metrics] + """ return pulumi.get(self, "dimensions") @dimensions.setter @@ -2700,6 +5806,9 @@ def dimensions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def json(self) -> Optional[pulumi.Input[str]]: + """ + JSON query + """ return pulumi.get(self, "json") @json.setter @@ -2709,6 +5818,9 @@ def json(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="metricName") def metric_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the metric [Required for metrics] + """ return pulumi.get(self, "metric_name") @metric_name.setter @@ -2718,6 +5830,9 @@ def metric_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def namespace(self) -> Optional[pulumi.Input[str]]: + """ + Namespace of the metric + """ return pulumi.get(self, "namespace") @namespace.setter @@ -2727,6 +5842,9 @@ def namespace(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def sql(self) -> Optional[pulumi.Input[str]]: + """ + SQL query + """ return pulumi.get(self, "sql") @sql.setter @@ -2736,6 +5854,9 @@ def sql(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def stat(self) -> Optional[pulumi.Input[str]]: + """ + Metric data aggregations + """ return pulumi.get(self, "stat") @stat.setter @@ -2749,7 +5870,8 @@ def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[str]): """ - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] value: Burn rate value. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -2758,7 +5880,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -2769,6 +5891,9 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[str]: + """ + Burn rate value. + """ return pulumi.get(self, "value") @value.setter @@ -2780,11 +5905,17 @@ def value(self, value: pulumi.Input[str]): class SloObjectiveCountMetricGoodDatadogArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -2796,11 +5927,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveCountMetricGoodDynatraceArgs: def __init__(__self__, *, metric_selector: pulumi.Input[str]): + """ + :param pulumi.Input[str] metric_selector: Selector for the metrics + """ pulumi.set(__self__, "metric_selector", metric_selector) @property @pulumi.getter(name="metricSelector") def metric_selector(self) -> pulumi.Input[str]: + """ + Selector for the metrics + """ return pulumi.get(self, "metric_selector") @metric_selector.setter @@ -2813,12 +5950,19 @@ class SloObjectiveCountMetricGoodElasticsearchArgs: def __init__(__self__, *, index: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] index: Index of metrics we want to query + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "index", index) pulumi.set(__self__, "query", query) @property @pulumi.getter def index(self) -> pulumi.Input[str]: + """ + Index of metrics we want to query + """ return pulumi.get(self, "index") @index.setter @@ -2828,6 +5972,9 @@ def index(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -2840,12 +5987,19 @@ class SloObjectiveCountMetricGoodGcmArgs: def __init__(__self__, *, project_id: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] project_id: Project ID + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: + """ + Project ID + """ return pulumi.get(self, "project_id") @project_id.setter @@ -2855,6 +6009,9 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -2866,11 +6023,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveCountMetricGoodGrafanaLokiArgs: def __init__(__self__, *, logql: pulumi.Input[str]): + """ + :param pulumi.Input[str] logql: Query for the logs + """ pulumi.set(__self__, "logql", logql) @property @pulumi.getter def logql(self) -> pulumi.Input[str]: + """ + Query for the logs + """ return pulumi.get(self, "logql") @logql.setter @@ -2882,11 +6045,17 @@ def logql(self, value: pulumi.Input[str]): class SloObjectiveCountMetricGoodGraphiteArgs: def __init__(__self__, *, metric_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] metric_path: Path to the metrics + """ pulumi.set(__self__, "metric_path", metric_path) @property @pulumi.getter(name="metricPath") def metric_path(self) -> pulumi.Input[str]: + """ + Path to the metrics + """ return pulumi.get(self, "metric_path") @metric_path.setter @@ -2894,15 +6063,59 @@ def metric_path(self, value: pulumi.Input[str]): pulumi.set(self, "metric_path", value) +@pulumi.input_type +class SloObjectiveCountMetricGoodHoneycombArgs: + def __init__(__self__, *, + calculation: pulumi.Input[str], + attribute: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] calculation: Calculation type + :param pulumi.Input[str] attribute: Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + pulumi.set(__self__, "calculation", calculation) + if attribute is not None: + pulumi.set(__self__, "attribute", attribute) + + @property + @pulumi.getter + def calculation(self) -> pulumi.Input[str]: + """ + Calculation type + """ + return pulumi.get(self, "calculation") + + @calculation.setter + def calculation(self, value: pulumi.Input[str]): + pulumi.set(self, "calculation", value) + + @property + @pulumi.getter + def attribute(self) -> Optional[pulumi.Input[str]]: + """ + Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + return pulumi.get(self, "attribute") + + @attribute.setter + def attribute(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "attribute", value) + + @pulumi.input_type class SloObjectiveCountMetricGoodInfluxdbArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -2916,6 +6129,11 @@ def __init__(__self__, *, metric_type: pulumi.Input[str], applications: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaApplicationArgs']]]] = None, infrastructures: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaInfrastructureArgs']]]] = None): + """ + :param pulumi.Input[str] metric_type: Instana metric type 'application' or 'infrastructure' + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaApplicationArgs']]] applications: Infrastructure metric type + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaInfrastructureArgs']]] infrastructures: Infrastructure metric type + """ pulumi.set(__self__, "metric_type", metric_type) if applications is not None: pulumi.set(__self__, "applications", applications) @@ -2925,6 +6143,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricType") def metric_type(self) -> pulumi.Input[str]: + """ + Instana metric type 'application' or 'infrastructure' + """ return pulumi.get(self, "metric_type") @metric_type.setter @@ -2934,6 +6155,9 @@ def metric_type(self, value: pulumi.Input[str]): @property @pulumi.getter def applications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaApplicationArgs']]]]: + """ + Infrastructure metric type + """ return pulumi.get(self, "applications") @applications.setter @@ -2943,6 +6167,9 @@ def applications(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloOb @property @pulumi.getter def infrastructures(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaInfrastructureArgs']]]]: + """ + Infrastructure metric type + """ return pulumi.get(self, "infrastructures") @infrastructures.setter @@ -2959,6 +6186,14 @@ def __init__(__self__, *, metric_id: pulumi.Input[str], include_internal: Optional[pulumi.Input[bool]] = None, include_synthetic: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[str] aggregation: Aggregation type [Required for metrics] + :param pulumi.Input[str] api_query: API query user passes in a JSON format + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs']]] group_bies: Group by method + :param pulumi.Input[str] metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param pulumi.Input[bool] include_internal: Include internal + :param pulumi.Input[bool] include_synthetic: Include synthetic + """ pulumi.set(__self__, "aggregation", aggregation) pulumi.set(__self__, "api_query", api_query) pulumi.set(__self__, "group_bies", group_bies) @@ -2971,6 +6206,9 @@ def __init__(__self__, *, @property @pulumi.getter def aggregation(self) -> pulumi.Input[str]: + """ + Aggregation type [Required for metrics] + """ return pulumi.get(self, "aggregation") @aggregation.setter @@ -2980,6 +6218,9 @@ def aggregation(self, value: pulumi.Input[str]): @property @pulumi.getter(name="apiQuery") def api_query(self) -> pulumi.Input[str]: + """ + API query user passes in a JSON format + """ return pulumi.get(self, "api_query") @api_query.setter @@ -2989,6 +6230,9 @@ def api_query(self, value: pulumi.Input[str]): @property @pulumi.getter(name="groupBies") def group_bies(self) -> pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs']]]: + """ + Group by method + """ return pulumi.get(self, "group_bies") @group_bies.setter @@ -2998,6 +6242,9 @@ def group_bies(self, value: pulumi.Input[Sequence[pulumi.Input['SloObjectiveCoun @property @pulumi.getter(name="metricId") def metric_id(self) -> pulumi.Input[str]: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @metric_id.setter @@ -3007,6 +6254,9 @@ def metric_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="includeInternal") def include_internal(self) -> Optional[pulumi.Input[bool]]: + """ + Include internal + """ return pulumi.get(self, "include_internal") @include_internal.setter @@ -3016,6 +6266,9 @@ def include_internal(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="includeSynthetic") def include_synthetic(self) -> Optional[pulumi.Input[bool]]: + """ + Include synthetic + """ return pulumi.get(self, "include_synthetic") @include_synthetic.setter @@ -3029,6 +6282,10 @@ def __init__(__self__, *, tag: pulumi.Input[str], tag_entity: pulumi.Input[str], tag_second_level_key: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] tag: Group by tag + :param pulumi.Input[str] tag_entity: Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ pulumi.set(__self__, "tag", tag) pulumi.set(__self__, "tag_entity", tag_entity) if tag_second_level_key is not None: @@ -3037,6 +6294,9 @@ def __init__(__self__, *, @property @pulumi.getter def tag(self) -> pulumi.Input[str]: + """ + Group by tag + """ return pulumi.get(self, "tag") @tag.setter @@ -3046,6 +6306,9 @@ def tag(self, value: pulumi.Input[str]): @property @pulumi.getter(name="tagEntity") def tag_entity(self) -> pulumi.Input[str]: + """ + Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ return pulumi.get(self, "tag_entity") @tag_entity.setter @@ -3070,6 +6333,13 @@ def __init__(__self__, *, plugin_id: pulumi.Input[str], query: Optional[pulumi.Input[str]] = None, snapshot_id: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param pulumi.Input[str] metric_retrieval_method: Metric retrieval method 'query' or 'snapshot' + :param pulumi.Input[str] plugin_id: Plugin ID + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] snapshot_id: Snapshot ID + """ pulumi.set(__self__, "metric_id", metric_id) pulumi.set(__self__, "metric_retrieval_method", metric_retrieval_method) pulumi.set(__self__, "plugin_id", plugin_id) @@ -3081,6 +6351,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricId") def metric_id(self) -> pulumi.Input[str]: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @metric_id.setter @@ -3090,6 +6363,9 @@ def metric_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="metricRetrievalMethod") def metric_retrieval_method(self) -> pulumi.Input[str]: + """ + Metric retrieval method 'query' or 'snapshot' + """ return pulumi.get(self, "metric_retrieval_method") @metric_retrieval_method.setter @@ -3099,6 +6375,9 @@ def metric_retrieval_method(self, value: pulumi.Input[str]): @property @pulumi.getter(name="pluginId") def plugin_id(self) -> pulumi.Input[str]: + """ + Plugin ID + """ return pulumi.get(self, "plugin_id") @plugin_id.setter @@ -3108,6 +6387,9 @@ def plugin_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> Optional[pulumi.Input[str]]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3117,6 +6399,9 @@ def query(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[pulumi.Input[str]]: + """ + Snapshot ID + """ return pulumi.get(self, "snapshot_id") @snapshot_id.setter @@ -3131,6 +6416,12 @@ def __init__(__self__, *, percentile: Optional[pulumi.Input[float]] = None, stream_id: Optional[pulumi.Input[str]] = None, uql: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] type_of_data: Type of data to filter by + :param pulumi.Input[float] percentile: Optional value to filter by percentiles + :param pulumi.Input[str] stream_id: ID of the metrics stream + :param pulumi.Input[str] uql: UQL query + """ pulumi.set(__self__, "type_of_data", type_of_data) if percentile is not None: pulumi.set(__self__, "percentile", percentile) @@ -3142,6 +6433,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="typeOfData") def type_of_data(self) -> pulumi.Input[str]: + """ + Type of data to filter by + """ return pulumi.get(self, "type_of_data") @type_of_data.setter @@ -3151,6 +6445,9 @@ def type_of_data(self, value: pulumi.Input[str]): @property @pulumi.getter def percentile(self) -> Optional[pulumi.Input[float]]: + """ + Optional value to filter by percentiles + """ return pulumi.get(self, "percentile") @percentile.setter @@ -3160,6 +6457,9 @@ def percentile(self, value: Optional[pulumi.Input[float]]): @property @pulumi.getter(name="streamId") def stream_id(self) -> Optional[pulumi.Input[str]]: + """ + ID of the metrics stream + """ return pulumi.get(self, "stream_id") @stream_id.setter @@ -3169,6 +6469,9 @@ def stream_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def uql(self) -> Optional[pulumi.Input[str]]: + """ + UQL query + """ return pulumi.get(self, "uql") @uql.setter @@ -3180,11 +6483,17 @@ def uql(self, value: Optional[pulumi.Input[str]]): class SloObjectiveCountMetricGoodNewrelicArgs: def __init__(__self__, *, nrql: pulumi.Input[str]): + """ + :param pulumi.Input[str] nrql: Query for the metrics + """ pulumi.set(__self__, "nrql", nrql) @property @pulumi.getter def nrql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "nrql") @nrql.setter @@ -3196,11 +6505,17 @@ def nrql(self, value: pulumi.Input[str]): class SloObjectiveCountMetricGoodOpentsdbArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3214,6 +6529,11 @@ def __init__(__self__, *, check_id: pulumi.Input[str], check_type: Optional[pulumi.Input[str]] = None, status: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] check_id: Pingdom uptime or transaction check's ID + :param pulumi.Input[str] check_type: Pingdom check type - uptime or transaction + :param pulumi.Input[str] status: Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ pulumi.set(__self__, "check_id", check_id) if check_type is not None: pulumi.set(__self__, "check_type", check_type) @@ -3223,6 +6543,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="checkId") def check_id(self) -> pulumi.Input[str]: + """ + Pingdom uptime or transaction check's ID + """ return pulumi.get(self, "check_id") @check_id.setter @@ -3232,6 +6555,9 @@ def check_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="checkType") def check_type(self) -> Optional[pulumi.Input[str]]: + """ + Pingdom check type - uptime or transaction + """ return pulumi.get(self, "check_type") @check_type.setter @@ -3241,6 +6567,9 @@ def check_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: + """ + Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ return pulumi.get(self, "status") @status.setter @@ -3252,11 +6581,17 @@ def status(self, value: Optional[pulumi.Input[str]]): class SloObjectiveCountMetricGoodPrometheusArgs: def __init__(__self__, *, promql: pulumi.Input[str]): + """ + :param pulumi.Input[str] promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter def promql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "promql") @promql.setter @@ -3271,6 +6606,12 @@ def __init__(__self__, *, database_name: pulumi.Input[str], query: pulumi.Input[str], region: pulumi.Input[str]): + """ + :param pulumi.Input[str] cluster_id: Redshift custer ID + :param pulumi.Input[str] database_name: Database name + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] region: Region of the CloudWatch instance + """ pulumi.set(__self__, "cluster_id", cluster_id) pulumi.set(__self__, "database_name", database_name) pulumi.set(__self__, "query", query) @@ -3279,6 +6620,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> pulumi.Input[str]: + """ + Redshift custer ID + """ return pulumi.get(self, "cluster_id") @cluster_id.setter @@ -3288,6 +6632,9 @@ def cluster_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="databaseName") def database_name(self) -> pulumi.Input[str]: + """ + Database name + """ return pulumi.get(self, "database_name") @database_name.setter @@ -3297,6 +6644,9 @@ def database_name(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3306,6 +6656,9 @@ def query(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> pulumi.Input[str]: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @region.setter @@ -3317,11 +6670,17 @@ def region(self, value: pulumi.Input[str]): class SloObjectiveCountMetricGoodSplunkArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3333,11 +6692,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveCountMetricGoodSplunkObservabilityArgs: def __init__(__self__, *, program: pulumi.Input[str]): + """ + :param pulumi.Input[str] program: Query for the metrics + """ pulumi.set(__self__, "program", program) @property @pulumi.getter def program(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "program") @program.setter @@ -3352,6 +6717,12 @@ def __init__(__self__, *, type: pulumi.Input[str], quantization: Optional[pulumi.Input[str]] = None, rollup: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] type: Sumologic source - metrics or logs + :param pulumi.Input[str] quantization: Period of data aggregation + :param pulumi.Input[str] rollup: Aggregation function - avg, sum, min, max, count, none + """ pulumi.set(__self__, "query", query) pulumi.set(__self__, "type", type) if quantization is not None: @@ -3362,6 +6733,9 @@ def __init__(__self__, *, @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3371,6 +6745,9 @@ def query(self, value: pulumi.Input[str]): @property @pulumi.getter def type(self) -> pulumi.Input[str]: + """ + Sumologic source - metrics or logs + """ return pulumi.get(self, "type") @type.setter @@ -3380,6 +6757,9 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def quantization(self) -> Optional[pulumi.Input[str]]: + """ + Period of data aggregation + """ return pulumi.get(self, "quantization") @quantization.setter @@ -3389,6 +6769,9 @@ def quantization(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def rollup(self) -> Optional[pulumi.Input[str]]: + """ + Aggregation function - avg, sum, min, max, count, none + """ return pulumi.get(self, "rollup") @rollup.setter @@ -3400,11 +6783,17 @@ def rollup(self, value: Optional[pulumi.Input[str]]): class SloObjectiveCountMetricGoodThousandeyeArgs: def __init__(__self__, *, test_id: pulumi.Input[int]): + """ + :param pulumi.Input[int] test_id: ID of the test + """ pulumi.set(__self__, "test_id", test_id) @property @pulumi.getter(name="testId") def test_id(self) -> pulumi.Input[int]: + """ + ID of the test + """ return pulumi.get(self, "test_id") @test_id.setter @@ -3417,6 +6806,7 @@ class SloObjectiveCountMetricTotalArgs: def __init__(__self__, *, amazon_prometheuses: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAmazonPrometheusArgs']]]] = None, appdynamics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAppdynamicArgs']]]] = None, + azure_monitors: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorArgs']]]] = None, bigqueries: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalBigqueryArgs']]]] = None, cloudwatches: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalCloudwatchArgs']]]] = None, datadogs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalDatadogArgs']]]] = None, @@ -3425,6 +6815,7 @@ def __init__(__self__, *, gcms: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGcmArgs']]]] = None, grafana_lokis: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGrafanaLokiArgs']]]] = None, graphites: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGraphiteArgs']]]] = None, + honeycombs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalHoneycombArgs']]]] = None, influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInfluxdbArgs']]]] = None, instanas: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaArgs']]]] = None, lightsteps: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalLightstepArgs']]]] = None, @@ -3437,10 +6828,38 @@ def __init__(__self__, *, splunks: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkArgs']]]] = None, sumologics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSumologicArgs']]]] = None, thousandeyes: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalThousandeyeArgs']]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAmazonPrometheusArgs']]] amazon_prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAppdynamicArgs']]] appdynamics: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorArgs']]] azure_monitors: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalBigqueryArgs']]] bigqueries: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalCloudwatchArgs']]] cloudwatches: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalDatadogArgs']]] datadogs: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalDynatraceArgs']]] dynatraces: [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalElasticsearchArgs']]] elasticsearches: [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGcmArgs']]] gcms: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGrafanaLokiArgs']]] grafana_lokis: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGraphiteArgs']]] graphites: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalHoneycombArgs']]] honeycombs: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInfluxdbArgs']]] influxdbs: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaArgs']]] instanas: [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalLightstepArgs']]] lightsteps: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalNewrelicArgs']]] newrelics: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalOpentsdbArgs']]] opentsdbs: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalPingdomArgs']]] pingdoms: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalPrometheusArgs']]] prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalRedshiftArgs']]] redshifts: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkObservabilityArgs']]] splunk_observabilities: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkArgs']]] splunks: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSumologicArgs']]] sumologics: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalThousandeyeArgs']]] thousandeyes: [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ if amazon_prometheuses is not None: pulumi.set(__self__, "amazon_prometheuses", amazon_prometheuses) if appdynamics is not None: pulumi.set(__self__, "appdynamics", appdynamics) + if azure_monitors is not None: + pulumi.set(__self__, "azure_monitors", azure_monitors) if bigqueries is not None: pulumi.set(__self__, "bigqueries", bigqueries) if cloudwatches is not None: @@ -3457,6 +6876,8 @@ def __init__(__self__, *, pulumi.set(__self__, "grafana_lokis", grafana_lokis) if graphites is not None: pulumi.set(__self__, "graphites", graphites) + if honeycombs is not None: + pulumi.set(__self__, "honeycombs", honeycombs) if influxdbs is not None: pulumi.set(__self__, "influxdbs", influxdbs) if instanas is not None: @@ -3485,6 +6906,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="amazonPrometheuses") def amazon_prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAmazonPrometheusArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + """ return pulumi.get(self, "amazon_prometheuses") @amazon_prometheuses.setter @@ -3494,15 +6918,33 @@ def amazon_prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input @property @pulumi.getter def appdynamics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAppdynamicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + """ return pulumi.get(self, "appdynamics") @appdynamics.setter def appdynamics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAppdynamicArgs']]]]): pulumi.set(self, "appdynamics", value) + @property + @pulumi.getter(name="azureMonitors") + def azure_monitors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + """ + return pulumi.get(self, "azure_monitors") + + @azure_monitors.setter + def azure_monitors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorArgs']]]]): + pulumi.set(self, "azure_monitors", value) + @property @pulumi.getter def bigqueries(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalBigqueryArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + """ return pulumi.get(self, "bigqueries") @bigqueries.setter @@ -3512,6 +6954,9 @@ def bigqueries(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def cloudwatches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalCloudwatchArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + """ return pulumi.get(self, "cloudwatches") @cloudwatches.setter @@ -3521,6 +6966,9 @@ def cloudwatches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloOb @property @pulumi.getter def datadogs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalDatadogArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + """ return pulumi.get(self, "datadogs") @datadogs.setter @@ -3530,6 +6978,9 @@ def datadogs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObject @property @pulumi.getter def dynatraces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalDynatraceArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + """ return pulumi.get(self, "dynatraces") @dynatraces.setter @@ -3539,6 +6990,9 @@ def dynatraces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def elasticsearches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalElasticsearchArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + """ return pulumi.get(self, "elasticsearches") @elasticsearches.setter @@ -3548,6 +7002,9 @@ def elasticsearches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Sl @property @pulumi.getter def gcms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGcmArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + """ return pulumi.get(self, "gcms") @gcms.setter @@ -3557,6 +7014,9 @@ def gcms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveC @property @pulumi.getter(name="grafanaLokis") def grafana_lokis(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGrafanaLokiArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + """ return pulumi.get(self, "grafana_lokis") @grafana_lokis.setter @@ -3566,15 +7026,33 @@ def grafana_lokis(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloO @property @pulumi.getter def graphites(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGraphiteArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + """ return pulumi.get(self, "graphites") @graphites.setter def graphites(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalGraphiteArgs']]]]): pulumi.set(self, "graphites", value) + @property + @pulumi.getter + def honeycombs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalHoneycombArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + """ + return pulumi.get(self, "honeycombs") + + @honeycombs.setter + def honeycombs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalHoneycombArgs']]]]): + pulumi.set(self, "honeycombs", value) + @property @pulumi.getter def influxdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInfluxdbArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + """ return pulumi.get(self, "influxdbs") @influxdbs.setter @@ -3584,6 +7062,9 @@ def influxdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter def instanas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + """ return pulumi.get(self, "instanas") @instanas.setter @@ -3593,6 +7074,9 @@ def instanas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObject @property @pulumi.getter def lightsteps(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalLightstepArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + """ return pulumi.get(self, "lightsteps") @lightsteps.setter @@ -3602,6 +7086,9 @@ def lightsteps(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def newrelics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalNewrelicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + """ return pulumi.get(self, "newrelics") @newrelics.setter @@ -3611,6 +7098,9 @@ def newrelics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter def opentsdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalOpentsdbArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + """ return pulumi.get(self, "opentsdbs") @opentsdbs.setter @@ -3620,6 +7110,9 @@ def opentsdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter def pingdoms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalPingdomArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + """ return pulumi.get(self, "pingdoms") @pingdoms.setter @@ -3628,100 +7121,357 @@ def pingdoms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObject @property @pulumi.getter - def prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalPrometheusArgs']]]]: - return pulumi.get(self, "prometheuses") + def prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalPrometheusArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + """ + return pulumi.get(self, "prometheuses") + + @prometheuses.setter + def prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalPrometheusArgs']]]]): + pulumi.set(self, "prometheuses", value) + + @property + @pulumi.getter + def redshifts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalRedshiftArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + """ + return pulumi.get(self, "redshifts") + + @redshifts.setter + def redshifts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalRedshiftArgs']]]]): + pulumi.set(self, "redshifts", value) + + @property + @pulumi.getter(name="splunkObservabilities") + def splunk_observabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkObservabilityArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + """ + return pulumi.get(self, "splunk_observabilities") + + @splunk_observabilities.setter + def splunk_observabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkObservabilityArgs']]]]): + pulumi.set(self, "splunk_observabilities", value) + + @property + @pulumi.getter + def splunks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + """ + return pulumi.get(self, "splunks") + + @splunks.setter + def splunks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkArgs']]]]): + pulumi.set(self, "splunks", value) + + @property + @pulumi.getter + def sumologics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSumologicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + """ + return pulumi.get(self, "sumologics") + + @sumologics.setter + def sumologics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSumologicArgs']]]]): + pulumi.set(self, "sumologics", value) + + @property + @pulumi.getter + def thousandeyes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalThousandeyeArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ + return pulumi.get(self, "thousandeyes") + + @thousandeyes.setter + def thousandeyes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalThousandeyeArgs']]]]): + pulumi.set(self, "thousandeyes", value) + + +@pulumi.input_type +class SloObjectiveCountMetricTotalAmazonPrometheusArgs: + def __init__(__self__, *, + promql: pulumi.Input[str]): + """ + :param pulumi.Input[str] promql: Query for the metrics + """ + pulumi.set(__self__, "promql", promql) + + @property + @pulumi.getter + def promql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "promql") + + @promql.setter + def promql(self, value: pulumi.Input[str]): + pulumi.set(self, "promql", value) + + +@pulumi.input_type +class SloObjectiveCountMetricTotalAppdynamicArgs: + def __init__(__self__, *, + application_name: pulumi.Input[str], + metric_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] application_name: Name of the added application + :param pulumi.Input[str] metric_path: Path to the metrics + """ + pulumi.set(__self__, "application_name", application_name) + pulumi.set(__self__, "metric_path", metric_path) + + @property + @pulumi.getter(name="applicationName") + def application_name(self) -> pulumi.Input[str]: + """ + Name of the added application + """ + return pulumi.get(self, "application_name") + + @application_name.setter + def application_name(self, value: pulumi.Input[str]): + pulumi.set(self, "application_name", value) + + @property + @pulumi.getter(name="metricPath") + def metric_path(self) -> pulumi.Input[str]: + """ + Path to the metrics + """ + return pulumi.get(self, "metric_path") + + @metric_path.setter + def metric_path(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_path", value) + + +@pulumi.input_type +class SloObjectiveCountMetricTotalAzureMonitorArgs: + def __init__(__self__, *, + data_type: pulumi.Input[str], + aggregation: Optional[pulumi.Input[str]] = None, + dimensions: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorDimensionArgs']]]] = None, + kql_query: Optional[pulumi.Input[str]] = None, + metric_name: Optional[pulumi.Input[str]] = None, + metric_namespace: Optional[pulumi.Input[str]] = None, + resource_id: Optional[pulumi.Input[str]] = None, + workspaces: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs']]]] = None): + """ + :param pulumi.Input[str] data_type: Specifies source: 'metrics' or 'logs' + :param pulumi.Input[str] aggregation: Aggregation type [Required for metrics] + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorDimensionArgs']]] dimensions: Dimensions of the metric [Optional for metrics] + :param pulumi.Input[str] kql_query: Logs query in Kusto Query Language [Required for logs] + :param pulumi.Input[str] metric_name: Name of the metric [Required for metrics] + :param pulumi.Input[str] metric_namespace: Namespace of the metric [Optional for metrics] + :param pulumi.Input[str] resource_id: Identifier of the Azure Cloud resource [Required for metrics] + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs']]] workspaces: Log analytics workspace [Required for logs] + """ + pulumi.set(__self__, "data_type", data_type) + if aggregation is not None: + pulumi.set(__self__, "aggregation", aggregation) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if kql_query is not None: + pulumi.set(__self__, "kql_query", kql_query) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if metric_namespace is not None: + pulumi.set(__self__, "metric_namespace", metric_namespace) + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if workspaces is not None: + pulumi.set(__self__, "workspaces", workspaces) + + @property + @pulumi.getter(name="dataType") + def data_type(self) -> pulumi.Input[str]: + """ + Specifies source: 'metrics' or 'logs' + """ + return pulumi.get(self, "data_type") + + @data_type.setter + def data_type(self, value: pulumi.Input[str]): + pulumi.set(self, "data_type", value) + + @property + @pulumi.getter + def aggregation(self) -> Optional[pulumi.Input[str]]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") - @prometheuses.setter - def prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalPrometheusArgs']]]]): - pulumi.set(self, "prometheuses", value) + @aggregation.setter + def aggregation(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "aggregation", value) @property @pulumi.getter - def redshifts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalRedshiftArgs']]]]: - return pulumi.get(self, "redshifts") + def dimensions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorDimensionArgs']]]]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") - @redshifts.setter - def redshifts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalRedshiftArgs']]]]): - pulumi.set(self, "redshifts", value) + @dimensions.setter + def dimensions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorDimensionArgs']]]]): + pulumi.set(self, "dimensions", value) @property - @pulumi.getter(name="splunkObservabilities") - def splunk_observabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkObservabilityArgs']]]]: - return pulumi.get(self, "splunk_observabilities") + @pulumi.getter(name="kqlQuery") + def kql_query(self) -> Optional[pulumi.Input[str]]: + """ + Logs query in Kusto Query Language [Required for logs] + """ + return pulumi.get(self, "kql_query") - @splunk_observabilities.setter - def splunk_observabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkObservabilityArgs']]]]): - pulumi.set(self, "splunk_observabilities", value) + @kql_query.setter + def kql_query(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kql_query", value) @property - @pulumi.getter - def splunks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkArgs']]]]: - return pulumi.get(self, "splunks") + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") - @splunks.setter - def splunks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSplunkArgs']]]]): - pulumi.set(self, "splunks", value) + @metric_name.setter + def metric_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_name", value) @property - @pulumi.getter - def sumologics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSumologicArgs']]]]: - return pulumi.get(self, "sumologics") + @pulumi.getter(name="metricNamespace") + def metric_namespace(self) -> Optional[pulumi.Input[str]]: + """ + Namespace of the metric [Optional for metrics] + """ + return pulumi.get(self, "metric_namespace") - @sumologics.setter - def sumologics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalSumologicArgs']]]]): - pulumi.set(self, "sumologics", value) + @metric_namespace.setter + def metric_namespace(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_namespace", value) + + @property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[pulumi.Input[str]]: + """ + Identifier of the Azure Cloud resource [Required for metrics] + """ + return pulumi.get(self, "resource_id") + + @resource_id.setter + def resource_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "resource_id", value) @property @pulumi.getter - def thousandeyes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalThousandeyeArgs']]]]: - return pulumi.get(self, "thousandeyes") + def workspaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs']]]]: + """ + Log analytics workspace [Required for logs] + """ + return pulumi.get(self, "workspaces") - @thousandeyes.setter - def thousandeyes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalThousandeyeArgs']]]]): - pulumi.set(self, "thousandeyes", value) + @workspaces.setter + def workspaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs']]]]): + pulumi.set(self, "workspaces", value) @pulumi.input_type -class SloObjectiveCountMetricTotalAmazonPrometheusArgs: +class SloObjectiveCountMetricTotalAzureMonitorDimensionArgs: def __init__(__self__, *, - promql: pulumi.Input[str]): - pulumi.set(__self__, "promql", promql) + name: pulumi.Input[str], + value: pulumi.Input[str]): + """ + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) @property @pulumi.getter - def promql(self) -> pulumi.Input[str]: - return pulumi.get(self, "promql") + def name(self) -> pulumi.Input[str]: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") - @promql.setter - def promql(self, value: pulumi.Input[str]): - pulumi.set(self, "promql", value) + @name.setter + def name(self, value: pulumi.Input[str]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[str]: + """ + Burn rate value. + """ + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) @pulumi.input_type -class SloObjectiveCountMetricTotalAppdynamicArgs: +class SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs: def __init__(__self__, *, - application_name: pulumi.Input[str], - metric_path: pulumi.Input[str]): - pulumi.set(__self__, "application_name", application_name) - pulumi.set(__self__, "metric_path", metric_path) + resource_group: pulumi.Input[str], + subscription_id: pulumi.Input[str], + workspace_id: pulumi.Input[str]): + """ + :param pulumi.Input[str] resource_group: Resource group of the workspace + :param pulumi.Input[str] subscription_id: Subscription ID of the workspace + :param pulumi.Input[str] workspace_id: ID of the workspace + """ + pulumi.set(__self__, "resource_group", resource_group) + pulumi.set(__self__, "subscription_id", subscription_id) + pulumi.set(__self__, "workspace_id", workspace_id) @property - @pulumi.getter(name="applicationName") - def application_name(self) -> pulumi.Input[str]: - return pulumi.get(self, "application_name") + @pulumi.getter(name="resourceGroup") + def resource_group(self) -> pulumi.Input[str]: + """ + Resource group of the workspace + """ + return pulumi.get(self, "resource_group") - @application_name.setter - def application_name(self, value: pulumi.Input[str]): - pulumi.set(self, "application_name", value) + @resource_group.setter + def resource_group(self, value: pulumi.Input[str]): + pulumi.set(self, "resource_group", value) @property - @pulumi.getter(name="metricPath") - def metric_path(self) -> pulumi.Input[str]: - return pulumi.get(self, "metric_path") + @pulumi.getter(name="subscriptionId") + def subscription_id(self) -> pulumi.Input[str]: + """ + Subscription ID of the workspace + """ + return pulumi.get(self, "subscription_id") - @metric_path.setter - def metric_path(self, value: pulumi.Input[str]): - pulumi.set(self, "metric_path", value) + @subscription_id.setter + def subscription_id(self, value: pulumi.Input[str]): + pulumi.set(self, "subscription_id", value) + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> pulumi.Input[str]: + """ + ID of the workspace + """ + return pulumi.get(self, "workspace_id") + + @workspace_id.setter + def workspace_id(self, value: pulumi.Input[str]): + pulumi.set(self, "workspace_id", value) @pulumi.input_type @@ -3730,6 +7480,11 @@ def __init__(__self__, *, location: pulumi.Input[str], project_id: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] location: Location of you BigQuery + :param pulumi.Input[str] project_id: Project ID + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "location", location) pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @@ -3737,6 +7492,9 @@ def __init__(__self__, *, @property @pulumi.getter def location(self) -> pulumi.Input[str]: + """ + Location of you BigQuery + """ return pulumi.get(self, "location") @location.setter @@ -3746,6 +7504,9 @@ def location(self, value: pulumi.Input[str]): @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: + """ + Project ID + """ return pulumi.get(self, "project_id") @project_id.setter @@ -3755,6 +7516,9 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3766,13 +7530,26 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveCountMetricTotalCloudwatchArgs: def __init__(__self__, *, region: pulumi.Input[str], + account_id: Optional[pulumi.Input[str]] = None, dimensions: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalCloudwatchDimensionArgs']]]] = None, json: Optional[pulumi.Input[str]] = None, metric_name: Optional[pulumi.Input[str]] = None, namespace: Optional[pulumi.Input[str]] = None, sql: Optional[pulumi.Input[str]] = None, stat: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] region: Region of the CloudWatch instance + :param pulumi.Input[str] account_id: AccountID used with cross-account observability feature + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalCloudwatchDimensionArgs']]] dimensions: Dimensions of the metric [Optional for metrics] + :param pulumi.Input[str] json: JSON query + :param pulumi.Input[str] metric_name: Name of the metric [Required for metrics] + :param pulumi.Input[str] namespace: Namespace of the metric + :param pulumi.Input[str] sql: SQL query + :param pulumi.Input[str] stat: Metric data aggregations + """ pulumi.set(__self__, "region", region) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) if dimensions is not None: pulumi.set(__self__, "dimensions", dimensions) if json is not None: @@ -3789,15 +7566,33 @@ def __init__(__self__, *, @property @pulumi.getter def region(self) -> pulumi.Input[str]: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @region.setter def region(self, value: pulumi.Input[str]): pulumi.set(self, "region", value) + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[pulumi.Input[str]]: + """ + AccountID used with cross-account observability feature + """ + return pulumi.get(self, "account_id") + + @account_id.setter + def account_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "account_id", value) + @property @pulumi.getter def dimensions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalCloudwatchDimensionArgs']]]]: + """ + Dimensions of the metric [Optional for metrics] + """ return pulumi.get(self, "dimensions") @dimensions.setter @@ -3807,6 +7602,9 @@ def dimensions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def json(self) -> Optional[pulumi.Input[str]]: + """ + JSON query + """ return pulumi.get(self, "json") @json.setter @@ -3816,6 +7614,9 @@ def json(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="metricName") def metric_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the metric [Required for metrics] + """ return pulumi.get(self, "metric_name") @metric_name.setter @@ -3825,6 +7626,9 @@ def metric_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def namespace(self) -> Optional[pulumi.Input[str]]: + """ + Namespace of the metric + """ return pulumi.get(self, "namespace") @namespace.setter @@ -3834,6 +7638,9 @@ def namespace(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def sql(self) -> Optional[pulumi.Input[str]]: + """ + SQL query + """ return pulumi.get(self, "sql") @sql.setter @@ -3843,6 +7650,9 @@ def sql(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def stat(self) -> Optional[pulumi.Input[str]]: + """ + Metric data aggregations + """ return pulumi.get(self, "stat") @stat.setter @@ -3856,7 +7666,8 @@ def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[str]): """ - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] value: Burn rate value. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -3865,7 +7676,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -3876,6 +7687,9 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[str]: + """ + Burn rate value. + """ return pulumi.get(self, "value") @value.setter @@ -3887,11 +7701,17 @@ def value(self, value: pulumi.Input[str]): class SloObjectiveCountMetricTotalDatadogArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3903,11 +7723,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveCountMetricTotalDynatraceArgs: def __init__(__self__, *, metric_selector: pulumi.Input[str]): + """ + :param pulumi.Input[str] metric_selector: Selector for the metrics + """ pulumi.set(__self__, "metric_selector", metric_selector) @property @pulumi.getter(name="metricSelector") def metric_selector(self) -> pulumi.Input[str]: + """ + Selector for the metrics + """ return pulumi.get(self, "metric_selector") @metric_selector.setter @@ -3920,12 +7746,19 @@ class SloObjectiveCountMetricTotalElasticsearchArgs: def __init__(__self__, *, index: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] index: Index of metrics we want to query + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "index", index) pulumi.set(__self__, "query", query) @property @pulumi.getter def index(self) -> pulumi.Input[str]: + """ + Index of metrics we want to query + """ return pulumi.get(self, "index") @index.setter @@ -3935,6 +7768,9 @@ def index(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3947,12 +7783,19 @@ class SloObjectiveCountMetricTotalGcmArgs: def __init__(__self__, *, project_id: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] project_id: Project ID + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: + """ + Project ID + """ return pulumi.get(self, "project_id") @project_id.setter @@ -3962,6 +7805,9 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -3973,11 +7819,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveCountMetricTotalGrafanaLokiArgs: def __init__(__self__, *, logql: pulumi.Input[str]): + """ + :param pulumi.Input[str] logql: Query for the logs + """ pulumi.set(__self__, "logql", logql) @property @pulumi.getter def logql(self) -> pulumi.Input[str]: + """ + Query for the logs + """ return pulumi.get(self, "logql") @logql.setter @@ -3989,11 +7841,17 @@ def logql(self, value: pulumi.Input[str]): class SloObjectiveCountMetricTotalGraphiteArgs: def __init__(__self__, *, metric_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] metric_path: Path to the metrics + """ pulumi.set(__self__, "metric_path", metric_path) @property @pulumi.getter(name="metricPath") def metric_path(self) -> pulumi.Input[str]: + """ + Path to the metrics + """ return pulumi.get(self, "metric_path") @metric_path.setter @@ -4001,15 +7859,59 @@ def metric_path(self, value: pulumi.Input[str]): pulumi.set(self, "metric_path", value) +@pulumi.input_type +class SloObjectiveCountMetricTotalHoneycombArgs: + def __init__(__self__, *, + calculation: pulumi.Input[str], + attribute: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] calculation: Calculation type + :param pulumi.Input[str] attribute: Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + pulumi.set(__self__, "calculation", calculation) + if attribute is not None: + pulumi.set(__self__, "attribute", attribute) + + @property + @pulumi.getter + def calculation(self) -> pulumi.Input[str]: + """ + Calculation type + """ + return pulumi.get(self, "calculation") + + @calculation.setter + def calculation(self, value: pulumi.Input[str]): + pulumi.set(self, "calculation", value) + + @property + @pulumi.getter + def attribute(self) -> Optional[pulumi.Input[str]]: + """ + Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + return pulumi.get(self, "attribute") + + @attribute.setter + def attribute(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "attribute", value) + + @pulumi.input_type class SloObjectiveCountMetricTotalInfluxdbArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -4023,6 +7925,11 @@ def __init__(__self__, *, metric_type: pulumi.Input[str], applications: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaApplicationArgs']]]] = None, infrastructures: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaInfrastructureArgs']]]] = None): + """ + :param pulumi.Input[str] metric_type: Instana metric type 'application' or 'infrastructure' + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaApplicationArgs']]] applications: Infrastructure metric type + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaInfrastructureArgs']]] infrastructures: Infrastructure metric type + """ pulumi.set(__self__, "metric_type", metric_type) if applications is not None: pulumi.set(__self__, "applications", applications) @@ -4032,6 +7939,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricType") def metric_type(self) -> pulumi.Input[str]: + """ + Instana metric type 'application' or 'infrastructure' + """ return pulumi.get(self, "metric_type") @metric_type.setter @@ -4041,6 +7951,9 @@ def metric_type(self, value: pulumi.Input[str]): @property @pulumi.getter def applications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaApplicationArgs']]]]: + """ + Infrastructure metric type + """ return pulumi.get(self, "applications") @applications.setter @@ -4050,6 +7963,9 @@ def applications(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloOb @property @pulumi.getter def infrastructures(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaInfrastructureArgs']]]]: + """ + Infrastructure metric type + """ return pulumi.get(self, "infrastructures") @infrastructures.setter @@ -4066,6 +7982,14 @@ def __init__(__self__, *, metric_id: pulumi.Input[str], include_internal: Optional[pulumi.Input[bool]] = None, include_synthetic: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[str] aggregation: Aggregation type [Required for metrics] + :param pulumi.Input[str] api_query: API query user passes in a JSON format + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs']]] group_bies: Group by method + :param pulumi.Input[str] metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param pulumi.Input[bool] include_internal: Include internal + :param pulumi.Input[bool] include_synthetic: Include synthetic + """ pulumi.set(__self__, "aggregation", aggregation) pulumi.set(__self__, "api_query", api_query) pulumi.set(__self__, "group_bies", group_bies) @@ -4078,6 +8002,9 @@ def __init__(__self__, *, @property @pulumi.getter def aggregation(self) -> pulumi.Input[str]: + """ + Aggregation type [Required for metrics] + """ return pulumi.get(self, "aggregation") @aggregation.setter @@ -4087,6 +8014,9 @@ def aggregation(self, value: pulumi.Input[str]): @property @pulumi.getter(name="apiQuery") def api_query(self) -> pulumi.Input[str]: + """ + API query user passes in a JSON format + """ return pulumi.get(self, "api_query") @api_query.setter @@ -4096,6 +8026,9 @@ def api_query(self, value: pulumi.Input[str]): @property @pulumi.getter(name="groupBies") def group_bies(self) -> pulumi.Input[Sequence[pulumi.Input['SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs']]]: + """ + Group by method + """ return pulumi.get(self, "group_bies") @group_bies.setter @@ -4105,6 +8038,9 @@ def group_bies(self, value: pulumi.Input[Sequence[pulumi.Input['SloObjectiveCoun @property @pulumi.getter(name="metricId") def metric_id(self) -> pulumi.Input[str]: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @metric_id.setter @@ -4114,6 +8050,9 @@ def metric_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="includeInternal") def include_internal(self) -> Optional[pulumi.Input[bool]]: + """ + Include internal + """ return pulumi.get(self, "include_internal") @include_internal.setter @@ -4123,6 +8062,9 @@ def include_internal(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="includeSynthetic") def include_synthetic(self) -> Optional[pulumi.Input[bool]]: + """ + Include synthetic + """ return pulumi.get(self, "include_synthetic") @include_synthetic.setter @@ -4136,6 +8078,10 @@ def __init__(__self__, *, tag: pulumi.Input[str], tag_entity: pulumi.Input[str], tag_second_level_key: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] tag: Group by tag + :param pulumi.Input[str] tag_entity: Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ pulumi.set(__self__, "tag", tag) pulumi.set(__self__, "tag_entity", tag_entity) if tag_second_level_key is not None: @@ -4144,6 +8090,9 @@ def __init__(__self__, *, @property @pulumi.getter def tag(self) -> pulumi.Input[str]: + """ + Group by tag + """ return pulumi.get(self, "tag") @tag.setter @@ -4153,6 +8102,9 @@ def tag(self, value: pulumi.Input[str]): @property @pulumi.getter(name="tagEntity") def tag_entity(self) -> pulumi.Input[str]: + """ + Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ return pulumi.get(self, "tag_entity") @tag_entity.setter @@ -4177,6 +8129,13 @@ def __init__(__self__, *, plugin_id: pulumi.Input[str], query: Optional[pulumi.Input[str]] = None, snapshot_id: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param pulumi.Input[str] metric_retrieval_method: Metric retrieval method 'query' or 'snapshot' + :param pulumi.Input[str] plugin_id: Plugin ID + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] snapshot_id: Snapshot ID + """ pulumi.set(__self__, "metric_id", metric_id) pulumi.set(__self__, "metric_retrieval_method", metric_retrieval_method) pulumi.set(__self__, "plugin_id", plugin_id) @@ -4188,6 +8147,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricId") def metric_id(self) -> pulumi.Input[str]: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @metric_id.setter @@ -4197,6 +8159,9 @@ def metric_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="metricRetrievalMethod") def metric_retrieval_method(self) -> pulumi.Input[str]: + """ + Metric retrieval method 'query' or 'snapshot' + """ return pulumi.get(self, "metric_retrieval_method") @metric_retrieval_method.setter @@ -4206,6 +8171,9 @@ def metric_retrieval_method(self, value: pulumi.Input[str]): @property @pulumi.getter(name="pluginId") def plugin_id(self) -> pulumi.Input[str]: + """ + Plugin ID + """ return pulumi.get(self, "plugin_id") @plugin_id.setter @@ -4215,6 +8183,9 @@ def plugin_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> Optional[pulumi.Input[str]]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -4224,6 +8195,9 @@ def query(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[pulumi.Input[str]]: + """ + Snapshot ID + """ return pulumi.get(self, "snapshot_id") @snapshot_id.setter @@ -4238,6 +8212,12 @@ def __init__(__self__, *, percentile: Optional[pulumi.Input[float]] = None, stream_id: Optional[pulumi.Input[str]] = None, uql: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] type_of_data: Type of data to filter by + :param pulumi.Input[float] percentile: Optional value to filter by percentiles + :param pulumi.Input[str] stream_id: ID of the metrics stream + :param pulumi.Input[str] uql: UQL query + """ pulumi.set(__self__, "type_of_data", type_of_data) if percentile is not None: pulumi.set(__self__, "percentile", percentile) @@ -4249,6 +8229,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="typeOfData") def type_of_data(self) -> pulumi.Input[str]: + """ + Type of data to filter by + """ return pulumi.get(self, "type_of_data") @type_of_data.setter @@ -4258,6 +8241,9 @@ def type_of_data(self, value: pulumi.Input[str]): @property @pulumi.getter def percentile(self) -> Optional[pulumi.Input[float]]: + """ + Optional value to filter by percentiles + """ return pulumi.get(self, "percentile") @percentile.setter @@ -4267,6 +8253,9 @@ def percentile(self, value: Optional[pulumi.Input[float]]): @property @pulumi.getter(name="streamId") def stream_id(self) -> Optional[pulumi.Input[str]]: + """ + ID of the metrics stream + """ return pulumi.get(self, "stream_id") @stream_id.setter @@ -4276,6 +8265,9 @@ def stream_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def uql(self) -> Optional[pulumi.Input[str]]: + """ + UQL query + """ return pulumi.get(self, "uql") @uql.setter @@ -4287,11 +8279,17 @@ def uql(self, value: Optional[pulumi.Input[str]]): class SloObjectiveCountMetricTotalNewrelicArgs: def __init__(__self__, *, nrql: pulumi.Input[str]): + """ + :param pulumi.Input[str] nrql: Query for the metrics + """ pulumi.set(__self__, "nrql", nrql) @property @pulumi.getter def nrql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "nrql") @nrql.setter @@ -4303,11 +8301,17 @@ def nrql(self, value: pulumi.Input[str]): class SloObjectiveCountMetricTotalOpentsdbArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -4321,6 +8325,11 @@ def __init__(__self__, *, check_id: pulumi.Input[str], check_type: Optional[pulumi.Input[str]] = None, status: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] check_id: Pingdom uptime or transaction check's ID + :param pulumi.Input[str] check_type: Pingdom check type - uptime or transaction + :param pulumi.Input[str] status: Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ pulumi.set(__self__, "check_id", check_id) if check_type is not None: pulumi.set(__self__, "check_type", check_type) @@ -4330,6 +8339,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="checkId") def check_id(self) -> pulumi.Input[str]: + """ + Pingdom uptime or transaction check's ID + """ return pulumi.get(self, "check_id") @check_id.setter @@ -4339,6 +8351,9 @@ def check_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="checkType") def check_type(self) -> Optional[pulumi.Input[str]]: + """ + Pingdom check type - uptime or transaction + """ return pulumi.get(self, "check_type") @check_type.setter @@ -4348,6 +8363,9 @@ def check_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: + """ + Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ return pulumi.get(self, "status") @status.setter @@ -4359,11 +8377,17 @@ def status(self, value: Optional[pulumi.Input[str]]): class SloObjectiveCountMetricTotalPrometheusArgs: def __init__(__self__, *, promql: pulumi.Input[str]): + """ + :param pulumi.Input[str] promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter def promql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "promql") @promql.setter @@ -4378,6 +8402,12 @@ def __init__(__self__, *, database_name: pulumi.Input[str], query: pulumi.Input[str], region: pulumi.Input[str]): + """ + :param pulumi.Input[str] cluster_id: Redshift custer ID + :param pulumi.Input[str] database_name: Database name + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] region: Region of the CloudWatch instance + """ pulumi.set(__self__, "cluster_id", cluster_id) pulumi.set(__self__, "database_name", database_name) pulumi.set(__self__, "query", query) @@ -4386,6 +8416,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> pulumi.Input[str]: + """ + Redshift custer ID + """ return pulumi.get(self, "cluster_id") @cluster_id.setter @@ -4395,6 +8428,9 @@ def cluster_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="databaseName") def database_name(self) -> pulumi.Input[str]: + """ + Database name + """ return pulumi.get(self, "database_name") @database_name.setter @@ -4404,6 +8440,9 @@ def database_name(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -4413,6 +8452,9 @@ def query(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> pulumi.Input[str]: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @region.setter @@ -4424,11 +8466,17 @@ def region(self, value: pulumi.Input[str]): class SloObjectiveCountMetricTotalSplunkArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -4440,11 +8488,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveCountMetricTotalSplunkObservabilityArgs: def __init__(__self__, *, program: pulumi.Input[str]): + """ + :param pulumi.Input[str] program: Query for the metrics + """ pulumi.set(__self__, "program", program) @property @pulumi.getter def program(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "program") @program.setter @@ -4459,6 +8513,12 @@ def __init__(__self__, *, type: pulumi.Input[str], quantization: Optional[pulumi.Input[str]] = None, rollup: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] type: Sumologic source - metrics or logs + :param pulumi.Input[str] quantization: Period of data aggregation + :param pulumi.Input[str] rollup: Aggregation function - avg, sum, min, max, count, none + """ pulumi.set(__self__, "query", query) pulumi.set(__self__, "type", type) if quantization is not None: @@ -4469,6 +8529,9 @@ def __init__(__self__, *, @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -4478,6 +8541,9 @@ def query(self, value: pulumi.Input[str]): @property @pulumi.getter def type(self) -> pulumi.Input[str]: + """ + Sumologic source - metrics or logs + """ return pulumi.get(self, "type") @type.setter @@ -4487,6 +8553,9 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def quantization(self) -> Optional[pulumi.Input[str]]: + """ + Period of data aggregation + """ return pulumi.get(self, "quantization") @quantization.setter @@ -4496,6 +8565,9 @@ def quantization(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def rollup(self) -> Optional[pulumi.Input[str]]: + """ + Aggregation function - avg, sum, min, max, count, none + """ return pulumi.get(self, "rollup") @rollup.setter @@ -4507,11 +8579,17 @@ def rollup(self, value: Optional[pulumi.Input[str]]): class SloObjectiveCountMetricTotalThousandeyeArgs: def __init__(__self__, *, test_id: pulumi.Input[int]): + """ + :param pulumi.Input[int] test_id: ID of the test + """ pulumi.set(__self__, "test_id", test_id) @property @pulumi.getter(name="testId") def test_id(self) -> pulumi.Input[int]: + """ + ID of the test + """ return pulumi.get(self, "test_id") @test_id.setter @@ -4522,17 +8600,22 @@ def test_id(self, value: pulumi.Input[int]): @pulumi.input_type class SloObjectiveRawMetricArgs: def __init__(__self__, *, - queries: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryArgs']]]] = None): - if queries is not None: - pulumi.set(__self__, "queries", queries) + queries: pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryArgs']]]): + """ + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryArgs']]] queries: Query for the metrics + """ + pulumi.set(__self__, "queries", queries) @property @pulumi.getter - def queries(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryArgs']]]]: + def queries(self) -> pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryArgs']]]: + """ + Query for the metrics + """ return pulumi.get(self, "queries") @queries.setter - def queries(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryArgs']]]]): + def queries(self, value: pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryArgs']]]): pulumi.set(self, "queries", value) @@ -4541,6 +8624,7 @@ class SloObjectiveRawMetricQueryArgs: def __init__(__self__, *, amazon_prometheuses: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAmazonPrometheusArgs']]]] = None, appdynamics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAppdynamicArgs']]]] = None, + azure_monitors: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorArgs']]]] = None, bigqueries: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryBigqueryArgs']]]] = None, cloudwatches: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryCloudwatchArgs']]]] = None, datadogs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryDatadogArgs']]]] = None, @@ -4549,6 +8633,7 @@ def __init__(__self__, *, gcms: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGcmArgs']]]] = None, grafana_lokis: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGrafanaLokiArgs']]]] = None, graphites: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGraphiteArgs']]]] = None, + honeycombs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryHoneycombArgs']]]] = None, influxdbs: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInfluxdbArgs']]]] = None, instanas: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaArgs']]]] = None, lightsteps: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryLightstepArgs']]]] = None, @@ -4561,10 +8646,38 @@ def __init__(__self__, *, splunks: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQuerySplunkArgs']]]] = None, sumologics: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQuerySumologicArgs']]]] = None, thousandeyes: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryThousandeyeArgs']]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAmazonPrometheusArgs']]] amazon_prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAppdynamicArgs']]] appdynamics: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorArgs']]] azure_monitors: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryBigqueryArgs']]] bigqueries: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryCloudwatchArgs']]] cloudwatches: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryDatadogArgs']]] datadogs: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryDynatraceArgs']]] dynatraces: [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryElasticsearchArgs']]] elasticsearches: [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGcmArgs']]] gcms: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGrafanaLokiArgs']]] grafana_lokis: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGraphiteArgs']]] graphites: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryHoneycombArgs']]] honeycombs: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInfluxdbArgs']]] influxdbs: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaArgs']]] instanas: [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryLightstepArgs']]] lightsteps: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryNewrelicArgs']]] newrelics: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryOpentsdbArgs']]] opentsdbs: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryPingdomArgs']]] pingdoms: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryPrometheusArgs']]] prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryRedshiftArgs']]] redshifts: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQuerySplunkObservabilityArgs']]] splunk_observabilities: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQuerySplunkArgs']]] splunks: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQuerySumologicArgs']]] sumologics: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryThousandeyeArgs']]] thousandeyes: [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ if amazon_prometheuses is not None: pulumi.set(__self__, "amazon_prometheuses", amazon_prometheuses) if appdynamics is not None: pulumi.set(__self__, "appdynamics", appdynamics) + if azure_monitors is not None: + pulumi.set(__self__, "azure_monitors", azure_monitors) if bigqueries is not None: pulumi.set(__self__, "bigqueries", bigqueries) if cloudwatches is not None: @@ -4581,6 +8694,8 @@ def __init__(__self__, *, pulumi.set(__self__, "grafana_lokis", grafana_lokis) if graphites is not None: pulumi.set(__self__, "graphites", graphites) + if honeycombs is not None: + pulumi.set(__self__, "honeycombs", honeycombs) if influxdbs is not None: pulumi.set(__self__, "influxdbs", influxdbs) if instanas is not None: @@ -4609,6 +8724,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="amazonPrometheuses") def amazon_prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAmazonPrometheusArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + """ return pulumi.get(self, "amazon_prometheuses") @amazon_prometheuses.setter @@ -4618,15 +8736,33 @@ def amazon_prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input @property @pulumi.getter def appdynamics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAppdynamicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + """ return pulumi.get(self, "appdynamics") @appdynamics.setter def appdynamics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAppdynamicArgs']]]]): pulumi.set(self, "appdynamics", value) + @property + @pulumi.getter(name="azureMonitors") + def azure_monitors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + """ + return pulumi.get(self, "azure_monitors") + + @azure_monitors.setter + def azure_monitors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorArgs']]]]): + pulumi.set(self, "azure_monitors", value) + @property @pulumi.getter def bigqueries(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryBigqueryArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + """ return pulumi.get(self, "bigqueries") @bigqueries.setter @@ -4636,6 +8772,9 @@ def bigqueries(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def cloudwatches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryCloudwatchArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + """ return pulumi.get(self, "cloudwatches") @cloudwatches.setter @@ -4645,6 +8784,9 @@ def cloudwatches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloOb @property @pulumi.getter def datadogs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryDatadogArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + """ return pulumi.get(self, "datadogs") @datadogs.setter @@ -4654,6 +8796,9 @@ def datadogs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObject @property @pulumi.getter def dynatraces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryDynatraceArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + """ return pulumi.get(self, "dynatraces") @dynatraces.setter @@ -4663,6 +8808,9 @@ def dynatraces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def elasticsearches(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryElasticsearchArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + """ return pulumi.get(self, "elasticsearches") @elasticsearches.setter @@ -4672,6 +8820,9 @@ def elasticsearches(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Sl @property @pulumi.getter def gcms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGcmArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + """ return pulumi.get(self, "gcms") @gcms.setter @@ -4681,6 +8832,9 @@ def gcms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveR @property @pulumi.getter(name="grafanaLokis") def grafana_lokis(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGrafanaLokiArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + """ return pulumi.get(self, "grafana_lokis") @grafana_lokis.setter @@ -4690,15 +8844,33 @@ def grafana_lokis(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloO @property @pulumi.getter def graphites(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGraphiteArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + """ return pulumi.get(self, "graphites") @graphites.setter def graphites(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryGraphiteArgs']]]]): pulumi.set(self, "graphites", value) + @property + @pulumi.getter + def honeycombs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryHoneycombArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + """ + return pulumi.get(self, "honeycombs") + + @honeycombs.setter + def honeycombs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryHoneycombArgs']]]]): + pulumi.set(self, "honeycombs", value) + @property @pulumi.getter def influxdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInfluxdbArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + """ return pulumi.get(self, "influxdbs") @influxdbs.setter @@ -4708,6 +8880,9 @@ def influxdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter def instanas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + """ return pulumi.get(self, "instanas") @instanas.setter @@ -4717,6 +8892,9 @@ def instanas(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObject @property @pulumi.getter def lightsteps(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryLightstepArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + """ return pulumi.get(self, "lightsteps") @lightsteps.setter @@ -4726,6 +8904,9 @@ def lightsteps(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def newrelics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryNewrelicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + """ return pulumi.get(self, "newrelics") @newrelics.setter @@ -4735,6 +8916,9 @@ def newrelics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter def opentsdbs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryOpentsdbArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + """ return pulumi.get(self, "opentsdbs") @opentsdbs.setter @@ -4744,6 +8928,9 @@ def opentsdbs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter def pingdoms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryPingdomArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + """ return pulumi.get(self, "pingdoms") @pingdoms.setter @@ -4753,6 +8940,9 @@ def pingdoms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObject @property @pulumi.getter def prometheuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryPrometheusArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + """ return pulumi.get(self, "prometheuses") @prometheuses.setter @@ -4762,6 +8952,9 @@ def prometheuses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloOb @property @pulumi.getter def redshifts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryRedshiftArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + """ return pulumi.get(self, "redshifts") @redshifts.setter @@ -4771,6 +8964,9 @@ def redshifts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjec @property @pulumi.getter(name="splunkObservabilities") def splunk_observabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQuerySplunkObservabilityArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + """ return pulumi.get(self, "splunk_observabilities") @splunk_observabilities.setter @@ -4780,6 +8976,9 @@ def splunk_observabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.In @property @pulumi.getter def splunks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQuerySplunkArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + """ return pulumi.get(self, "splunks") @splunks.setter @@ -4789,6 +8988,9 @@ def splunks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjecti @property @pulumi.getter def sumologics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQuerySumologicArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + """ return pulumi.get(self, "sumologics") @sumologics.setter @@ -4797,55 +8999,297 @@ def sumologics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter - def thousandeyes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryThousandeyeArgs']]]]: - return pulumi.get(self, "thousandeyes") - - @thousandeyes.setter - def thousandeyes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryThousandeyeArgs']]]]): - pulumi.set(self, "thousandeyes", value) - + def thousandeyes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryThousandeyeArgs']]]]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ + return pulumi.get(self, "thousandeyes") + + @thousandeyes.setter + def thousandeyes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryThousandeyeArgs']]]]): + pulumi.set(self, "thousandeyes", value) + + +@pulumi.input_type +class SloObjectiveRawMetricQueryAmazonPrometheusArgs: + def __init__(__self__, *, + promql: pulumi.Input[str]): + """ + :param pulumi.Input[str] promql: Query for the metrics + """ + pulumi.set(__self__, "promql", promql) + + @property + @pulumi.getter + def promql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "promql") + + @promql.setter + def promql(self, value: pulumi.Input[str]): + pulumi.set(self, "promql", value) + + +@pulumi.input_type +class SloObjectiveRawMetricQueryAppdynamicArgs: + def __init__(__self__, *, + application_name: pulumi.Input[str], + metric_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] application_name: Name of the added application + :param pulumi.Input[str] metric_path: Path to the metrics + """ + pulumi.set(__self__, "application_name", application_name) + pulumi.set(__self__, "metric_path", metric_path) + + @property + @pulumi.getter(name="applicationName") + def application_name(self) -> pulumi.Input[str]: + """ + Name of the added application + """ + return pulumi.get(self, "application_name") + + @application_name.setter + def application_name(self, value: pulumi.Input[str]): + pulumi.set(self, "application_name", value) + + @property + @pulumi.getter(name="metricPath") + def metric_path(self) -> pulumi.Input[str]: + """ + Path to the metrics + """ + return pulumi.get(self, "metric_path") + + @metric_path.setter + def metric_path(self, value: pulumi.Input[str]): + pulumi.set(self, "metric_path", value) + + +@pulumi.input_type +class SloObjectiveRawMetricQueryAzureMonitorArgs: + def __init__(__self__, *, + data_type: pulumi.Input[str], + aggregation: Optional[pulumi.Input[str]] = None, + dimensions: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorDimensionArgs']]]] = None, + kql_query: Optional[pulumi.Input[str]] = None, + metric_name: Optional[pulumi.Input[str]] = None, + metric_namespace: Optional[pulumi.Input[str]] = None, + resource_id: Optional[pulumi.Input[str]] = None, + workspaces: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs']]]] = None): + """ + :param pulumi.Input[str] data_type: Specifies source: 'metrics' or 'logs' + :param pulumi.Input[str] aggregation: Aggregation type [Required for metrics] + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorDimensionArgs']]] dimensions: Dimensions of the metric [Optional for metrics] + :param pulumi.Input[str] kql_query: Logs query in Kusto Query Language [Required for logs] + :param pulumi.Input[str] metric_name: Name of the metric [Required for metrics] + :param pulumi.Input[str] metric_namespace: Namespace of the metric [Optional for metrics] + :param pulumi.Input[str] resource_id: Identifier of the Azure Cloud resource [Required for metrics] + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs']]] workspaces: Log analytics workspace [Required for logs] + """ + pulumi.set(__self__, "data_type", data_type) + if aggregation is not None: + pulumi.set(__self__, "aggregation", aggregation) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if kql_query is not None: + pulumi.set(__self__, "kql_query", kql_query) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if metric_namespace is not None: + pulumi.set(__self__, "metric_namespace", metric_namespace) + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if workspaces is not None: + pulumi.set(__self__, "workspaces", workspaces) + + @property + @pulumi.getter(name="dataType") + def data_type(self) -> pulumi.Input[str]: + """ + Specifies source: 'metrics' or 'logs' + """ + return pulumi.get(self, "data_type") + + @data_type.setter + def data_type(self, value: pulumi.Input[str]): + pulumi.set(self, "data_type", value) + + @property + @pulumi.getter + def aggregation(self) -> Optional[pulumi.Input[str]]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @aggregation.setter + def aggregation(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "aggregation", value) + + @property + @pulumi.getter + def dimensions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorDimensionArgs']]]]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @dimensions.setter + def dimensions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorDimensionArgs']]]]): + pulumi.set(self, "dimensions", value) + + @property + @pulumi.getter(name="kqlQuery") + def kql_query(self) -> Optional[pulumi.Input[str]]: + """ + Logs query in Kusto Query Language [Required for logs] + """ + return pulumi.get(self, "kql_query") + + @kql_query.setter + def kql_query(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kql_query", value) + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @metric_name.setter + def metric_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_name", value) + + @property + @pulumi.getter(name="metricNamespace") + def metric_namespace(self) -> Optional[pulumi.Input[str]]: + """ + Namespace of the metric [Optional for metrics] + """ + return pulumi.get(self, "metric_namespace") + + @metric_namespace.setter + def metric_namespace(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "metric_namespace", value) + + @property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[pulumi.Input[str]]: + """ + Identifier of the Azure Cloud resource [Required for metrics] + """ + return pulumi.get(self, "resource_id") + + @resource_id.setter + def resource_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "resource_id", value) + + @property + @pulumi.getter + def workspaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs']]]]: + """ + Log analytics workspace [Required for logs] + """ + return pulumi.get(self, "workspaces") + + @workspaces.setter + def workspaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs']]]]): + pulumi.set(self, "workspaces", value) + + +@pulumi.input_type +class SloObjectiveRawMetricQueryAzureMonitorDimensionArgs: + def __init__(__self__, *, + name: pulumi.Input[str], + value: pulumi.Input[str]): + """ + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> pulumi.Input[str]: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") -@pulumi.input_type -class SloObjectiveRawMetricQueryAmazonPrometheusArgs: - def __init__(__self__, *, - promql: pulumi.Input[str]): - pulumi.set(__self__, "promql", promql) + @name.setter + def name(self, value: pulumi.Input[str]): + pulumi.set(self, "name", value) @property @pulumi.getter - def promql(self) -> pulumi.Input[str]: - return pulumi.get(self, "promql") + def value(self) -> pulumi.Input[str]: + """ + Burn rate value. + """ + return pulumi.get(self, "value") - @promql.setter - def promql(self, value: pulumi.Input[str]): - pulumi.set(self, "promql", value) + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) @pulumi.input_type -class SloObjectiveRawMetricQueryAppdynamicArgs: +class SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs: def __init__(__self__, *, - application_name: pulumi.Input[str], - metric_path: pulumi.Input[str]): - pulumi.set(__self__, "application_name", application_name) - pulumi.set(__self__, "metric_path", metric_path) + resource_group: pulumi.Input[str], + subscription_id: pulumi.Input[str], + workspace_id: pulumi.Input[str]): + """ + :param pulumi.Input[str] resource_group: Resource group of the workspace + :param pulumi.Input[str] subscription_id: Subscription ID of the workspace + :param pulumi.Input[str] workspace_id: ID of the workspace + """ + pulumi.set(__self__, "resource_group", resource_group) + pulumi.set(__self__, "subscription_id", subscription_id) + pulumi.set(__self__, "workspace_id", workspace_id) @property - @pulumi.getter(name="applicationName") - def application_name(self) -> pulumi.Input[str]: - return pulumi.get(self, "application_name") + @pulumi.getter(name="resourceGroup") + def resource_group(self) -> pulumi.Input[str]: + """ + Resource group of the workspace + """ + return pulumi.get(self, "resource_group") - @application_name.setter - def application_name(self, value: pulumi.Input[str]): - pulumi.set(self, "application_name", value) + @resource_group.setter + def resource_group(self, value: pulumi.Input[str]): + pulumi.set(self, "resource_group", value) @property - @pulumi.getter(name="metricPath") - def metric_path(self) -> pulumi.Input[str]: - return pulumi.get(self, "metric_path") + @pulumi.getter(name="subscriptionId") + def subscription_id(self) -> pulumi.Input[str]: + """ + Subscription ID of the workspace + """ + return pulumi.get(self, "subscription_id") - @metric_path.setter - def metric_path(self, value: pulumi.Input[str]): - pulumi.set(self, "metric_path", value) + @subscription_id.setter + def subscription_id(self, value: pulumi.Input[str]): + pulumi.set(self, "subscription_id", value) + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> pulumi.Input[str]: + """ + ID of the workspace + """ + return pulumi.get(self, "workspace_id") + + @workspace_id.setter + def workspace_id(self, value: pulumi.Input[str]): + pulumi.set(self, "workspace_id", value) @pulumi.input_type @@ -4854,6 +9298,11 @@ def __init__(__self__, *, location: pulumi.Input[str], project_id: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] location: Location of you BigQuery + :param pulumi.Input[str] project_id: Project ID + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "location", location) pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @@ -4861,6 +9310,9 @@ def __init__(__self__, *, @property @pulumi.getter def location(self) -> pulumi.Input[str]: + """ + Location of you BigQuery + """ return pulumi.get(self, "location") @location.setter @@ -4870,6 +9322,9 @@ def location(self, value: pulumi.Input[str]): @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: + """ + Project ID + """ return pulumi.get(self, "project_id") @project_id.setter @@ -4879,6 +9334,9 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -4890,13 +9348,26 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveRawMetricQueryCloudwatchArgs: def __init__(__self__, *, region: pulumi.Input[str], + account_id: Optional[pulumi.Input[str]] = None, dimensions: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryCloudwatchDimensionArgs']]]] = None, json: Optional[pulumi.Input[str]] = None, metric_name: Optional[pulumi.Input[str]] = None, namespace: Optional[pulumi.Input[str]] = None, sql: Optional[pulumi.Input[str]] = None, stat: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] region: Region of the CloudWatch instance + :param pulumi.Input[str] account_id: AccountID used with cross-account observability feature + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryCloudwatchDimensionArgs']]] dimensions: Dimensions of the metric [Optional for metrics] + :param pulumi.Input[str] json: JSON query + :param pulumi.Input[str] metric_name: Name of the metric [Required for metrics] + :param pulumi.Input[str] namespace: Namespace of the metric + :param pulumi.Input[str] sql: SQL query + :param pulumi.Input[str] stat: Metric data aggregations + """ pulumi.set(__self__, "region", region) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) if dimensions is not None: pulumi.set(__self__, "dimensions", dimensions) if json is not None: @@ -4913,15 +9384,33 @@ def __init__(__self__, *, @property @pulumi.getter def region(self) -> pulumi.Input[str]: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @region.setter def region(self, value: pulumi.Input[str]): pulumi.set(self, "region", value) + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[pulumi.Input[str]]: + """ + AccountID used with cross-account observability feature + """ + return pulumi.get(self, "account_id") + + @account_id.setter + def account_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "account_id", value) + @property @pulumi.getter def dimensions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryCloudwatchDimensionArgs']]]]: + """ + Dimensions of the metric [Optional for metrics] + """ return pulumi.get(self, "dimensions") @dimensions.setter @@ -4931,6 +9420,9 @@ def dimensions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @property @pulumi.getter def json(self) -> Optional[pulumi.Input[str]]: + """ + JSON query + """ return pulumi.get(self, "json") @json.setter @@ -4940,6 +9432,9 @@ def json(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="metricName") def metric_name(self) -> Optional[pulumi.Input[str]]: + """ + Name of the metric [Required for metrics] + """ return pulumi.get(self, "metric_name") @metric_name.setter @@ -4949,6 +9444,9 @@ def metric_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def namespace(self) -> Optional[pulumi.Input[str]]: + """ + Namespace of the metric + """ return pulumi.get(self, "namespace") @namespace.setter @@ -4958,6 +9456,9 @@ def namespace(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def sql(self) -> Optional[pulumi.Input[str]]: + """ + SQL query + """ return pulumi.get(self, "sql") @sql.setter @@ -4967,6 +9468,9 @@ def sql(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def stat(self) -> Optional[pulumi.Input[str]]: + """ + Metric data aggregations + """ return pulumi.get(self, "stat") @stat.setter @@ -4980,7 +9484,8 @@ def __init__(__self__, *, name: pulumi.Input[str], value: pulumi.Input[str]): """ - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] value: Burn rate value. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -4989,7 +9494,7 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> pulumi.Input[str]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -5000,6 +9505,9 @@ def name(self, value: pulumi.Input[str]): @property @pulumi.getter def value(self) -> pulumi.Input[str]: + """ + Burn rate value. + """ return pulumi.get(self, "value") @value.setter @@ -5011,11 +9519,17 @@ def value(self, value: pulumi.Input[str]): class SloObjectiveRawMetricQueryDatadogArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5027,11 +9541,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveRawMetricQueryDynatraceArgs: def __init__(__self__, *, metric_selector: pulumi.Input[str]): + """ + :param pulumi.Input[str] metric_selector: Selector for the metrics + """ pulumi.set(__self__, "metric_selector", metric_selector) @property @pulumi.getter(name="metricSelector") def metric_selector(self) -> pulumi.Input[str]: + """ + Selector for the metrics + """ return pulumi.get(self, "metric_selector") @metric_selector.setter @@ -5044,12 +9564,19 @@ class SloObjectiveRawMetricQueryElasticsearchArgs: def __init__(__self__, *, index: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] index: Index of metrics we want to query + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "index", index) pulumi.set(__self__, "query", query) @property @pulumi.getter def index(self) -> pulumi.Input[str]: + """ + Index of metrics we want to query + """ return pulumi.get(self, "index") @index.setter @@ -5059,6 +9586,9 @@ def index(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5071,12 +9601,19 @@ class SloObjectiveRawMetricQueryGcmArgs: def __init__(__self__, *, project_id: pulumi.Input[str], query: pulumi.Input[str]): + """ + :param pulumi.Input[str] project_id: Project ID + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @property @pulumi.getter(name="projectId") def project_id(self) -> pulumi.Input[str]: + """ + Project ID + """ return pulumi.get(self, "project_id") @project_id.setter @@ -5086,6 +9623,9 @@ def project_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5097,11 +9637,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveRawMetricQueryGrafanaLokiArgs: def __init__(__self__, *, logql: pulumi.Input[str]): + """ + :param pulumi.Input[str] logql: Query for the logs + """ pulumi.set(__self__, "logql", logql) @property @pulumi.getter def logql(self) -> pulumi.Input[str]: + """ + Query for the logs + """ return pulumi.get(self, "logql") @logql.setter @@ -5113,11 +9659,17 @@ def logql(self, value: pulumi.Input[str]): class SloObjectiveRawMetricQueryGraphiteArgs: def __init__(__self__, *, metric_path: pulumi.Input[str]): + """ + :param pulumi.Input[str] metric_path: Path to the metrics + """ pulumi.set(__self__, "metric_path", metric_path) @property @pulumi.getter(name="metricPath") def metric_path(self) -> pulumi.Input[str]: + """ + Path to the metrics + """ return pulumi.get(self, "metric_path") @metric_path.setter @@ -5125,15 +9677,59 @@ def metric_path(self, value: pulumi.Input[str]): pulumi.set(self, "metric_path", value) +@pulumi.input_type +class SloObjectiveRawMetricQueryHoneycombArgs: + def __init__(__self__, *, + calculation: pulumi.Input[str], + attribute: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] calculation: Calculation type + :param pulumi.Input[str] attribute: Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + pulumi.set(__self__, "calculation", calculation) + if attribute is not None: + pulumi.set(__self__, "attribute", attribute) + + @property + @pulumi.getter + def calculation(self) -> pulumi.Input[str]: + """ + Calculation type + """ + return pulumi.get(self, "calculation") + + @calculation.setter + def calculation(self, value: pulumi.Input[str]): + pulumi.set(self, "calculation", value) + + @property + @pulumi.getter + def attribute(self) -> Optional[pulumi.Input[str]]: + """ + Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + return pulumi.get(self, "attribute") + + @attribute.setter + def attribute(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "attribute", value) + + @pulumi.input_type class SloObjectiveRawMetricQueryInfluxdbArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5147,6 +9743,11 @@ def __init__(__self__, *, metric_type: pulumi.Input[str], applications: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaApplicationArgs']]]] = None, infrastructures: Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaInfrastructureArgs']]]] = None): + """ + :param pulumi.Input[str] metric_type: Instana metric type 'application' or 'infrastructure' + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaApplicationArgs']]] applications: Infrastructure metric type + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaInfrastructureArgs']]] infrastructures: Infrastructure metric type + """ pulumi.set(__self__, "metric_type", metric_type) if applications is not None: pulumi.set(__self__, "applications", applications) @@ -5156,6 +9757,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricType") def metric_type(self) -> pulumi.Input[str]: + """ + Instana metric type 'application' or 'infrastructure' + """ return pulumi.get(self, "metric_type") @metric_type.setter @@ -5165,6 +9769,9 @@ def metric_type(self, value: pulumi.Input[str]): @property @pulumi.getter def applications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaApplicationArgs']]]]: + """ + Infrastructure metric type + """ return pulumi.get(self, "applications") @applications.setter @@ -5174,6 +9781,9 @@ def applications(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloOb @property @pulumi.getter def infrastructures(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaInfrastructureArgs']]]]: + """ + Infrastructure metric type + """ return pulumi.get(self, "infrastructures") @infrastructures.setter @@ -5190,6 +9800,14 @@ def __init__(__self__, *, metric_id: pulumi.Input[str], include_internal: Optional[pulumi.Input[bool]] = None, include_synthetic: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[str] aggregation: Aggregation type [Required for metrics] + :param pulumi.Input[str] api_query: API query user passes in a JSON format + :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs']]] group_bies: Group by method + :param pulumi.Input[str] metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param pulumi.Input[bool] include_internal: Include internal + :param pulumi.Input[bool] include_synthetic: Include synthetic + """ pulumi.set(__self__, "aggregation", aggregation) pulumi.set(__self__, "api_query", api_query) pulumi.set(__self__, "group_bies", group_bies) @@ -5202,6 +9820,9 @@ def __init__(__self__, *, @property @pulumi.getter def aggregation(self) -> pulumi.Input[str]: + """ + Aggregation type [Required for metrics] + """ return pulumi.get(self, "aggregation") @aggregation.setter @@ -5211,6 +9832,9 @@ def aggregation(self, value: pulumi.Input[str]): @property @pulumi.getter(name="apiQuery") def api_query(self) -> pulumi.Input[str]: + """ + API query user passes in a JSON format + """ return pulumi.get(self, "api_query") @api_query.setter @@ -5220,6 +9844,9 @@ def api_query(self, value: pulumi.Input[str]): @property @pulumi.getter(name="groupBies") def group_bies(self) -> pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs']]]: + """ + Group by method + """ return pulumi.get(self, "group_bies") @group_bies.setter @@ -5229,6 +9856,9 @@ def group_bies(self, value: pulumi.Input[Sequence[pulumi.Input['SloObjectiveRawM @property @pulumi.getter(name="metricId") def metric_id(self) -> pulumi.Input[str]: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @metric_id.setter @@ -5238,6 +9868,9 @@ def metric_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="includeInternal") def include_internal(self) -> Optional[pulumi.Input[bool]]: + """ + Include internal + """ return pulumi.get(self, "include_internal") @include_internal.setter @@ -5247,6 +9880,9 @@ def include_internal(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="includeSynthetic") def include_synthetic(self) -> Optional[pulumi.Input[bool]]: + """ + Include synthetic + """ return pulumi.get(self, "include_synthetic") @include_synthetic.setter @@ -5260,6 +9896,10 @@ def __init__(__self__, *, tag: pulumi.Input[str], tag_entity: pulumi.Input[str], tag_second_level_key: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] tag: Group by tag + :param pulumi.Input[str] tag_entity: Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ pulumi.set(__self__, "tag", tag) pulumi.set(__self__, "tag_entity", tag_entity) if tag_second_level_key is not None: @@ -5268,6 +9908,9 @@ def __init__(__self__, *, @property @pulumi.getter def tag(self) -> pulumi.Input[str]: + """ + Group by tag + """ return pulumi.get(self, "tag") @tag.setter @@ -5277,6 +9920,9 @@ def tag(self, value: pulumi.Input[str]): @property @pulumi.getter(name="tagEntity") def tag_entity(self) -> pulumi.Input[str]: + """ + Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ return pulumi.get(self, "tag_entity") @tag_entity.setter @@ -5301,6 +9947,13 @@ def __init__(__self__, *, plugin_id: pulumi.Input[str], query: Optional[pulumi.Input[str]] = None, snapshot_id: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param pulumi.Input[str] metric_retrieval_method: Metric retrieval method 'query' or 'snapshot' + :param pulumi.Input[str] plugin_id: Plugin ID + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] snapshot_id: Snapshot ID + """ pulumi.set(__self__, "metric_id", metric_id) pulumi.set(__self__, "metric_retrieval_method", metric_retrieval_method) pulumi.set(__self__, "plugin_id", plugin_id) @@ -5312,6 +9965,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricId") def metric_id(self) -> pulumi.Input[str]: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @metric_id.setter @@ -5321,6 +9977,9 @@ def metric_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="metricRetrievalMethod") def metric_retrieval_method(self) -> pulumi.Input[str]: + """ + Metric retrieval method 'query' or 'snapshot' + """ return pulumi.get(self, "metric_retrieval_method") @metric_retrieval_method.setter @@ -5330,6 +9989,9 @@ def metric_retrieval_method(self, value: pulumi.Input[str]): @property @pulumi.getter(name="pluginId") def plugin_id(self) -> pulumi.Input[str]: + """ + Plugin ID + """ return pulumi.get(self, "plugin_id") @plugin_id.setter @@ -5339,6 +10001,9 @@ def plugin_id(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> Optional[pulumi.Input[str]]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5348,6 +10013,9 @@ def query(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[pulumi.Input[str]]: + """ + Snapshot ID + """ return pulumi.get(self, "snapshot_id") @snapshot_id.setter @@ -5362,6 +10030,12 @@ def __init__(__self__, *, percentile: Optional[pulumi.Input[float]] = None, stream_id: Optional[pulumi.Input[str]] = None, uql: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] type_of_data: Type of data to filter by + :param pulumi.Input[float] percentile: Optional value to filter by percentiles + :param pulumi.Input[str] stream_id: ID of the metrics stream + :param pulumi.Input[str] uql: UQL query + """ pulumi.set(__self__, "type_of_data", type_of_data) if percentile is not None: pulumi.set(__self__, "percentile", percentile) @@ -5373,6 +10047,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="typeOfData") def type_of_data(self) -> pulumi.Input[str]: + """ + Type of data to filter by + """ return pulumi.get(self, "type_of_data") @type_of_data.setter @@ -5382,6 +10059,9 @@ def type_of_data(self, value: pulumi.Input[str]): @property @pulumi.getter def percentile(self) -> Optional[pulumi.Input[float]]: + """ + Optional value to filter by percentiles + """ return pulumi.get(self, "percentile") @percentile.setter @@ -5391,6 +10071,9 @@ def percentile(self, value: Optional[pulumi.Input[float]]): @property @pulumi.getter(name="streamId") def stream_id(self) -> Optional[pulumi.Input[str]]: + """ + ID of the metrics stream + """ return pulumi.get(self, "stream_id") @stream_id.setter @@ -5400,6 +10083,9 @@ def stream_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def uql(self) -> Optional[pulumi.Input[str]]: + """ + UQL query + """ return pulumi.get(self, "uql") @uql.setter @@ -5411,11 +10097,17 @@ def uql(self, value: Optional[pulumi.Input[str]]): class SloObjectiveRawMetricQueryNewrelicArgs: def __init__(__self__, *, nrql: pulumi.Input[str]): + """ + :param pulumi.Input[str] nrql: Query for the metrics + """ pulumi.set(__self__, "nrql", nrql) @property @pulumi.getter def nrql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "nrql") @nrql.setter @@ -5427,11 +10119,17 @@ def nrql(self, value: pulumi.Input[str]): class SloObjectiveRawMetricQueryOpentsdbArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5445,6 +10143,11 @@ def __init__(__self__, *, check_id: pulumi.Input[str], check_type: Optional[pulumi.Input[str]] = None, status: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] check_id: Pingdom uptime or transaction check's ID + :param pulumi.Input[str] check_type: Pingdom check type - uptime or transaction + :param pulumi.Input[str] status: Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ pulumi.set(__self__, "check_id", check_id) if check_type is not None: pulumi.set(__self__, "check_type", check_type) @@ -5454,6 +10157,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="checkId") def check_id(self) -> pulumi.Input[str]: + """ + Pingdom uptime or transaction check's ID + """ return pulumi.get(self, "check_id") @check_id.setter @@ -5463,6 +10169,9 @@ def check_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="checkType") def check_type(self) -> Optional[pulumi.Input[str]]: + """ + Pingdom check type - uptime or transaction + """ return pulumi.get(self, "check_type") @check_type.setter @@ -5472,6 +10181,9 @@ def check_type(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def status(self) -> Optional[pulumi.Input[str]]: + """ + Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ return pulumi.get(self, "status") @status.setter @@ -5483,11 +10195,17 @@ def status(self, value: Optional[pulumi.Input[str]]): class SloObjectiveRawMetricQueryPrometheusArgs: def __init__(__self__, *, promql: pulumi.Input[str]): + """ + :param pulumi.Input[str] promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter def promql(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "promql") @promql.setter @@ -5502,6 +10220,12 @@ def __init__(__self__, *, database_name: pulumi.Input[str], query: pulumi.Input[str], region: pulumi.Input[str]): + """ + :param pulumi.Input[str] cluster_id: Redshift custer ID + :param pulumi.Input[str] database_name: Database name + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] region: Region of the CloudWatch instance + """ pulumi.set(__self__, "cluster_id", cluster_id) pulumi.set(__self__, "database_name", database_name) pulumi.set(__self__, "query", query) @@ -5510,6 +10234,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> pulumi.Input[str]: + """ + Redshift custer ID + """ return pulumi.get(self, "cluster_id") @cluster_id.setter @@ -5519,6 +10246,9 @@ def cluster_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="databaseName") def database_name(self) -> pulumi.Input[str]: + """ + Database name + """ return pulumi.get(self, "database_name") @database_name.setter @@ -5528,6 +10258,9 @@ def database_name(self, value: pulumi.Input[str]): @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5537,6 +10270,9 @@ def query(self, value: pulumi.Input[str]): @property @pulumi.getter def region(self) -> pulumi.Input[str]: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @region.setter @@ -5548,11 +10284,17 @@ def region(self, value: pulumi.Input[str]): class SloObjectiveRawMetricQuerySplunkArgs: def __init__(__self__, *, query: pulumi.Input[str]): + """ + :param pulumi.Input[str] query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5564,11 +10306,17 @@ def query(self, value: pulumi.Input[str]): class SloObjectiveRawMetricQuerySplunkObservabilityArgs: def __init__(__self__, *, program: pulumi.Input[str]): + """ + :param pulumi.Input[str] program: Query for the metrics + """ pulumi.set(__self__, "program", program) @property @pulumi.getter def program(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "program") @program.setter @@ -5583,6 +10331,12 @@ def __init__(__self__, *, type: pulumi.Input[str], quantization: Optional[pulumi.Input[str]] = None, rollup: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] query: Query for the metrics + :param pulumi.Input[str] type: Sumologic source - metrics or logs + :param pulumi.Input[str] quantization: Period of data aggregation + :param pulumi.Input[str] rollup: Aggregation function - avg, sum, min, max, count, none + """ pulumi.set(__self__, "query", query) pulumi.set(__self__, "type", type) if quantization is not None: @@ -5593,6 +10347,9 @@ def __init__(__self__, *, @property @pulumi.getter def query(self) -> pulumi.Input[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @query.setter @@ -5602,6 +10359,9 @@ def query(self, value: pulumi.Input[str]): @property @pulumi.getter def type(self) -> pulumi.Input[str]: + """ + Sumologic source - metrics or logs + """ return pulumi.get(self, "type") @type.setter @@ -5611,6 +10371,9 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def quantization(self) -> Optional[pulumi.Input[str]]: + """ + Period of data aggregation + """ return pulumi.get(self, "quantization") @quantization.setter @@ -5620,6 +10383,9 @@ def quantization(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def rollup(self) -> Optional[pulumi.Input[str]]: + """ + Aggregation function - avg, sum, min, max, count, none + """ return pulumi.get(self, "rollup") @rollup.setter @@ -5631,11 +10397,17 @@ def rollup(self, value: Optional[pulumi.Input[str]]): class SloObjectiveRawMetricQueryThousandeyeArgs: def __init__(__self__, *, test_id: pulumi.Input[int]): + """ + :param pulumi.Input[int] test_id: ID of the test + """ pulumi.set(__self__, "test_id", test_id) @property @pulumi.getter(name="testId") def test_id(self) -> pulumi.Input[int]: + """ + ID of the test + """ return pulumi.get(self, "test_id") @test_id.setter @@ -5733,12 +10505,19 @@ class SloTimeWindowCalendarArgs: def __init__(__self__, *, start_time: pulumi.Input[str], time_zone: pulumi.Input[str]): + """ + :param pulumi.Input[str] start_time: Date of the start + :param pulumi.Input[str] time_zone: Timezone name in IANA Time Zone Database + """ pulumi.set(__self__, "start_time", start_time) pulumi.set(__self__, "time_zone", time_zone) @property @pulumi.getter(name="startTime") def start_time(self) -> pulumi.Input[str]: + """ + Date of the start + """ return pulumi.get(self, "start_time") @start_time.setter @@ -5748,6 +10527,9 @@ def start_time(self, value: pulumi.Input[str]): @property @pulumi.getter(name="timeZone") def time_zone(self) -> pulumi.Input[str]: + """ + Timezone name in IANA Time Zone Database + """ return pulumi.get(self, "time_zone") @time_zone.setter diff --git a/sdk/python/pulumi_nobl9/_utilities.py b/sdk/python/piclemx_pulumi_nobl9/_utilities.py similarity index 85% rename from sdk/python/pulumi_nobl9/_utilities.py rename to sdk/python/piclemx_pulumi_nobl9/_utilities.py index 7be1b7a..0f13389 100644 --- a/sdk/python/pulumi_nobl9/_utilities.py +++ b/sdk/python/piclemx_pulumi_nobl9/_utilities.py @@ -3,20 +3,26 @@ # *** Do not edit by hand unless you're certain you know what you are doing! *** +import asyncio import importlib.util import inspect import json import os -import pkg_resources import sys import typing import pulumi import pulumi.runtime +from pulumi.runtime.sync_await import _sync_await from semver import VersionInfo as SemverVersion from parver import Version as PEP440Version +if sys.version_info >= (3, 8): + from importlib import metadata +else: + import importlib_metadata as metadata + def get_env(*args): for v in args: @@ -70,7 +76,7 @@ def _get_semver_version(): # to receive a valid semver string when receiving requests from the language host, so it's our # responsibility as the library to convert our own PEP440 version into a valid semver string. - pep440_version_string = pkg_resources.require(root_package)[0].version + pep440_version_string = metadata.version(root_package) pep440_version = PEP440Version.parse(pep440_version_string) (major, minor, patch) = pep440_version.release prerelease = None @@ -246,5 +252,44 @@ def lifted_func(*args, opts=None, **kwargs): return (lambda _: lifted_func) + +def call_plain( + tok: str, + props: pulumi.Inputs, + res: typing.Optional[pulumi.Resource] = None, + typ: typing.Optional[type] = None, +) -> typing.Any: + """ + Wraps pulumi.runtime.plain to force the output and return it plainly. + """ + + output = pulumi.runtime.call(tok, props, res, typ) + + # Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency. + result, known, secret, _ = _sync_await(asyncio.ensure_future(_await_output(output))) + + problem = None + if not known: + problem = ' an unknown value' + elif secret: + problem = ' a secret value' + + if problem: + raise AssertionError( + f"Plain resource method '{tok}' incorrectly returned {problem}. " + + "This is an error in the provider, please report this to the provider developer." + ) + + return result + + +async def _await_output(o: pulumi.Output[typing.Any]) -> typing.Tuple[object, bool, bool, set]: + return ( + await o._future, + await o._is_known, + await o._is_secret, + await o._resources, + ) + def get_plugin_download_url(): - return "https://github.com/piclemx/pulumi-nobl9/releases/" + return "github://api.github.com/piclemx/pulumi-nobl9" diff --git a/sdk/python/pulumi_nobl9/agent.py b/sdk/python/piclemx_pulumi_nobl9/agent.py similarity index 85% rename from sdk/python/pulumi_nobl9/agent.py rename to sdk/python/piclemx_pulumi_nobl9/agent.py index 3df9b6b..8c85c4a 100644 --- a/sdk/python/pulumi_nobl9/agent.py +++ b/sdk/python/piclemx_pulumi_nobl9/agent.py @@ -18,9 +18,9 @@ class AgentArgs: def __init__(__self__, *, agent_type: pulumi.Input[str], project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], amazon_prometheus_config: Optional[pulumi.Input['AgentAmazonPrometheusConfigArgs']] = None, appdynamics_config: Optional[pulumi.Input['AgentAppdynamicsConfigArgs']] = None, + azure_monitor_config: Optional[pulumi.Input['AgentAzureMonitorConfigArgs']] = None, bigquery_config: Optional[pulumi.Input['AgentBigqueryConfigArgs']] = None, cloudwatch_config: Optional[pulumi.Input['AgentCloudwatchConfigArgs']] = None, datadog_config: Optional[pulumi.Input['AgentDatadogConfigArgs']] = None, @@ -31,6 +31,8 @@ def __init__(__self__, *, gcm_config: Optional[pulumi.Input['AgentGcmConfigArgs']] = None, grafana_loki_config: Optional[pulumi.Input['AgentGrafanaLokiConfigArgs']] = None, graphite_config: Optional[pulumi.Input['AgentGraphiteConfigArgs']] = None, + historical_data_retrieval: Optional[pulumi.Input['AgentHistoricalDataRetrievalArgs']] = None, + honeycomb_config: Optional[pulumi.Input['AgentHoneycombConfigArgs']] = None, influxdb_config: Optional[pulumi.Input['AgentInfluxdbConfigArgs']] = None, instana_config: Optional[pulumi.Input['AgentInstanaConfigArgs']] = None, lightstep_config: Optional[pulumi.Input['AgentLightstepConfigArgs']] = None, @@ -41,6 +43,8 @@ def __init__(__self__, *, prometheus_config: Optional[pulumi.Input['AgentPrometheusConfigArgs']] = None, query_delay: Optional[pulumi.Input['AgentQueryDelayArgs']] = None, redshift_config: Optional[pulumi.Input['AgentRedshiftConfigArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, splunk_config: Optional[pulumi.Input['AgentSplunkConfigArgs']] = None, splunk_observability_config: Optional[pulumi.Input['AgentSplunkObservabilityConfigArgs']] = None, sumologic_config: Optional[pulumi.Input['AgentSumologicConfigArgs']] = None, @@ -48,10 +52,10 @@ def __init__(__self__, *, """ The set of arguments for constructing a Agent resource. :param pulumi.Input[str] agent_type: The type of the Agent. Check [Supported Agent types | Nobl9 Documentation](https://docs.nobl9.com/Sources/) - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] project: Name of the Lightstep project. :param pulumi.Input['AgentAmazonPrometheusConfigArgs'] amazon_prometheus_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#ams-prometheus-agent) :param pulumi.Input['AgentAppdynamicsConfigArgs'] appdynamics_config: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) + :param pulumi.Input['AgentAzureMonitorConfigArgs'] azure_monitor_config: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) :param pulumi.Input['AgentBigqueryConfigArgs'] bigquery_config: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) :param pulumi.Input['AgentCloudwatchConfigArgs'] cloudwatch_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-agent) :param pulumi.Input['AgentDatadogConfigArgs'] datadog_config: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#datadog-agent) @@ -62,6 +66,8 @@ def __init__(__self__, *, :param pulumi.Input['AgentGcmConfigArgs'] gcm_config: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-agent) :param pulumi.Input['AgentGrafanaLokiConfigArgs'] grafana_loki_config: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#grafana-loki-agent) :param pulumi.Input['AgentGraphiteConfigArgs'] graphite_config: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) + :param pulumi.Input['AgentHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input['AgentHoneycombConfigArgs'] honeycomb_config: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) :param pulumi.Input['AgentInfluxdbConfigArgs'] influxdb_config: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) :param pulumi.Input['AgentInstanaConfigArgs'] instana_config: [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) :param pulumi.Input['AgentLightstepConfigArgs'] lightstep_config: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-agent) @@ -72,6 +78,8 @@ def __init__(__self__, *, :param pulumi.Input['AgentPrometheusConfigArgs'] prometheus_config: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) :param pulumi.Input['AgentQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. :param pulumi.Input['AgentRedshiftConfigArgs'] redshift_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input['AgentSplunkConfigArgs'] splunk_config: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) :param pulumi.Input['AgentSplunkObservabilityConfigArgs'] splunk_observability_config: [Configuration documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-agent) :param pulumi.Input['AgentSumologicConfigArgs'] sumologic_config: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-agent) @@ -79,11 +87,12 @@ def __init__(__self__, *, """ pulumi.set(__self__, "agent_type", agent_type) pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) if amazon_prometheus_config is not None: pulumi.set(__self__, "amazon_prometheus_config", amazon_prometheus_config) if appdynamics_config is not None: pulumi.set(__self__, "appdynamics_config", appdynamics_config) + if azure_monitor_config is not None: + pulumi.set(__self__, "azure_monitor_config", azure_monitor_config) if bigquery_config is not None: pulumi.set(__self__, "bigquery_config", bigquery_config) if cloudwatch_config is not None: @@ -104,6 +113,10 @@ def __init__(__self__, *, pulumi.set(__self__, "grafana_loki_config", grafana_loki_config) if graphite_config is not None: pulumi.set(__self__, "graphite_config", graphite_config) + if historical_data_retrieval is not None: + pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if honeycomb_config is not None: + pulumi.set(__self__, "honeycomb_config", honeycomb_config) if influxdb_config is not None: pulumi.set(__self__, "influxdb_config", influxdb_config) if instana_config is not None: @@ -124,6 +137,13 @@ def __init__(__self__, *, pulumi.set(__self__, "query_delay", query_delay) if redshift_config is not None: pulumi.set(__self__, "redshift_config", redshift_config) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) if splunk_config is not None: pulumi.set(__self__, "splunk_config", splunk_config) if splunk_observability_config is not None: @@ -149,7 +169,7 @@ def agent_type(self, value: pulumi.Input[str]): @pulumi.getter def project(self) -> pulumi.Input[str]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name of the Lightstep project. """ return pulumi.get(self, "project") @@ -157,18 +177,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter(name="amazonPrometheusConfig") def amazon_prometheus_config(self) -> Optional[pulumi.Input['AgentAmazonPrometheusConfigArgs']]: @@ -193,6 +201,18 @@ def appdynamics_config(self) -> Optional[pulumi.Input['AgentAppdynamicsConfigArg def appdynamics_config(self, value: Optional[pulumi.Input['AgentAppdynamicsConfigArgs']]): pulumi.set(self, "appdynamics_config", value) + @property + @pulumi.getter(name="azureMonitorConfig") + def azure_monitor_config(self) -> Optional[pulumi.Input['AgentAzureMonitorConfigArgs']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + """ + return pulumi.get(self, "azure_monitor_config") + + @azure_monitor_config.setter + def azure_monitor_config(self, value: Optional[pulumi.Input['AgentAzureMonitorConfigArgs']]): + pulumi.set(self, "azure_monitor_config", value) + @property @pulumi.getter(name="bigqueryConfig") def bigquery_config(self) -> Optional[pulumi.Input['AgentBigqueryConfigArgs']]: @@ -313,6 +333,30 @@ def graphite_config(self) -> Optional[pulumi.Input['AgentGraphiteConfigArgs']]: def graphite_config(self, value: Optional[pulumi.Input['AgentGraphiteConfigArgs']]): pulumi.set(self, "graphite_config", value) + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> Optional[pulumi.Input['AgentHistoricalDataRetrievalArgs']]: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @historical_data_retrieval.setter + def historical_data_retrieval(self, value: Optional[pulumi.Input['AgentHistoricalDataRetrievalArgs']]): + pulumi.set(self, "historical_data_retrieval", value) + + @property + @pulumi.getter(name="honeycombConfig") + def honeycomb_config(self) -> Optional[pulumi.Input['AgentHoneycombConfigArgs']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + """ + return pulumi.get(self, "honeycomb_config") + + @honeycomb_config.setter + def honeycomb_config(self, value: Optional[pulumi.Input['AgentHoneycombConfigArgs']]): + pulumi.set(self, "honeycomb_config", value) + @property @pulumi.getter(name="influxdbConfig") def influxdb_config(self) -> Optional[pulumi.Input['AgentInfluxdbConfigArgs']]: @@ -433,6 +477,33 @@ def redshift_config(self) -> Optional[pulumi.Input['AgentRedshiftConfigArgs']]: def redshift_config(self, value: Optional[pulumi.Input['AgentRedshiftConfigArgs']]): pulumi.set(self, "redshift_config", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @property @pulumi.getter(name="splunkConfig") def splunk_config(self) -> Optional[pulumi.Input['AgentSplunkConfigArgs']]: @@ -488,6 +559,7 @@ def __init__(__self__, *, agent_type: Optional[pulumi.Input[str]] = None, amazon_prometheus_config: Optional[pulumi.Input['AgentAmazonPrometheusConfigArgs']] = None, appdynamics_config: Optional[pulumi.Input['AgentAppdynamicsConfigArgs']] = None, + azure_monitor_config: Optional[pulumi.Input['AgentAzureMonitorConfigArgs']] = None, bigquery_config: Optional[pulumi.Input['AgentBigqueryConfigArgs']] = None, client_id: Optional[pulumi.Input[str]] = None, client_secret: Optional[pulumi.Input[str]] = None, @@ -500,6 +572,8 @@ def __init__(__self__, *, gcm_config: Optional[pulumi.Input['AgentGcmConfigArgs']] = None, grafana_loki_config: Optional[pulumi.Input['AgentGrafanaLokiConfigArgs']] = None, graphite_config: Optional[pulumi.Input['AgentGraphiteConfigArgs']] = None, + historical_data_retrieval: Optional[pulumi.Input['AgentHistoricalDataRetrievalArgs']] = None, + honeycomb_config: Optional[pulumi.Input['AgentHoneycombConfigArgs']] = None, influxdb_config: Optional[pulumi.Input['AgentInfluxdbConfigArgs']] = None, instana_config: Optional[pulumi.Input['AgentInstanaConfigArgs']] = None, lightstep_config: Optional[pulumi.Input['AgentLightstepConfigArgs']] = None, @@ -511,6 +585,7 @@ def __init__(__self__, *, prometheus_config: Optional[pulumi.Input['AgentPrometheusConfigArgs']] = None, query_delay: Optional[pulumi.Input['AgentQueryDelayArgs']] = None, redshift_config: Optional[pulumi.Input['AgentRedshiftConfigArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, splunk_config: Optional[pulumi.Input['AgentSplunkConfigArgs']] = None, splunk_observability_config: Optional[pulumi.Input['AgentSplunkObservabilityConfigArgs']] = None, @@ -522,6 +597,7 @@ def __init__(__self__, *, :param pulumi.Input[str] agent_type: The type of the Agent. Check [Supported Agent types | Nobl9 Documentation](https://docs.nobl9.com/Sources/) :param pulumi.Input['AgentAmazonPrometheusConfigArgs'] amazon_prometheus_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#ams-prometheus-agent) :param pulumi.Input['AgentAppdynamicsConfigArgs'] appdynamics_config: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) + :param pulumi.Input['AgentAzureMonitorConfigArgs'] azure_monitor_config: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) :param pulumi.Input['AgentBigqueryConfigArgs'] bigquery_config: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) :param pulumi.Input[str] client_id: client_id of created agent. :param pulumi.Input[str] client_secret: client_secret of created agent. @@ -534,6 +610,8 @@ def __init__(__self__, *, :param pulumi.Input['AgentGcmConfigArgs'] gcm_config: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-agent) :param pulumi.Input['AgentGrafanaLokiConfigArgs'] grafana_loki_config: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#grafana-loki-agent) :param pulumi.Input['AgentGraphiteConfigArgs'] graphite_config: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) + :param pulumi.Input['AgentHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input['AgentHoneycombConfigArgs'] honeycomb_config: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) :param pulumi.Input['AgentInfluxdbConfigArgs'] influxdb_config: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) :param pulumi.Input['AgentInstanaConfigArgs'] instana_config: [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) :param pulumi.Input['AgentLightstepConfigArgs'] lightstep_config: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-agent) @@ -541,11 +619,12 @@ def __init__(__self__, *, :param pulumi.Input['AgentNewrelicConfigArgs'] newrelic_config: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-agent) :param pulumi.Input['AgentOpentsdbConfigArgs'] opentsdb_config: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#opentsdb-agent) :param pulumi.Input['AgentPingdomConfigArgs'] pingdom_config: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-agent) - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Lightstep project. :param pulumi.Input['AgentPrometheusConfigArgs'] prometheus_config: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) :param pulumi.Input['AgentQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. :param pulumi.Input['AgentRedshiftConfigArgs'] redshift_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input['AgentSplunkConfigArgs'] splunk_config: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) :param pulumi.Input['AgentSplunkObservabilityConfigArgs'] splunk_observability_config: [Configuration documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-agent) :param pulumi.Input[Mapping[str, Any]] status: Status of the created agent. @@ -558,6 +637,8 @@ def __init__(__self__, *, pulumi.set(__self__, "amazon_prometheus_config", amazon_prometheus_config) if appdynamics_config is not None: pulumi.set(__self__, "appdynamics_config", appdynamics_config) + if azure_monitor_config is not None: + pulumi.set(__self__, "azure_monitor_config", azure_monitor_config) if bigquery_config is not None: pulumi.set(__self__, "bigquery_config", bigquery_config) if client_id is not None: @@ -582,6 +663,10 @@ def __init__(__self__, *, pulumi.set(__self__, "grafana_loki_config", grafana_loki_config) if graphite_config is not None: pulumi.set(__self__, "graphite_config", graphite_config) + if historical_data_retrieval is not None: + pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if honeycomb_config is not None: + pulumi.set(__self__, "honeycomb_config", honeycomb_config) if influxdb_config is not None: pulumi.set(__self__, "influxdb_config", influxdb_config) if instana_config is not None: @@ -604,6 +689,11 @@ def __init__(__self__, *, pulumi.set(__self__, "query_delay", query_delay) if redshift_config is not None: pulumi.set(__self__, "redshift_config", redshift_config) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if splunk_config is not None: @@ -653,6 +743,18 @@ def appdynamics_config(self) -> Optional[pulumi.Input['AgentAppdynamicsConfigArg def appdynamics_config(self, value: Optional[pulumi.Input['AgentAppdynamicsConfigArgs']]): pulumi.set(self, "appdynamics_config", value) + @property + @pulumi.getter(name="azureMonitorConfig") + def azure_monitor_config(self) -> Optional[pulumi.Input['AgentAzureMonitorConfigArgs']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + """ + return pulumi.get(self, "azure_monitor_config") + + @azure_monitor_config.setter + def azure_monitor_config(self, value: Optional[pulumi.Input['AgentAzureMonitorConfigArgs']]): + pulumi.set(self, "azure_monitor_config", value) + @property @pulumi.getter(name="bigqueryConfig") def bigquery_config(self) -> Optional[pulumi.Input['AgentBigqueryConfigArgs']]: @@ -797,6 +899,30 @@ def graphite_config(self) -> Optional[pulumi.Input['AgentGraphiteConfigArgs']]: def graphite_config(self, value: Optional[pulumi.Input['AgentGraphiteConfigArgs']]): pulumi.set(self, "graphite_config", value) + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> Optional[pulumi.Input['AgentHistoricalDataRetrievalArgs']]: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @historical_data_retrieval.setter + def historical_data_retrieval(self, value: Optional[pulumi.Input['AgentHistoricalDataRetrievalArgs']]): + pulumi.set(self, "historical_data_retrieval", value) + + @property + @pulumi.getter(name="honeycombConfig") + def honeycomb_config(self) -> Optional[pulumi.Input['AgentHoneycombConfigArgs']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + """ + return pulumi.get(self, "honeycomb_config") + + @honeycomb_config.setter + def honeycomb_config(self, value: Optional[pulumi.Input['AgentHoneycombConfigArgs']]): + pulumi.set(self, "honeycomb_config", value) + @property @pulumi.getter(name="influxdbConfig") def influxdb_config(self) -> Optional[pulumi.Input['AgentInfluxdbConfigArgs']]: @@ -885,7 +1011,7 @@ def pingdom_config(self, value: Optional[pulumi.Input['AgentPingdomConfigArgs']] @pulumi.getter def project(self) -> Optional[pulumi.Input[str]]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name of the Lightstep project. """ return pulumi.get(self, "project") @@ -929,12 +1055,27 @@ def redshift_config(self) -> Optional[pulumi.Input['AgentRedshiftConfigArgs']]: def redshift_config(self, value: Optional[pulumi.Input['AgentRedshiftConfigArgs']]): pulumi.set(self, "redshift_config", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -1010,6 +1151,7 @@ def __init__(__self__, agent_type: Optional[pulumi.Input[str]] = None, amazon_prometheus_config: Optional[pulumi.Input[pulumi.InputType['AgentAmazonPrometheusConfigArgs']]] = None, appdynamics_config: Optional[pulumi.Input[pulumi.InputType['AgentAppdynamicsConfigArgs']]] = None, + azure_monitor_config: Optional[pulumi.Input[pulumi.InputType['AgentAzureMonitorConfigArgs']]] = None, bigquery_config: Optional[pulumi.Input[pulumi.InputType['AgentBigqueryConfigArgs']]] = None, cloudwatch_config: Optional[pulumi.Input[pulumi.InputType['AgentCloudwatchConfigArgs']]] = None, datadog_config: Optional[pulumi.Input[pulumi.InputType['AgentDatadogConfigArgs']]] = None, @@ -1020,6 +1162,8 @@ def __init__(__self__, gcm_config: Optional[pulumi.Input[pulumi.InputType['AgentGcmConfigArgs']]] = None, grafana_loki_config: Optional[pulumi.Input[pulumi.InputType['AgentGrafanaLokiConfigArgs']]] = None, graphite_config: Optional[pulumi.Input[pulumi.InputType['AgentGraphiteConfigArgs']]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['AgentHistoricalDataRetrievalArgs']]] = None, + honeycomb_config: Optional[pulumi.Input[pulumi.InputType['AgentHoneycombConfigArgs']]] = None, influxdb_config: Optional[pulumi.Input[pulumi.InputType['AgentInfluxdbConfigArgs']]] = None, instana_config: Optional[pulumi.Input[pulumi.InputType['AgentInstanaConfigArgs']]] = None, lightstep_config: Optional[pulumi.Input[pulumi.InputType['AgentLightstepConfigArgs']]] = None, @@ -1031,6 +1175,7 @@ def __init__(__self__, prometheus_config: Optional[pulumi.Input[pulumi.InputType['AgentPrometheusConfigArgs']]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['AgentQueryDelayArgs']]] = None, redshift_config: Optional[pulumi.Input[pulumi.InputType['AgentRedshiftConfigArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, splunk_config: Optional[pulumi.Input[pulumi.InputType['AgentSplunkConfigArgs']]] = None, splunk_observability_config: Optional[pulumi.Input[pulumi.InputType['AgentSplunkObservabilityConfigArgs']]] = None, @@ -1048,18 +1193,15 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this_project = nobl9.Project("thisProject", display_name="Test N9 Terraform", description="An example N9 Terraform project") this_agent = nobl9.Agent("thisAgent", project=this_project.name, - source_ofs=[ - "Metrics", - "Services", - ], agent_type="prometheus", + release_channel="stable", prometheus_config=nobl9.AgentPrometheusConfigArgs( url="http://web.net", )) @@ -1073,6 +1215,7 @@ def __init__(__self__, :param pulumi.Input[str] agent_type: The type of the Agent. Check [Supported Agent types | Nobl9 Documentation](https://docs.nobl9.com/Sources/) :param pulumi.Input[pulumi.InputType['AgentAmazonPrometheusConfigArgs']] amazon_prometheus_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#ams-prometheus-agent) :param pulumi.Input[pulumi.InputType['AgentAppdynamicsConfigArgs']] appdynamics_config: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) + :param pulumi.Input[pulumi.InputType['AgentAzureMonitorConfigArgs']] azure_monitor_config: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) :param pulumi.Input[pulumi.InputType['AgentBigqueryConfigArgs']] bigquery_config: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) :param pulumi.Input[pulumi.InputType['AgentCloudwatchConfigArgs']] cloudwatch_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-agent) :param pulumi.Input[pulumi.InputType['AgentDatadogConfigArgs']] datadog_config: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#datadog-agent) @@ -1083,6 +1226,8 @@ def __init__(__self__, :param pulumi.Input[pulumi.InputType['AgentGcmConfigArgs']] gcm_config: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-agent) :param pulumi.Input[pulumi.InputType['AgentGrafanaLokiConfigArgs']] grafana_loki_config: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#grafana-loki-agent) :param pulumi.Input[pulumi.InputType['AgentGraphiteConfigArgs']] graphite_config: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) + :param pulumi.Input[pulumi.InputType['AgentHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[pulumi.InputType['AgentHoneycombConfigArgs']] honeycomb_config: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) :param pulumi.Input[pulumi.InputType['AgentInfluxdbConfigArgs']] influxdb_config: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) :param pulumi.Input[pulumi.InputType['AgentInstanaConfigArgs']] instana_config: [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) :param pulumi.Input[pulumi.InputType['AgentLightstepConfigArgs']] lightstep_config: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-agent) @@ -1090,11 +1235,12 @@ def __init__(__self__, :param pulumi.Input[pulumi.InputType['AgentNewrelicConfigArgs']] newrelic_config: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-agent) :param pulumi.Input[pulumi.InputType['AgentOpentsdbConfigArgs']] opentsdb_config: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#opentsdb-agent) :param pulumi.Input[pulumi.InputType['AgentPingdomConfigArgs']] pingdom_config: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-agent) - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Lightstep project. :param pulumi.Input[pulumi.InputType['AgentPrometheusConfigArgs']] prometheus_config: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) :param pulumi.Input[pulumi.InputType['AgentQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. :param pulumi.Input[pulumi.InputType['AgentRedshiftConfigArgs']] redshift_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[pulumi.InputType['AgentSplunkConfigArgs']] splunk_config: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) :param pulumi.Input[pulumi.InputType['AgentSplunkObservabilityConfigArgs']] splunk_observability_config: [Configuration documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-agent) :param pulumi.Input[pulumi.InputType['AgentSumologicConfigArgs']] sumologic_config: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-agent) @@ -1117,18 +1263,15 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this_project = nobl9.Project("thisProject", display_name="Test N9 Terraform", description="An example N9 Terraform project") this_agent = nobl9.Agent("thisAgent", project=this_project.name, - source_ofs=[ - "Metrics", - "Services", - ], agent_type="prometheus", + release_channel="stable", prometheus_config=nobl9.AgentPrometheusConfigArgs( url="http://web.net", )) @@ -1155,6 +1298,7 @@ def _internal_init(__self__, agent_type: Optional[pulumi.Input[str]] = None, amazon_prometheus_config: Optional[pulumi.Input[pulumi.InputType['AgentAmazonPrometheusConfigArgs']]] = None, appdynamics_config: Optional[pulumi.Input[pulumi.InputType['AgentAppdynamicsConfigArgs']]] = None, + azure_monitor_config: Optional[pulumi.Input[pulumi.InputType['AgentAzureMonitorConfigArgs']]] = None, bigquery_config: Optional[pulumi.Input[pulumi.InputType['AgentBigqueryConfigArgs']]] = None, cloudwatch_config: Optional[pulumi.Input[pulumi.InputType['AgentCloudwatchConfigArgs']]] = None, datadog_config: Optional[pulumi.Input[pulumi.InputType['AgentDatadogConfigArgs']]] = None, @@ -1165,6 +1309,8 @@ def _internal_init(__self__, gcm_config: Optional[pulumi.Input[pulumi.InputType['AgentGcmConfigArgs']]] = None, grafana_loki_config: Optional[pulumi.Input[pulumi.InputType['AgentGrafanaLokiConfigArgs']]] = None, graphite_config: Optional[pulumi.Input[pulumi.InputType['AgentGraphiteConfigArgs']]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['AgentHistoricalDataRetrievalArgs']]] = None, + honeycomb_config: Optional[pulumi.Input[pulumi.InputType['AgentHoneycombConfigArgs']]] = None, influxdb_config: Optional[pulumi.Input[pulumi.InputType['AgentInfluxdbConfigArgs']]] = None, instana_config: Optional[pulumi.Input[pulumi.InputType['AgentInstanaConfigArgs']]] = None, lightstep_config: Optional[pulumi.Input[pulumi.InputType['AgentLightstepConfigArgs']]] = None, @@ -1176,6 +1322,7 @@ def _internal_init(__self__, prometheus_config: Optional[pulumi.Input[pulumi.InputType['AgentPrometheusConfigArgs']]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['AgentQueryDelayArgs']]] = None, redshift_config: Optional[pulumi.Input[pulumi.InputType['AgentRedshiftConfigArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, splunk_config: Optional[pulumi.Input[pulumi.InputType['AgentSplunkConfigArgs']]] = None, splunk_observability_config: Optional[pulumi.Input[pulumi.InputType['AgentSplunkObservabilityConfigArgs']]] = None, @@ -1195,6 +1342,7 @@ def _internal_init(__self__, __props__.__dict__["agent_type"] = agent_type __props__.__dict__["amazon_prometheus_config"] = amazon_prometheus_config __props__.__dict__["appdynamics_config"] = appdynamics_config + __props__.__dict__["azure_monitor_config"] = azure_monitor_config __props__.__dict__["bigquery_config"] = bigquery_config __props__.__dict__["cloudwatch_config"] = cloudwatch_config __props__.__dict__["datadog_config"] = datadog_config @@ -1205,6 +1353,8 @@ def _internal_init(__self__, __props__.__dict__["gcm_config"] = gcm_config __props__.__dict__["grafana_loki_config"] = grafana_loki_config __props__.__dict__["graphite_config"] = graphite_config + __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["honeycomb_config"] = honeycomb_config __props__.__dict__["influxdb_config"] = influxdb_config __props__.__dict__["instana_config"] = instana_config __props__.__dict__["lightstep_config"] = lightstep_config @@ -1218,8 +1368,7 @@ def _internal_init(__self__, __props__.__dict__["prometheus_config"] = prometheus_config __props__.__dict__["query_delay"] = query_delay __props__.__dict__["redshift_config"] = redshift_config - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["splunk_config"] = splunk_config __props__.__dict__["splunk_observability_config"] = splunk_observability_config @@ -1241,6 +1390,7 @@ def get(resource_name: str, agent_type: Optional[pulumi.Input[str]] = None, amazon_prometheus_config: Optional[pulumi.Input[pulumi.InputType['AgentAmazonPrometheusConfigArgs']]] = None, appdynamics_config: Optional[pulumi.Input[pulumi.InputType['AgentAppdynamicsConfigArgs']]] = None, + azure_monitor_config: Optional[pulumi.Input[pulumi.InputType['AgentAzureMonitorConfigArgs']]] = None, bigquery_config: Optional[pulumi.Input[pulumi.InputType['AgentBigqueryConfigArgs']]] = None, client_id: Optional[pulumi.Input[str]] = None, client_secret: Optional[pulumi.Input[str]] = None, @@ -1253,6 +1403,8 @@ def get(resource_name: str, gcm_config: Optional[pulumi.Input[pulumi.InputType['AgentGcmConfigArgs']]] = None, grafana_loki_config: Optional[pulumi.Input[pulumi.InputType['AgentGrafanaLokiConfigArgs']]] = None, graphite_config: Optional[pulumi.Input[pulumi.InputType['AgentGraphiteConfigArgs']]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['AgentHistoricalDataRetrievalArgs']]] = None, + honeycomb_config: Optional[pulumi.Input[pulumi.InputType['AgentHoneycombConfigArgs']]] = None, influxdb_config: Optional[pulumi.Input[pulumi.InputType['AgentInfluxdbConfigArgs']]] = None, instana_config: Optional[pulumi.Input[pulumi.InputType['AgentInstanaConfigArgs']]] = None, lightstep_config: Optional[pulumi.Input[pulumi.InputType['AgentLightstepConfigArgs']]] = None, @@ -1264,6 +1416,7 @@ def get(resource_name: str, prometheus_config: Optional[pulumi.Input[pulumi.InputType['AgentPrometheusConfigArgs']]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['AgentQueryDelayArgs']]] = None, redshift_config: Optional[pulumi.Input[pulumi.InputType['AgentRedshiftConfigArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, splunk_config: Optional[pulumi.Input[pulumi.InputType['AgentSplunkConfigArgs']]] = None, splunk_observability_config: Optional[pulumi.Input[pulumi.InputType['AgentSplunkObservabilityConfigArgs']]] = None, @@ -1280,6 +1433,7 @@ def get(resource_name: str, :param pulumi.Input[str] agent_type: The type of the Agent. Check [Supported Agent types | Nobl9 Documentation](https://docs.nobl9.com/Sources/) :param pulumi.Input[pulumi.InputType['AgentAmazonPrometheusConfigArgs']] amazon_prometheus_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#ams-prometheus-agent) :param pulumi.Input[pulumi.InputType['AgentAppdynamicsConfigArgs']] appdynamics_config: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-agent) + :param pulumi.Input[pulumi.InputType['AgentAzureMonitorConfigArgs']] azure_monitor_config: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) :param pulumi.Input[pulumi.InputType['AgentBigqueryConfigArgs']] bigquery_config: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-agent) :param pulumi.Input[str] client_id: client_id of created agent. :param pulumi.Input[str] client_secret: client_secret of created agent. @@ -1292,6 +1446,8 @@ def get(resource_name: str, :param pulumi.Input[pulumi.InputType['AgentGcmConfigArgs']] gcm_config: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-agent) :param pulumi.Input[pulumi.InputType['AgentGrafanaLokiConfigArgs']] grafana_loki_config: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#grafana-loki-agent) :param pulumi.Input[pulumi.InputType['AgentGraphiteConfigArgs']] graphite_config: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#graphite-agent) + :param pulumi.Input[pulumi.InputType['AgentHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[pulumi.InputType['AgentHoneycombConfigArgs']] honeycomb_config: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) :param pulumi.Input[pulumi.InputType['AgentInfluxdbConfigArgs']] influxdb_config: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-agent) :param pulumi.Input[pulumi.InputType['AgentInstanaConfigArgs']] instana_config: [Configuration documentation](https://docs.nobl9.com/Sources/instana#instana-agent) :param pulumi.Input[pulumi.InputType['AgentLightstepConfigArgs']] lightstep_config: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-agent) @@ -1299,11 +1455,12 @@ def get(resource_name: str, :param pulumi.Input[pulumi.InputType['AgentNewrelicConfigArgs']] newrelic_config: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-agent) :param pulumi.Input[pulumi.InputType['AgentOpentsdbConfigArgs']] opentsdb_config: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#opentsdb-agent) :param pulumi.Input[pulumi.InputType['AgentPingdomConfigArgs']] pingdom_config: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-agent) - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Lightstep project. :param pulumi.Input[pulumi.InputType['AgentPrometheusConfigArgs']] prometheus_config: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#prometheus-agent) :param pulumi.Input[pulumi.InputType['AgentQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. :param pulumi.Input[pulumi.InputType['AgentRedshiftConfigArgs']] redshift_config: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-agent) - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[pulumi.InputType['AgentSplunkConfigArgs']] splunk_config: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#splunk-agent) :param pulumi.Input[pulumi.InputType['AgentSplunkObservabilityConfigArgs']] splunk_observability_config: [Configuration documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-agent) :param pulumi.Input[Mapping[str, Any]] status: Status of the created agent. @@ -1317,6 +1474,7 @@ def get(resource_name: str, __props__.__dict__["agent_type"] = agent_type __props__.__dict__["amazon_prometheus_config"] = amazon_prometheus_config __props__.__dict__["appdynamics_config"] = appdynamics_config + __props__.__dict__["azure_monitor_config"] = azure_monitor_config __props__.__dict__["bigquery_config"] = bigquery_config __props__.__dict__["client_id"] = client_id __props__.__dict__["client_secret"] = client_secret @@ -1329,6 +1487,8 @@ def get(resource_name: str, __props__.__dict__["gcm_config"] = gcm_config __props__.__dict__["grafana_loki_config"] = grafana_loki_config __props__.__dict__["graphite_config"] = graphite_config + __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["honeycomb_config"] = honeycomb_config __props__.__dict__["influxdb_config"] = influxdb_config __props__.__dict__["instana_config"] = instana_config __props__.__dict__["lightstep_config"] = lightstep_config @@ -1340,6 +1500,7 @@ def get(resource_name: str, __props__.__dict__["prometheus_config"] = prometheus_config __props__.__dict__["query_delay"] = query_delay __props__.__dict__["redshift_config"] = redshift_config + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["splunk_config"] = splunk_config __props__.__dict__["splunk_observability_config"] = splunk_observability_config @@ -1372,6 +1533,14 @@ def appdynamics_config(self) -> pulumi.Output[Optional['outputs.AgentAppdynamics """ return pulumi.get(self, "appdynamics_config") + @property + @pulumi.getter(name="azureMonitorConfig") + def azure_monitor_config(self) -> pulumi.Output[Optional['outputs.AgentAzureMonitorConfig']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#azure-monitor-agent) + """ + return pulumi.get(self, "azure_monitor_config") + @property @pulumi.getter(name="bigqueryConfig") def bigquery_config(self) -> pulumi.Output[Optional['outputs.AgentBigqueryConfig']]: @@ -1468,6 +1637,22 @@ def graphite_config(self) -> pulumi.Output[Optional['outputs.AgentGraphiteConfig """ return pulumi.get(self, "graphite_config") + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> pulumi.Output['outputs.AgentHistoricalDataRetrieval']: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @property + @pulumi.getter(name="honeycombConfig") + def honeycomb_config(self) -> pulumi.Output[Optional['outputs.AgentHoneycombConfig']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#hc-agent) + """ + return pulumi.get(self, "honeycomb_config") + @property @pulumi.getter(name="influxdbConfig") def influxdb_config(self) -> pulumi.Output[Optional['outputs.AgentInfluxdbConfig']]: @@ -1528,7 +1713,7 @@ def pingdom_config(self) -> pulumi.Output[Optional['outputs.AgentPingdomConfig'] @pulumi.getter def project(self) -> pulumi.Output[str]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Name of the Lightstep project. """ return pulumi.get(self, "project") @@ -1542,7 +1727,7 @@ def prometheus_config(self) -> pulumi.Output[Optional['outputs.AgentPrometheusCo @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.AgentQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.AgentQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ @@ -1556,12 +1741,23 @@ def redshift_config(self) -> pulumi.Output[Optional['outputs.AgentRedshiftConfig """ return pulumi.get(self, "redshift_config") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/alert_method_discord.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_discord.py similarity index 98% rename from sdk/python/pulumi_nobl9/alert_method_discord.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_discord.py index c0a02a7..871b6f0 100644 --- a/sdk/python/pulumi_nobl9/alert_method_discord.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_discord.py @@ -250,7 +250,9 @@ def _internal_init(__self__, if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project - __props__.__dict__["url"] = url + __props__.__dict__["url"] = None if url is None else pulumi.Output.secret(url) + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["url"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(AlertMethodDiscord, __self__).__init__( 'nobl9:index/alertMethodDiscord:AlertMethodDiscord', resource_name, diff --git a/sdk/python/pulumi_nobl9/alert_method_email.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_email.py similarity index 73% rename from sdk/python/pulumi_nobl9/alert_method_email.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_email.py index aae6cf5..c55d727 100644 --- a/sdk/python/pulumi_nobl9/alert_method_email.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_email.py @@ -14,33 +14,36 @@ @pulumi.input_type class AlertMethodEmailArgs: def __init__(__self__, *, - body: pulumi.Input[str], project: pulumi.Input[str], - subject: pulumi.Input[str], tos: pulumi.Input[Sequence[pulumi.Input[str]]], bccs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + body: Optional[pulumi.Input[str]] = None, ccs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None): + name: Optional[pulumi.Input[str]] = None, + subject: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a AlertMethodEmail resource. - :param pulumi.Input[str] body: The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] subject: The Subject of the email alert. :param pulumi.Input[Sequence[pulumi.Input[str]]] tos: Recipients. The maximum number of recipients is 10. :param pulumi.Input[Sequence[pulumi.Input[str]]] bccs: Blind carbon copy recipients. The maximum number of recipients is 10. + :param pulumi.Input[str] body: This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. :param pulumi.Input[Sequence[pulumi.Input[str]]] ccs: Carbon copy recipients. The maximum number of recipients is 10. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] subject: This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. """ - pulumi.set(__self__, "body", body) pulumi.set(__self__, "project", project) - pulumi.set(__self__, "subject", subject) pulumi.set(__self__, "tos", tos) if bccs is not None: pulumi.set(__self__, "bccs", bccs) + if body is not None: + warnings.warn("""'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""body is deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") + if body is not None: + pulumi.set(__self__, "body", body) if ccs is not None: pulumi.set(__self__, "ccs", ccs) if description is not None: @@ -49,18 +52,11 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if name is not None: pulumi.set(__self__, "name", name) - - @property - @pulumi.getter - def body(self) -> pulumi.Input[str]: - """ - The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). - """ - return pulumi.get(self, "body") - - @body.setter - def body(self, value: pulumi.Input[str]): - pulumi.set(self, "body", value) + if subject is not None: + warnings.warn("""'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""subject is deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") + if subject is not None: + pulumi.set(__self__, "subject", subject) @property @pulumi.getter @@ -74,18 +70,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter - def subject(self) -> pulumi.Input[str]: - """ - The Subject of the email alert. - """ - return pulumi.get(self, "subject") - - @subject.setter - def subject(self, value: pulumi.Input[str]): - pulumi.set(self, "subject", value) - @property @pulumi.getter def tos(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: @@ -110,6 +94,21 @@ def bccs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def bccs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "bccs", value) + @property + @pulumi.getter + def body(self) -> Optional[pulumi.Input[str]]: + """ + This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. + """ + warnings.warn("""'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""body is deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "body") + + @body.setter + def body(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "body", value) + @property @pulumi.getter def ccs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -158,6 +157,21 @@ def name(self) -> Optional[pulumi.Input[str]]: def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) + @property + @pulumi.getter + def subject(self) -> Optional[pulumi.Input[str]]: + """ + This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. + """ + warnings.warn("""'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""subject is deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "subject") + + @subject.setter + def subject(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subject", value) + @pulumi.input_type class _AlertMethodEmailState: @@ -174,17 +188,20 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering AlertMethodEmail resources. :param pulumi.Input[Sequence[pulumi.Input[str]]] bccs: Blind carbon copy recipients. The maximum number of recipients is 10. - :param pulumi.Input[str] body: The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + :param pulumi.Input[str] body: This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. :param pulumi.Input[Sequence[pulumi.Input[str]]] ccs: Carbon copy recipients. The maximum number of recipients is 10. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] subject: The Subject of the email alert. + :param pulumi.Input[str] subject: This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. :param pulumi.Input[Sequence[pulumi.Input[str]]] tos: Recipients. The maximum number of recipients is 10. """ if bccs is not None: pulumi.set(__self__, "bccs", bccs) + if body is not None: + warnings.warn("""'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""body is deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") if body is not None: pulumi.set(__self__, "body", body) if ccs is not None: @@ -197,6 +214,9 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) + if subject is not None: + warnings.warn("""'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""subject is deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") if subject is not None: pulumi.set(__self__, "subject", subject) if tos is not None: @@ -218,8 +238,11 @@ def bccs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @pulumi.getter def body(self) -> Optional[pulumi.Input[str]]: """ - The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. """ + warnings.warn("""'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""body is deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") + return pulumi.get(self, "body") @body.setter @@ -290,8 +313,11 @@ def project(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def subject(self) -> Optional[pulumi.Input[str]]: """ - The Subject of the email alert. + This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. """ + warnings.warn("""'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""subject is deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") + return pulumi.get(self, "subject") @subject.setter @@ -331,13 +357,13 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] bccs: Blind carbon copy recipients. The maximum number of recipients is 10. - :param pulumi.Input[str] body: The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + :param pulumi.Input[str] body: This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. :param pulumi.Input[Sequence[pulumi.Input[str]]] ccs: Carbon copy recipients. The maximum number of recipients is 10. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] subject: The Subject of the email alert. + :param pulumi.Input[str] subject: This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. :param pulumi.Input[Sequence[pulumi.Input[str]]] tos: Recipients. The maximum number of recipients is 10. """ ... @@ -382,8 +408,6 @@ def _internal_init(__self__, __props__ = AlertMethodEmailArgs.__new__(AlertMethodEmailArgs) __props__.__dict__["bccs"] = bccs - if body is None and not opts.urn: - raise TypeError("Missing required property 'body'") __props__.__dict__["body"] = body __props__.__dict__["ccs"] = ccs __props__.__dict__["description"] = description @@ -392,8 +416,6 @@ def _internal_init(__self__, if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project - if subject is None and not opts.urn: - raise TypeError("Missing required property 'subject'") __props__.__dict__["subject"] = subject if tos is None and not opts.urn: raise TypeError("Missing required property 'tos'") @@ -425,13 +447,13 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] bccs: Blind carbon copy recipients. The maximum number of recipients is 10. - :param pulumi.Input[str] body: The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + :param pulumi.Input[str] body: This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. :param pulumi.Input[Sequence[pulumi.Input[str]]] ccs: Carbon copy recipients. The maximum number of recipients is 10. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] subject: The Subject of the email alert. + :param pulumi.Input[str] subject: This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. :param pulumi.Input[Sequence[pulumi.Input[str]]] tos: Recipients. The maximum number of recipients is 10. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -459,10 +481,13 @@ def bccs(self) -> pulumi.Output[Optional[Sequence[str]]]: @property @pulumi.getter - def body(self) -> pulumi.Output[str]: + def body(self) -> pulumi.Output[Optional[str]]: """ - The Body of the email alert. For the format of the body and the list of variables that you can define, refer to the [Nobl9 documentation](https://docs.nobl9.com/Alerting/Alert_methods/email-alert#yaml-configuration). + This value was used as the template for the email alert's body. 'body' is deprecated and not used anywhere; however, its' kept for backward compatibility. """ + warnings.warn("""'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""body is deprecated: 'body' indicated the email alert's body. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") + return pulumi.get(self, "body") @property @@ -507,10 +532,13 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter - def subject(self) -> pulumi.Output[str]: + def subject(self) -> pulumi.Output[Optional[str]]: """ - The Subject of the email alert. + This value was used as the email alert's subject. 'subject' is deprecated and not used anywhere; however, its' kept for backward compatibility. """ + warnings.warn("""'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""subject is deprecated: 'subject' indicated the email alert's subject. It has been deprecated since the Nobl9 1.57 release and is no longer used to generate emails. You can safely remove it from your configuration file.""") + return pulumi.get(self, "subject") @property diff --git a/sdk/python/pulumi_nobl9/alert_method_jira.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_jira.py similarity index 98% rename from sdk/python/pulumi_nobl9/alert_method_jira.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_jira.py index 93ba8f1..2e84df3 100644 --- a/sdk/python/pulumi_nobl9/alert_method_jira.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_jira.py @@ -346,7 +346,7 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = AlertMethodJiraArgs.__new__(AlertMethodJiraArgs) - __props__.__dict__["apitoken"] = apitoken + __props__.__dict__["apitoken"] = None if apitoken is None else pulumi.Output.secret(apitoken) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["name"] = name @@ -362,6 +362,8 @@ def _internal_init(__self__, if username is None and not opts.urn: raise TypeError("Missing required property 'username'") __props__.__dict__["username"] = username + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apitoken"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(AlertMethodJira, __self__).__init__( 'nobl9:index/alertMethodJira:AlertMethodJira', resource_name, diff --git a/sdk/python/pulumi_nobl9/alert_method_msteams.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_msteams.py similarity index 98% rename from sdk/python/pulumi_nobl9/alert_method_msteams.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_msteams.py index 092bf07..a67139d 100644 --- a/sdk/python/pulumi_nobl9/alert_method_msteams.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_msteams.py @@ -250,7 +250,9 @@ def _internal_init(__self__, if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project - __props__.__dict__["url"] = url + __props__.__dict__["url"] = None if url is None else pulumi.Output.secret(url) + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["url"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(AlertMethodMsteams, __self__).__init__( 'nobl9:index/alertMethodMsteams:AlertMethodMsteams', resource_name, diff --git a/sdk/python/pulumi_nobl9/alert_method_opsgenie.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_opsgenie.py similarity index 98% rename from sdk/python/pulumi_nobl9/alert_method_opsgenie.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_opsgenie.py index 9b64f28..c3c16c2 100644 --- a/sdk/python/pulumi_nobl9/alert_method_opsgenie.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_opsgenie.py @@ -278,7 +278,7 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = AlertMethodOpsgenieArgs.__new__(AlertMethodOpsgenieArgs) - __props__.__dict__["auth"] = auth + __props__.__dict__["auth"] = None if auth is None else pulumi.Output.secret(auth) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["name"] = name @@ -288,6 +288,8 @@ def _internal_init(__self__, if url is None and not opts.urn: raise TypeError("Missing required property 'url'") __props__.__dict__["url"] = url + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["auth"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(AlertMethodOpsgenie, __self__).__init__( 'nobl9:index/alertMethodOpsgenie:AlertMethodOpsgenie', resource_name, diff --git a/sdk/python/pulumi_nobl9/alert_method_pagerduty.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_pagerduty.py similarity index 83% rename from sdk/python/pulumi_nobl9/alert_method_pagerduty.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_pagerduty.py index 56a306f..e73ab68 100644 --- a/sdk/python/pulumi_nobl9/alert_method_pagerduty.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_pagerduty.py @@ -8,6 +8,8 @@ import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload from . import _utilities +from . import outputs +from ._inputs import * __all__ = ['AlertMethodPagerdutyArgs', 'AlertMethodPagerduty'] @@ -18,7 +20,8 @@ def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, integration_key: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None): + name: Optional[pulumi.Input[str]] = None, + send_resolution: Optional[pulumi.Input['AlertMethodPagerdutySendResolutionArgs']] = None): """ The set of arguments for constructing a AlertMethodPagerduty resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). @@ -26,6 +29,7 @@ def __init__(__self__, *, :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] integration_key: PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations). :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input['AlertMethodPagerdutySendResolutionArgs'] send_resolution: Sends a notification after the cooldown period is over. """ pulumi.set(__self__, "project", project) if description is not None: @@ -36,6 +40,8 @@ def __init__(__self__, *, pulumi.set(__self__, "integration_key", integration_key) if name is not None: pulumi.set(__self__, "name", name) + if send_resolution is not None: + pulumi.set(__self__, "send_resolution", send_resolution) @property @pulumi.getter @@ -97,6 +103,18 @@ def name(self) -> Optional[pulumi.Input[str]]: def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) + @property + @pulumi.getter(name="sendResolution") + def send_resolution(self) -> Optional[pulumi.Input['AlertMethodPagerdutySendResolutionArgs']]: + """ + Sends a notification after the cooldown period is over. + """ + return pulumi.get(self, "send_resolution") + + @send_resolution.setter + def send_resolution(self, value: Optional[pulumi.Input['AlertMethodPagerdutySendResolutionArgs']]): + pulumi.set(self, "send_resolution", value) + @pulumi.input_type class _AlertMethodPagerdutyState: @@ -105,7 +123,8 @@ def __init__(__self__, *, display_name: Optional[pulumi.Input[str]] = None, integration_key: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - project: Optional[pulumi.Input[str]] = None): + project: Optional[pulumi.Input[str]] = None, + send_resolution: Optional[pulumi.Input['AlertMethodPagerdutySendResolutionArgs']] = None): """ Input properties used for looking up and filtering AlertMethodPagerduty resources. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. @@ -113,6 +132,7 @@ def __init__(__self__, *, :param pulumi.Input[str] integration_key: PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations). :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input['AlertMethodPagerdutySendResolutionArgs'] send_resolution: Sends a notification after the cooldown period is over. """ if description is not None: pulumi.set(__self__, "description", description) @@ -124,6 +144,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) + if send_resolution is not None: + pulumi.set(__self__, "send_resolution", send_resolution) @property @pulumi.getter @@ -185,6 +207,18 @@ def project(self) -> Optional[pulumi.Input[str]]: def project(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "project", value) + @property + @pulumi.getter(name="sendResolution") + def send_resolution(self) -> Optional[pulumi.Input['AlertMethodPagerdutySendResolutionArgs']]: + """ + Sends a notification after the cooldown period is over. + """ + return pulumi.get(self, "send_resolution") + + @send_resolution.setter + def send_resolution(self, value: Optional[pulumi.Input['AlertMethodPagerdutySendResolutionArgs']]): + pulumi.set(self, "send_resolution", value) + class AlertMethodPagerduty(pulumi.CustomResource): @overload @@ -196,6 +230,7 @@ def __init__(__self__, integration_key: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, + send_resolution: Optional[pulumi.Input[pulumi.InputType['AlertMethodPagerdutySendResolutionArgs']]] = None, __props__=None): """ Create a AlertMethodPagerduty resource with the given unique name, props, and options. @@ -206,6 +241,7 @@ def __init__(__self__, :param pulumi.Input[str] integration_key: PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations). :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[pulumi.InputType['AlertMethodPagerdutySendResolutionArgs']] send_resolution: Sends a notification after the cooldown period is over. """ ... @overload @@ -235,6 +271,7 @@ def _internal_init(__self__, integration_key: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, + send_resolution: Optional[pulumi.Input[pulumi.InputType['AlertMethodPagerdutySendResolutionArgs']]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -246,11 +283,14 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name - __props__.__dict__["integration_key"] = integration_key + __props__.__dict__["integration_key"] = None if integration_key is None else pulumi.Output.secret(integration_key) __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project + __props__.__dict__["send_resolution"] = send_resolution + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["integrationKey"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(AlertMethodPagerduty, __self__).__init__( 'nobl9:index/alertMethodPagerduty:AlertMethodPagerduty', resource_name, @@ -265,7 +305,8 @@ def get(resource_name: str, display_name: Optional[pulumi.Input[str]] = None, integration_key: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - project: Optional[pulumi.Input[str]] = None) -> 'AlertMethodPagerduty': + project: Optional[pulumi.Input[str]] = None, + send_resolution: Optional[pulumi.Input[pulumi.InputType['AlertMethodPagerdutySendResolutionArgs']]] = None) -> 'AlertMethodPagerduty': """ Get an existing AlertMethodPagerduty resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -278,6 +319,7 @@ def get(resource_name: str, :param pulumi.Input[str] integration_key: PagerDuty Integration Key. For more details, check [Services and integrations](https://support.pagerduty.com/docs/services-and-integrations). :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[pulumi.InputType['AlertMethodPagerdutySendResolutionArgs']] send_resolution: Sends a notification after the cooldown period is over. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -288,6 +330,7 @@ def get(resource_name: str, __props__.__dict__["integration_key"] = integration_key __props__.__dict__["name"] = name __props__.__dict__["project"] = project + __props__.__dict__["send_resolution"] = send_resolution return AlertMethodPagerduty(resource_name, opts=opts, __props__=__props__) @property @@ -330,3 +373,11 @@ def project(self) -> pulumi.Output[str]: """ return pulumi.get(self, "project") + @property + @pulumi.getter(name="sendResolution") + def send_resolution(self) -> pulumi.Output[Optional['outputs.AlertMethodPagerdutySendResolution']]: + """ + Sends a notification after the cooldown period is over. + """ + return pulumi.get(self, "send_resolution") + diff --git a/sdk/python/pulumi_nobl9/alert_method_servicenow.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_servicenow.py similarity index 98% rename from sdk/python/pulumi_nobl9/alert_method_servicenow.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_servicenow.py index 839426b..85666db 100644 --- a/sdk/python/pulumi_nobl9/alert_method_servicenow.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_servicenow.py @@ -318,13 +318,15 @@ def _internal_init(__self__, raise TypeError("Missing required property 'instance_name'") __props__.__dict__["instance_name"] = instance_name __props__.__dict__["name"] = name - __props__.__dict__["password"] = password + __props__.__dict__["password"] = None if password is None else pulumi.Output.secret(password) if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project if username is None and not opts.urn: raise TypeError("Missing required property 'username'") __props__.__dict__["username"] = username + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["password"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(AlertMethodServicenow, __self__).__init__( 'nobl9:index/alertMethodServicenow:AlertMethodServicenow', resource_name, diff --git a/sdk/python/pulumi_nobl9/alert_method_slack.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_slack.py similarity index 98% rename from sdk/python/pulumi_nobl9/alert_method_slack.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_slack.py index 1e12571..9e5cd7a 100644 --- a/sdk/python/pulumi_nobl9/alert_method_slack.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_slack.py @@ -250,7 +250,9 @@ def _internal_init(__self__, if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project - __props__.__dict__["url"] = url + __props__.__dict__["url"] = None if url is None else pulumi.Output.secret(url) + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["url"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(AlertMethodSlack, __self__).__init__( 'nobl9:index/alertMethodSlack:AlertMethodSlack', resource_name, diff --git a/sdk/python/pulumi_nobl9/alert_method_webhook.py b/sdk/python/piclemx_pulumi_nobl9/alert_method_webhook.py similarity index 98% rename from sdk/python/pulumi_nobl9/alert_method_webhook.py rename to sdk/python/piclemx_pulumi_nobl9/alert_method_webhook.py index 53f2438..de59637 100644 --- a/sdk/python/pulumi_nobl9/alert_method_webhook.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_method_webhook.py @@ -322,7 +322,9 @@ def _internal_init(__self__, __props__.__dict__["project"] = project __props__.__dict__["template"] = template __props__.__dict__["template_fields"] = template_fields - __props__.__dict__["url"] = url + __props__.__dict__["url"] = None if url is None else pulumi.Output.secret(url) + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["url"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(AlertMethodWebhook, __self__).__init__( 'nobl9:index/alertMethodWebhook:AlertMethodWebhook', resource_name, diff --git a/sdk/python/pulumi_nobl9/alert_policy.py b/sdk/python/piclemx_pulumi_nobl9/alert_policy.py similarity index 72% rename from sdk/python/pulumi_nobl9/alert_policy.py rename to sdk/python/piclemx_pulumi_nobl9/alert_policy.py index e405b7f..a23bc91 100644 --- a/sdk/python/pulumi_nobl9/alert_policy.py +++ b/sdk/python/piclemx_pulumi_nobl9/alert_policy.py @@ -20,23 +20,27 @@ def __init__(__self__, *, project: pulumi.Input[str], severity: pulumi.Input[str], alert_methods: Optional[pulumi.Input[Sequence[pulumi.Input['AlertPolicyAlertMethodArgs']]]] = None, + cooldown: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a AlertPolicy resource. :param pulumi.Input[Sequence[pulumi.Input['AlertPolicyConditionArgs']]] conditions: Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. :param pulumi.Input[str] severity: Alert severity. One of `Low` | `Medium` | `High`. + :param pulumi.Input[str] cooldown: An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. """ pulumi.set(__self__, "conditions", conditions) pulumi.set(__self__, "project", project) pulumi.set(__self__, "severity", severity) if alert_methods is not None: pulumi.set(__self__, "alert_methods", alert_methods) + if cooldown is not None: + pulumi.set(__self__, "cooldown", cooldown) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: @@ -60,7 +64,7 @@ def conditions(self, value: pulumi.Input[Sequence[pulumi.Input['AlertPolicyCondi @pulumi.getter def project(self) -> pulumi.Input[str]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. """ return pulumi.get(self, "project") @@ -89,6 +93,18 @@ def alert_methods(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AlertPol def alert_methods(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AlertPolicyAlertMethodArgs']]]]): pulumi.set(self, "alert_methods", value) + @property + @pulumi.getter + def cooldown(self) -> Optional[pulumi.Input[str]]: + """ + An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + """ + return pulumi.get(self, "cooldown") + + @cooldown.setter + def cooldown(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cooldown", value) + @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -117,7 +133,7 @@ def display_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -131,6 +147,7 @@ class _AlertPolicyState: def __init__(__self__, *, alert_methods: Optional[pulumi.Input[Sequence[pulumi.Input['AlertPolicyAlertMethodArgs']]]] = None, conditions: Optional[pulumi.Input[Sequence[pulumi.Input['AlertPolicyConditionArgs']]]] = None, + cooldown: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, @@ -139,16 +156,19 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering AlertPolicy resources. :param pulumi.Input[Sequence[pulumi.Input['AlertPolicyConditionArgs']]] conditions: Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). + :param pulumi.Input[str] cooldown: An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. :param pulumi.Input[str] severity: Alert severity. One of `Low` | `Medium` | `High`. """ if alert_methods is not None: pulumi.set(__self__, "alert_methods", alert_methods) if conditions is not None: pulumi.set(__self__, "conditions", conditions) + if cooldown is not None: + pulumi.set(__self__, "cooldown", cooldown) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: @@ -181,6 +201,18 @@ def conditions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AlertPolicy def conditions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AlertPolicyConditionArgs']]]]): pulumi.set(self, "conditions", value) + @property + @pulumi.getter + def cooldown(self) -> Optional[pulumi.Input[str]]: + """ + An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + """ + return pulumi.get(self, "cooldown") + + @cooldown.setter + def cooldown(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cooldown", value) + @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -209,7 +241,7 @@ def display_name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -221,7 +253,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def project(self) -> Optional[pulumi.Input[str]]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. """ return pulumi.get(self, "project") @@ -249,6 +281,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, alert_methods: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AlertPolicyAlertMethodArgs']]]]] = None, conditions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AlertPolicyConditionArgs']]]]] = None, + cooldown: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, @@ -258,7 +291,7 @@ def __init__(__self__, """ An **Alert Policy** expresses a set of conditions you want to track or monitor. The conditions for an Alert Policy define what is monitored and when to activate an alert: when the performance of your service is declining, Nobl9 will send a notification to a predefined channel. - A Nobl9 AlertPolicy accepts up to 7 conditions. All the specified conditions must be satisfied to trigger an alert. + A Nobl9 AlertPolicy accepts up to 3 conditions. All the specified conditions must be satisfied to trigger an alert. For more details, refer to the [Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy). @@ -268,7 +301,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this_project = nobl9.Project("thisProject", display_name="My Project", @@ -282,6 +315,7 @@ def __init__(__self__, display_name=this_project.display_name.apply(lambda display_name: f"{display_name} Front Page Latency"), severity="High", description="Alert when page latency is > 2000 and error budget would be exhausted", + cooldown="5m", conditions=[nobl9.AlertPolicyConditionArgs( measurement="timeToBurnBudget", value_string="72h", @@ -290,6 +324,35 @@ def __init__(__self__, alert_methods=[nobl9.AlertPolicyAlertMethodArgs( name="my-alert-method", )]) + this_index_alert_policy_alert_policy = nobl9.AlertPolicy("thisIndex/alertPolicyAlertPolicy", + project=this_project.name, + display_name=this_project.display_name.apply(lambda display_name: f"{display_name} Slow Burn (1x12h and 2x15min)"), + severity="Low", + description="The budget is slowly exhausting and not recovering.", + cooldown="5m", + conditions=[ + nobl9.AlertPolicyConditionArgs( + measurement="averageBurnRate", + value=1, + alerting_window="12h", + ), + nobl9.AlertPolicyConditionArgs( + measurement="averageBurnRate", + value=2, + alerting_window="15m", + ), + ]) + this_nobl9_index_alert_policy_alert_policy = nobl9.AlertPolicy("thisNobl9Index/alertPolicyAlertPolicy", + project=this_project.name, + display_name=this_project.display_name.apply(lambda display_name: f"{display_name} Fast Burn (20x5min)"), + severity="High", + description="There’s been a significant spike in burn rate over a brief period.", + cooldown="5m", + conditions=[nobl9.AlertPolicyConditionArgs( + measurement="averageBurnRate", + value=20, + alerting_window="5m", + )]) ``` ## Useful Links @@ -298,10 +361,11 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AlertPolicyConditionArgs']]]] conditions: Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). + :param pulumi.Input[str] cooldown: An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. :param pulumi.Input[str] severity: Alert severity. One of `Low` | `Medium` | `High`. """ ... @@ -313,7 +377,7 @@ def __init__(__self__, """ An **Alert Policy** expresses a set of conditions you want to track or monitor. The conditions for an Alert Policy define what is monitored and when to activate an alert: when the performance of your service is declining, Nobl9 will send a notification to a predefined channel. - A Nobl9 AlertPolicy accepts up to 7 conditions. All the specified conditions must be satisfied to trigger an alert. + A Nobl9 AlertPolicy accepts up to 3 conditions. All the specified conditions must be satisfied to trigger an alert. For more details, refer to the [Alert Policy configuration | Nobl9 Documentation](https://docs.nobl9.com/yaml-guide#alertpolicy). @@ -323,7 +387,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this_project = nobl9.Project("thisProject", display_name="My Project", @@ -337,6 +401,7 @@ def __init__(__self__, display_name=this_project.display_name.apply(lambda display_name: f"{display_name} Front Page Latency"), severity="High", description="Alert when page latency is > 2000 and error budget would be exhausted", + cooldown="5m", conditions=[nobl9.AlertPolicyConditionArgs( measurement="timeToBurnBudget", value_string="72h", @@ -345,6 +410,35 @@ def __init__(__self__, alert_methods=[nobl9.AlertPolicyAlertMethodArgs( name="my-alert-method", )]) + this_index_alert_policy_alert_policy = nobl9.AlertPolicy("thisIndex/alertPolicyAlertPolicy", + project=this_project.name, + display_name=this_project.display_name.apply(lambda display_name: f"{display_name} Slow Burn (1x12h and 2x15min)"), + severity="Low", + description="The budget is slowly exhausting and not recovering.", + cooldown="5m", + conditions=[ + nobl9.AlertPolicyConditionArgs( + measurement="averageBurnRate", + value=1, + alerting_window="12h", + ), + nobl9.AlertPolicyConditionArgs( + measurement="averageBurnRate", + value=2, + alerting_window="15m", + ), + ]) + this_nobl9_index_alert_policy_alert_policy = nobl9.AlertPolicy("thisNobl9Index/alertPolicyAlertPolicy", + project=this_project.name, + display_name=this_project.display_name.apply(lambda display_name: f"{display_name} Fast Burn (20x5min)"), + severity="High", + description="There’s been a significant spike in burn rate over a brief period.", + cooldown="5m", + conditions=[nobl9.AlertPolicyConditionArgs( + measurement="averageBurnRate", + value=20, + alerting_window="5m", + )]) ``` ## Useful Links @@ -367,6 +461,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, alert_methods: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AlertPolicyAlertMethodArgs']]]]] = None, conditions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AlertPolicyConditionArgs']]]]] = None, + cooldown: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, @@ -385,6 +480,7 @@ def _internal_init(__self__, if conditions is None and not opts.urn: raise TypeError("Missing required property 'conditions'") __props__.__dict__["conditions"] = conditions + __props__.__dict__["cooldown"] = cooldown __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["name"] = name @@ -406,6 +502,7 @@ def get(resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, alert_methods: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AlertPolicyAlertMethodArgs']]]]] = None, conditions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AlertPolicyConditionArgs']]]]] = None, + cooldown: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, @@ -419,10 +516,11 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AlertPolicyConditionArgs']]]] conditions: Configuration of an [alert condition](https://docs.nobl9.com/yaml-guide/#alertpolicy). + :param pulumi.Input[str] cooldown: An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. :param pulumi.Input[str] severity: Alert severity. One of `Low` | `Medium` | `High`. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -431,6 +529,7 @@ def get(resource_name: str, __props__.__dict__["alert_methods"] = alert_methods __props__.__dict__["conditions"] = conditions + __props__.__dict__["cooldown"] = cooldown __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["name"] = name @@ -451,6 +550,14 @@ def conditions(self) -> pulumi.Output[Sequence['outputs.AlertPolicyCondition']]: """ return pulumi.get(self, "conditions") + @property + @pulumi.getter + def cooldown(self) -> pulumi.Output[Optional[str]]: + """ + An interval measured from the last time stamp when all alert policy conditions were satisfied before alert is marked as resolved + """ + return pulumi.get(self, "cooldown") + @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: @@ -471,7 +578,7 @@ def display_name(self) -> pulumi.Output[Optional[str]]: @pulumi.getter def name(self) -> pulumi.Output[str]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -479,7 +586,7 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter def project(self) -> pulumi.Output[str]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. """ return pulumi.get(self, "project") diff --git a/sdk/python/pulumi_nobl9/config/__init__.py b/sdk/python/piclemx_pulumi_nobl9/config/__init__.py similarity index 100% rename from sdk/python/pulumi_nobl9/config/__init__.py rename to sdk/python/piclemx_pulumi_nobl9/config/__init__.py diff --git a/sdk/python/pulumi_nobl9/config/__init__.pyi b/sdk/python/piclemx_pulumi_nobl9/config/__init__.pyi similarity index 83% rename from sdk/python/pulumi_nobl9/config/__init__.pyi rename to sdk/python/piclemx_pulumi_nobl9/config/__init__.pyi index a460585..4ce572e 100644 --- a/sdk/python/pulumi_nobl9/config/__init__.pyi +++ b/sdk/python/piclemx_pulumi_nobl9/config/__init__.pyi @@ -37,10 +37,6 @@ Authorization service URL. """ organization: Optional[str] -""" -Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that -contains resources managed by the Nobl9 Terraform provider. -""" project: Optional[str] """ diff --git a/sdk/python/pulumi_nobl9/config/vars.py b/sdk/python/piclemx_pulumi_nobl9/config/vars.py similarity index 88% rename from sdk/python/pulumi_nobl9/config/vars.py rename to sdk/python/piclemx_pulumi_nobl9/config/vars.py index 4d57f5d..9c17d8c 100644 --- a/sdk/python/pulumi_nobl9/config/vars.py +++ b/sdk/python/piclemx_pulumi_nobl9/config/vars.py @@ -54,10 +54,6 @@ def okta_org_url(self) -> Optional[str]: @property def organization(self) -> Optional[str]: - """ - Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that - contains resources managed by the Nobl9 Terraform provider. - """ return __config__.get('organization') @property diff --git a/sdk/python/pulumi_nobl9/direct_appdynamics.py b/sdk/python/piclemx_pulumi_nobl9/direct_appdynamics.py similarity index 70% rename from sdk/python/pulumi_nobl9/direct_appdynamics.py rename to sdk/python/piclemx_pulumi_nobl9/direct_appdynamics.py index fc51a7a..17aaaf4 100644 --- a/sdk/python/pulumi_nobl9/direct_appdynamics.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_appdynamics.py @@ -19,30 +19,35 @@ def __init__(__self__, *, account_name: pulumi.Input[str], client_name: pulumi.Input[str], project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], url: pulumi.Input[str], client_secret: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectAppdynamicsQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectAppdynamicsQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectAppdynamics resource. :param pulumi.Input[str] account_name: AppDynamics Account Name. :param pulumi.Input[str] client_name: AppDynamics Client Name. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] url: Base URL to the AppDynamics Controller. :param pulumi.Input[str] client_secret: [required] | AppDynamics Client Secret. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectAppdynamicsQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "account_name", account_name) pulumi.set(__self__, "client_name", client_name) pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) pulumi.set(__self__, "url", url) if client_secret is not None: pulumi.set(__self__, "client_secret", client_secret) @@ -50,10 +55,21 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if historical_data_retrieval is not None: + pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter(name="accountName") @@ -91,18 +107,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def url(self) -> pulumi.Input[str]: @@ -151,6 +155,30 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalArgs']]: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @historical_data_retrieval.setter + def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalArgs']]): + pulumi.set(self, "historical_data_retrieval", value) + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -175,6 +203,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectAppdynamicsQueryDelayArgs' def query_delay(self, value: Optional[pulumi.Input['DirectAppdynamicsQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectAppdynamicsState: @@ -185,9 +240,12 @@ def __init__(__self__, *, client_secret: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectAppdynamicsQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None): @@ -199,10 +257,13 @@ def __init__(__self__, *, :param pulumi.Input[str] client_secret: [required] | AppDynamics Client Secret. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectAppdynamicsQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Base URL to the AppDynamics Controller. """ @@ -218,12 +279,21 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if historical_data_retrieval is not None: + pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -303,6 +373,30 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalArgs']]: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @historical_data_retrieval.setter + def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectAppdynamicsHistoricalDataRetrievalArgs']]): + pulumi.set(self, "historical_data_retrieval", value) + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -339,12 +433,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectAppdynamicsQueryDelayArgs' def query_delay(self, value: Optional[pulumi.Input['DirectAppdynamicsQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -386,14 +495,17 @@ def __init__(__self__, client_secret: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectAppdynamicsHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectAppdynamicsQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): """ - AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects with AppDynamics to collect SLI measurements and compare them to SLO targets. + AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects to AppDynamics for SLI measurement collection and comparison with SLO targets. For more information, refer to [AppDynamics Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-direct) @@ -401,18 +513,16 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_appdynamics = nobl9.DirectAppdynamics("test-appdynamics", account_name="account name", client_name="client name", client_secret="secret", description="desc", + log_collection_enabled=True, project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], + release_channel="stable", url="https://web.net") ``` ## Nobl9 Official Documentation @@ -426,10 +536,13 @@ def __init__(__self__, :param pulumi.Input[str] client_secret: [required] | AppDynamics Client Secret. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[pulumi.InputType['DirectAppdynamicsHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectAppdynamicsQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] url: Base URL to the AppDynamics Controller. """ ... @@ -439,7 +552,7 @@ def __init__(__self__, args: DirectAppdynamicsArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects with AppDynamics to collect SLI measurements and compare them to SLO targets. + AppDynamics is a performance management program for applications. It helps users to gain a comprehensive understanding of the impact of technical difficulties on business goals, allowing IT teams to prioritize their efforts in a way that improves ROI. Nobl9 connects to AppDynamics for SLI measurement collection and comparison with SLO targets. For more information, refer to [AppDynamics Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/appdynamics#appdynamics-direct) @@ -447,18 +560,16 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_appdynamics = nobl9.DirectAppdynamics("test-appdynamics", account_name="account name", client_name="client name", client_secret="secret", description="desc", + log_collection_enabled=True, project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], + release_channel="stable", url="https://web.net") ``` ## Nobl9 Official Documentation @@ -485,9 +596,12 @@ def _internal_init(__self__, client_secret: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectAppdynamicsHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectAppdynamicsQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): @@ -505,22 +619,25 @@ def _internal_init(__self__, if client_name is None and not opts.urn: raise TypeError("Missing required property 'client_name'") __props__.__dict__["client_name"] = client_name - __props__.__dict__["client_secret"] = client_secret + __props__.__dict__["client_secret"] = None if client_secret is None else pulumi.Output.secret(client_secret) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs if url is None and not opts.urn: raise TypeError("Missing required property 'url'") __props__.__dict__["url"] = url __props__.__dict__["client_id"] = None __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["clientSecret"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectAppdynamics, __self__).__init__( 'nobl9:index/directAppdynamics:DirectAppdynamics', resource_name, @@ -537,9 +654,12 @@ def get(resource_name: str, client_secret: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectAppdynamicsHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectAppdynamicsQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None) -> 'DirectAppdynamics': @@ -556,10 +676,13 @@ def get(resource_name: str, :param pulumi.Input[str] client_secret: [required] | AppDynamics Client Secret. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[pulumi.InputType['DirectAppdynamicsHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectAppdynamicsQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Base URL to the AppDynamics Controller. """ @@ -573,9 +696,12 @@ def get(resource_name: str, __props__.__dict__["client_secret"] = client_secret __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status __props__.__dict__["url"] = url @@ -629,6 +755,22 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectAppdynamicsHistoricalDataRetrieval']: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -647,18 +789,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectAppdynamicsQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectAppdynamicsQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/piclemx_pulumi_nobl9/direct_azure_monitor.py b/sdk/python/piclemx_pulumi_nobl9/direct_azure_monitor.py new file mode 100644 index 0000000..6a7448f --- /dev/null +++ b/sdk/python/piclemx_pulumi_nobl9/direct_azure_monitor.py @@ -0,0 +1,737 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from . import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['DirectAzureMonitorArgs', 'DirectAzureMonitor'] + +@pulumi.input_type +class DirectAzureMonitorArgs: + def __init__(__self__, *, + project: pulumi.Input[str], + tenant_id: pulumi.Input[str], + client_id: Optional[pulumi.Input[str]] = None, + client_secret: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input['DirectAzureMonitorQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + The set of arguments for constructing a DirectAzureMonitor resource. + :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] tenant_id: [required] | Azure Tenant ID. + :param pulumi.Input[str] client_id: [required] | Azure Application (client) ID. + :param pulumi.Input[str] client_secret: [required] | Azure Application (client) Secret. + :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration + (team/owner) or the purpose of creating it. + :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input['DirectAzureMonitorQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + anywhere; however, it's kept for backward compatibility. + """ + pulumi.set(__self__, "project", project) + pulumi.set(__self__, "tenant_id", tenant_id) + if client_id is not None: + pulumi.set(__self__, "client_id", client_id) + if client_secret is not None: + pulumi.set(__self__, "client_secret", client_secret) + if description is not None: + pulumi.set(__self__, "description", description) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if historical_data_retrieval is not None: + pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) + if name is not None: + pulumi.set(__self__, "name", name) + if query_delay is not None: + pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) + + @property + @pulumi.getter + def project(self) -> pulumi.Input[str]: + """ + Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "project") + + @project.setter + def project(self, value: pulumi.Input[str]): + pulumi.set(self, "project", value) + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> pulumi.Input[str]: + """ + [required] | Azure Tenant ID. + """ + return pulumi.get(self, "tenant_id") + + @tenant_id.setter + def tenant_id(self, value: pulumi.Input[str]): + pulumi.set(self, "tenant_id", value) + + @property + @pulumi.getter(name="clientId") + def client_id(self) -> Optional[pulumi.Input[str]]: + """ + [required] | Azure Application (client) ID. + """ + return pulumi.get(self, "client_id") + + @client_id.setter + def client_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "client_id", value) + + @property + @pulumi.getter(name="clientSecret") + def client_secret(self) -> Optional[pulumi.Input[str]]: + """ + [required] | Azure Application (client) Secret. + """ + return pulumi.get(self, "client_secret") + + @client_secret.setter + def client_secret(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "client_secret", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Optional description of the resource. Here, you can add details about who is responsible for the integration + (team/owner) or the purpose of creating it. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + User-friendly display name of the resource. + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalArgs']]: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @historical_data_retrieval.setter + def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalArgs']]): + pulumi.set(self, "historical_data_retrieval", value) + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Unique name of the resource, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="queryDelay") + def query_delay(self) -> Optional[pulumi.Input['DirectAzureMonitorQueryDelayArgs']]: + """ + [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + """ + return pulumi.get(self, "query_delay") + + @query_delay.setter + def query_delay(self, value: Optional[pulumi.Input['DirectAzureMonitorQueryDelayArgs']]): + pulumi.set(self, "query_delay", value) + + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + + +@pulumi.input_type +class _DirectAzureMonitorState: + def __init__(__self__, *, + client_id: Optional[pulumi.Input[str]] = None, + client_secret: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input['DirectAzureMonitorQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + status: Optional[pulumi.Input[str]] = None, + tenant_id: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering DirectAzureMonitor resources. + :param pulumi.Input[str] client_id: [required] | Azure Application (client) ID. + :param pulumi.Input[str] client_secret: [required] | Azure Application (client) Secret. + :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration + (team/owner) or the purpose of creating it. + :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input['DirectAzureMonitorQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + anywhere; however, it's kept for backward compatibility. + :param pulumi.Input[str] status: The status of the created direct. + :param pulumi.Input[str] tenant_id: [required] | Azure Tenant ID. + """ + if client_id is not None: + pulumi.set(__self__, "client_id", client_id) + if client_secret is not None: + pulumi.set(__self__, "client_secret", client_secret) + if description is not None: + pulumi.set(__self__, "description", description) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if historical_data_retrieval is not None: + pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) + if name is not None: + pulumi.set(__self__, "name", name) + if project is not None: + pulumi.set(__self__, "project", project) + if query_delay is not None: + pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) + if status is not None: + pulumi.set(__self__, "status", status) + if tenant_id is not None: + pulumi.set(__self__, "tenant_id", tenant_id) + + @property + @pulumi.getter(name="clientId") + def client_id(self) -> Optional[pulumi.Input[str]]: + """ + [required] | Azure Application (client) ID. + """ + return pulumi.get(self, "client_id") + + @client_id.setter + def client_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "client_id", value) + + @property + @pulumi.getter(name="clientSecret") + def client_secret(self) -> Optional[pulumi.Input[str]]: + """ + [required] | Azure Application (client) Secret. + """ + return pulumi.get(self, "client_secret") + + @client_secret.setter + def client_secret(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "client_secret", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Optional description of the resource. Here, you can add details about who is responsible for the integration + (team/owner) or the purpose of creating it. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + User-friendly display name of the resource. + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalArgs']]: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @historical_data_retrieval.setter + def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectAzureMonitorHistoricalDataRetrievalArgs']]): + pulumi.set(self, "historical_data_retrieval", value) + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Unique name of the resource, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def project(self) -> Optional[pulumi.Input[str]]: + """ + Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "project") + + @project.setter + def project(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project", value) + + @property + @pulumi.getter(name="queryDelay") + def query_delay(self) -> Optional[pulumi.Input['DirectAzureMonitorQueryDelayArgs']]: + """ + [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + """ + return pulumi.get(self, "query_delay") + + @query_delay.setter + def query_delay(self, value: Optional[pulumi.Input['DirectAzureMonitorQueryDelayArgs']]): + pulumi.set(self, "query_delay", value) + + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + The status of the created direct. + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> Optional[pulumi.Input[str]]: + """ + [required] | Azure Tenant ID. + """ + return pulumi.get(self, "tenant_id") + + @tenant_id.setter + def tenant_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "tenant_id", value) + + +class DirectAzureMonitor(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + client_id: Optional[pulumi.Input[str]] = None, + client_secret: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectAzureMonitorHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input[pulumi.InputType['DirectAzureMonitorQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tenant_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Create a DirectAzureMonitor resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] client_id: [required] | Azure Application (client) ID. + :param pulumi.Input[str] client_secret: [required] | Azure Application (client) Secret. + :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration + (team/owner) or the purpose of creating it. + :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[pulumi.InputType['DirectAzureMonitorHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[pulumi.InputType['DirectAzureMonitorQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + anywhere; however, it's kept for backward compatibility. + :param pulumi.Input[str] tenant_id: [required] | Azure Tenant ID. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: DirectAzureMonitorArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Create a DirectAzureMonitor resource with the given unique name, props, and options. + :param str resource_name: The name of the resource. + :param DirectAzureMonitorArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(DirectAzureMonitorArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + client_id: Optional[pulumi.Input[str]] = None, + client_secret: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectAzureMonitorHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input[pulumi.InputType['DirectAzureMonitorQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + tenant_id: Optional[pulumi.Input[str]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = DirectAzureMonitorArgs.__new__(DirectAzureMonitorArgs) + + __props__.__dict__["client_id"] = None if client_id is None else pulumi.Output.secret(client_id) + __props__.__dict__["client_secret"] = None if client_secret is None else pulumi.Output.secret(client_secret) + __props__.__dict__["description"] = description + __props__.__dict__["display_name"] = display_name + __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled + __props__.__dict__["name"] = name + if project is None and not opts.urn: + raise TypeError("Missing required property 'project'") + __props__.__dict__["project"] = project + __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["source_ofs"] = source_ofs + if tenant_id is None and not opts.urn: + raise TypeError("Missing required property 'tenant_id'") + __props__.__dict__["tenant_id"] = tenant_id + __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["clientId", "clientSecret"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) + super(DirectAzureMonitor, __self__).__init__( + 'nobl9:index/directAzureMonitor:DirectAzureMonitor', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + client_id: Optional[pulumi.Input[str]] = None, + client_secret: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectAzureMonitorHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input[pulumi.InputType['DirectAzureMonitorQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + status: Optional[pulumi.Input[str]] = None, + tenant_id: Optional[pulumi.Input[str]] = None) -> 'DirectAzureMonitor': + """ + Get an existing DirectAzureMonitor resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] client_id: [required] | Azure Application (client) ID. + :param pulumi.Input[str] client_secret: [required] | Azure Application (client) Secret. + :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration + (team/owner) or the purpose of creating it. + :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[pulumi.InputType['DirectAzureMonitorHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[pulumi.InputType['DirectAzureMonitorQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + anywhere; however, it's kept for backward compatibility. + :param pulumi.Input[str] status: The status of the created direct. + :param pulumi.Input[str] tenant_id: [required] | Azure Tenant ID. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _DirectAzureMonitorState.__new__(_DirectAzureMonitorState) + + __props__.__dict__["client_id"] = client_id + __props__.__dict__["client_secret"] = client_secret + __props__.__dict__["description"] = description + __props__.__dict__["display_name"] = display_name + __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled + __props__.__dict__["name"] = name + __props__.__dict__["project"] = project + __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["source_ofs"] = source_ofs + __props__.__dict__["status"] = status + __props__.__dict__["tenant_id"] = tenant_id + return DirectAzureMonitor(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="clientId") + def client_id(self) -> pulumi.Output[str]: + """ + [required] | Azure Application (client) ID. + """ + return pulumi.get(self, "client_id") + + @property + @pulumi.getter(name="clientSecret") + def client_secret(self) -> pulumi.Output[str]: + """ + [required] | Azure Application (client) Secret. + """ + return pulumi.get(self, "client_secret") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + """ + Optional description of the resource. Here, you can add details about who is responsible for the integration + (team/owner) or the purpose of creating it. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> pulumi.Output[Optional[str]]: + """ + User-friendly display name of the resource. + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectAzureMonitorHistoricalDataRetrieval']: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + Unique name of the resource, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def project(self) -> pulumi.Output[str]: + """ + Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS + RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "project") + + @property + @pulumi.getter(name="queryDelay") + def query_delay(self) -> pulumi.Output['outputs.DirectAzureMonitorQueryDelay']: + """ + [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + """ + return pulumi.get(self, "query_delay") + + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used + anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + """ + The status of the created direct. + """ + return pulumi.get(self, "status") + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> pulumi.Output[str]: + """ + [required] | Azure Tenant ID. + """ + return pulumi.get(self, "tenant_id") + diff --git a/sdk/python/pulumi_nobl9/direct_bigquery.py b/sdk/python/piclemx_pulumi_nobl9/direct_bigquery.py similarity index 71% rename from sdk/python/pulumi_nobl9/direct_bigquery.py rename to sdk/python/piclemx_pulumi_nobl9/direct_bigquery.py index e75d1d9..5992fb0 100644 --- a/sdk/python/pulumi_nobl9/direct_bigquery.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_bigquery.py @@ -17,34 +17,46 @@ class DirectBigqueryArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectBigqueryQueryDelayArgs']] = None, - service_account_key: Optional[pulumi.Input[str]] = None): + release_channel: Optional[pulumi.Input[str]] = None, + service_account_key: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectBigquery resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectBigqueryQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] service_account_key: [required] | Service Account Key. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) if service_account_key is not None: pulumi.set(__self__, "service_account_key", service_account_key) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -58,18 +70,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -94,6 +94,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -118,6 +130,18 @@ def query_delay(self) -> Optional[pulumi.Input['DirectBigqueryQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectBigqueryQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="serviceAccountKey") def service_account_key(self) -> Optional[pulumi.Input[str]]: @@ -130,15 +154,32 @@ def service_account_key(self) -> Optional[pulumi.Input[str]]: def service_account_key(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "service_account_key", value) + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectBigqueryState: def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectBigqueryQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, service_account_key: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): @@ -146,25 +187,34 @@ def __init__(__self__, *, Input properties used for looking up and filtering DirectBigquery resources. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectBigqueryQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] service_account_key: [required] | Service Account Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) if service_account_key is not None: pulumi.set(__self__, "service_account_key", service_account_key) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -194,6 +244,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -230,6 +292,18 @@ def query_delay(self) -> Optional[pulumi.Input['DirectBigqueryQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectBigqueryQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="serviceAccountKey") def service_account_key(self) -> Optional[pulumi.Input[str]]: @@ -246,8 +320,11 @@ def service_account_key(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -274,14 +351,16 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectBigqueryQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, service_account_key: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects with BigQuery to collect SLI measurements and compare them to SLO targets. + Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects to BigQuery for SLI measurement collection and comparison with SLO targets. For more information, refer to [BigQuery Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-direct) @@ -289,16 +368,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_bigquery = nobl9.DirectBigquery("test-bigquery", description="desc", + log_collection_enabled=True, project="terraform", - service_account_key="secret", - source_ofs=[ - "Metrics", - "Services", - ]) + service_account_key="secret") ``` ## Nobl9 Official Documentation @@ -308,11 +384,13 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectBigqueryQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] service_account_key: [required] | Service Account Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -321,7 +399,7 @@ def __init__(__self__, args: DirectBigqueryArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects with BigQuery to collect SLI measurements and compare them to SLO targets. + Google BigQuery is a serverless data warehouse that enables scalable analysis over petabytes of data. It is a Platform as a Service that supports querying using ANSI SQL. BigQuery integration with Nobl9 enables users to turn their big data into valuable business insights. Nobl9 connects to BigQuery for SLI measurement collection and comparison with SLO targets. For more information, refer to [BigQuery Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/bigquery#bigquery-direct) @@ -329,16 +407,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_bigquery = nobl9.DirectBigquery("test-bigquery", description="desc", + log_collection_enabled=True, project="terraform", - service_account_key="secret", - source_ofs=[ - "Metrics", - "Services", - ]) + service_account_key="secret") ``` ## Nobl9 Official Documentation @@ -361,9 +436,11 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectBigqueryQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, service_account_key: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): @@ -377,16 +454,18 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - __props__.__dict__["service_account_key"] = service_account_key - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["service_account_key"] = None if service_account_key is None else pulumi.Output.secret(service_account_key) __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["serviceAccountKey"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectBigquery, __self__).__init__( 'nobl9:index/directBigquery:DirectBigquery', resource_name, @@ -399,9 +478,11 @@ def get(resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectBigqueryQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, service_account_key: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectBigquery': @@ -414,11 +495,13 @@ def get(resource_name: str, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectBigqueryQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] service_account_key: [required] | Service Account Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -427,9 +510,11 @@ def get(resource_name: str, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["service_account_key"] = service_account_key __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status @@ -451,6 +536,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -469,12 +562,20 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectBigqueryQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectBigqueryQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="serviceAccountKey") def service_account_key(self) -> pulumi.Output[str]: @@ -485,10 +586,13 @@ def service_account_key(self) -> pulumi.Output[str]: @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_cloudwatch.py b/sdk/python/piclemx_pulumi_nobl9/direct_cloudwatch.py similarity index 70% rename from sdk/python/pulumi_nobl9/direct_cloudwatch.py rename to sdk/python/piclemx_pulumi_nobl9/direct_cloudwatch.py index c9d28d9..584a702 100644 --- a/sdk/python/pulumi_nobl9/direct_cloudwatch.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_cloudwatch.py @@ -17,42 +17,50 @@ class DirectCloudwatchArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectCloudwatchQueryDelayArgs']] = None, - secret_access_key: Optional[pulumi.Input[str]] = None): + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectCloudwatch resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. - :param pulumi.Input[str] access_key_id: [required] | AWS Access Key ID. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectCloudwatchHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectCloudwatchQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[str] secret_access_key: [required] | AWS Secret Access Key. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[str] role_arn: [required] | ARN of the AWS IAM Role to assume. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) - if access_key_id is not None: - pulumi.set(__self__, "access_key_id", access_key_id) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) - if secret_access_key is not None: - pulumi.set(__self__, "secret_access_key", secret_access_key) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if role_arn is not None: + pulumi.set(__self__, "role_arn", role_arn) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -66,30 +74,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - - @property - @pulumi.getter(name="accessKeyId") - def access_key_id(self) -> Optional[pulumi.Input[str]]: - """ - [required] | AWS Access Key ID. - """ - return pulumi.get(self, "access_key_id") - - @access_key_id.setter - def access_key_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "access_key_id", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -126,6 +110,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectCloudwatchHi def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -151,77 +147,99 @@ def query_delay(self, value: Optional[pulumi.Input['DirectCloudwatchQueryDelayAr pulumi.set(self, "query_delay", value) @property - @pulumi.getter(name="secretAccessKey") - def secret_access_key(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: """ - [required] | AWS Secret Access Key. + Release channel of the created datasource [stable/beta] """ - return pulumi.get(self, "secret_access_key") + return pulumi.get(self, "release_channel") - @secret_access_key.setter - def secret_access_key(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "secret_access_key", value) + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[pulumi.Input[str]]: + """ + [required] | ARN of the AWS IAM Role to assume. + """ + return pulumi.get(self, "role_arn") + + @role_arn.setter + def role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "role_arn", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) @pulumi.input_type class _DirectCloudwatchState: def __init__(__self__, *, - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectCloudwatchQueryDelayArgs']] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering DirectCloudwatch resources. - :param pulumi.Input[str] access_key_id: [required] | AWS Access Key ID. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectCloudwatchHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectCloudwatchQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[str] secret_access_key: [required] | AWS Secret Access Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[str] role_arn: [required] | ARN of the AWS IAM Role to assume. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ - if access_key_id is not None: - pulumi.set(__self__, "access_key_id", access_key_id) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) - if secret_access_key is not None: - pulumi.set(__self__, "secret_access_key", secret_access_key) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if role_arn is not None: + pulumi.set(__self__, "role_arn", role_arn) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: pulumi.set(__self__, "status", status) - @property - @pulumi.getter(name="accessKeyId") - def access_key_id(self) -> Optional[pulumi.Input[str]]: - """ - [required] | AWS Access Key ID. - """ - return pulumi.get(self, "access_key_id") - - @access_key_id.setter - def access_key_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "access_key_id", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -258,6 +276,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectCloudwatchHi def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectCloudwatchHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -295,23 +325,38 @@ def query_delay(self, value: Optional[pulumi.Input['DirectCloudwatchQueryDelayAr pulumi.set(self, "query_delay", value) @property - @pulumi.getter(name="secretAccessKey") - def secret_access_key(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[pulumi.Input[str]]: """ - [required] | AWS Secret Access Key. + [required] | ARN of the AWS IAM Role to assume. """ - return pulumi.get(self, "secret_access_key") + return pulumi.get(self, "role_arn") - @secret_access_key.setter - def secret_access_key(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "secret_access_key", value) + @role_arn.setter + def role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "role_arn", value) @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -336,18 +381,19 @@ class DirectCloudwatch(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectCloudwatchHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectCloudwatchQueryDelayArgs']]] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects with Amazon CloudWatch to collect SLI measurements and compare them to SLO targets. + Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects to Amazon CloudWatch for SLI measurement collection and comparison with SLO targets. For more information, refer to [Amazon CloudWatch Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-direct) @@ -355,10 +401,9 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_cloudwatch = nobl9.DirectCloudwatch("test-cloudwatch", - access_key_id="secret", description="desc", historical_data_retrieval=nobl9.DirectCloudwatchHistoricalDataRetrievalArgs( default_durations=[nobl9.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs( @@ -370,12 +415,9 @@ def __init__(__self__, value=15, )], ), + log_collection_enabled=True, project="terraform", - secret_access_key="secret", - source_ofs=[ - "Metrics", - "Services", - ]) + role_arn="secret") ``` ## Nobl9 Official Documentation @@ -383,15 +425,16 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] access_key_id: [required] | AWS Access Key ID. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[pulumi.InputType['DirectCloudwatchHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectCloudwatchQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[str] secret_access_key: [required] | AWS Secret Access Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[str] role_arn: [required] | ARN of the AWS IAM Role to assume. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -400,7 +443,7 @@ def __init__(__self__, args: DirectCloudwatchArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects with Amazon CloudWatch to collect SLI measurements and compare them to SLO targets. + Amazon CloudWatch is a monitoring and observability service and a repository that aggregates data from more than 70 AWS data sources. CloudWatch also allows users to publish custom metrics from their services. Creating SLOs using this data is a powerful tool to monitor large portfolios of products. Nobl9 connects to Amazon CloudWatch for SLI measurement collection and comparison with SLO targets. For more information, refer to [Amazon CloudWatch Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cloudwatch-direct) @@ -408,10 +451,9 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_cloudwatch = nobl9.DirectCloudwatch("test-cloudwatch", - access_key_id="secret", description="desc", historical_data_retrieval=nobl9.DirectCloudwatchHistoricalDataRetrievalArgs( default_durations=[nobl9.DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs( @@ -423,12 +465,9 @@ def __init__(__self__, value=15, )], ), + log_collection_enabled=True, project="terraform", - secret_access_key="secret", - source_ofs=[ - "Metrics", - "Services", - ]) + role_arn="secret") ``` ## Nobl9 Official Documentation @@ -449,14 +488,15 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectCloudwatchHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectCloudwatchQueryDelayArgs']]] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -467,20 +507,21 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectCloudwatchArgs.__new__(DirectCloudwatchArgs) - __props__.__dict__["access_key_id"] = access_key_id __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - __props__.__dict__["secret_access_key"] = secret_access_key - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["role_arn"] = None if role_arn is None else pulumi.Output.secret(role_arn) __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["roleArn"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectCloudwatch, __self__).__init__( 'nobl9:index/directCloudwatch:DirectCloudwatch', resource_name, @@ -491,14 +532,15 @@ def _internal_init(__self__, def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectCloudwatchHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectCloudwatchQueryDelayArgs']]] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectCloudwatch': """ @@ -508,41 +550,35 @@ def get(resource_name: str, :param str resource_name: The unique name of the resulting resource. :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] access_key_id: [required] | AWS Access Key ID. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[pulumi.InputType['DirectCloudwatchHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectCloudwatchQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[str] secret_access_key: [required] | AWS Secret Access Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[str] role_arn: [required] | ARN of the AWS IAM Role to assume. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) __props__ = _DirectCloudwatchState.__new__(_DirectCloudwatchState) - __props__.__dict__["access_key_id"] = access_key_id __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - __props__.__dict__["secret_access_key"] = secret_access_key + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["role_arn"] = role_arn __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status return DirectCloudwatch(resource_name, opts=opts, __props__=__props__) - @property - @pulumi.getter(name="accessKeyId") - def access_key_id(self) -> pulumi.Output[str]: - """ - [required] | AWS Access Key ID. - """ - return pulumi.get(self, "access_key_id") - @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: @@ -561,12 +597,20 @@ def display_name(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="historicalDataRetrieval") - def historical_data_retrieval(self) -> pulumi.Output[Optional['outputs.DirectCloudwatchHistoricalDataRetrieval']]: + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectCloudwatchHistoricalDataRetrieval']: """ [Replay configuration documentation](https://docs.nobl9.com/replay) """ return pulumi.get(self, "historical_data_retrieval") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -585,26 +629,37 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectCloudwatchQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectCloudwatchQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") @property - @pulumi.getter(name="secretAccessKey") - def secret_access_key(self) -> pulumi.Output[str]: + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> pulumi.Output[str]: """ - [required] | AWS Secret Access Key. + [required] | ARN of the AWS IAM Role to assume. """ - return pulumi.get(self, "secret_access_key") + return pulumi.get(self, "role_arn") @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_datadog.py b/sdk/python/piclemx_pulumi_nobl9/direct_datadog.py similarity index 76% rename from sdk/python/pulumi_nobl9/direct_datadog.py rename to sdk/python/piclemx_pulumi_nobl9/direct_datadog.py index 18fbcf5..c48e013 100644 --- a/sdk/python/pulumi_nobl9/direct_datadog.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_datadog.py @@ -18,30 +18,33 @@ class DirectDatadogArgs: def __init__(__self__, *, project: pulumi.Input[str], site: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], api_key: Optional[pulumi.Input[str]] = None, application_key: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectDatadogHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectDatadogQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectDatadogQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectDatadog resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] site: `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] api_key: [required] | Datadog API Key. :param pulumi.Input[str] application_key: [required] | Datadog Application Key. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectDatadogHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectDatadogQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) pulumi.set(__self__, "site", site) - pulumi.set(__self__, "source_ofs", source_ofs) if api_key is not None: pulumi.set(__self__, "api_key", api_key) if application_key is not None: @@ -52,10 +55,19 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -81,18 +93,6 @@ def site(self) -> pulumi.Input[str]: def site(self, value: pulumi.Input[str]): pulumi.set(self, "site", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter(name="apiKey") def api_key(self) -> Optional[pulumi.Input[str]]: @@ -153,6 +153,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectDatadogHisto def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectDatadogHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -177,6 +189,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectDatadogQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectDatadogQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectDatadogState: @@ -186,9 +225,11 @@ def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectDatadogHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectDatadogQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, site: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): @@ -199,11 +240,13 @@ def __init__(__self__, *, :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectDatadogHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectDatadogQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] site: `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ if api_key is not None: @@ -216,14 +259,21 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) if site is not None: pulumi.set(__self__, "site", site) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -289,6 +339,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectDatadogHisto def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectDatadogHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -325,6 +387,18 @@ def query_delay(self) -> Optional[pulumi.Input['DirectDatadogQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectDatadogQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter def site(self) -> Optional[pulumi.Input[str]]: @@ -341,8 +415,11 @@ def site(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -372,14 +449,16 @@ def __init__(__self__, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectDatadogHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectDatadogQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, site: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects with Datadog to collect SLI measurements and compare them to SLO targets. + Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects to Datadog for SLI measurement collection and comparison with SLO targets. For more information, refer to [Datadog Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/datadog#datadog-direct). @@ -387,7 +466,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_datadog = nobl9.DirectDatadog("test-datadog", api_key="secret", @@ -403,12 +482,9 @@ def __init__(__self__, value=30, )], ), + log_collection_enabled=True, project="terraform", - site="eu", - source_ofs=[ - "Metrics", - "Services", - ]) + site="eu") ``` ## Nobl9 Official Documentation @@ -421,11 +497,13 @@ def __init__(__self__, :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[pulumi.InputType['DirectDatadogHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectDatadogQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] site: `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -434,7 +512,7 @@ def __init__(__self__, args: DirectDatadogArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects with Datadog to collect SLI measurements and compare them to SLO targets. + Datadog is a cloud-scale application observability solution that monitors servers, databases, tools, and services. Nobl9 connects to Datadog for SLI measurement collection and comparison with SLO targets. For more information, refer to [Datadog Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/datadog#datadog-direct). @@ -442,7 +520,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_datadog = nobl9.DirectDatadog("test-datadog", api_key="secret", @@ -458,12 +536,9 @@ def __init__(__self__, value=30, )], ), + log_collection_enabled=True, project="terraform", - site="eu", - source_ofs=[ - "Metrics", - "Services", - ]) + site="eu") ``` ## Nobl9 Official Documentation @@ -489,9 +564,11 @@ def _internal_init(__self__, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectDatadogHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectDatadogQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, site: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): @@ -503,23 +580,25 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectDatadogArgs.__new__(DirectDatadogArgs) - __props__.__dict__["api_key"] = api_key - __props__.__dict__["application_key"] = application_key + __props__.__dict__["api_key"] = None if api_key is None else pulumi.Output.secret(api_key) + __props__.__dict__["application_key"] = None if application_key is None else pulumi.Output.secret(application_key) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel if site is None and not opts.urn: raise TypeError("Missing required property 'site'") __props__.__dict__["site"] = site - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apiKey", "applicationKey"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectDatadog, __self__).__init__( 'nobl9:index/directDatadog:DirectDatadog', resource_name, @@ -535,9 +614,11 @@ def get(resource_name: str, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectDatadogHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectDatadogQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, site: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectDatadog': @@ -553,11 +634,13 @@ def get(resource_name: str, :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[pulumi.InputType['DirectDatadogHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectDatadogQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] site: `com` or `eu`, Datadog SaaS instance, which corresponds to one of Datadog's two locations (https://www.datadoghq.com/ in the U.S. or https://datadoghq.eu/ in the European Union). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -569,9 +652,11 @@ def get(resource_name: str, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["site"] = site __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status @@ -611,12 +696,20 @@ def display_name(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="historicalDataRetrieval") - def historical_data_retrieval(self) -> pulumi.Output[Optional['outputs.DirectDatadogHistoricalDataRetrieval']]: + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectDatadogHistoricalDataRetrieval']: """ [Replay configuration documentation](https://docs.nobl9.com/replay) """ return pulumi.get(self, "historical_data_retrieval") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -635,12 +728,20 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectDatadogQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectDatadogQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter def site(self) -> pulumi.Output[str]: @@ -651,10 +752,13 @@ def site(self) -> pulumi.Output[str]: @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_dynatrace.py b/sdk/python/piclemx_pulumi_nobl9/direct_dynatrace.py similarity index 75% rename from sdk/python/pulumi_nobl9/direct_dynatrace.py rename to sdk/python/piclemx_pulumi_nobl9/direct_dynatrace.py index 79aff97..ee8f4d8 100644 --- a/sdk/python/pulumi_nobl9/direct_dynatrace.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_dynatrace.py @@ -17,28 +17,31 @@ class DirectDynatraceArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], url: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, dynatrace_token: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectDynatraceHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectDynatraceQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectDynatraceQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectDynatrace resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] url: Dynatrace API URL. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] dynatrace_token: [required] | Dynatrace Token. :param pulumi.Input['DirectDynatraceHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectDynatraceQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) pulumi.set(__self__, "url", url) if description is not None: pulumi.set(__self__, "description", description) @@ -48,10 +51,19 @@ def __init__(__self__, *, pulumi.set(__self__, "dynatrace_token", dynatrace_token) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -65,18 +77,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def url(self) -> pulumi.Input[str]: @@ -137,6 +137,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectDynatraceHis def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectDynatraceHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -161,6 +173,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectDynatraceQueryDelayArgs']] def query_delay(self, value: Optional[pulumi.Input['DirectDynatraceQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectDynatraceState: @@ -169,9 +208,11 @@ def __init__(__self__, *, display_name: Optional[pulumi.Input[str]] = None, dynatrace_token: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectDynatraceHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectDynatraceQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None): @@ -181,10 +222,12 @@ def __init__(__self__, *, :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] dynatrace_token: [required] | Dynatrace Token. :param pulumi.Input['DirectDynatraceHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectDynatraceQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Dynatrace API URL. """ @@ -196,12 +239,19 @@ def __init__(__self__, *, pulumi.set(__self__, "dynatrace_token", dynatrace_token) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -257,6 +307,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectDynatraceHis def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectDynatraceHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -293,12 +355,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectDynatraceQueryDelayArgs']] def query_delay(self, value: Optional[pulumi.Input['DirectDynatraceQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -339,22 +416,23 @@ def __init__(__self__, display_name: Optional[pulumi.Input[str]] = None, dynatrace_token: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectDynatraceHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectDynatraceQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): """ - Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects with Dynatrace to collect SLI measurements and compare them to SLO targets. - + Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects to Dynatrace for SLI measurement collection and comparison with SLO targets. For more information, refer to [Dynatrace Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/dynatrace#dynatrace-direct). ## Example Usage ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_dynatrace = nobl9.DirectDynatrace("test-dynatrace", description="desc", @@ -369,11 +447,8 @@ def __init__(__self__, value=10, )], ), + log_collection_enabled=True, project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], url="https://web.net") ``` ## Nobl9 Official Documentation @@ -386,10 +461,12 @@ def __init__(__self__, :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] dynatrace_token: [required] | Dynatrace Token. :param pulumi.Input[pulumi.InputType['DirectDynatraceHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectDynatraceQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] url: Dynatrace API URL. """ ... @@ -399,15 +476,14 @@ def __init__(__self__, args: DirectDynatraceArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects with Dynatrace to collect SLI measurements and compare them to SLO targets. - + Dynatrace is a software intelligence platform that monitors and optimizes application performance, development and security, IT infrastructure, and user experience. The Dynatrace Software Intelligence Platform maps, and monitors applications, microservices, container orchestration platforms such as Kubernetes, and IT infrastructure running in multi-cloud and hybrid-cloud environments, and provides automated problem remediation. Nobl9 connects to Dynatrace for SLI measurement collection and comparison with SLO targets. For more information, refer to [Dynatrace Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/dynatrace#dynatrace-direct). ## Example Usage ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_dynatrace = nobl9.DirectDynatrace("test-dynatrace", description="desc", @@ -422,11 +498,8 @@ def __init__(__self__, value=10, )], ), + log_collection_enabled=True, project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], url="https://web.net") ``` ## Nobl9 Official Documentation @@ -452,9 +525,11 @@ def _internal_init(__self__, display_name: Optional[pulumi.Input[str]] = None, dynatrace_token: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectDynatraceHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectDynatraceQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): @@ -468,20 +543,22 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name - __props__.__dict__["dynatrace_token"] = dynatrace_token + __props__.__dict__["dynatrace_token"] = None if dynatrace_token is None else pulumi.Output.secret(dynatrace_token) __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs if url is None and not opts.urn: raise TypeError("Missing required property 'url'") __props__.__dict__["url"] = url __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["dynatraceToken"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectDynatrace, __self__).__init__( 'nobl9:index/directDynatrace:DirectDynatrace', resource_name, @@ -496,9 +573,11 @@ def get(resource_name: str, display_name: Optional[pulumi.Input[str]] = None, dynatrace_token: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectDynatraceHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectDynatraceQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None) -> 'DirectDynatrace': @@ -513,10 +592,12 @@ def get(resource_name: str, :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] dynatrace_token: [required] | Dynatrace Token. :param pulumi.Input[pulumi.InputType['DirectDynatraceHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectDynatraceQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Dynatrace API URL. """ @@ -528,9 +609,11 @@ def get(resource_name: str, __props__.__dict__["display_name"] = display_name __props__.__dict__["dynatrace_token"] = dynatrace_token __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status __props__.__dict__["url"] = url @@ -562,12 +645,20 @@ def dynatrace_token(self) -> pulumi.Output[str]: @property @pulumi.getter(name="historicalDataRetrieval") - def historical_data_retrieval(self) -> pulumi.Output[Optional['outputs.DirectDynatraceHistoricalDataRetrieval']]: + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectDynatraceHistoricalDataRetrieval']: """ [Replay configuration documentation](https://docs.nobl9.com/replay) """ return pulumi.get(self, "historical_data_retrieval") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -586,18 +677,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectDynatraceQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectDynatraceQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_gcm.py b/sdk/python/piclemx_pulumi_nobl9/direct_gcm.py similarity index 71% rename from sdk/python/pulumi_nobl9/direct_gcm.py rename to sdk/python/piclemx_pulumi_nobl9/direct_gcm.py index 131897b..8023c13 100644 --- a/sdk/python/pulumi_nobl9/direct_gcm.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_gcm.py @@ -17,34 +17,46 @@ class DirectGcmArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectGcmQueryDelayArgs']] = None, - service_account_key: Optional[pulumi.Input[str]] = None): + release_channel: Optional[pulumi.Input[str]] = None, + service_account_key: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectGcm resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectGcmQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] service_account_key: [required] | Service Account Key. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) if service_account_key is not None: pulumi.set(__self__, "service_account_key", service_account_key) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -58,18 +70,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -94,6 +94,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -118,6 +130,18 @@ def query_delay(self) -> Optional[pulumi.Input['DirectGcmQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectGcmQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="serviceAccountKey") def service_account_key(self) -> Optional[pulumi.Input[str]]: @@ -130,15 +154,32 @@ def service_account_key(self) -> Optional[pulumi.Input[str]]: def service_account_key(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "service_account_key", value) + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectGcmState: def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectGcmQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, service_account_key: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): @@ -146,25 +187,34 @@ def __init__(__self__, *, Input properties used for looking up and filtering DirectGcm resources. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectGcmQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] service_account_key: [required] | Service Account Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) if service_account_key is not None: pulumi.set(__self__, "service_account_key", service_account_key) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -194,6 +244,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -230,6 +292,18 @@ def query_delay(self) -> Optional[pulumi.Input['DirectGcmQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectGcmQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="serviceAccountKey") def service_account_key(self) -> Optional[pulumi.Input[str]]: @@ -246,8 +320,11 @@ def service_account_key(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -274,14 +351,16 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectGcmQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, service_account_key: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects with GCM to collect SLI measurements and compare them to SLO targets. + Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects to GCM for SLI measurement collection and comparison with SLO targets. For more information, refer to [Google Cloud Monitoring Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-direct). @@ -289,16 +368,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_gcm = nobl9.DirectGcm("test-gcm", description="desc", + log_collection_enabled=True, project="terraform", - service_account_key="secret", - source_ofs=[ - "Metrics", - "Services", - ]) + service_account_key="secret") ``` ## Nobl9 Official Documentation @@ -308,11 +384,13 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectGcmQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] service_account_key: [required] | Service Account Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -321,7 +399,7 @@ def __init__(__self__, args: DirectGcmArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects with GCM to collect SLI measurements and compare them to SLO targets. + Google Cloud Monitoring (GCM) provides visibility into the performance, uptime, and overall health of cloud-powered applications. It collects metrics, events, and metadata from Google Cloud, hosted uptime probes, and application instrumentation. Nobl9 connects to GCM for SLI measurement collection and comparison with SLO targets. For more information, refer to [Google Cloud Monitoring Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#google-cloud-monitoring-direct). @@ -329,16 +407,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_gcm = nobl9.DirectGcm("test-gcm", description="desc", + log_collection_enabled=True, project="terraform", - service_account_key="secret", - source_ofs=[ - "Metrics", - "Services", - ]) + service_account_key="secret") ``` ## Nobl9 Official Documentation @@ -361,9 +436,11 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectGcmQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, service_account_key: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): @@ -377,16 +454,18 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - __props__.__dict__["service_account_key"] = service_account_key - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["service_account_key"] = None if service_account_key is None else pulumi.Output.secret(service_account_key) __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["serviceAccountKey"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectGcm, __self__).__init__( 'nobl9:index/directGcm:DirectGcm', resource_name, @@ -399,9 +478,11 @@ def get(resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectGcmQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, service_account_key: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectGcm': @@ -414,11 +495,13 @@ def get(resource_name: str, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectGcmQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] :param pulumi.Input[str] service_account_key: [required] | Service Account Key. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -427,9 +510,11 @@ def get(resource_name: str, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["service_account_key"] = service_account_key __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status @@ -451,6 +536,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -469,12 +562,20 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectGcmQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectGcmQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="serviceAccountKey") def service_account_key(self) -> pulumi.Output[str]: @@ -485,10 +586,13 @@ def service_account_key(self) -> pulumi.Output[str]: @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/piclemx_pulumi_nobl9/direct_honeycomb.py b/sdk/python/piclemx_pulumi_nobl9/direct_honeycomb.py new file mode 100644 index 0000000..e637c85 --- /dev/null +++ b/sdk/python/piclemx_pulumi_nobl9/direct_honeycomb.py @@ -0,0 +1,682 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from . import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['DirectHoneycombArgs', 'DirectHoneycomb'] + +@pulumi.input_type +class DirectHoneycombArgs: + def __init__(__self__, *, + project: pulumi.Input[str], + api_key: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input['DirectHoneycombHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input['DirectHoneycombQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + The set of arguments for constructing a DirectHoneycomb resource. + :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] api_key: [required] | Honeycomb API Key. + :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input['DirectHoneycombHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input['DirectHoneycombQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + pulumi.set(__self__, "project", project) + if api_key is not None: + pulumi.set(__self__, "api_key", api_key) + if description is not None: + pulumi.set(__self__, "description", description) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if historical_data_retrieval is not None: + pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) + if name is not None: + pulumi.set(__self__, "name", name) + if query_delay is not None: + pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) + + @property + @pulumi.getter + def project(self) -> pulumi.Input[str]: + """ + Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "project") + + @project.setter + def project(self, value: pulumi.Input[str]): + pulumi.set(self, "project", value) + + @property + @pulumi.getter(name="apiKey") + def api_key(self) -> Optional[pulumi.Input[str]]: + """ + [required] | Honeycomb API Key. + """ + return pulumi.get(self, "api_key") + + @api_key.setter + def api_key(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "api_key", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + User-friendly display name of the resource. + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectHoneycombHistoricalDataRetrievalArgs']]: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @historical_data_retrieval.setter + def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectHoneycombHistoricalDataRetrievalArgs']]): + pulumi.set(self, "historical_data_retrieval", value) + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="queryDelay") + def query_delay(self) -> Optional[pulumi.Input['DirectHoneycombQueryDelayArgs']]: + """ + [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + """ + return pulumi.get(self, "query_delay") + + @query_delay.setter + def query_delay(self, value: Optional[pulumi.Input['DirectHoneycombQueryDelayArgs']]): + pulumi.set(self, "query_delay", value) + + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + + +@pulumi.input_type +class _DirectHoneycombState: + def __init__(__self__, *, + api_key: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input['DirectHoneycombHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input['DirectHoneycombQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + status: Optional[pulumi.Input[str]] = None): + """ + Input properties used for looking up and filtering DirectHoneycomb resources. + :param pulumi.Input[str] api_key: [required] | Honeycomb API Key. + :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input['DirectHoneycombHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input['DirectHoneycombQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + :param pulumi.Input[str] status: The status of the created direct. + """ + if api_key is not None: + pulumi.set(__self__, "api_key", api_key) + if description is not None: + pulumi.set(__self__, "description", description) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + if historical_data_retrieval is not None: + pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) + if name is not None: + pulumi.set(__self__, "name", name) + if project is not None: + pulumi.set(__self__, "project", project) + if query_delay is not None: + pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) + if status is not None: + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter(name="apiKey") + def api_key(self) -> Optional[pulumi.Input[str]]: + """ + [required] | Honeycomb API Key. + """ + return pulumi.get(self, "api_key") + + @api_key.setter + def api_key(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "api_key", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[pulumi.Input[str]]: + """ + User-friendly display name of the resource. + """ + return pulumi.get(self, "display_name") + + @display_name.setter + def display_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "display_name", value) + + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectHoneycombHistoricalDataRetrievalArgs']]: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @historical_data_retrieval.setter + def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectHoneycombHistoricalDataRetrievalArgs']]): + pulumi.set(self, "historical_data_retrieval", value) + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def project(self) -> Optional[pulumi.Input[str]]: + """ + Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "project") + + @project.setter + def project(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project", value) + + @property + @pulumi.getter(name="queryDelay") + def query_delay(self) -> Optional[pulumi.Input['DirectHoneycombQueryDelayArgs']]: + """ + [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + """ + return pulumi.get(self, "query_delay") + + @query_delay.setter + def query_delay(self, value: Optional[pulumi.Input['DirectHoneycombQueryDelayArgs']]): + pulumi.set(self, "query_delay", value) + + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + + @property + @pulumi.getter + def status(self) -> Optional[pulumi.Input[str]]: + """ + The status of the created direct. + """ + return pulumi.get(self, "status") + + @status.setter + def status(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "status", value) + + +class DirectHoneycomb(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + api_key: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectHoneycombHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input[pulumi.InputType['DirectHoneycombQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + __props__=None): + """ + Honeycomb is an observability platform that integrates system metrics with high-cardinality application data for in-depth analysis and swift debugging of complex software systems. Nobl9 connects to Honeycomb for SLI measurement collection and comparison with SLO targets. + + For more information, refer to [Honeycomb Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/honeycomb#hc-direct). + + ## Example Usage + + ```python + import pulumi + import piclemx_pulumi_nobl9 as nobl9 + + test_honeycomb = nobl9.DirectHoneycomb("test-honeycomb", + api_key="secret", + description="desc", + historical_data_retrieval=nobl9.DirectHoneycombHistoricalDataRetrievalArgs( + default_durations=[nobl9.DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs( + unit="Day", + value=7, + )], + max_durations=[nobl9.DirectHoneycombHistoricalDataRetrievalMaxDurationArgs( + unit="Day", + value=7, + )], + ), + log_collection_enabled=True, + project="terraform", + query_delay=nobl9.DirectHoneycombQueryDelayArgs( + unit="Minute", + value=6, + ), + release_channel="beta") + ``` + ## Nobl9 Official Documentation + + https://docs.nobl9.com/ + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] api_key: [required] | Honeycomb API Key. + :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[pulumi.InputType['DirectHoneycombHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[pulumi.InputType['DirectHoneycombQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: DirectHoneycombArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Honeycomb is an observability platform that integrates system metrics with high-cardinality application data for in-depth analysis and swift debugging of complex software systems. Nobl9 connects to Honeycomb for SLI measurement collection and comparison with SLO targets. + + For more information, refer to [Honeycomb Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/honeycomb#hc-direct). + + ## Example Usage + + ```python + import pulumi + import piclemx_pulumi_nobl9 as nobl9 + + test_honeycomb = nobl9.DirectHoneycomb("test-honeycomb", + api_key="secret", + description="desc", + historical_data_retrieval=nobl9.DirectHoneycombHistoricalDataRetrievalArgs( + default_durations=[nobl9.DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs( + unit="Day", + value=7, + )], + max_durations=[nobl9.DirectHoneycombHistoricalDataRetrievalMaxDurationArgs( + unit="Day", + value=7, + )], + ), + log_collection_enabled=True, + project="terraform", + query_delay=nobl9.DirectHoneycombQueryDelayArgs( + unit="Minute", + value=6, + ), + release_channel="beta") + ``` + ## Nobl9 Official Documentation + + https://docs.nobl9.com/ + + :param str resource_name: The name of the resource. + :param DirectHoneycombArgs args: The arguments to use to populate this resource's properties. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + def __init__(__self__, resource_name: str, *args, **kwargs): + resource_args, opts = _utilities.get_resource_args_opts(DirectHoneycombArgs, pulumi.ResourceOptions, *args, **kwargs) + if resource_args is not None: + __self__._internal_init(resource_name, opts, **resource_args.__dict__) + else: + __self__._internal_init(resource_name, *args, **kwargs) + + def _internal_init(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + api_key: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectHoneycombHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input[pulumi.InputType['DirectHoneycombQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + __props__=None): + opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) + if not isinstance(opts, pulumi.ResourceOptions): + raise TypeError('Expected resource options to be a ResourceOptions instance') + if opts.id is None: + if __props__ is not None: + raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') + __props__ = DirectHoneycombArgs.__new__(DirectHoneycombArgs) + + __props__.__dict__["api_key"] = None if api_key is None else pulumi.Output.secret(api_key) + __props__.__dict__["description"] = description + __props__.__dict__["display_name"] = display_name + __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled + __props__.__dict__["name"] = name + if project is None and not opts.urn: + raise TypeError("Missing required property 'project'") + __props__.__dict__["project"] = project + __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["source_ofs"] = source_ofs + __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apiKey"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) + super(DirectHoneycomb, __self__).__init__( + 'nobl9:index/directHoneycomb:DirectHoneycomb', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None, + api_key: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + display_name: Optional[pulumi.Input[str]] = None, + historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectHoneycombHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, + name: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None, + query_delay: Optional[pulumi.Input[pulumi.InputType['DirectHoneycombQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + status: Optional[pulumi.Input[str]] = None) -> 'DirectHoneycomb': + """ + Get an existing DirectHoneycomb resource's state with the given name, id, and optional extra + properties used to qualify the lookup. + + :param str resource_name: The unique name of the resulting resource. + :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] api_key: [required] | Honeycomb API Key. + :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[pulumi.InputType['DirectHoneycombHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[pulumi.InputType['DirectHoneycombQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + :param pulumi.Input[str] status: The status of the created direct. + """ + opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) + + __props__ = _DirectHoneycombState.__new__(_DirectHoneycombState) + + __props__.__dict__["api_key"] = api_key + __props__.__dict__["description"] = description + __props__.__dict__["display_name"] = display_name + __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled + __props__.__dict__["name"] = name + __props__.__dict__["project"] = project + __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["source_ofs"] = source_ofs + __props__.__dict__["status"] = status + return DirectHoneycomb(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="apiKey") + def api_key(self) -> pulumi.Output[str]: + """ + [required] | Honeycomb API Key. + """ + return pulumi.get(self, "api_key") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + """ + Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> pulumi.Output[Optional[str]]: + """ + User-friendly display name of the resource. + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter(name="historicalDataRetrieval") + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectHoneycombHistoricalDataRetrieval']: + """ + [Replay configuration documentation](https://docs.nobl9.com/replay) + """ + return pulumi.get(self, "historical_data_retrieval") + + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def project(self) -> pulumi.Output[str]: + """ + Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + """ + return pulumi.get(self, "project") + + @property + @pulumi.getter(name="queryDelay") + def query_delay(self) -> pulumi.Output['outputs.DirectHoneycombQueryDelay']: + """ + [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + """ + return pulumi.get(self, "query_delay") + + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + """ + The status of the created direct. + """ + return pulumi.get(self, "status") + diff --git a/sdk/python/pulumi_nobl9/direct_influxdb.py b/sdk/python/piclemx_pulumi_nobl9/direct_influxdb.py similarity index 73% rename from sdk/python/pulumi_nobl9/direct_influxdb.py rename to sdk/python/piclemx_pulumi_nobl9/direct_influxdb.py index bdb25a5..47d24d2 100644 --- a/sdk/python/pulumi_nobl9/direct_influxdb.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_influxdb.py @@ -17,28 +17,31 @@ class DirectInfluxdbArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], url: pulumi.Input[str], api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, organization_id: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectInfluxdbQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectInfluxdbQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectInfluxdb resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] url: API URL endpoint to the InfluxDB's instance. :param pulumi.Input[str] api_token: [required] | InfluxDB API Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] organization_id: [required] | InfluxDB Organization ID. :param pulumi.Input['DirectInfluxdbQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) pulumi.set(__self__, "url", url) if api_token is not None: pulumi.set(__self__, "api_token", api_token) @@ -46,12 +49,21 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if organization_id is not None: pulumi.set(__self__, "organization_id", organization_id) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -65,18 +77,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def url(self) -> pulumi.Input[str]: @@ -125,6 +125,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -161,6 +173,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectInfluxdbQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectInfluxdbQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectInfluxdbState: @@ -168,10 +207,12 @@ def __init__(__self__, *, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, organization_id: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectInfluxdbQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None): @@ -180,11 +221,13 @@ def __init__(__self__, *, :param pulumi.Input[str] api_token: [required] | InfluxDB API Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] organization_id: [required] | InfluxDB Organization ID. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectInfluxdbQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: API URL endpoint to the InfluxDB's instance. """ @@ -194,6 +237,8 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if organization_id is not None: @@ -202,6 +247,11 @@ def __init__(__self__, *, pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -245,6 +295,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -293,12 +355,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectInfluxdbQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectInfluxdbQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -338,15 +415,17 @@ def __init__(__self__, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, organization_id: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectInfluxdbQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): """ - InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects with InfluxDB to collect SLI measurements and compare them to SLO targets. + InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects to InfluxDB for SLI measurement collection and comparison with SLO targets. For more information, refer to [InfluxDB Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-direct). @@ -354,17 +433,14 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_influxdb = nobl9.DirectInfluxdb("test-influxdb", api_token="secret", description="desc", + log_collection_enabled=True, organization_id="secret", project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], url="https://web.net") ``` ## Nobl9 Official Documentation @@ -376,11 +452,13 @@ def __init__(__self__, :param pulumi.Input[str] api_token: [required] | InfluxDB API Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] organization_id: [required] | InfluxDB Organization ID. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectInfluxdbQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] url: API URL endpoint to the InfluxDB's instance. """ ... @@ -390,7 +468,7 @@ def __init__(__self__, args: DirectInfluxdbArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects with InfluxDB to collect SLI measurements and compare them to SLO targets. + InfluxDB is an open source time series database platform that enables users to collect, process, and analyze data to optimize their infrastructure. Nobl9 connects to InfluxDB for SLI measurement collection and comparison with SLO targets. For more information, refer to [InfluxDB Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/influxdb#influxdb-direct). @@ -398,17 +476,14 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_influxdb = nobl9.DirectInfluxdb("test-influxdb", api_token="secret", description="desc", + log_collection_enabled=True, organization_id="secret", project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], url="https://web.net") ``` ## Nobl9 Official Documentation @@ -433,10 +508,12 @@ def _internal_init(__self__, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, organization_id: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectInfluxdbQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): @@ -448,22 +525,24 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectInfluxdbArgs.__new__(DirectInfluxdbArgs) - __props__.__dict__["api_token"] = api_token + __props__.__dict__["api_token"] = None if api_token is None else pulumi.Output.secret(api_token) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name - __props__.__dict__["organization_id"] = organization_id + __props__.__dict__["organization_id"] = None if organization_id is None else pulumi.Output.secret(organization_id) if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs if url is None and not opts.urn: raise TypeError("Missing required property 'url'") __props__.__dict__["url"] = url __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apiToken", "organizationId"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectInfluxdb, __self__).__init__( 'nobl9:index/directInfluxdb:DirectInfluxdb', resource_name, @@ -477,10 +556,12 @@ def get(resource_name: str, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, organization_id: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectInfluxdbQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None) -> 'DirectInfluxdb': @@ -494,11 +575,13 @@ def get(resource_name: str, :param pulumi.Input[str] api_token: [required] | InfluxDB API Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] organization_id: [required] | InfluxDB Organization ID. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectInfluxdbQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: API URL endpoint to the InfluxDB's instance. """ @@ -509,10 +592,12 @@ def get(resource_name: str, __props__.__dict__["api_token"] = api_token __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["organization_id"] = organization_id __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status __props__.__dict__["url"] = url @@ -542,6 +627,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -568,18 +661,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectInfluxdbQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectInfluxdbQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_instana.py b/sdk/python/piclemx_pulumi_nobl9/direct_instana.py similarity index 72% rename from sdk/python/pulumi_nobl9/direct_instana.py rename to sdk/python/piclemx_pulumi_nobl9/direct_instana.py index 9f488b7..0be1f8f 100644 --- a/sdk/python/pulumi_nobl9/direct_instana.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_instana.py @@ -17,26 +17,29 @@ class DirectInstanaArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], url: pulumi.Input[str], api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectInstanaQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectInstanaQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectInstana resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] url: Instana API URL. :param pulumi.Input[str] api_token: [required] | Instana API Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectInstanaQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) pulumi.set(__self__, "url", url) if api_token is not None: pulumi.set(__self__, "api_token", api_token) @@ -44,10 +47,19 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -61,18 +73,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def url(self) -> pulumi.Input[str]: @@ -121,6 +121,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -145,6 +157,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectInstanaQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectInstanaQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectInstanaState: @@ -152,9 +191,11 @@ def __init__(__self__, *, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectInstanaQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None): @@ -163,10 +204,12 @@ def __init__(__self__, *, :param pulumi.Input[str] api_token: [required] | Instana API Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectInstanaQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Instana API URL. """ @@ -176,12 +219,19 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -225,6 +275,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -261,12 +323,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectInstanaQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectInstanaQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -306,14 +383,16 @@ def __init__(__self__, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectInstanaQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): """ - Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects with Instana to collect SLI measurements and compare them to SLO targets. + Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects to Instana for SLI measurement collection and comparison with SLO targets. For more information, refer to [Instana Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/instana#instana-direct). @@ -321,16 +400,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_instana = nobl9.DirectInstana("test-instana", api_token="secret", description="desc", + log_collection_enabled=True, project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], url="https://web.net") ``` ## Nobl9 Official Documentation @@ -342,10 +418,12 @@ def __init__(__self__, :param pulumi.Input[str] api_token: [required] | Instana API Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectInstanaQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] url: Instana API URL. """ ... @@ -355,7 +433,7 @@ def __init__(__self__, args: DirectInstanaArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects with Instana to collect SLI measurements and compare them to SLO targets. + Instana is an observability platform that delivers automated Application Performance Monitoring (APM), used for website, infrastructure, and application monitoring. Nobl9 connects to Instana for SLI measurement collection and comparison with SLO targets. For more information, refer to [Instana Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/instana#instana-direct). @@ -363,16 +441,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_instana = nobl9.DirectInstana("test-instana", api_token="secret", description="desc", + log_collection_enabled=True, project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], url="https://web.net") ``` ## Nobl9 Official Documentation @@ -397,9 +472,11 @@ def _internal_init(__self__, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectInstanaQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): @@ -411,21 +488,23 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectInstanaArgs.__new__(DirectInstanaArgs) - __props__.__dict__["api_token"] = api_token + __props__.__dict__["api_token"] = None if api_token is None else pulumi.Output.secret(api_token) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs if url is None and not opts.urn: raise TypeError("Missing required property 'url'") __props__.__dict__["url"] = url __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apiToken"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectInstana, __self__).__init__( 'nobl9:index/directInstana:DirectInstana', resource_name, @@ -439,9 +518,11 @@ def get(resource_name: str, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectInstanaQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None) -> 'DirectInstana': @@ -455,10 +536,12 @@ def get(resource_name: str, :param pulumi.Input[str] api_token: [required] | Instana API Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectInstanaQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Instana API URL. """ @@ -469,9 +552,11 @@ def get(resource_name: str, __props__.__dict__["api_token"] = api_token __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status __props__.__dict__["url"] = url @@ -501,6 +586,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -519,18 +612,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectInstanaQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectInstanaQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_lightstep.py b/sdk/python/piclemx_pulumi_nobl9/direct_lightstep.py similarity index 73% rename from sdk/python/pulumi_nobl9/direct_lightstep.py rename to sdk/python/piclemx_pulumi_nobl9/direct_lightstep.py index 1b19ae3..a4aba2f 100644 --- a/sdk/python/pulumi_nobl9/direct_lightstep.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_lightstep.py @@ -19,30 +19,35 @@ def __init__(__self__, *, lightstep_organization: pulumi.Input[str], lightstep_project: pulumi.Input[str], project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], app_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectLightstepHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectLightstepQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectLightstepQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + url: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a DirectLightstep resource. :param pulumi.Input[str] lightstep_organization: Organization name registered in Lightstep. :param pulumi.Input[str] lightstep_project: Name of the Lightstep project. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] app_token: [required] | Lightstep App Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectLightstepHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectLightstepQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + :param pulumi.Input[str] url: Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. """ pulumi.set(__self__, "lightstep_organization", lightstep_organization) pulumi.set(__self__, "lightstep_project", lightstep_project) pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) if app_token is not None: pulumi.set(__self__, "app_token", app_token) if description is not None: @@ -51,10 +56,21 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) + if url is not None: + pulumi.set(__self__, "url", url) @property @pulumi.getter(name="lightstepOrganization") @@ -92,18 +108,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter(name="appToken") def app_token(self) -> Optional[pulumi.Input[str]]: @@ -152,6 +156,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectLightstepHis def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectLightstepHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -176,6 +192,45 @@ def query_delay(self) -> Optional[pulumi.Input['DirectLightstepQueryDelayArgs']] def query_delay(self, value: Optional[pulumi.Input['DirectLightstepQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + + @property + @pulumi.getter + def url(self) -> Optional[pulumi.Input[str]]: + """ + Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + """ + return pulumi.get(self, "url") + + @url.setter + def url(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "url", value) + @pulumi.input_type class _DirectLightstepState: @@ -186,11 +241,14 @@ def __init__(__self__, *, historical_data_retrieval: Optional[pulumi.Input['DirectLightstepHistoricalDataRetrievalArgs']] = None, lightstep_organization: Optional[pulumi.Input[str]] = None, lightstep_project: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectLightstepQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - status: Optional[pulumi.Input[str]] = None): + status: Optional[pulumi.Input[str]] = None, + url: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering DirectLightstep resources. :param pulumi.Input[str] app_token: [required] | Lightstep App Token. @@ -199,11 +257,14 @@ def __init__(__self__, *, :param pulumi.Input['DirectLightstepHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) :param pulumi.Input[str] lightstep_organization: Organization name registered in Lightstep. :param pulumi.Input[str] lightstep_project: Name of the Lightstep project. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectLightstepQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. + :param pulumi.Input[str] url: Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. """ if app_token is not None: pulumi.set(__self__, "app_token", app_token) @@ -217,16 +278,25 @@ def __init__(__self__, *, pulumi.set(__self__, "lightstep_organization", lightstep_organization) if lightstep_project is not None: pulumi.set(__self__, "lightstep_project", lightstep_project) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: pulumi.set(__self__, "status", status) + if url is not None: + pulumi.set(__self__, "url", url) @property @pulumi.getter(name="appToken") @@ -300,6 +370,18 @@ def lightstep_project(self) -> Optional[pulumi.Input[str]]: def lightstep_project(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "lightstep_project", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -336,12 +418,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectLightstepQueryDelayArgs']] def query_delay(self, value: Optional[pulumi.Input['DirectLightstepQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -360,6 +457,18 @@ def status(self) -> Optional[pulumi.Input[str]]: def status(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "status", value) + @property + @pulumi.getter + def url(self) -> Optional[pulumi.Input[str]]: + """ + Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + """ + return pulumi.get(self, "url") + + @url.setter + def url(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "url", value) + class DirectLightstep(pulumi.CustomResource): @overload @@ -372,13 +481,16 @@ def __init__(__self__, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectLightstepHistoricalDataRetrievalArgs']]] = None, lightstep_organization: Optional[pulumi.Input[str]] = None, lightstep_project: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectLightstepQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + url: Optional[pulumi.Input[str]] = None, __props__=None): """ - Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects with Lightstep to collect SLI measurements and compare them to SLO targets. + Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects to Lightstep for SLI measurement collection and comparison with SLO targets. For more information, refer to [Lightstep Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-direct). @@ -386,7 +498,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_lightstep = nobl9.DirectLightstep("test-lightstep", app_token="secret", @@ -403,11 +515,8 @@ def __init__(__self__, ), lightstep_organization="acme", lightstep_project="project1", - project="terraform", - source_ofs=[ - "Metrics", - "Services", - ]) + log_collection_enabled=True, + project="terraform") ``` ## Nobl9 Official Documentation @@ -421,10 +530,13 @@ def __init__(__self__, :param pulumi.Input[pulumi.InputType['DirectLightstepHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) :param pulumi.Input[str] lightstep_organization: Organization name registered in Lightstep. :param pulumi.Input[str] lightstep_project: Name of the Lightstep project. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectLightstepQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + :param pulumi.Input[str] url: Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. """ ... @overload @@ -433,7 +545,7 @@ def __init__(__self__, args: DirectLightstepArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects with Lightstep to collect SLI measurements and compare them to SLO targets. + Lightstep is an observability platform that enables distributed tracing, that can be used to rapidly pinpoint the causes of failures and poor performance across the deeply complex dependencies among services, teams, and workloads in modern production systems. Nobl9 integration with Lightstep enables organizations to establish service level objectives from performance data captured through distributed traces in the Lightstep platform. Nobl9 connects to Lightstep for SLI measurement collection and comparison with SLO targets. For more information, refer to [Lightstep Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/lightstep#lightstep-direct). @@ -441,7 +553,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_lightstep = nobl9.DirectLightstep("test-lightstep", app_token="secret", @@ -458,11 +570,8 @@ def __init__(__self__, ), lightstep_organization="acme", lightstep_project="project1", - project="terraform", - source_ofs=[ - "Metrics", - "Services", - ]) + log_collection_enabled=True, + project="terraform") ``` ## Nobl9 Official Documentation @@ -489,10 +598,13 @@ def _internal_init(__self__, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectLightstepHistoricalDataRetrievalArgs']]] = None, lightstep_organization: Optional[pulumi.Input[str]] = None, lightstep_project: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectLightstepQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + url: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -502,7 +614,7 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectLightstepArgs.__new__(DirectLightstepArgs) - __props__.__dict__["app_token"] = app_token + __props__.__dict__["app_token"] = None if app_token is None else pulumi.Output.secret(app_token) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval @@ -512,15 +624,18 @@ def _internal_init(__self__, if lightstep_project is None and not opts.urn: raise TypeError("Missing required property 'lightstep_project'") __props__.__dict__["lightstep_project"] = lightstep_project + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs + __props__.__dict__["url"] = url __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["appToken"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectLightstep, __self__).__init__( 'nobl9:index/directLightstep:DirectLightstep', resource_name, @@ -537,11 +652,14 @@ def get(resource_name: str, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectLightstepHistoricalDataRetrievalArgs']]] = None, lightstep_organization: Optional[pulumi.Input[str]] = None, lightstep_project: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectLightstepQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - status: Optional[pulumi.Input[str]] = None) -> 'DirectLightstep': + status: Optional[pulumi.Input[str]] = None, + url: Optional[pulumi.Input[str]] = None) -> 'DirectLightstep': """ Get an existing DirectLightstep resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -555,11 +673,14 @@ def get(resource_name: str, :param pulumi.Input[pulumi.InputType['DirectLightstepHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) :param pulumi.Input[str] lightstep_organization: Organization name registered in Lightstep. :param pulumi.Input[str] lightstep_project: Name of the Lightstep project. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectLightstepQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. + :param pulumi.Input[str] url: Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -571,11 +692,14 @@ def get(resource_name: str, __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval __props__.__dict__["lightstep_organization"] = lightstep_organization __props__.__dict__["lightstep_project"] = lightstep_project + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status + __props__.__dict__["url"] = url return DirectLightstep(resource_name, opts=opts, __props__=__props__) @property @@ -604,7 +728,7 @@ def display_name(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="historicalDataRetrieval") - def historical_data_retrieval(self) -> pulumi.Output[Optional['outputs.DirectLightstepHistoricalDataRetrieval']]: + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectLightstepHistoricalDataRetrieval']: """ [Replay configuration documentation](https://docs.nobl9.com/replay) """ @@ -626,6 +750,14 @@ def lightstep_project(self) -> pulumi.Output[str]: """ return pulumi.get(self, "lightstep_project") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -644,18 +776,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectLightstepQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectLightstepQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property @@ -666,3 +809,11 @@ def status(self) -> pulumi.Output[str]: """ return pulumi.get(self, "status") + @property + @pulumi.getter + def url(self) -> pulumi.Output[Optional[str]]: + """ + Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + """ + return pulumi.get(self, "url") + diff --git a/sdk/python/pulumi_nobl9/direct_newrelic.py b/sdk/python/piclemx_pulumi_nobl9/direct_newrelic.py similarity index 75% rename from sdk/python/pulumi_nobl9/direct_newrelic.py rename to sdk/python/piclemx_pulumi_nobl9/direct_newrelic.py index 4a1eb62..e5dd857 100644 --- a/sdk/python/pulumi_nobl9/direct_newrelic.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_newrelic.py @@ -18,28 +18,31 @@ class DirectNewrelicArgs: def __init__(__self__, *, account_id: pulumi.Input[int], project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectNewrelicHistoricalDataRetrievalArgs']] = None, insights_query_key: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectNewrelicQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectNewrelicQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectNewrelic resource. :param pulumi.Input[int] account_id: ID number assigned to the New Relic user account. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectNewrelicHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) :param pulumi.Input[str] insights_query_key: [required] | New Relic Insights Query Key. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectNewrelicQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "account_id", account_id) pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: @@ -48,10 +51,19 @@ def __init__(__self__, *, pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) if insights_query_key is not None: pulumi.set(__self__, "insights_query_key", insights_query_key) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter(name="accountId") @@ -77,18 +89,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -137,6 +137,18 @@ def insights_query_key(self) -> Optional[pulumi.Input[str]]: def insights_query_key(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "insights_query_key", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -161,6 +173,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectNewrelicQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectNewrelicQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectNewrelicState: @@ -170,9 +209,11 @@ def __init__(__self__, *, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectNewrelicHistoricalDataRetrievalArgs']] = None, insights_query_key: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectNewrelicQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): """ @@ -182,10 +223,12 @@ def __init__(__self__, *, :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectNewrelicHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) :param pulumi.Input[str] insights_query_key: [required] | New Relic Insights Query Key. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectNewrelicQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ if account_id is not None: @@ -198,12 +241,19 @@ def __init__(__self__, *, pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) if insights_query_key is not None: pulumi.set(__self__, "insights_query_key", insights_query_key) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -269,6 +319,18 @@ def insights_query_key(self) -> Optional[pulumi.Input[str]]: def insights_query_key(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "insights_query_key", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -305,12 +367,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectNewrelicQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectNewrelicQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -340,21 +417,22 @@ def __init__(__self__, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectNewrelicHistoricalDataRetrievalArgs']]] = None, insights_query_key: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectNewrelicQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects with New Relic to collect SLI measurements and compare them to SLO targets. - + New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects to New Relic for SLI measurement collection and comparison with SLO targets. For more information, refer to [New Relic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-direct). ## Example Usage ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_newrelic = nobl9.DirectNewrelic("test-newrelic", account_id=1234, @@ -370,11 +448,8 @@ def __init__(__self__, )], ), insights_query_key="secret", - project="terraform", - source_ofs=[ - "Metrics", - "Services", - ]) + log_collection_enabled=True, + project="terraform") ``` ## Nobl9 Official Documentation @@ -387,10 +462,12 @@ def __init__(__self__, :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[pulumi.InputType['DirectNewrelicHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) :param pulumi.Input[str] insights_query_key: [required] | New Relic Insights Query Key. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectNewrelicQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -399,15 +476,14 @@ def __init__(__self__, args: DirectNewrelicArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects with New Relic to collect SLI measurements and compare them to SLO targets. - + New Relic is a software solution that monitors performance and availability. It sets and rates application performance across the environment using a standardized Apdex (application performance index) score. Nobl9 connects to New Relic for SLI measurement collection and comparison with SLO targets. For more information, refer to [New Relic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/new-relic#new-relic-direct). ## Example Usage ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_newrelic = nobl9.DirectNewrelic("test-newrelic", account_id=1234, @@ -423,11 +499,8 @@ def __init__(__self__, )], ), insights_query_key="secret", - project="terraform", - source_ofs=[ - "Metrics", - "Services", - ]) + log_collection_enabled=True, + project="terraform") ``` ## Nobl9 Official Documentation @@ -453,9 +526,11 @@ def _internal_init(__self__, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectNewrelicHistoricalDataRetrievalArgs']]] = None, insights_query_key: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectNewrelicQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -472,16 +547,18 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval - __props__.__dict__["insights_query_key"] = insights_query_key + __props__.__dict__["insights_query_key"] = None if insights_query_key is None else pulumi.Output.secret(insights_query_key) + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["insightsQueryKey"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectNewrelic, __self__).__init__( 'nobl9:index/directNewrelic:DirectNewrelic', resource_name, @@ -497,9 +574,11 @@ def get(resource_name: str, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectNewrelicHistoricalDataRetrievalArgs']]] = None, insights_query_key: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectNewrelicQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectNewrelic': """ @@ -514,10 +593,12 @@ def get(resource_name: str, :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[pulumi.InputType['DirectNewrelicHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) :param pulumi.Input[str] insights_query_key: [required] | New Relic Insights Query Key. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectNewrelicQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -529,9 +610,11 @@ def get(resource_name: str, __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval __props__.__dict__["insights_query_key"] = insights_query_key + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status return DirectNewrelic(resource_name, opts=opts, __props__=__props__) @@ -562,7 +645,7 @@ def display_name(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="historicalDataRetrieval") - def historical_data_retrieval(self) -> pulumi.Output[Optional['outputs.DirectNewrelicHistoricalDataRetrieval']]: + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectNewrelicHistoricalDataRetrieval']: """ [Replay configuration documentation](https://docs.nobl9.com/replay) """ @@ -576,6 +659,14 @@ def insights_query_key(self) -> pulumi.Output[str]: """ return pulumi.get(self, "insights_query_key") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -594,18 +685,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectNewrelicQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectNewrelicQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_pingdom.py b/sdk/python/piclemx_pulumi_nobl9/direct_pingdom.py similarity index 70% rename from sdk/python/pulumi_nobl9/direct_pingdom.py rename to sdk/python/piclemx_pulumi_nobl9/direct_pingdom.py index 613eb48..126fa30 100644 --- a/sdk/python/pulumi_nobl9/direct_pingdom.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_pingdom.py @@ -17,34 +17,46 @@ class DirectPingdomArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectPingdomQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectPingdomQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectPingdom resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] api_token: [required] | Pingdom API token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectPingdomQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) if api_token is not None: pulumi.set(__self__, "api_token", api_token) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -58,18 +70,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter(name="apiToken") def api_token(self) -> Optional[pulumi.Input[str]]: @@ -106,6 +106,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -130,6 +142,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectPingdomQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectPingdomQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectPingdomState: @@ -137,9 +176,11 @@ def __init__(__self__, *, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectPingdomQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): """ @@ -147,10 +188,12 @@ def __init__(__self__, *, :param pulumi.Input[str] api_token: [required] | Pingdom API token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectPingdomQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ if api_token is not None: @@ -159,12 +202,19 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -206,6 +256,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -242,12 +304,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectPingdomQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectPingdomQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -275,13 +352,15 @@ def __init__(__self__, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectPingdomQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects with Pingdom to collect SLI measurements and compare them to SLO targets. + Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects to Pingdom for SLI measurement collection and comparison with SLO targets. For more information, refer to [Pingdom Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-direct). @@ -289,16 +368,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_pingdom = nobl9.DirectPingdom("test-pingdom", api_token="secret", description="desc", - project="terraform", - source_ofs=[ - "Metrics", - "Services", - ]) + log_collection_enabled=True, + project="terraform") ``` ## Nobl9 Official Documentation @@ -309,10 +385,12 @@ def __init__(__self__, :param pulumi.Input[str] api_token: [required] | Pingdom API token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectPingdomQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -321,7 +399,7 @@ def __init__(__self__, args: DirectPingdomArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects with Pingdom to collect SLI measurements and compare them to SLO targets. + Pingdom is a website monitoring software solution that gives users real-time, quality insights into the uptime and performance of their websites. After adding Pingdom as a data source in Nobl9, users can configure SLOs to check the overall performance status of their sites. Nobl9 connects to Pingdom for SLI measurement collection and comparison with SLO targets. For more information, refer to [Pingdom Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/pingdom#pingdom-direct). @@ -329,16 +407,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_pingdom = nobl9.DirectPingdom("test-pingdom", api_token="secret", description="desc", - project="terraform", - source_ofs=[ - "Metrics", - "Services", - ]) + log_collection_enabled=True, + project="terraform") ``` ## Nobl9 Official Documentation @@ -362,9 +437,11 @@ def _internal_init(__self__, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectPingdomQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -375,18 +452,20 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectPingdomArgs.__new__(DirectPingdomArgs) - __props__.__dict__["api_token"] = api_token + __props__.__dict__["api_token"] = None if api_token is None else pulumi.Output.secret(api_token) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apiToken"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectPingdom, __self__).__init__( 'nobl9:index/directPingdom:DirectPingdom', resource_name, @@ -400,9 +479,11 @@ def get(resource_name: str, api_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectPingdomQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectPingdom': """ @@ -415,10 +496,12 @@ def get(resource_name: str, :param pulumi.Input[str] api_token: [required] | Pingdom API token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectPingdomQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -428,9 +511,11 @@ def get(resource_name: str, __props__.__dict__["api_token"] = api_token __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status return DirectPingdom(resource_name, opts=opts, __props__=__props__) @@ -459,6 +544,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -477,18 +570,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectPingdomQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectPingdomQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_redshift.py b/sdk/python/piclemx_pulumi_nobl9/direct_redshift.py similarity index 67% rename from sdk/python/pulumi_nobl9/direct_redshift.py rename to sdk/python/piclemx_pulumi_nobl9/direct_redshift.py index c4536e6..d627939 100644 --- a/sdk/python/pulumi_nobl9/direct_redshift.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_redshift.py @@ -17,42 +17,50 @@ class DirectRedshiftArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectRedshiftQueryDelayArgs']] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, - secret_arn: Optional[pulumi.Input[str]] = None): + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, + secret_arn: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectRedshift resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. - :param pulumi.Input[str] access_key_id: [required] | AWS Access Key ID. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectRedshiftQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[str] secret_access_key: [required] | AWS Secret Access Key. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[str] role_arn: [required] | ARN of the AWS IAM Role to assume. :param pulumi.Input[str] secret_arn: AWS Secret ARN. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) - if access_key_id is not None: - pulumi.set(__self__, "access_key_id", access_key_id) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) - if secret_access_key is not None: - pulumi.set(__self__, "secret_access_key", secret_access_key) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if role_arn is not None: + pulumi.set(__self__, "role_arn", role_arn) if secret_arn is not None: pulumi.set(__self__, "secret_arn", secret_arn) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -66,30 +74,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - - @property - @pulumi.getter(name="accessKeyId") - def access_key_id(self) -> Optional[pulumi.Input[str]]: - """ - [required] | AWS Access Key ID. - """ - return pulumi.get(self, "access_key_id") - - @access_key_id.setter - def access_key_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "access_key_id", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -114,6 +98,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -139,16 +135,28 @@ def query_delay(self, value: Optional[pulumi.Input['DirectRedshiftQueryDelayArgs pulumi.set(self, "query_delay", value) @property - @pulumi.getter(name="secretAccessKey") - def secret_access_key(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: """ - [required] | AWS Secret Access Key. + Release channel of the created datasource [stable/beta] """ - return pulumi.get(self, "secret_access_key") + return pulumi.get(self, "release_channel") - @secret_access_key.setter - def secret_access_key(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "secret_access_key", value) + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[pulumi.Input[str]]: + """ + [required] | ARN of the AWS IAM Role to assume. + """ + return pulumi.get(self, "role_arn") + + @role_arn.setter + def role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "role_arn", value) @property @pulumi.getter(name="secretArn") @@ -162,66 +170,76 @@ def secret_arn(self) -> Optional[pulumi.Input[str]]: def secret_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "secret_arn", value) + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectRedshiftState: def __init__(__self__, *, - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectRedshiftQueryDelayArgs']] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, secret_arn: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering DirectRedshift resources. - :param pulumi.Input[str] access_key_id: [required] | AWS Access Key ID. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectRedshiftQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[str] secret_access_key: [required] | AWS Secret Access Key. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[str] role_arn: [required] | ARN of the AWS IAM Role to assume. :param pulumi.Input[str] secret_arn: AWS Secret ARN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ - if access_key_id is not None: - pulumi.set(__self__, "access_key_id", access_key_id) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) - if secret_access_key is not None: - pulumi.set(__self__, "secret_access_key", secret_access_key) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if role_arn is not None: + pulumi.set(__self__, "role_arn", role_arn) if secret_arn is not None: pulumi.set(__self__, "secret_arn", secret_arn) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: pulumi.set(__self__, "status", status) - @property - @pulumi.getter(name="accessKeyId") - def access_key_id(self) -> Optional[pulumi.Input[str]]: - """ - [required] | AWS Access Key ID. - """ - return pulumi.get(self, "access_key_id") - - @access_key_id.setter - def access_key_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "access_key_id", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -246,6 +264,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -283,16 +313,28 @@ def query_delay(self, value: Optional[pulumi.Input['DirectRedshiftQueryDelayArgs pulumi.set(self, "query_delay", value) @property - @pulumi.getter(name="secretAccessKey") - def secret_access_key(self) -> Optional[pulumi.Input[str]]: + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: """ - [required] | AWS Secret Access Key. + Release channel of the created datasource [stable/beta] """ - return pulumi.get(self, "secret_access_key") + return pulumi.get(self, "release_channel") - @secret_access_key.setter - def secret_access_key(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "secret_access_key", value) + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[pulumi.Input[str]]: + """ + [required] | ARN of the AWS IAM Role to assume. + """ + return pulumi.get(self, "role_arn") + + @role_arn.setter + def role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "role_arn", value) @property @pulumi.getter(name="secretArn") @@ -310,8 +352,11 @@ def secret_arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -336,18 +381,19 @@ class DirectRedshift(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectRedshiftQueryDelayArgs']]] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, secret_arn: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects with Amazon Redshift to collect SLI measurements and compare them to SLO targets. + Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects to Amazon Redshift for SLI measurement collection and comparison with SLO targets. For more information, refer to [Amazon Redshift Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-direct). @@ -355,18 +401,14 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_redshift = nobl9.DirectRedshift("test-redshift", - access_key_id="secret", description="desc", + log_collection_enabled=True, project="terraform", - secret_access_key="secret", - secret_arn="aws:arn", - source_ofs=[ - "Metrics", - "Services", - ]) + role_arn="secret", + secret_arn="aws:arn") ``` ## Nobl9 Official Documentation @@ -374,15 +416,16 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] access_key_id: [required] | AWS Access Key ID. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectRedshiftQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[str] secret_access_key: [required] | AWS Secret Access Key. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[str] role_arn: [required] | ARN of the AWS IAM Role to assume. :param pulumi.Input[str] secret_arn: AWS Secret ARN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -391,7 +434,7 @@ def __init__(__self__, args: DirectRedshiftArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects with Amazon Redshift to collect SLI measurements and compare them to SLO targets. + Amazon Redshift is a managed scalable database warehouse where Nobl9 users can store their metrics information. Nobl9 connects to Amazon Redshift for SLI measurement collection and comparison with SLO targets. For more information, refer to [Amazon Redshift Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/?_highlight=redshift#amazon-redshift-direct). @@ -399,18 +442,14 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_redshift = nobl9.DirectRedshift("test-redshift", - access_key_id="secret", description="desc", + log_collection_enabled=True, project="terraform", - secret_access_key="secret", - secret_arn="aws:arn", - source_ofs=[ - "Metrics", - "Services", - ]) + role_arn="secret", + secret_arn="aws:arn") ``` ## Nobl9 Official Documentation @@ -431,13 +470,14 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectRedshiftQueryDelayArgs']]] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, secret_arn: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): @@ -449,20 +489,21 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectRedshiftArgs.__new__(DirectRedshiftArgs) - __props__.__dict__["access_key_id"] = access_key_id __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - __props__.__dict__["secret_access_key"] = secret_access_key - __props__.__dict__["secret_arn"] = secret_arn - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["role_arn"] = None if role_arn is None else pulumi.Output.secret(role_arn) + __props__.__dict__["secret_arn"] = None if secret_arn is None else pulumi.Output.secret(secret_arn) __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["roleArn", "secretArn"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectRedshift, __self__).__init__( 'nobl9:index/directRedshift:DirectRedshift', resource_name, @@ -473,13 +514,14 @@ def _internal_init(__self__, def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, - access_key_id: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectRedshiftQueryDelayArgs']]] = None, - secret_access_key: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, secret_arn: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectRedshift': @@ -490,41 +532,35 @@ def get(resource_name: str, :param str resource_name: The unique name of the resulting resource. :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] access_key_id: [required] | AWS Access Key ID. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectRedshiftQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[str] secret_access_key: [required] | AWS Secret Access Key. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[str] role_arn: [required] | ARN of the AWS IAM Role to assume. :param pulumi.Input[str] secret_arn: AWS Secret ARN. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) __props__ = _DirectRedshiftState.__new__(_DirectRedshiftState) - __props__.__dict__["access_key_id"] = access_key_id __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - __props__.__dict__["secret_access_key"] = secret_access_key + __props__.__dict__["release_channel"] = release_channel + __props__.__dict__["role_arn"] = role_arn __props__.__dict__["secret_arn"] = secret_arn __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status return DirectRedshift(resource_name, opts=opts, __props__=__props__) - @property - @pulumi.getter(name="accessKeyId") - def access_key_id(self) -> pulumi.Output[str]: - """ - [required] | AWS Access Key ID. - """ - return pulumi.get(self, "access_key_id") - @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: @@ -541,6 +577,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -559,19 +603,27 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectRedshiftQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectRedshiftQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") @property - @pulumi.getter(name="secretAccessKey") - def secret_access_key(self) -> pulumi.Output[str]: + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> pulumi.Output[str]: """ - [required] | AWS Secret Access Key. + [required] | ARN of the AWS IAM Role to assume. """ - return pulumi.get(self, "secret_access_key") + return pulumi.get(self, "role_arn") @property @pulumi.getter(name="secretArn") @@ -583,10 +635,13 @@ def secret_arn(self) -> pulumi.Output[str]: @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_splunk.py b/sdk/python/piclemx_pulumi_nobl9/direct_splunk.py similarity index 75% rename from sdk/python/pulumi_nobl9/direct_splunk.py rename to sdk/python/piclemx_pulumi_nobl9/direct_splunk.py index 959856c..ba74455 100644 --- a/sdk/python/pulumi_nobl9/direct_splunk.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_splunk.py @@ -17,28 +17,31 @@ class DirectSplunkArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], url: pulumi.Input[str], access_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectSplunkHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectSplunkQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectSplunkQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectSplunk resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] url: Base API URL to the Splunk Search app. :param pulumi.Input[str] access_token: [required] | Splunk API Access Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectSplunkHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectSplunkQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) pulumi.set(__self__, "url", url) if access_token is not None: pulumi.set(__self__, "access_token", access_token) @@ -48,10 +51,19 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -65,18 +77,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def url(self) -> pulumi.Input[str]: @@ -137,6 +137,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectSplunkHistor def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectSplunkHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -161,6 +173,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectSplunkQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectSplunkQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectSplunkState: @@ -169,9 +208,11 @@ def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input['DirectSplunkHistoricalDataRetrievalArgs']] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectSplunkQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None): @@ -181,10 +222,12 @@ def __init__(__self__, *, :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input['DirectSplunkHistoricalDataRetrievalArgs'] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectSplunkQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Base API URL to the Splunk Search app. """ @@ -196,12 +239,19 @@ def __init__(__self__, *, pulumi.set(__self__, "display_name", display_name) if historical_data_retrieval is not None: pulumi.set(__self__, "historical_data_retrieval", historical_data_retrieval) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -257,6 +307,18 @@ def historical_data_retrieval(self) -> Optional[pulumi.Input['DirectSplunkHistor def historical_data_retrieval(self, value: Optional[pulumi.Input['DirectSplunkHistoricalDataRetrievalArgs']]): pulumi.set(self, "historical_data_retrieval", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -293,12 +355,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectSplunkQueryDelayArgs']]: def query_delay(self, value: Optional[pulumi.Input['DirectSplunkQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -339,14 +416,16 @@ def __init__(__self__, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectSplunkHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSplunkQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): """ - Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects with Splunk to collect SLI measurements and compare them to SLO targets. + Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects to Splunk for SLI measurement collection and comparison with SLO targets. For more information, refer to [Splunk Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk#splunk-direct). @@ -354,7 +433,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_splunk = nobl9.DirectSplunk("test-splunk", access_token="secret", @@ -369,11 +448,8 @@ def __init__(__self__, value=30, )], ), + log_collection_enabled=True, project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], url="https://web.net") ``` ## Nobl9 Official Documentation @@ -386,10 +462,12 @@ def __init__(__self__, :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[pulumi.InputType['DirectSplunkHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectSplunkQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] url: Base API URL to the Splunk Search app. """ ... @@ -399,7 +477,7 @@ def __init__(__self__, args: DirectSplunkArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects with Splunk to collect SLI measurements and compare them to SLO targets. + Splunk provides software for searching, monitoring, and analyzing machine-generated data via a Web-style interface. Nobl9 connects to Splunk for SLI measurement collection and comparison with SLO targets. For more information, refer to [Splunk Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk#splunk-direct). @@ -407,7 +485,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_splunk = nobl9.DirectSplunk("test-splunk", access_token="secret", @@ -422,11 +500,8 @@ def __init__(__self__, value=30, )], ), + log_collection_enabled=True, project="terraform", - source_ofs=[ - "Metrics", - "Services", - ], url="https://web.net") ``` ## Nobl9 Official Documentation @@ -452,9 +527,11 @@ def _internal_init(__self__, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectSplunkHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSplunkQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): @@ -466,22 +543,24 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectSplunkArgs.__new__(DirectSplunkArgs) - __props__.__dict__["access_token"] = access_token + __props__.__dict__["access_token"] = None if access_token is None else pulumi.Output.secret(access_token) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs if url is None and not opts.urn: raise TypeError("Missing required property 'url'") __props__.__dict__["url"] = url __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["accessToken"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectSplunk, __self__).__init__( 'nobl9:index/directSplunk:DirectSplunk', resource_name, @@ -496,9 +575,11 @@ def get(resource_name: str, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, historical_data_retrieval: Optional[pulumi.Input[pulumi.InputType['DirectSplunkHistoricalDataRetrievalArgs']]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSplunkQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None) -> 'DirectSplunk': @@ -513,10 +594,12 @@ def get(resource_name: str, :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[pulumi.InputType['DirectSplunkHistoricalDataRetrievalArgs']] historical_data_retrieval: [Replay configuration documentation](https://docs.nobl9.com/replay) + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectSplunkQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Base API URL to the Splunk Search app. """ @@ -528,9 +611,11 @@ def get(resource_name: str, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["historical_data_retrieval"] = historical_data_retrieval + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status __props__.__dict__["url"] = url @@ -562,12 +647,20 @@ def display_name(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="historicalDataRetrieval") - def historical_data_retrieval(self) -> pulumi.Output[Optional['outputs.DirectSplunkHistoricalDataRetrieval']]: + def historical_data_retrieval(self) -> pulumi.Output['outputs.DirectSplunkHistoricalDataRetrieval']: """ [Replay configuration documentation](https://docs.nobl9.com/replay) """ return pulumi.get(self, "historical_data_retrieval") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -586,18 +679,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectSplunkQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectSplunkQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_splunk_observability.py b/sdk/python/piclemx_pulumi_nobl9/direct_splunk_observability.py similarity index 78% rename from sdk/python/pulumi_nobl9/direct_splunk_observability.py rename to sdk/python/piclemx_pulumi_nobl9/direct_splunk_observability.py index 30ff726..b958ebf 100644 --- a/sdk/python/pulumi_nobl9/direct_splunk_observability.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_splunk_observability.py @@ -18,26 +18,27 @@ class DirectSplunkObservabilityArgs: def __init__(__self__, *, project: pulumi.Input[str], realm: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], access_token: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectSplunkObservabilityQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectSplunkObservabilityQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectSplunkObservability resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] realm: SplunkObservability Realm. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] access_token: [required] | Splunk API Access Token. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectSplunkObservabilityQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) pulumi.set(__self__, "realm", realm) - pulumi.set(__self__, "source_ofs", source_ofs) if access_token is not None: pulumi.set(__self__, "access_token", access_token) if description is not None: @@ -48,6 +49,13 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -73,18 +81,6 @@ def realm(self) -> pulumi.Input[str]: def realm(self, value: pulumi.Input[str]): pulumi.set(self, "realm", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter(name="accessToken") def access_token(self) -> Optional[pulumi.Input[str]]: @@ -145,6 +141,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectSplunkObservabilityQueryDe def query_delay(self, value: Optional[pulumi.Input['DirectSplunkObservabilityQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectSplunkObservabilityState: @@ -156,6 +179,7 @@ def __init__(__self__, *, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectSplunkObservabilityQueryDelayArgs']] = None, realm: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): """ @@ -167,7 +191,8 @@ def __init__(__self__, *, :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectSplunkObservabilityQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. :param pulumi.Input[str] realm: SplunkObservability Realm. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ if access_token is not None: @@ -184,6 +209,11 @@ def __init__(__self__, *, pulumi.set(__self__, "query_delay", query_delay) if realm is not None: pulumi.set(__self__, "realm", realm) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -273,12 +303,27 @@ def realm(self) -> Optional[pulumi.Input[str]]: def realm(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "realm", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -310,10 +355,11 @@ def __init__(__self__, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSplunkObservabilityQueryDelayArgs']]] = None, realm: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects with Splunk Observability to collect SLI measurements and compare them to SLO targets. + Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects to Splunk Observability for SLI measurement collection and comparison with SLO targets. For more information, refer to [Splunk Observability Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-direct). @@ -321,17 +367,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 - test_splunkobservability = nobl9.DirectSplunkObservability("test-splunkobservability", + test_splunk_observability = nobl9.DirectSplunkObservability("test-splunk-observability", access_token="secret", description="desc", project="terraform", - realm="eu", - source_ofs=[ - "Metrics", - "Services", - ]) + realm="eu") ``` ## Nobl9 Official Documentation @@ -346,7 +388,8 @@ def __init__(__self__, :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectSplunkObservabilityQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. :param pulumi.Input[str] realm: SplunkObservability Realm. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -355,7 +398,7 @@ def __init__(__self__, args: DirectSplunkObservabilityArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects with Splunk Observability to collect SLI measurements and compare them to SLO targets. + Splunk Observability allows users to search, monitor, and analyze machine-generated big data. Splunk Observability enables collecting and monitoring metrics, logs, and traces from common data sources. Data collection and monitoring in one place enables full-stack, end-to-end observability of the entire infrastructure. Nobl9 connects to Splunk Observability for SLI measurement collection and comparison with SLO targets. For more information, refer to [Splunk Observability Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/splunk-observability/#splunk-observability-direct). @@ -363,17 +406,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 - test_splunkobservability = nobl9.DirectSplunkObservability("test-splunkobservability", + test_splunk_observability = nobl9.DirectSplunkObservability("test-splunk-observability", access_token="secret", description="desc", project="terraform", - realm="eu", - source_ofs=[ - "Metrics", - "Services", - ]) + realm="eu") ``` ## Nobl9 Official Documentation @@ -401,6 +440,7 @@ def _internal_init(__self__, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSplunkObservabilityQueryDelayArgs']]] = None, realm: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -411,7 +451,7 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectSplunkObservabilityArgs.__new__(DirectSplunkObservabilityArgs) - __props__.__dict__["access_token"] = access_token + __props__.__dict__["access_token"] = None if access_token is None else pulumi.Output.secret(access_token) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name __props__.__dict__["name"] = name @@ -422,10 +462,11 @@ def _internal_init(__self__, if realm is None and not opts.urn: raise TypeError("Missing required property 'realm'") __props__.__dict__["realm"] = realm - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["accessToken"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectSplunkObservability, __self__).__init__( 'nobl9:index/directSplunkObservability:DirectSplunkObservability', resource_name, @@ -443,6 +484,7 @@ def get(resource_name: str, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSplunkObservabilityQueryDelayArgs']]] = None, realm: Optional[pulumi.Input[str]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectSplunkObservability': """ @@ -459,7 +501,8 @@ def get(resource_name: str, :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectSplunkObservabilityQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. :param pulumi.Input[str] realm: SplunkObservability Realm. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -473,6 +516,7 @@ def get(resource_name: str, __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay __props__.__dict__["realm"] = realm + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status return DirectSplunkObservability(resource_name, opts=opts, __props__=__props__) @@ -519,7 +563,7 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectSplunkObservabilityQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectSplunkObservabilityQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ @@ -533,12 +577,23 @@ def realm(self) -> pulumi.Output[str]: """ return pulumi.get(self, "realm") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_sumologic.py b/sdk/python/piclemx_pulumi_nobl9/direct_sumologic.py similarity index 73% rename from sdk/python/pulumi_nobl9/direct_sumologic.py rename to sdk/python/piclemx_pulumi_nobl9/direct_sumologic.py index 3c330d7..ff3e983 100644 --- a/sdk/python/pulumi_nobl9/direct_sumologic.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_sumologic.py @@ -17,28 +17,31 @@ class DirectSumologicArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], url: pulumi.Input[str], access_id: Optional[pulumi.Input[str]] = None, access_key: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectSumologicQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectSumologicQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectSumologic resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] url: Sumo Logic API URL. :param pulumi.Input[str] access_id: [required] | Sumo Logic API Access ID. :param pulumi.Input[str] access_key: [required] | Sumo Logic API Access Key. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectSumologicQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) pulumi.set(__self__, "url", url) if access_id is not None: pulumi.set(__self__, "access_id", access_id) @@ -48,10 +51,19 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -65,18 +77,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def url(self) -> pulumi.Input[str]: @@ -137,6 +137,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -161,6 +173,33 @@ def query_delay(self) -> Optional[pulumi.Input['DirectSumologicQueryDelayArgs']] def query_delay(self, value: Optional[pulumi.Input['DirectSumologicQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectSumologicState: @@ -169,9 +208,11 @@ def __init__(__self__, *, access_key: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectSumologicQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None): @@ -181,10 +222,12 @@ def __init__(__self__, *, :param pulumi.Input[str] access_key: [required] | Sumo Logic API Access Key. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectSumologicQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Sumo Logic API URL. """ @@ -196,12 +239,19 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if project is not None: pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -257,6 +307,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -293,12 +355,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectSumologicQueryDelayArgs']] def query_delay(self, value: Optional[pulumi.Input['DirectSumologicQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -339,14 +416,16 @@ def __init__(__self__, access_key: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSumologicQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): """ - Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects with Sumo Logic to collect SLI measurements and compare them to SLO targets. + Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects to Sumo Logic for SLI measurement collection and comparison with SLO targets. For more information, refer to [Sumo Logic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-direct). @@ -354,14 +433,14 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_sumologic = nobl9.DirectSumologic("test-sumologic", access_id="secret", access_key="secret", description="desc", + log_collection_enabled=True, project="terraform", - source_ofs=["Metrics"], url="http://web.net") ``` ## Nobl9 Official Documentation @@ -374,10 +453,12 @@ def __init__(__self__, :param pulumi.Input[str] access_key: [required] | Sumo Logic API Access Key. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectSumologicQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] url: Sumo Logic API URL. """ ... @@ -387,7 +468,7 @@ def __init__(__self__, args: DirectSumologicArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects with Sumo Logic to collect SLI measurements and compare them to SLO targets. + Sumo Logic is an observability platform that provides visibility into AWS, Azure, and GCP cloud applications and infrastructure. Nobl9 connects to Sumo Logic for SLI measurement collection and comparison with SLO targets. For more information, refer to [Sumo Logic Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/sumo-logic#sumo-logic-direct). @@ -395,14 +476,14 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_sumologic = nobl9.DirectSumologic("test-sumologic", access_id="secret", access_key="secret", description="desc", + log_collection_enabled=True, project="terraform", - source_ofs=["Metrics"], url="http://web.net") ``` ## Nobl9 Official Documentation @@ -428,9 +509,11 @@ def _internal_init(__self__, access_key: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSumologicQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, url: Optional[pulumi.Input[str]] = None, __props__=None): @@ -442,22 +525,24 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = DirectSumologicArgs.__new__(DirectSumologicArgs) - __props__.__dict__["access_id"] = access_id - __props__.__dict__["access_key"] = access_key + __props__.__dict__["access_id"] = None if access_id is None else pulumi.Output.secret(access_id) + __props__.__dict__["access_key"] = None if access_key is None else pulumi.Output.secret(access_key) __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs if url is None and not opts.urn: raise TypeError("Missing required property 'url'") __props__.__dict__["url"] = url __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["accessId", "accessKey"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectSumologic, __self__).__init__( 'nobl9:index/directSumologic:DirectSumologic', resource_name, @@ -472,9 +557,11 @@ def get(resource_name: str, access_key: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectSumologicQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None, url: Optional[pulumi.Input[str]] = None) -> 'DirectSumologic': @@ -489,10 +576,12 @@ def get(resource_name: str, :param pulumi.Input[str] access_key: [required] | Sumo Logic API Access Key. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectSumologicQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. :param pulumi.Input[str] url: Sumo Logic API URL. """ @@ -504,9 +593,11 @@ def get(resource_name: str, __props__.__dict__["access_key"] = access_key __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status __props__.__dict__["url"] = url @@ -544,6 +635,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -562,18 +661,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectSumologicQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectSumologicQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/pulumi_nobl9/direct_thousandeyes.py b/sdk/python/piclemx_pulumi_nobl9/direct_thousandeyes.py similarity index 71% rename from sdk/python/pulumi_nobl9/direct_thousandeyes.py rename to sdk/python/piclemx_pulumi_nobl9/direct_thousandeyes.py index 6d79820..891cdf5 100644 --- a/sdk/python/pulumi_nobl9/direct_thousandeyes.py +++ b/sdk/python/piclemx_pulumi_nobl9/direct_thousandeyes.py @@ -17,34 +17,46 @@ class DirectThousandeyesArgs: def __init__(__self__, *, project: pulumi.Input[str], - source_ofs: pulumi.Input[Sequence[pulumi.Input[str]]], description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, oauth_bearer_token: Optional[pulumi.Input[str]] = None, - query_delay: Optional[pulumi.Input['DirectThousandeyesQueryDelayArgs']] = None): + query_delay: Optional[pulumi.Input['DirectThousandeyesQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, + source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ The set of arguments for constructing a DirectThousandeyes resource. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] oauth_bearer_token: [required] | ThousandEyes OAuth Bearer Token. :param pulumi.Input['DirectThousandeyesQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ pulumi.set(__self__, "project", project) - pulumi.set(__self__, "source_ofs", source_ofs) if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if oauth_bearer_token is not None: pulumi.set(__self__, "oauth_bearer_token", oauth_bearer_token) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + if source_ofs is not None: + pulumi.set(__self__, "source_ofs", source_ofs) @property @pulumi.getter @@ -58,18 +70,6 @@ def project(self) -> pulumi.Input[str]: def project(self, value: pulumi.Input[str]): pulumi.set(self, "project", value) - @property - @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - Source of Metrics and/or Services. - """ - return pulumi.get(self, "source_ofs") - - @source_ofs.setter - def source_ofs(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "source_ofs", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -94,6 +94,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -130,33 +142,66 @@ def query_delay(self) -> Optional[pulumi.Input['DirectThousandeyesQueryDelayArgs def query_delay(self, value: Optional[pulumi.Input['DirectThousandeyesQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + + @property + @pulumi.getter(name="sourceOfs") + def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. + """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + + return pulumi.get(self, "source_ofs") + + @source_ofs.setter + def source_ofs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "source_ofs", value) + @pulumi.input_type class _DirectThousandeyesState: def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, oauth_bearer_token: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input['DirectThousandeyesQueryDelayArgs']] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering DirectThousandeyes resources. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] oauth_bearer_token: [required] | ThousandEyes OAuth Bearer Token. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input['DirectThousandeyesQueryDelayArgs'] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ if description is not None: pulumi.set(__self__, "description", description) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if log_collection_enabled is not None: + pulumi.set(__self__, "log_collection_enabled", log_collection_enabled) if name is not None: pulumi.set(__self__, "name", name) if oauth_bearer_token is not None: @@ -165,6 +210,11 @@ def __init__(__self__, *, pulumi.set(__self__, "project", project) if query_delay is not None: pulumi.set(__self__, "query_delay", query_delay) + if release_channel is not None: + pulumi.set(__self__, "release_channel", release_channel) + if source_ofs is not None: + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") if source_ofs is not None: pulumi.set(__self__, "source_ofs", source_ofs) if status is not None: @@ -194,6 +244,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + + @log_collection_enabled.setter + def log_collection_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "log_collection_enabled", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -242,12 +304,27 @@ def query_delay(self) -> Optional[pulumi.Input['DirectThousandeyesQueryDelayArgs def query_delay(self, value: Optional[pulumi.Input['DirectThousandeyesQueryDelayArgs']]): pulumi.set(self, "query_delay", value) + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> Optional[pulumi.Input[str]]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + + @release_channel.setter + def release_channel(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "release_channel", value) + @property @pulumi.getter(name="sourceOfs") def source_ofs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @source_ofs.setter @@ -274,14 +351,16 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, oauth_bearer_token: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectThousandeyesQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): """ - ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects with ThousandEyes to collect SLI measurements and compare them to SLO targets. + ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects to ThousandEyes for SLI measurement collection and comparison with SLO targets. For more information, refer to [ThousandEyes Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/thousandeyes#thousandeyes-direct). @@ -289,16 +368,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_thousandeyes = nobl9.DirectThousandeyes("test-thousandeyes", description="desc", + log_collection_enabled=True, oauth_bearer_token="secret", - project="terraform", - source_ofs=[ - "Metrics", - "Services", - ]) + project="terraform") ``` ## Nobl9 Official Documentation @@ -308,11 +384,13 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] oauth_bearer_token: [required] | ThousandEyes OAuth Bearer Token. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectThousandeyesQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ ... @overload @@ -321,7 +399,7 @@ def __init__(__self__, args: DirectThousandeyesArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects with ThousandEyes to collect SLI measurements and compare them to SLO targets. + ThousandEyes monitors the performance of both local and wide-area networks. ThousandEyes combines Internet and WAN visibility, browser synthetics, end-user monitoring, and Internet Insights to deliver a holistic view of your hybrid digital ecosystem – across cloud, SaaS, and the Internet. It's a SaaS-based tool that helps troubleshoot application delivery and maps Internet performance. Nobl9 connects to ThousandEyes for SLI measurement collection and comparison with SLO targets. For more information, refer to [ThousandEyes Direct | Nobl9 Documentation](https://docs.nobl9.com/Sources/thousandeyes#thousandeyes-direct). @@ -329,16 +407,13 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 test_thousandeyes = nobl9.DirectThousandeyes("test-thousandeyes", description="desc", + log_collection_enabled=True, oauth_bearer_token="secret", - project="terraform", - source_ofs=[ - "Metrics", - "Services", - ]) + project="terraform") ``` ## Nobl9 Official Documentation @@ -361,10 +436,12 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, oauth_bearer_token: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectThousandeyesQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -377,16 +454,18 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name - __props__.__dict__["oauth_bearer_token"] = oauth_bearer_token + __props__.__dict__["oauth_bearer_token"] = None if oauth_bearer_token is None else pulumi.Output.secret(oauth_bearer_token) if project is None and not opts.urn: raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay - if source_ofs is None and not opts.urn: - raise TypeError("Missing required property 'source_ofs'") + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = None + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["oauthBearerToken"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(DirectThousandeyes, __self__).__init__( 'nobl9:index/directThousandeyes:DirectThousandeyes', resource_name, @@ -399,10 +478,12 @@ def get(resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, display_name: Optional[pulumi.Input[str]] = None, + log_collection_enabled: Optional[pulumi.Input[bool]] = None, name: Optional[pulumi.Input[str]] = None, oauth_bearer_token: Optional[pulumi.Input[str]] = None, project: Optional[pulumi.Input[str]] = None, query_delay: Optional[pulumi.Input[pulumi.InputType['DirectThousandeyesQueryDelayArgs']]] = None, + release_channel: Optional[pulumi.Input[str]] = None, source_ofs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, status: Optional[pulumi.Input[str]] = None) -> 'DirectThousandeyes': """ @@ -414,11 +495,13 @@ def get(resource_name: str, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[bool] log_collection_enabled: [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[str] oauth_bearer_token: [required] | ThousandEyes OAuth Bearer Token. :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). :param pulumi.Input[pulumi.InputType['DirectThousandeyesQueryDelayArgs']] query_delay: [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. - :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: Source of Metrics and/or Services. + :param pulumi.Input[str] release_channel: Release channel of the created datasource [stable/beta] + :param pulumi.Input[Sequence[pulumi.Input[str]]] source_ofs: This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. :param pulumi.Input[str] status: The status of the created direct. """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -427,10 +510,12 @@ def get(resource_name: str, __props__.__dict__["description"] = description __props__.__dict__["display_name"] = display_name + __props__.__dict__["log_collection_enabled"] = log_collection_enabled __props__.__dict__["name"] = name __props__.__dict__["oauth_bearer_token"] = oauth_bearer_token __props__.__dict__["project"] = project __props__.__dict__["query_delay"] = query_delay + __props__.__dict__["release_channel"] = release_channel __props__.__dict__["source_ofs"] = source_ofs __props__.__dict__["status"] = status return DirectThousandeyes(resource_name, opts=opts, __props__=__props__) @@ -451,6 +536,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="logCollectionEnabled") + def log_collection_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + [Logs documentation](https://docs.nobl9.com/Features/SLO_troubleshooting/event-logs) + """ + return pulumi.get(self, "log_collection_enabled") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -477,18 +570,29 @@ def project(self) -> pulumi.Output[str]: @property @pulumi.getter(name="queryDelay") - def query_delay(self) -> pulumi.Output[Optional['outputs.DirectThousandeyesQueryDelay']]: + def query_delay(self) -> pulumi.Output['outputs.DirectThousandeyesQueryDelay']: """ [Query delay configuration documentation](https://docs.nobl9.com/Features/query-delay). Computed if not provided. """ return pulumi.get(self, "query_delay") + @property + @pulumi.getter(name="releaseChannel") + def release_channel(self) -> pulumi.Output[str]: + """ + Release channel of the created datasource [stable/beta] + """ + return pulumi.get(self, "release_channel") + @property @pulumi.getter(name="sourceOfs") - def source_ofs(self) -> pulumi.Output[Sequence[str]]: + def source_ofs(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - Source of Metrics and/or Services. + This value indicated whether the field was a source of metrics and/or services. 'source_of' is deprecated and not used anywhere; however, it's kept for backward compatibility. """ + warnings.warn("""'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""", DeprecationWarning) + pulumi.log.warn("""source_ofs is deprecated: 'source_of' is deprecated and not used anywhere. You can safely remove it from your configuration file.""") + return pulumi.get(self, "source_ofs") @property diff --git a/sdk/python/piclemx_pulumi_nobl9/get_aws_iam_role_external_id.py b/sdk/python/piclemx_pulumi_nobl9/get_aws_iam_role_external_id.py new file mode 100644 index 0000000..8bf740c --- /dev/null +++ b/sdk/python/piclemx_pulumi_nobl9/get_aws_iam_role_external_id.py @@ -0,0 +1,130 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from . import _utilities + +__all__ = [ + 'GetAwsIamRoleExternalIdResult', + 'AwaitableGetAwsIamRoleExternalIdResult', + 'get_aws_iam_role_external_id', + 'get_aws_iam_role_external_id_output', +] + +@pulumi.output_type +class GetAwsIamRoleExternalIdResult: + """ + A collection of values returned by getAwsIamRoleExternalId. + """ + def __init__(__self__, account_id=None, external_id=None, id=None, name=None): + if account_id and not isinstance(account_id, str): + raise TypeError("Expected argument 'account_id' to be a str") + pulumi.set(__self__, "account_id", account_id) + if external_id and not isinstance(external_id, str): + raise TypeError("Expected argument 'external_id' to be a str") + pulumi.set(__self__, "external_id", external_id) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> str: + """ + External ID + """ + return pulumi.get(self, "account_id") + + @property + @pulumi.getter(name="externalId") + def external_id(self) -> str: + """ + Nobl9 AWS Account ID + """ + return pulumi.get(self, "external_id") + + @property + @pulumi.getter + def id(self) -> str: + """ + The provider-assigned unique ID for this managed resource. + """ + return pulumi.get(self, "id") + + @property + @pulumi.getter + def name(self) -> str: + """ + Data source name + """ + return pulumi.get(self, "name") + + +class AwaitableGetAwsIamRoleExternalIdResult(GetAwsIamRoleExternalIdResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetAwsIamRoleExternalIdResult( + account_id=self.account_id, + external_id=self.external_id, + id=self.id, + name=self.name) + + +def get_aws_iam_role_external_id(name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAwsIamRoleExternalIdResult: + """ + Returns external ID and AWS account ID that can be used to create [cross-account IAM roles in AWS](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cross-account-iam-roles-new). + + ## Example Usage + + ```python + import pulumi + import pulumi_nobl9 as nobl9 + + this = nobl9.get_aws_iam_role_external_id(name="my-datasource-name") + ``` + + + :param str name: Data source name + """ + __args__ = dict() + __args__['name'] = name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('nobl9:index/getAwsIamRoleExternalId:getAwsIamRoleExternalId', __args__, opts=opts, typ=GetAwsIamRoleExternalIdResult).value + + return AwaitableGetAwsIamRoleExternalIdResult( + account_id=pulumi.get(__ret__, 'account_id'), + external_id=pulumi.get(__ret__, 'external_id'), + id=pulumi.get(__ret__, 'id'), + name=pulumi.get(__ret__, 'name')) + + +@_utilities.lift_output_func(get_aws_iam_role_external_id) +def get_aws_iam_role_external_id_output(name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAwsIamRoleExternalIdResult]: + """ + Returns external ID and AWS account ID that can be used to create [cross-account IAM roles in AWS](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#cross-account-iam-roles-new). + + ## Example Usage + + ```python + import pulumi + import pulumi_nobl9 as nobl9 + + this = nobl9.get_aws_iam_role_external_id(name="my-datasource-name") + ``` + + + :param str name: Data source name + """ + ... diff --git a/sdk/python/pulumi_nobl9/outputs.py b/sdk/python/piclemx_pulumi_nobl9/outputs.py similarity index 50% rename from sdk/python/pulumi_nobl9/outputs.py rename to sdk/python/piclemx_pulumi_nobl9/outputs.py index 7931ce9..b3d4ab2 100644 --- a/sdk/python/pulumi_nobl9/outputs.py +++ b/sdk/python/piclemx_pulumi_nobl9/outputs.py @@ -13,6 +13,7 @@ __all__ = [ 'AgentAmazonPrometheusConfig', 'AgentAppdynamicsConfig', + 'AgentAzureMonitorConfig', 'AgentBigqueryConfig', 'AgentCloudwatchConfig', 'AgentDatadogConfig', @@ -21,6 +22,10 @@ 'AgentGcmConfig', 'AgentGrafanaLokiConfig', 'AgentGraphiteConfig', + 'AgentHistoricalDataRetrieval', + 'AgentHistoricalDataRetrievalDefaultDuration', + 'AgentHistoricalDataRetrievalMaxDuration', + 'AgentHoneycombConfig', 'AgentInfluxdbConfig', 'AgentInstanaConfig', 'AgentLightstepConfig', @@ -34,9 +39,17 @@ 'AgentSplunkObservabilityConfig', 'AgentSumologicConfig', 'AgentThousandeyesConfig', + 'AlertMethodPagerdutySendResolution', 'AlertPolicyAlertMethod', 'AlertPolicyCondition', + 'DirectAppdynamicsHistoricalDataRetrieval', + 'DirectAppdynamicsHistoricalDataRetrievalDefaultDuration', + 'DirectAppdynamicsHistoricalDataRetrievalMaxDuration', 'DirectAppdynamicsQueryDelay', + 'DirectAzureMonitorHistoricalDataRetrieval', + 'DirectAzureMonitorHistoricalDataRetrievalDefaultDuration', + 'DirectAzureMonitorHistoricalDataRetrievalMaxDuration', + 'DirectAzureMonitorQueryDelay', 'DirectBigqueryQueryDelay', 'DirectCloudwatchHistoricalDataRetrieval', 'DirectCloudwatchHistoricalDataRetrievalDefaultDuration', @@ -51,6 +64,10 @@ 'DirectDynatraceHistoricalDataRetrievalMaxDuration', 'DirectDynatraceQueryDelay', 'DirectGcmQueryDelay', + 'DirectHoneycombHistoricalDataRetrieval', + 'DirectHoneycombHistoricalDataRetrievalDefaultDuration', + 'DirectHoneycombHistoricalDataRetrievalMaxDuration', + 'DirectHoneycombQueryDelay', 'DirectInfluxdbQueryDelay', 'DirectInstanaQueryDelay', 'DirectLightstepHistoricalDataRetrieval', @@ -72,6 +89,9 @@ 'DirectThousandeyesQueryDelay', 'ProjectLabel', 'ServiceLabel', + 'SloAnomalyConfig', + 'SloAnomalyConfigNoData', + 'SloAnomalyConfigNoDataAlertMethod', 'SloAttachment', 'SloComposite', 'SloCompositeBurnRateCondition', @@ -79,9 +99,43 @@ 'SloLabel', 'SloObjective', 'SloObjectiveCountMetric', + 'SloObjectiveCountMetricBad', + 'SloObjectiveCountMetricBadAmazonPrometheus', + 'SloObjectiveCountMetricBadAppdynamic', + 'SloObjectiveCountMetricBadAzureMonitor', + 'SloObjectiveCountMetricBadAzureMonitorDimension', + 'SloObjectiveCountMetricBadAzureMonitorWorkspace', + 'SloObjectiveCountMetricBadBigquery', + 'SloObjectiveCountMetricBadCloudwatch', + 'SloObjectiveCountMetricBadCloudwatchDimension', + 'SloObjectiveCountMetricBadDatadog', + 'SloObjectiveCountMetricBadDynatrace', + 'SloObjectiveCountMetricBadElasticsearch', + 'SloObjectiveCountMetricBadGcm', + 'SloObjectiveCountMetricBadGrafanaLoki', + 'SloObjectiveCountMetricBadGraphite', + 'SloObjectiveCountMetricBadHoneycomb', + 'SloObjectiveCountMetricBadInfluxdb', + 'SloObjectiveCountMetricBadInstana', + 'SloObjectiveCountMetricBadInstanaApplication', + 'SloObjectiveCountMetricBadInstanaApplicationGroupBy', + 'SloObjectiveCountMetricBadInstanaInfrastructure', + 'SloObjectiveCountMetricBadLightstep', + 'SloObjectiveCountMetricBadNewrelic', + 'SloObjectiveCountMetricBadOpentsdb', + 'SloObjectiveCountMetricBadPingdom', + 'SloObjectiveCountMetricBadPrometheus', + 'SloObjectiveCountMetricBadRedshift', + 'SloObjectiveCountMetricBadSplunk', + 'SloObjectiveCountMetricBadSplunkObservability', + 'SloObjectiveCountMetricBadSumologic', + 'SloObjectiveCountMetricBadThousandeye', 'SloObjectiveCountMetricGood', 'SloObjectiveCountMetricGoodAmazonPrometheus', 'SloObjectiveCountMetricGoodAppdynamic', + 'SloObjectiveCountMetricGoodAzureMonitor', + 'SloObjectiveCountMetricGoodAzureMonitorDimension', + 'SloObjectiveCountMetricGoodAzureMonitorWorkspace', 'SloObjectiveCountMetricGoodBigquery', 'SloObjectiveCountMetricGoodCloudwatch', 'SloObjectiveCountMetricGoodCloudwatchDimension', @@ -91,6 +145,7 @@ 'SloObjectiveCountMetricGoodGcm', 'SloObjectiveCountMetricGoodGrafanaLoki', 'SloObjectiveCountMetricGoodGraphite', + 'SloObjectiveCountMetricGoodHoneycomb', 'SloObjectiveCountMetricGoodInfluxdb', 'SloObjectiveCountMetricGoodInstana', 'SloObjectiveCountMetricGoodInstanaApplication', @@ -109,6 +164,9 @@ 'SloObjectiveCountMetricTotal', 'SloObjectiveCountMetricTotalAmazonPrometheus', 'SloObjectiveCountMetricTotalAppdynamic', + 'SloObjectiveCountMetricTotalAzureMonitor', + 'SloObjectiveCountMetricTotalAzureMonitorDimension', + 'SloObjectiveCountMetricTotalAzureMonitorWorkspace', 'SloObjectiveCountMetricTotalBigquery', 'SloObjectiveCountMetricTotalCloudwatch', 'SloObjectiveCountMetricTotalCloudwatchDimension', @@ -118,6 +176,7 @@ 'SloObjectiveCountMetricTotalGcm', 'SloObjectiveCountMetricTotalGrafanaLoki', 'SloObjectiveCountMetricTotalGraphite', + 'SloObjectiveCountMetricTotalHoneycomb', 'SloObjectiveCountMetricTotalInfluxdb', 'SloObjectiveCountMetricTotalInstana', 'SloObjectiveCountMetricTotalInstanaApplication', @@ -137,6 +196,9 @@ 'SloObjectiveRawMetricQuery', 'SloObjectiveRawMetricQueryAmazonPrometheus', 'SloObjectiveRawMetricQueryAppdynamic', + 'SloObjectiveRawMetricQueryAzureMonitor', + 'SloObjectiveRawMetricQueryAzureMonitorDimension', + 'SloObjectiveRawMetricQueryAzureMonitorWorkspace', 'SloObjectiveRawMetricQueryBigquery', 'SloObjectiveRawMetricQueryCloudwatch', 'SloObjectiveRawMetricQueryCloudwatchDimension', @@ -146,6 +208,7 @@ 'SloObjectiveRawMetricQueryGcm', 'SloObjectiveRawMetricQueryGrafanaLoki', 'SloObjectiveRawMetricQueryGraphite', + 'SloObjectiveRawMetricQueryHoneycomb', 'SloObjectiveRawMetricQueryInfluxdb', 'SloObjectiveRawMetricQueryInstana', 'SloObjectiveRawMetricQueryInstanaApplication', @@ -212,6 +275,41 @@ def url(self) -> str: return pulumi.get(self, "url") +@pulumi.output_type +class AgentAzureMonitorConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "tenantId": + suggest = "tenant_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AgentAzureMonitorConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AgentAzureMonitorConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AgentAzureMonitorConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + tenant_id: str): + """ + :param str tenant_id: Azure Tenant Id. + """ + pulumi.set(__self__, "tenant_id", tenant_id) + + @property + @pulumi.getter(name="tenantId") + def tenant_id(self) -> str: + """ + Azure Tenant Id. + """ + return pulumi.get(self, "tenant_id") + + @pulumi.output_type class AgentBigqueryConfig(dict): def __init__(__self__): @@ -320,6 +418,118 @@ def url(self) -> str: return pulumi.get(self, "url") +@pulumi.output_type +class AgentHistoricalDataRetrieval(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultDurations": + suggest = "default_durations" + elif key == "maxDurations": + suggest = "max_durations" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in AgentHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + AgentHistoricalDataRetrieval.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + AgentHistoricalDataRetrieval.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_durations: Sequence['outputs.AgentHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.AgentHistoricalDataRetrievalMaxDuration']): + """ + :param Sequence['AgentHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['AgentHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. + """ + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> Sequence['outputs.AgentHistoricalDataRetrievalDefaultDuration']: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") + + @property + @pulumi.getter(name="maxDurations") + def max_durations(self) -> Sequence['outputs.AgentHistoricalDataRetrievalMaxDuration']: + """ + Defines the maximum period for which data can be retrieved. + """ + return pulumi.get(self, "max_durations") + + +@pulumi.output_type +class AgentHistoricalDataRetrievalDefaultDuration(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class AgentHistoricalDataRetrievalMaxDuration(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class AgentHoneycombConfig(dict): + def __init__(__self__): + pass + + @pulumi.output_type class AgentInfluxdbConfig(dict): def __init__(__self__, *, @@ -360,13 +570,17 @@ def url(self) -> str: class AgentLightstepConfig(dict): def __init__(__self__, *, organization: str, - project: str): + project: str, + url: Optional[str] = None): """ :param str organization: Organization name registered in Lightstep. :param str project: Name of the Lightstep project. + :param str url: Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. """ pulumi.set(__self__, "organization", organization) pulumi.set(__self__, "project", project) + if url is not None: + pulumi.set(__self__, "url", url) @property @pulumi.getter @@ -384,6 +598,14 @@ def project(self) -> str: """ return pulumi.get(self, "project") + @property + @pulumi.getter + def url(self) -> Optional[str]: + """ + Lightstep API URL. Nobl9 will use https://api.lightstep.com if empty. + """ + return pulumi.get(self, "url") + @pulumi.output_type class AgentNewrelicConfig(dict): @@ -557,6 +779,25 @@ def __init__(__self__): pass +@pulumi.output_type +class AlertMethodPagerdutySendResolution(dict): + def __init__(__self__, *, + message: Optional[str] = None): + """ + :param str message: A message that will be attached to your 'all clear' notification. + """ + if message is not None: + pulumi.set(__self__, "message", message) + + @property + @pulumi.getter + def message(self) -> Optional[str]: + """ + A message that will be attached to your 'all clear' notification. + """ + return pulumi.get(self, "message") + + @pulumi.output_type class AlertPolicyAlertMethod(dict): def __init__(__self__, *, @@ -592,7 +833,9 @@ class AlertPolicyCondition(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "lastsFor": + if key == "alertingWindow": + suggest = "alerting_window" + elif key == "lastsFor": suggest = "lasts_for" elif key == "valueString": suggest = "value_string" @@ -610,16 +853,20 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, measurement: str, + alerting_window: Optional[str] = None, lasts_for: Optional[str] = None, value: Optional[float] = None, value_string: Optional[str] = None): """ - :param str measurement: One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + :param str measurement: One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. + :param str alerting_window: Duration over which the burn rate is evaluated. :param str lasts_for: Indicates how long a given condition needs to be valid to mark the condition as true. :param float value: For `averageBurnRate`, it indicates how fast the error budget is burning. For `burnedBudget`, it tells how much error budget is already burned. - :param str value_string: Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + :param str value_string: Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. """ pulumi.set(__self__, "measurement", measurement) + if alerting_window is not None: + pulumi.set(__self__, "alerting_window", alerting_window) if lasts_for is not None: pulumi.set(__self__, "lasts_for", lasts_for) if value is not None: @@ -631,10 +878,18 @@ def __init__(__self__, *, @pulumi.getter def measurement(self) -> str: """ - One of `timeToBurnBudget` | `burnRate` | `burnedBudget`. + One of `timeToBurnBudget` | `timeToBurnEntireBudget` | `burnRate` | `burnedBudget`. """ return pulumi.get(self, "measurement") + @property + @pulumi.getter(name="alertingWindow") + def alerting_window(self) -> Optional[str]: + """ + Duration over which the burn rate is evaluated. + """ + return pulumi.get(self, "alerting_window") + @property @pulumi.getter(name="lastsFor") def lasts_for(self) -> Optional[str]: @@ -655,71 +910,13 @@ def value(self) -> Optional[float]: @pulumi.getter(name="valueString") def value_string(self) -> Optional[str]: """ - Used with `timeToBurnBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. + Used with `timeToBurnBudget` or `timeToBurnEntireBudget`, indicates when the budget would be exhausted. The expected value is a string in time duration string format. """ return pulumi.get(self, "value_string") @pulumi.output_type -class DirectAppdynamicsQueryDelay(dict): - def __init__(__self__, *, - unit: str, - value: int): - """ - :param str unit: Must be one of Minute or Second. - :param int value: Must be an integer greater than or equal to 0. - """ - pulumi.set(__self__, "unit", unit) - pulumi.set(__self__, "value", value) - - @property - @pulumi.getter - def unit(self) -> str: - """ - Must be one of Minute or Second. - """ - return pulumi.get(self, "unit") - - @property - @pulumi.getter - def value(self) -> int: - """ - Must be an integer greater than or equal to 0. - """ - return pulumi.get(self, "value") - - -@pulumi.output_type -class DirectBigqueryQueryDelay(dict): - def __init__(__self__, *, - unit: str, - value: int): - """ - :param str unit: Must be one of Minute or Second. - :param int value: Must be an integer greater than or equal to 0. - """ - pulumi.set(__self__, "unit", unit) - pulumi.set(__self__, "value", value) - - @property - @pulumi.getter - def unit(self) -> str: - """ - Must be one of Minute or Second. - """ - return pulumi.get(self, "unit") - - @property - @pulumi.getter - def value(self) -> int: - """ - Must be an integer greater than or equal to 0. - """ - return pulumi.get(self, "value") - - -@pulumi.output_type -class DirectCloudwatchHistoricalDataRetrieval(dict): +class DirectAppdynamicsHistoricalDataRetrieval(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -729,29 +926,29 @@ def __key_warning(key: str): suggest = "max_durations" if suggest: - pulumi.log.warn(f"Key '{key}' not found in DirectCloudwatchHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in DirectAppdynamicsHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - DirectCloudwatchHistoricalDataRetrieval.__key_warning(key) + DirectAppdynamicsHistoricalDataRetrieval.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - DirectCloudwatchHistoricalDataRetrieval.__key_warning(key) + DirectAppdynamicsHistoricalDataRetrieval.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - default_durations: Sequence['outputs.DirectCloudwatchHistoricalDataRetrievalDefaultDuration'], - max_durations: Sequence['outputs.DirectCloudwatchHistoricalDataRetrievalMaxDuration']): + default_durations: Sequence['outputs.DirectAppdynamicsHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectAppdynamicsHistoricalDataRetrievalMaxDuration']): """ - :param Sequence['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. - :param Sequence['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. + :param Sequence['DirectAppdynamicsHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectAppdynamicsHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> Sequence['outputs.DirectCloudwatchHistoricalDataRetrievalDefaultDuration']: + def default_durations(self) -> Sequence['outputs.DirectAppdynamicsHistoricalDataRetrievalDefaultDuration']: """ Used by default for any SLOs connected to this data source. """ @@ -759,7 +956,7 @@ def default_durations(self) -> Sequence['outputs.DirectCloudwatchHistoricalDataR @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> Sequence['outputs.DirectCloudwatchHistoricalDataRetrievalMaxDuration']: + def max_durations(self) -> Sequence['outputs.DirectAppdynamicsHistoricalDataRetrievalMaxDuration']: """ Defines the maximum period for which data can be retrieved. """ @@ -767,45 +964,65 @@ def max_durations(self) -> Sequence['outputs.DirectCloudwatchHistoricalDataRetri @pulumi.output_type -class DirectCloudwatchHistoricalDataRetrievalDefaultDuration(dict): +class DirectAppdynamicsHistoricalDataRetrievalDefaultDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectCloudwatchHistoricalDataRetrievalMaxDuration(dict): +class DirectAppdynamicsHistoricalDataRetrievalMaxDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectCloudwatchQueryDelay(dict): +class DirectAppdynamicsQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -834,7 +1051,7 @@ def value(self) -> int: @pulumi.output_type -class DirectDatadogHistoricalDataRetrieval(dict): +class DirectAzureMonitorHistoricalDataRetrieval(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -844,29 +1061,29 @@ def __key_warning(key: str): suggest = "max_durations" if suggest: - pulumi.log.warn(f"Key '{key}' not found in DirectDatadogHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in DirectAzureMonitorHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - DirectDatadogHistoricalDataRetrieval.__key_warning(key) + DirectAzureMonitorHistoricalDataRetrieval.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - DirectDatadogHistoricalDataRetrieval.__key_warning(key) + DirectAzureMonitorHistoricalDataRetrieval.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - default_durations: Sequence['outputs.DirectDatadogHistoricalDataRetrievalDefaultDuration'], - max_durations: Sequence['outputs.DirectDatadogHistoricalDataRetrievalMaxDuration']): + default_durations: Sequence['outputs.DirectAzureMonitorHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectAzureMonitorHistoricalDataRetrievalMaxDuration']): """ - :param Sequence['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. - :param Sequence['DirectDatadogHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. + :param Sequence['DirectAzureMonitorHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectAzureMonitorHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> Sequence['outputs.DirectDatadogHistoricalDataRetrievalDefaultDuration']: + def default_durations(self) -> Sequence['outputs.DirectAzureMonitorHistoricalDataRetrievalDefaultDuration']: """ Used by default for any SLOs connected to this data source. """ @@ -874,7 +1091,7 @@ def default_durations(self) -> Sequence['outputs.DirectDatadogHistoricalDataRetr @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> Sequence['outputs.DirectDatadogHistoricalDataRetrievalMaxDuration']: + def max_durations(self) -> Sequence['outputs.DirectAzureMonitorHistoricalDataRetrievalMaxDuration']: """ Defines the maximum period for which data can be retrieved. """ @@ -882,45 +1099,65 @@ def max_durations(self) -> Sequence['outputs.DirectDatadogHistoricalDataRetrieva @pulumi.output_type -class DirectDatadogHistoricalDataRetrievalDefaultDuration(dict): +class DirectAzureMonitorHistoricalDataRetrievalDefaultDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectDatadogHistoricalDataRetrievalMaxDuration(dict): +class DirectAzureMonitorHistoricalDataRetrievalMaxDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectDatadogQueryDelay(dict): +class DirectAzureMonitorQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -949,7 +1186,36 @@ def value(self) -> int: @pulumi.output_type -class DirectDynatraceHistoricalDataRetrieval(dict): +class DirectBigqueryQueryDelay(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> str: + """ + Must be one of Minute or Second. + """ + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class DirectCloudwatchHistoricalDataRetrieval(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -959,29 +1225,29 @@ def __key_warning(key: str): suggest = "max_durations" if suggest: - pulumi.log.warn(f"Key '{key}' not found in DirectDynatraceHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in DirectCloudwatchHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - DirectDynatraceHistoricalDataRetrieval.__key_warning(key) + DirectCloudwatchHistoricalDataRetrieval.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - DirectDynatraceHistoricalDataRetrieval.__key_warning(key) + DirectCloudwatchHistoricalDataRetrieval.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - default_durations: Sequence['outputs.DirectDynatraceHistoricalDataRetrievalDefaultDuration'], - max_durations: Sequence['outputs.DirectDynatraceHistoricalDataRetrievalMaxDuration']): + default_durations: Sequence['outputs.DirectCloudwatchHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectCloudwatchHistoricalDataRetrievalMaxDuration']): """ - :param Sequence['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. - :param Sequence['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. + :param Sequence['DirectCloudwatchHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectCloudwatchHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> Sequence['outputs.DirectDynatraceHistoricalDataRetrievalDefaultDuration']: + def default_durations(self) -> Sequence['outputs.DirectCloudwatchHistoricalDataRetrievalDefaultDuration']: """ Used by default for any SLOs connected to this data source. """ @@ -989,7 +1255,7 @@ def default_durations(self) -> Sequence['outputs.DirectDynatraceHistoricalDataRe @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> Sequence['outputs.DirectDynatraceHistoricalDataRetrievalMaxDuration']: + def max_durations(self) -> Sequence['outputs.DirectCloudwatchHistoricalDataRetrievalMaxDuration']: """ Defines the maximum period for which data can be retrieved. """ @@ -997,79 +1263,12 @@ def max_durations(self) -> Sequence['outputs.DirectDynatraceHistoricalDataRetrie @pulumi.output_type -class DirectDynatraceHistoricalDataRetrievalDefaultDuration(dict): - def __init__(__self__, *, - unit: str, - value: int): - pulumi.set(__self__, "unit", unit) - pulumi.set(__self__, "value", value) - - @property - @pulumi.getter - def unit(self) -> str: - return pulumi.get(self, "unit") - - @property - @pulumi.getter - def value(self) -> int: - return pulumi.get(self, "value") - - -@pulumi.output_type -class DirectDynatraceHistoricalDataRetrievalMaxDuration(dict): - def __init__(__self__, *, - unit: str, - value: int): - pulumi.set(__self__, "unit", unit) - pulumi.set(__self__, "value", value) - - @property - @pulumi.getter - def unit(self) -> str: - return pulumi.get(self, "unit") - - @property - @pulumi.getter - def value(self) -> int: - return pulumi.get(self, "value") - - -@pulumi.output_type -class DirectDynatraceQueryDelay(dict): - def __init__(__self__, *, - unit: str, - value: int): - """ - :param str unit: Must be one of Minute or Second. - :param int value: Must be an integer greater than or equal to 0. - """ - pulumi.set(__self__, "unit", unit) - pulumi.set(__self__, "value", value) - - @property - @pulumi.getter - def unit(self) -> str: - """ - Must be one of Minute or Second. - """ - return pulumi.get(self, "unit") - - @property - @pulumi.getter - def value(self) -> int: - """ - Must be an integer greater than or equal to 0. - """ - return pulumi.get(self, "value") - - -@pulumi.output_type -class DirectGcmQueryDelay(dict): +class DirectCloudwatchHistoricalDataRetrievalDefaultDuration(dict): def __init__(__self__, *, unit: str, value: int): """ - :param str unit: Must be one of Minute or Second. + :param str unit: Must be one of Minute, Hour, or Day. :param int value: Must be an integer greater than or equal to 0. """ pulumi.set(__self__, "unit", unit) @@ -1079,7 +1278,7 @@ def __init__(__self__, *, @pulumi.getter def unit(self) -> str: """ - Must be one of Minute or Second. + Must be one of Minute, Hour, or Day. """ return pulumi.get(self, "unit") @@ -1093,12 +1292,12 @@ def value(self) -> int: @pulumi.output_type -class DirectInfluxdbQueryDelay(dict): +class DirectCloudwatchHistoricalDataRetrievalMaxDuration(dict): def __init__(__self__, *, unit: str, value: int): """ - :param str unit: Must be one of Minute or Second. + :param str unit: Must be one of Minute, Hour, or Day. :param int value: Must be an integer greater than or equal to 0. """ pulumi.set(__self__, "unit", unit) @@ -1108,7 +1307,7 @@ def __init__(__self__, *, @pulumi.getter def unit(self) -> str: """ - Must be one of Minute or Second. + Must be one of Minute, Hour, or Day. """ return pulumi.get(self, "unit") @@ -1122,7 +1321,7 @@ def value(self) -> int: @pulumi.output_type -class DirectInstanaQueryDelay(dict): +class DirectCloudwatchQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -1151,7 +1350,7 @@ def value(self) -> int: @pulumi.output_type -class DirectLightstepHistoricalDataRetrieval(dict): +class DirectDatadogHistoricalDataRetrieval(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -1161,29 +1360,29 @@ def __key_warning(key: str): suggest = "max_durations" if suggest: - pulumi.log.warn(f"Key '{key}' not found in DirectLightstepHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in DirectDatadogHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - DirectLightstepHistoricalDataRetrieval.__key_warning(key) + DirectDatadogHistoricalDataRetrieval.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - DirectLightstepHistoricalDataRetrieval.__key_warning(key) + DirectDatadogHistoricalDataRetrieval.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - default_durations: Sequence['outputs.DirectLightstepHistoricalDataRetrievalDefaultDuration'], - max_durations: Sequence['outputs.DirectLightstepHistoricalDataRetrievalMaxDuration']): + default_durations: Sequence['outputs.DirectDatadogHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectDatadogHistoricalDataRetrievalMaxDuration']): """ - :param Sequence['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. - :param Sequence['DirectLightstepHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. + :param Sequence['DirectDatadogHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectDatadogHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> Sequence['outputs.DirectLightstepHistoricalDataRetrievalDefaultDuration']: + def default_durations(self) -> Sequence['outputs.DirectDatadogHistoricalDataRetrievalDefaultDuration']: """ Used by default for any SLOs connected to this data source. """ @@ -1191,7 +1390,7 @@ def default_durations(self) -> Sequence['outputs.DirectLightstepHistoricalDataRe @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> Sequence['outputs.DirectLightstepHistoricalDataRetrievalMaxDuration']: + def max_durations(self) -> Sequence['outputs.DirectDatadogHistoricalDataRetrievalMaxDuration']: """ Defines the maximum period for which data can be retrieved. """ @@ -1199,45 +1398,65 @@ def max_durations(self) -> Sequence['outputs.DirectLightstepHistoricalDataRetrie @pulumi.output_type -class DirectLightstepHistoricalDataRetrievalDefaultDuration(dict): +class DirectDatadogHistoricalDataRetrievalDefaultDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectLightstepHistoricalDataRetrievalMaxDuration(dict): +class DirectDatadogHistoricalDataRetrievalMaxDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectLightstepQueryDelay(dict): +class DirectDatadogQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -1266,7 +1485,7 @@ def value(self) -> int: @pulumi.output_type -class DirectNewrelicHistoricalDataRetrieval(dict): +class DirectDynatraceHistoricalDataRetrieval(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -1276,29 +1495,29 @@ def __key_warning(key: str): suggest = "max_durations" if suggest: - pulumi.log.warn(f"Key '{key}' not found in DirectNewrelicHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in DirectDynatraceHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - DirectNewrelicHistoricalDataRetrieval.__key_warning(key) + DirectDynatraceHistoricalDataRetrieval.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - DirectNewrelicHistoricalDataRetrieval.__key_warning(key) + DirectDynatraceHistoricalDataRetrieval.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - default_durations: Sequence['outputs.DirectNewrelicHistoricalDataRetrievalDefaultDuration'], - max_durations: Sequence['outputs.DirectNewrelicHistoricalDataRetrievalMaxDuration']): + default_durations: Sequence['outputs.DirectDynatraceHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectDynatraceHistoricalDataRetrievalMaxDuration']): """ - :param Sequence['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. - :param Sequence['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. + :param Sequence['DirectDynatraceHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectDynatraceHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> Sequence['outputs.DirectNewrelicHistoricalDataRetrievalDefaultDuration']: + def default_durations(self) -> Sequence['outputs.DirectDynatraceHistoricalDataRetrievalDefaultDuration']: """ Used by default for any SLOs connected to this data source. """ @@ -1306,7 +1525,7 @@ def default_durations(self) -> Sequence['outputs.DirectNewrelicHistoricalDataRet @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> Sequence['outputs.DirectNewrelicHistoricalDataRetrievalMaxDuration']: + def max_durations(self) -> Sequence['outputs.DirectDynatraceHistoricalDataRetrievalMaxDuration']: """ Defines the maximum period for which data can be retrieved. """ @@ -1314,50 +1533,41 @@ def max_durations(self) -> Sequence['outputs.DirectNewrelicHistoricalDataRetriev @pulumi.output_type -class DirectNewrelicHistoricalDataRetrievalDefaultDuration(dict): - def __init__(__self__, *, - unit: str, - value: int): - pulumi.set(__self__, "unit", unit) - pulumi.set(__self__, "value", value) - - @property - @pulumi.getter - def unit(self) -> str: - return pulumi.get(self, "unit") - - @property - @pulumi.getter - def value(self) -> int: - return pulumi.get(self, "value") - - -@pulumi.output_type -class DirectNewrelicHistoricalDataRetrievalMaxDuration(dict): +class DirectDynatraceHistoricalDataRetrievalDefaultDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectNewrelicQueryDelay(dict): +class DirectDynatraceHistoricalDataRetrievalMaxDuration(dict): def __init__(__self__, *, unit: str, value: int): """ - :param str unit: Must be one of Minute or Second. + :param str unit: Must be one of Minute, Hour, or Day. :param int value: Must be an integer greater than or equal to 0. """ pulumi.set(__self__, "unit", unit) @@ -1367,7 +1577,7 @@ def __init__(__self__, *, @pulumi.getter def unit(self) -> str: """ - Must be one of Minute or Second. + Must be one of Minute, Hour, or Day. """ return pulumi.get(self, "unit") @@ -1381,7 +1591,7 @@ def value(self) -> int: @pulumi.output_type -class DirectPingdomQueryDelay(dict): +class DirectDynatraceQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -1410,7 +1620,7 @@ def value(self) -> int: @pulumi.output_type -class DirectRedshiftQueryDelay(dict): +class DirectGcmQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -1439,7 +1649,7 @@ def value(self) -> int: @pulumi.output_type -class DirectSplunkHistoricalDataRetrieval(dict): +class DirectHoneycombHistoricalDataRetrieval(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -1449,29 +1659,29 @@ def __key_warning(key: str): suggest = "max_durations" if suggest: - pulumi.log.warn(f"Key '{key}' not found in DirectSplunkHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in DirectHoneycombHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - DirectSplunkHistoricalDataRetrieval.__key_warning(key) + DirectHoneycombHistoricalDataRetrieval.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - DirectSplunkHistoricalDataRetrieval.__key_warning(key) + DirectHoneycombHistoricalDataRetrieval.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - default_durations: Sequence['outputs.DirectSplunkHistoricalDataRetrievalDefaultDuration'], - max_durations: Sequence['outputs.DirectSplunkHistoricalDataRetrievalMaxDuration']): + default_durations: Sequence['outputs.DirectHoneycombHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectHoneycombHistoricalDataRetrievalMaxDuration']): """ - :param Sequence['DirectSplunkHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. - :param Sequence['DirectSplunkHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. + :param Sequence['DirectHoneycombHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectHoneycombHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. """ pulumi.set(__self__, "default_durations", default_durations) pulumi.set(__self__, "max_durations", max_durations) @property @pulumi.getter(name="defaultDurations") - def default_durations(self) -> Sequence['outputs.DirectSplunkHistoricalDataRetrievalDefaultDuration']: + def default_durations(self) -> Sequence['outputs.DirectHoneycombHistoricalDataRetrievalDefaultDuration']: """ Used by default for any SLOs connected to this data source. """ @@ -1479,7 +1689,7 @@ def default_durations(self) -> Sequence['outputs.DirectSplunkHistoricalDataRetri @property @pulumi.getter(name="maxDurations") - def max_durations(self) -> Sequence['outputs.DirectSplunkHistoricalDataRetrievalMaxDuration']: + def max_durations(self) -> Sequence['outputs.DirectHoneycombHistoricalDataRetrievalMaxDuration']: """ Defines the maximum period for which data can be retrieved. """ @@ -1487,45 +1697,65 @@ def max_durations(self) -> Sequence['outputs.DirectSplunkHistoricalDataRetrieval @pulumi.output_type -class DirectSplunkHistoricalDataRetrievalDefaultDuration(dict): +class DirectHoneycombHistoricalDataRetrievalDefaultDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectSplunkHistoricalDataRetrievalMaxDuration(dict): +class DirectHoneycombHistoricalDataRetrievalMaxDuration(dict): def __init__(__self__, *, unit: str, value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ return pulumi.get(self, "unit") @property @pulumi.getter def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class DirectSplunkObservabilityQueryDelay(dict): +class DirectHoneycombQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -1554,7 +1784,7 @@ def value(self) -> int: @pulumi.output_type -class DirectSplunkQueryDelay(dict): +class DirectInfluxdbQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -1583,7 +1813,7 @@ def value(self) -> int: @pulumi.output_type -class DirectSumologicQueryDelay(dict): +class DirectInstanaQueryDelay(dict): def __init__(__self__, *, unit: str, value: int): @@ -1612,12 +1842,60 @@ def value(self) -> int: @pulumi.output_type -class DirectThousandeyesQueryDelay(dict): +class DirectLightstepHistoricalDataRetrieval(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultDurations": + suggest = "default_durations" + elif key == "maxDurations": + suggest = "max_durations" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DirectLightstepHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DirectLightstepHistoricalDataRetrieval.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DirectLightstepHistoricalDataRetrieval.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_durations: Sequence['outputs.DirectLightstepHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectLightstepHistoricalDataRetrievalMaxDuration']): + """ + :param Sequence['DirectLightstepHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectLightstepHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. + """ + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> Sequence['outputs.DirectLightstepHistoricalDataRetrievalDefaultDuration']: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") + + @property + @pulumi.getter(name="maxDurations") + def max_durations(self) -> Sequence['outputs.DirectLightstepHistoricalDataRetrievalMaxDuration']: + """ + Defines the maximum period for which data can be retrieved. + """ + return pulumi.get(self, "max_durations") + + +@pulumi.output_type +class DirectLightstepHistoricalDataRetrievalDefaultDuration(dict): def __init__(__self__, *, unit: str, value: int): """ - :param str unit: Must be one of Minute or Second. + :param str unit: Must be one of Minute, Hour, or Day. :param int value: Must be an integer greater than or equal to 0. """ pulumi.set(__self__, "unit", unit) @@ -1627,7 +1905,7 @@ def __init__(__self__, *, @pulumi.getter def unit(self) -> str: """ - Must be one of Minute or Second. + Must be one of Minute, Hour, or Day. """ return pulumi.get(self, "unit") @@ -1641,396 +1919,2724 @@ def value(self) -> int: @pulumi.output_type -class ProjectLabel(dict): +class DirectLightstepHistoricalDataRetrievalMaxDuration(dict): def __init__(__self__, *, - key: str, - values: Sequence[str]): + unit: str, + value: int): """ - :param str key: A key for the label, unique within the associated resource. - :param Sequence[str] values: A list of unique values for a single key. + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. """ - pulumi.set(__self__, "key", key) - pulumi.set(__self__, "values", values) + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) @property @pulumi.getter - def key(self) -> str: + def unit(self) -> str: """ - A key for the label, unique within the associated resource. + Must be one of Minute, Hour, or Day. """ - return pulumi.get(self, "key") + return pulumi.get(self, "unit") @property @pulumi.getter - def values(self) -> Sequence[str]: + def value(self) -> int: """ - A list of unique values for a single key. + Must be an integer greater than or equal to 0. """ - return pulumi.get(self, "values") + return pulumi.get(self, "value") @pulumi.output_type -class ServiceLabel(dict): +class DirectLightstepQueryDelay(dict): def __init__(__self__, *, - key: str, - values: Sequence[str]): + unit: str, + value: int): """ - :param str key: A key for the label, unique within the associated resource. - :param Sequence[str] values: A list of unique values for a single key. + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. """ - pulumi.set(__self__, "key", key) - pulumi.set(__self__, "values", values) + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) @property @pulumi.getter - def key(self) -> str: + def unit(self) -> str: """ - A key for the label, unique within the associated resource. + Must be one of Minute or Second. """ - return pulumi.get(self, "key") + return pulumi.get(self, "unit") @property @pulumi.getter - def values(self) -> Sequence[str]: + def value(self) -> int: """ - A list of unique values for a single key. + Must be an integer greater than or equal to 0. """ - return pulumi.get(self, "values") + return pulumi.get(self, "value") @pulumi.output_type -class SloAttachment(dict): +class DirectNewrelicHistoricalDataRetrieval(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "displayName": - suggest = "display_name" + if key == "defaultDurations": + suggest = "default_durations" + elif key == "maxDurations": + suggest = "max_durations" if suggest: - pulumi.log.warn(f"Key '{key}' not found in SloAttachment. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in DirectNewrelicHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - SloAttachment.__key_warning(key) + DirectNewrelicHistoricalDataRetrieval.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - SloAttachment.__key_warning(key) + DirectNewrelicHistoricalDataRetrieval.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - url: str, - display_name: Optional[str] = None): + default_durations: Sequence['outputs.DirectNewrelicHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectNewrelicHistoricalDataRetrievalMaxDuration']): """ - :param str url: URL to the attachment - :param str display_name: Name displayed for the attachment. Max. length: 63 characters. + :param Sequence['DirectNewrelicHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectNewrelicHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. """ - pulumi.set(__self__, "url", url) - if display_name is not None: - pulumi.set(__self__, "display_name", display_name) + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) @property - @pulumi.getter - def url(self) -> str: + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> Sequence['outputs.DirectNewrelicHistoricalDataRetrievalDefaultDuration']: """ - URL to the attachment + Used by default for any SLOs connected to this data source. """ - return pulumi.get(self, "url") + return pulumi.get(self, "default_durations") @property - @pulumi.getter(name="displayName") - def display_name(self) -> Optional[str]: + @pulumi.getter(name="maxDurations") + def max_durations(self) -> Sequence['outputs.DirectNewrelicHistoricalDataRetrievalMaxDuration']: """ - Name displayed for the attachment. Max. length: 63 characters. + Defines the maximum period for which data can be retrieved. """ - return pulumi.get(self, "display_name") + return pulumi.get(self, "max_durations") @pulumi.output_type -class SloComposite(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "burnRateConditions": - suggest = "burn_rate_conditions" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in SloComposite. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - SloComposite.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - SloComposite.__key_warning(key) - return super().get(key, default) - +class DirectNewrelicHistoricalDataRetrievalDefaultDuration(dict): def __init__(__self__, *, - target: float, - burn_rate_conditions: Optional[Sequence['outputs.SloCompositeBurnRateCondition']] = None): + unit: str, + value: int): """ - :param float target: Designated value - :param Sequence['SloCompositeBurnRateConditionArgs'] burn_rate_conditions: Condition when the Composite SLO’s error budget is burning. + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. """ - pulumi.set(__self__, "target", target) - if burn_rate_conditions is not None: - pulumi.set(__self__, "burn_rate_conditions", burn_rate_conditions) + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) @property @pulumi.getter - def target(self) -> float: + def unit(self) -> str: """ - Designated value + Must be one of Minute, Hour, or Day. """ - return pulumi.get(self, "target") + return pulumi.get(self, "unit") @property - @pulumi.getter(name="burnRateConditions") - def burn_rate_conditions(self) -> Optional[Sequence['outputs.SloCompositeBurnRateCondition']]: + @pulumi.getter + def value(self) -> int: """ - Condition when the Composite SLO’s error budget is burning. + Must be an integer greater than or equal to 0. """ - return pulumi.get(self, "burn_rate_conditions") + return pulumi.get(self, "value") @pulumi.output_type -class SloCompositeBurnRateCondition(dict): +class DirectNewrelicHistoricalDataRetrievalMaxDuration(dict): def __init__(__self__, *, - op: str, - value: float): - pulumi.set(__self__, "op", op) + unit: str, + value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) @property @pulumi.getter - def op(self) -> str: - return pulumi.get(self, "op") + def unit(self) -> str: + """ + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") @property @pulumi.getter - def value(self) -> float: + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ return pulumi.get(self, "value") @pulumi.output_type -class SloIndicator(dict): +class DirectNewrelicQueryDelay(dict): def __init__(__self__, *, - name: str, - kind: Optional[str] = None, - project: Optional[str] = None): - """ - :param str name: Name of the metric source (agent). - :param str kind: Kind of the metric source. One of {Agent, Direct}. - :param str project: Name of the metric source project. - """ - pulumi.set(__self__, "name", name) - if kind is not None: - pulumi.set(__self__, "kind", kind) - if project is not None: - pulumi.set(__self__, "project", project) - - @property - @pulumi.getter - def name(self) -> str: + unit: str, + value: int): """ - Name of the metric source (agent). + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. """ - return pulumi.get(self, "name") + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) @property @pulumi.getter - def kind(self) -> Optional[str]: + def unit(self) -> str: """ - Kind of the metric source. One of {Agent, Direct}. + Must be one of Minute or Second. """ - return pulumi.get(self, "kind") + return pulumi.get(self, "unit") @property @pulumi.getter - def project(self) -> Optional[str]: + def value(self) -> int: """ - Name of the metric source project. + Must be an integer greater than or equal to 0. """ - return pulumi.get(self, "project") + return pulumi.get(self, "value") @pulumi.output_type -class SloLabel(dict): +class DirectPingdomQueryDelay(dict): def __init__(__self__, *, - key: str, - values: Sequence[str]): + unit: str, + value: int): """ - :param str key: A key for the label, unique within the associated resource. - :param Sequence[str] values: A list of unique values for a single key. + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. """ - pulumi.set(__self__, "key", key) - pulumi.set(__self__, "values", values) + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) @property @pulumi.getter - def key(self) -> str: + def unit(self) -> str: """ - A key for the label, unique within the associated resource. + Must be one of Minute or Second. """ - return pulumi.get(self, "key") + return pulumi.get(self, "unit") @property @pulumi.getter - def values(self) -> Sequence[str]: + def value(self) -> int: """ - A list of unique values for a single key. + Must be an integer greater than or equal to 0. """ - return pulumi.get(self, "values") + return pulumi.get(self, "value") @pulumi.output_type -class SloObjective(dict): +class DirectRedshiftQueryDelay(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> str: + """ + Must be one of Minute or Second. + """ + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class DirectSplunkHistoricalDataRetrieval(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "displayName": - suggest = "display_name" - elif key == "countMetrics": - suggest = "count_metrics" - elif key == "rawMetrics": - suggest = "raw_metrics" - elif key == "timeSliceTarget": - suggest = "time_slice_target" + if key == "defaultDurations": + suggest = "default_durations" + elif key == "maxDurations": + suggest = "max_durations" if suggest: - pulumi.log.warn(f"Key '{key}' not found in SloObjective. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in DirectSplunkHistoricalDataRetrieval. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - SloObjective.__key_warning(key) + DirectSplunkHistoricalDataRetrieval.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - SloObjective.__key_warning(key) + DirectSplunkHistoricalDataRetrieval.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - display_name: str, - target: float, - value: float, - count_metrics: Optional[Sequence['outputs.SloObjectiveCountMetric']] = None, - name: Optional[str] = None, - op: Optional[str] = None, - raw_metrics: Optional[Sequence['outputs.SloObjectiveRawMetric']] = None, - time_slice_target: Optional[float] = None): + default_durations: Sequence['outputs.DirectSplunkHistoricalDataRetrievalDefaultDuration'], + max_durations: Sequence['outputs.DirectSplunkHistoricalDataRetrievalMaxDuration']): """ - :param str display_name: Name to be displayed - :param float target: Designated value - :param float value: Value - :param Sequence['SloObjectiveCountMetricArgs'] count_metrics: Compares two time series, indicating the ratio of the count of good values to total values. - :param str name: Objective's name. This field is computed if not provided. - :param str op: Type of logical operation - :param Sequence['SloObjectiveRawMetricArgs'] raw_metrics: Raw data is used to compare objective values. - :param float time_slice_target: Designated value for slice + :param Sequence['DirectSplunkHistoricalDataRetrievalDefaultDurationArgs'] default_durations: Used by default for any SLOs connected to this data source. + :param Sequence['DirectSplunkHistoricalDataRetrievalMaxDurationArgs'] max_durations: Defines the maximum period for which data can be retrieved. """ - pulumi.set(__self__, "display_name", display_name) - pulumi.set(__self__, "target", target) + pulumi.set(__self__, "default_durations", default_durations) + pulumi.set(__self__, "max_durations", max_durations) + + @property + @pulumi.getter(name="defaultDurations") + def default_durations(self) -> Sequence['outputs.DirectSplunkHistoricalDataRetrievalDefaultDuration']: + """ + Used by default for any SLOs connected to this data source. + """ + return pulumi.get(self, "default_durations") + + @property + @pulumi.getter(name="maxDurations") + def max_durations(self) -> Sequence['outputs.DirectSplunkHistoricalDataRetrievalMaxDuration']: + """ + Defines the maximum period for which data can be retrieved. + """ + return pulumi.get(self, "max_durations") + + +@pulumi.output_type +class DirectSplunkHistoricalDataRetrievalDefaultDuration(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) pulumi.set(__self__, "value", value) - if count_metrics is not None: - pulumi.set(__self__, "count_metrics", count_metrics) - if name is not None: - pulumi.set(__self__, "name", name) - if op is not None: - pulumi.set(__self__, "op", op) - if raw_metrics is not None: - pulumi.set(__self__, "raw_metrics", raw_metrics) - if time_slice_target is not None: - pulumi.set(__self__, "time_slice_target", time_slice_target) @property - @pulumi.getter(name="displayName") - def display_name(self) -> str: + @pulumi.getter + def unit(self) -> str: """ - Name to be displayed + Must be one of Minute, Hour, or Day. """ - return pulumi.get(self, "display_name") + return pulumi.get(self, "unit") @property @pulumi.getter - def target(self) -> float: + def value(self) -> int: """ - Designated value + Must be an integer greater than or equal to 0. """ - return pulumi.get(self, "target") + return pulumi.get(self, "value") + + +@pulumi.output_type +class DirectSplunkHistoricalDataRetrievalMaxDuration(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute, Hour, or Day. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) @property @pulumi.getter - def value(self) -> float: + def unit(self) -> str: """ - Value + Must be one of Minute, Hour, or Day. + """ + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. """ return pulumi.get(self, "value") + +@pulumi.output_type +class DirectSplunkObservabilityQueryDelay(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + @property - @pulumi.getter(name="countMetrics") - def count_metrics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetric']]: + @pulumi.getter + def unit(self) -> str: """ - Compares two time series, indicating the ratio of the count of good values to total values. + Must be one of Minute or Second. """ - return pulumi.get(self, "count_metrics") + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class DirectSplunkQueryDelay(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> str: + """ + Must be one of Minute or Second. + """ + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class DirectSumologicQueryDelay(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> str: + """ + Must be one of Minute or Second. + """ + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class DirectThousandeyesQueryDelay(dict): + def __init__(__self__, *, + unit: str, + value: int): + """ + :param str unit: Must be one of Minute or Second. + :param int value: Must be an integer greater than or equal to 0. + """ + pulumi.set(__self__, "unit", unit) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def unit(self) -> str: + """ + Must be one of Minute or Second. + """ + return pulumi.get(self, "unit") + + @property + @pulumi.getter + def value(self) -> int: + """ + Must be an integer greater than or equal to 0. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class ProjectLabel(dict): + def __init__(__self__, *, + key: str, + values: Sequence[str]): + """ + :param str key: A key for the label, unique within the associated resource. + :param Sequence[str] values: A list of unique values for a single key. + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "values", values) + + @property + @pulumi.getter + def key(self) -> str: + """ + A key for the label, unique within the associated resource. + """ + return pulumi.get(self, "key") + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + """ + A list of unique values for a single key. + """ + return pulumi.get(self, "values") + + +@pulumi.output_type +class ServiceLabel(dict): + def __init__(__self__, *, + key: str, + values: Sequence[str]): + """ + :param str key: A key for the label, unique within the associated resource. + :param Sequence[str] values: A list of unique values for a single key. + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "values", values) + + @property + @pulumi.getter + def key(self) -> str: + """ + A key for the label, unique within the associated resource. + """ + return pulumi.get(self, "key") + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + """ + A list of unique values for a single key. + """ + return pulumi.get(self, "values") + + +@pulumi.output_type +class SloAnomalyConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "noData": + suggest = "no_data" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloAnomalyConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloAnomalyConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloAnomalyConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + no_data: 'outputs.SloAnomalyConfigNoData'): + """ + :param 'SloAnomalyConfigNoDataArgs' no_data: Alert Policies attached to SLO + """ + pulumi.set(__self__, "no_data", no_data) + + @property + @pulumi.getter(name="noData") + def no_data(self) -> 'outputs.SloAnomalyConfigNoData': + """ + Alert Policies attached to SLO + """ + return pulumi.get(self, "no_data") + + +@pulumi.output_type +class SloAnomalyConfigNoData(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "alertMethods": + suggest = "alert_methods" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloAnomalyConfigNoData. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloAnomalyConfigNoData.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloAnomalyConfigNoData.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + alert_methods: Sequence['outputs.SloAnomalyConfigNoDataAlertMethod']): + """ + :param Sequence['SloAnomalyConfigNoDataAlertMethodArgs'] alert_methods: Alert methods attached to Anomaly Config + """ + pulumi.set(__self__, "alert_methods", alert_methods) + + @property + @pulumi.getter(name="alertMethods") + def alert_methods(self) -> Sequence['outputs.SloAnomalyConfigNoDataAlertMethod']: + """ + Alert methods attached to Anomaly Config + """ + return pulumi.get(self, "alert_methods") + + +@pulumi.output_type +class SloAnomalyConfigNoDataAlertMethod(dict): + def __init__(__self__, *, + name: str, + project: str): + """ + :param str name: The name of the previously defined alert method. + :param str project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "project", project) + + @property + @pulumi.getter + def name(self) -> str: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def project(self) -> str: + """ + Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. + """ + return pulumi.get(self, "project") + + +@pulumi.output_type +class SloAttachment(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "displayName": + suggest = "display_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloAttachment. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloAttachment.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloAttachment.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + url: str, + display_name: Optional[str] = None): + """ + :param str url: URL to the attachment + :param str display_name: Name displayed for the attachment. Max. length: 63 characters. + """ + pulumi.set(__self__, "url", url) + if display_name is not None: + pulumi.set(__self__, "display_name", display_name) + + @property + @pulumi.getter + def url(self) -> str: + """ + URL to the attachment + """ + return pulumi.get(self, "url") + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> Optional[str]: + """ + Name displayed for the attachment. Max. length: 63 characters. + """ + return pulumi.get(self, "display_name") + + +@pulumi.output_type +class SloComposite(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "burnRateConditions": + suggest = "burn_rate_conditions" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloComposite. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloComposite.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloComposite.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + target: float, + burn_rate_conditions: Optional[Sequence['outputs.SloCompositeBurnRateCondition']] = None): + """ + :param float target: Designated value + :param Sequence['SloCompositeBurnRateConditionArgs'] burn_rate_conditions: Condition when the Composite SLO’s error budget is burning. + """ + pulumi.set(__self__, "target", target) + if burn_rate_conditions is not None: + pulumi.set(__self__, "burn_rate_conditions", burn_rate_conditions) + + @property + @pulumi.getter + def target(self) -> float: + """ + Designated value + """ + return pulumi.get(self, "target") + + @property + @pulumi.getter(name="burnRateConditions") + def burn_rate_conditions(self) -> Optional[Sequence['outputs.SloCompositeBurnRateCondition']]: + """ + Condition when the Composite SLO’s error budget is burning. + """ + return pulumi.get(self, "burn_rate_conditions") + + +@pulumi.output_type +class SloCompositeBurnRateCondition(dict): + def __init__(__self__, *, + op: str, + value: float): + """ + :param str op: Type of logical operation + :param float value: Burn rate value. + """ + pulumi.set(__self__, "op", op) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def op(self) -> str: + """ + Type of logical operation + """ + return pulumi.get(self, "op") + + @property + @pulumi.getter + def value(self) -> float: + """ + Burn rate value. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class SloIndicator(dict): + def __init__(__self__, *, + name: str, + kind: Optional[str] = None, + project: Optional[str] = None): + """ + :param str name: Name of the metric source (agent). + :param str kind: Kind of the metric source. One of {Agent, Direct}. + :param str project: Name of the metric source project. + """ + pulumi.set(__self__, "name", name) + if kind is not None: + pulumi.set(__self__, "kind", kind) + if project is not None: + pulumi.set(__self__, "project", project) + + @property + @pulumi.getter + def name(self) -> str: + """ + Name of the metric source (agent). + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def kind(self) -> Optional[str]: + """ + Kind of the metric source. One of {Agent, Direct}. + """ + return pulumi.get(self, "kind") + + @property + @pulumi.getter + def project(self) -> Optional[str]: + """ + Name of the metric source project. + """ + return pulumi.get(self, "project") + + +@pulumi.output_type +class SloLabel(dict): + def __init__(__self__, *, + key: str, + values: Sequence[str]): + """ + :param str key: A key for the label, unique within the associated resource. + :param Sequence[str] values: A list of unique values for a single key. + """ + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "values", values) + + @property + @pulumi.getter + def key(self) -> str: + """ + A key for the label, unique within the associated resource. + """ + return pulumi.get(self, "key") + + @property + @pulumi.getter + def values(self) -> Sequence[str]: + """ + A list of unique values for a single key. + """ + return pulumi.get(self, "values") + + +@pulumi.output_type +class SloObjective(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "displayName": + suggest = "display_name" + elif key == "countMetrics": + suggest = "count_metrics" + elif key == "rawMetrics": + suggest = "raw_metrics" + elif key == "timeSliceTarget": + suggest = "time_slice_target" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjective. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjective.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjective.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + display_name: str, + target: float, + value: float, + count_metrics: Optional[Sequence['outputs.SloObjectiveCountMetric']] = None, + name: Optional[str] = None, + op: Optional[str] = None, + raw_metrics: Optional[Sequence['outputs.SloObjectiveRawMetric']] = None, + time_slice_target: Optional[float] = None): + """ + :param str display_name: Name to be displayed + :param float target: Designated value + :param float value: Value + :param Sequence['SloObjectiveCountMetricArgs'] count_metrics: Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. + :param str name: Objective's name. This field is computed if not provided. + :param str op: Type of logical operation + :param Sequence['SloObjectiveRawMetricArgs'] raw_metrics: Raw data is used to compare objective values. + :param float time_slice_target: Designated value for slice + """ + pulumi.set(__self__, "display_name", display_name) + pulumi.set(__self__, "target", target) + pulumi.set(__self__, "value", value) + if count_metrics is not None: + pulumi.set(__self__, "count_metrics", count_metrics) + if name is not None: + pulumi.set(__self__, "name", name) + if op is not None: + pulumi.set(__self__, "op", op) + if raw_metrics is not None: + pulumi.set(__self__, "raw_metrics", raw_metrics) + if time_slice_target is not None: + pulumi.set(__self__, "time_slice_target", time_slice_target) + + @property + @pulumi.getter(name="displayName") + def display_name(self) -> str: + """ + Name to be displayed + """ + return pulumi.get(self, "display_name") + + @property + @pulumi.getter + def target(self) -> float: + """ + Designated value + """ + return pulumi.get(self, "target") + + @property + @pulumi.getter + def value(self) -> float: + """ + Value + """ + return pulumi.get(self, "value") + + @property + @pulumi.getter(name="countMetrics") + def count_metrics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetric']]: + """ + Compares two time series, calculating the ratio of either good or bad values to the total number of values. Fill either the 'good' or 'bad' series, but not both. + """ + return pulumi.get(self, "count_metrics") + + @property + @pulumi.getter + def name(self) -> Optional[str]: + """ + Objective's name. This field is computed if not provided. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def op(self) -> Optional[str]: + """ + Type of logical operation + """ + return pulumi.get(self, "op") + + @property + @pulumi.getter(name="rawMetrics") + def raw_metrics(self) -> Optional[Sequence['outputs.SloObjectiveRawMetric']]: + """ + Raw data is used to compare objective values. + """ + return pulumi.get(self, "raw_metrics") + + @property + @pulumi.getter(name="timeSliceTarget") + def time_slice_target(self) -> Optional[float]: + """ + Designated value for slice + """ + return pulumi.get(self, "time_slice_target") + + +@pulumi.output_type +class SloObjectiveCountMetric(dict): + def __init__(__self__, *, + incremental: bool, + totals: Sequence['outputs.SloObjectiveCountMetricTotal'], + bads: Optional[Sequence['outputs.SloObjectiveCountMetricBad']] = None, + goods: Optional[Sequence['outputs.SloObjectiveCountMetricGood']] = None): + """ + :param bool incremental: Should the metrics be incrementing or not + :param Sequence['SloObjectiveCountMetricTotalArgs'] totals: Configuration for metric source + :param Sequence['SloObjectiveCountMetricBadArgs'] bads: Configuration for bad time series metrics. + :param Sequence['SloObjectiveCountMetricGoodArgs'] goods: Configuration for good time series metrics. + """ + pulumi.set(__self__, "incremental", incremental) + pulumi.set(__self__, "totals", totals) + if bads is not None: + pulumi.set(__self__, "bads", bads) + if goods is not None: + pulumi.set(__self__, "goods", goods) + + @property + @pulumi.getter + def incremental(self) -> bool: + """ + Should the metrics be incrementing or not + """ + return pulumi.get(self, "incremental") + + @property + @pulumi.getter + def totals(self) -> Sequence['outputs.SloObjectiveCountMetricTotal']: + """ + Configuration for metric source + """ + return pulumi.get(self, "totals") + + @property + @pulumi.getter + def bads(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBad']]: + """ + Configuration for bad time series metrics. + """ + return pulumi.get(self, "bads") + + @property + @pulumi.getter + def goods(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGood']]: + """ + Configuration for good time series metrics. + """ + return pulumi.get(self, "goods") + + +@pulumi.output_type +class SloObjectiveCountMetricBad(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "amazonPrometheuses": + suggest = "amazon_prometheuses" + elif key == "azureMonitors": + suggest = "azure_monitors" + elif key == "grafanaLokis": + suggest = "grafana_lokis" + elif key == "splunkObservabilities": + suggest = "splunk_observabilities" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBad. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBad.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBad.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + amazon_prometheuses: Optional[Sequence['outputs.SloObjectiveCountMetricBadAmazonPrometheus']] = None, + appdynamics: Optional[Sequence['outputs.SloObjectiveCountMetricBadAppdynamic']] = None, + azure_monitors: Optional[Sequence['outputs.SloObjectiveCountMetricBadAzureMonitor']] = None, + bigqueries: Optional[Sequence['outputs.SloObjectiveCountMetricBadBigquery']] = None, + cloudwatches: Optional[Sequence['outputs.SloObjectiveCountMetricBadCloudwatch']] = None, + datadogs: Optional[Sequence['outputs.SloObjectiveCountMetricBadDatadog']] = None, + dynatraces: Optional[Sequence['outputs.SloObjectiveCountMetricBadDynatrace']] = None, + elasticsearches: Optional[Sequence['outputs.SloObjectiveCountMetricBadElasticsearch']] = None, + gcms: Optional[Sequence['outputs.SloObjectiveCountMetricBadGcm']] = None, + grafana_lokis: Optional[Sequence['outputs.SloObjectiveCountMetricBadGrafanaLoki']] = None, + graphites: Optional[Sequence['outputs.SloObjectiveCountMetricBadGraphite']] = None, + honeycombs: Optional[Sequence['outputs.SloObjectiveCountMetricBadHoneycomb']] = None, + influxdbs: Optional[Sequence['outputs.SloObjectiveCountMetricBadInfluxdb']] = None, + instanas: Optional[Sequence['outputs.SloObjectiveCountMetricBadInstana']] = None, + lightsteps: Optional[Sequence['outputs.SloObjectiveCountMetricBadLightstep']] = None, + newrelics: Optional[Sequence['outputs.SloObjectiveCountMetricBadNewrelic']] = None, + opentsdbs: Optional[Sequence['outputs.SloObjectiveCountMetricBadOpentsdb']] = None, + pingdoms: Optional[Sequence['outputs.SloObjectiveCountMetricBadPingdom']] = None, + prometheuses: Optional[Sequence['outputs.SloObjectiveCountMetricBadPrometheus']] = None, + redshifts: Optional[Sequence['outputs.SloObjectiveCountMetricBadRedshift']] = None, + splunk_observabilities: Optional[Sequence['outputs.SloObjectiveCountMetricBadSplunkObservability']] = None, + splunks: Optional[Sequence['outputs.SloObjectiveCountMetricBadSplunk']] = None, + sumologics: Optional[Sequence['outputs.SloObjectiveCountMetricBadSumologic']] = None, + thousandeyes: Optional[Sequence['outputs.SloObjectiveCountMetricBadThousandeye']] = None): + """ + :param Sequence['SloObjectiveCountMetricBadAmazonPrometheusArgs'] amazon_prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + :param Sequence['SloObjectiveCountMetricBadAppdynamicArgs'] appdynamics: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + :param Sequence['SloObjectiveCountMetricBadAzureMonitorArgs'] azure_monitors: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + :param Sequence['SloObjectiveCountMetricBadBigqueryArgs'] bigqueries: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + :param Sequence['SloObjectiveCountMetricBadCloudwatchArgs'] cloudwatches: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + :param Sequence['SloObjectiveCountMetricBadDatadogArgs'] datadogs: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + :param Sequence['SloObjectiveCountMetricBadDynatraceArgs'] dynatraces: [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + :param Sequence['SloObjectiveCountMetricBadElasticsearchArgs'] elasticsearches: [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + :param Sequence['SloObjectiveCountMetricBadGcmArgs'] gcms: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + :param Sequence['SloObjectiveCountMetricBadGrafanaLokiArgs'] grafana_lokis: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + :param Sequence['SloObjectiveCountMetricBadGraphiteArgs'] graphites: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + :param Sequence['SloObjectiveCountMetricBadHoneycombArgs'] honeycombs: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + :param Sequence['SloObjectiveCountMetricBadInfluxdbArgs'] influxdbs: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + :param Sequence['SloObjectiveCountMetricBadInstanaArgs'] instanas: [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + :param Sequence['SloObjectiveCountMetricBadLightstepArgs'] lightsteps: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + :param Sequence['SloObjectiveCountMetricBadNewrelicArgs'] newrelics: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + :param Sequence['SloObjectiveCountMetricBadOpentsdbArgs'] opentsdbs: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + :param Sequence['SloObjectiveCountMetricBadPingdomArgs'] pingdoms: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + :param Sequence['SloObjectiveCountMetricBadPrometheusArgs'] prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + :param Sequence['SloObjectiveCountMetricBadRedshiftArgs'] redshifts: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + :param Sequence['SloObjectiveCountMetricBadSplunkObservabilityArgs'] splunk_observabilities: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + :param Sequence['SloObjectiveCountMetricBadSplunkArgs'] splunks: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + :param Sequence['SloObjectiveCountMetricBadSumologicArgs'] sumologics: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + :param Sequence['SloObjectiveCountMetricBadThousandeyeArgs'] thousandeyes: [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ + if amazon_prometheuses is not None: + pulumi.set(__self__, "amazon_prometheuses", amazon_prometheuses) + if appdynamics is not None: + pulumi.set(__self__, "appdynamics", appdynamics) + if azure_monitors is not None: + pulumi.set(__self__, "azure_monitors", azure_monitors) + if bigqueries is not None: + pulumi.set(__self__, "bigqueries", bigqueries) + if cloudwatches is not None: + pulumi.set(__self__, "cloudwatches", cloudwatches) + if datadogs is not None: + pulumi.set(__self__, "datadogs", datadogs) + if dynatraces is not None: + pulumi.set(__self__, "dynatraces", dynatraces) + if elasticsearches is not None: + pulumi.set(__self__, "elasticsearches", elasticsearches) + if gcms is not None: + pulumi.set(__self__, "gcms", gcms) + if grafana_lokis is not None: + pulumi.set(__self__, "grafana_lokis", grafana_lokis) + if graphites is not None: + pulumi.set(__self__, "graphites", graphites) + if honeycombs is not None: + pulumi.set(__self__, "honeycombs", honeycombs) + if influxdbs is not None: + pulumi.set(__self__, "influxdbs", influxdbs) + if instanas is not None: + pulumi.set(__self__, "instanas", instanas) + if lightsteps is not None: + pulumi.set(__self__, "lightsteps", lightsteps) + if newrelics is not None: + pulumi.set(__self__, "newrelics", newrelics) + if opentsdbs is not None: + pulumi.set(__self__, "opentsdbs", opentsdbs) + if pingdoms is not None: + pulumi.set(__self__, "pingdoms", pingdoms) + if prometheuses is not None: + pulumi.set(__self__, "prometheuses", prometheuses) + if redshifts is not None: + pulumi.set(__self__, "redshifts", redshifts) + if splunk_observabilities is not None: + pulumi.set(__self__, "splunk_observabilities", splunk_observabilities) + if splunks is not None: + pulumi.set(__self__, "splunks", splunks) + if sumologics is not None: + pulumi.set(__self__, "sumologics", sumologics) + if thousandeyes is not None: + pulumi.set(__self__, "thousandeyes", thousandeyes) + + @property + @pulumi.getter(name="amazonPrometheuses") + def amazon_prometheuses(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadAmazonPrometheus']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + """ + return pulumi.get(self, "amazon_prometheuses") + + @property + @pulumi.getter + def appdynamics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadAppdynamic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + """ + return pulumi.get(self, "appdynamics") + + @property + @pulumi.getter(name="azureMonitors") + def azure_monitors(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadAzureMonitor']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + """ + return pulumi.get(self, "azure_monitors") + + @property + @pulumi.getter + def bigqueries(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadBigquery']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + """ + return pulumi.get(self, "bigqueries") + + @property + @pulumi.getter + def cloudwatches(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadCloudwatch']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + """ + return pulumi.get(self, "cloudwatches") + + @property + @pulumi.getter + def datadogs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadDatadog']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + """ + return pulumi.get(self, "datadogs") + + @property + @pulumi.getter + def dynatraces(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadDynatrace']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + """ + return pulumi.get(self, "dynatraces") + + @property + @pulumi.getter + def elasticsearches(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadElasticsearch']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + """ + return pulumi.get(self, "elasticsearches") + + @property + @pulumi.getter + def gcms(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadGcm']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + """ + return pulumi.get(self, "gcms") + + @property + @pulumi.getter(name="grafanaLokis") + def grafana_lokis(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadGrafanaLoki']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + """ + return pulumi.get(self, "grafana_lokis") + + @property + @pulumi.getter + def graphites(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadGraphite']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + """ + return pulumi.get(self, "graphites") + + @property + @pulumi.getter + def honeycombs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadHoneycomb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + """ + return pulumi.get(self, "honeycombs") + + @property + @pulumi.getter + def influxdbs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadInfluxdb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + """ + return pulumi.get(self, "influxdbs") + + @property + @pulumi.getter + def instanas(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadInstana']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + """ + return pulumi.get(self, "instanas") + + @property + @pulumi.getter + def lightsteps(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadLightstep']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + """ + return pulumi.get(self, "lightsteps") + + @property + @pulumi.getter + def newrelics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadNewrelic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + """ + return pulumi.get(self, "newrelics") + + @property + @pulumi.getter + def opentsdbs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadOpentsdb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + """ + return pulumi.get(self, "opentsdbs") + + @property + @pulumi.getter + def pingdoms(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadPingdom']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + """ + return pulumi.get(self, "pingdoms") + + @property + @pulumi.getter + def prometheuses(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadPrometheus']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + """ + return pulumi.get(self, "prometheuses") + + @property + @pulumi.getter + def redshifts(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadRedshift']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + """ + return pulumi.get(self, "redshifts") + + @property + @pulumi.getter(name="splunkObservabilities") + def splunk_observabilities(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadSplunkObservability']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + """ + return pulumi.get(self, "splunk_observabilities") + + @property + @pulumi.getter + def splunks(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadSplunk']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + """ + return pulumi.get(self, "splunks") + + @property + @pulumi.getter + def sumologics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadSumologic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + """ + return pulumi.get(self, "sumologics") + + @property + @pulumi.getter + def thousandeyes(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadThousandeye']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ + return pulumi.get(self, "thousandeyes") + + +@pulumi.output_type +class SloObjectiveCountMetricBadAmazonPrometheus(dict): + def __init__(__self__, *, + promql: str): + """ + :param str promql: Query for the metrics + """ + pulumi.set(__self__, "promql", promql) + + @property + @pulumi.getter + def promql(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "promql") + + +@pulumi.output_type +class SloObjectiveCountMetricBadAppdynamic(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "applicationName": + suggest = "application_name" + elif key == "metricPath": + suggest = "metric_path" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadAppdynamic. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadAppdynamic.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadAppdynamic.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + application_name: str, + metric_path: str): + """ + :param str application_name: Name of the added application + :param str metric_path: Path to the metrics + """ + pulumi.set(__self__, "application_name", application_name) + pulumi.set(__self__, "metric_path", metric_path) + + @property + @pulumi.getter(name="applicationName") + def application_name(self) -> str: + """ + Name of the added application + """ + return pulumi.get(self, "application_name") + + @property + @pulumi.getter(name="metricPath") + def metric_path(self) -> str: + """ + Path to the metrics + """ + return pulumi.get(self, "metric_path") + + +@pulumi.output_type +class SloObjectiveCountMetricBadAzureMonitor(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dataType": + suggest = "data_type" + elif key == "kqlQuery": + suggest = "kql_query" + elif key == "metricName": + suggest = "metric_name" + elif key == "metricNamespace": + suggest = "metric_namespace" + elif key == "resourceId": + suggest = "resource_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadAzureMonitor. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadAzureMonitor.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadAzureMonitor.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + data_type: str, + aggregation: Optional[str] = None, + dimensions: Optional[Sequence['outputs.SloObjectiveCountMetricBadAzureMonitorDimension']] = None, + kql_query: Optional[str] = None, + metric_name: Optional[str] = None, + metric_namespace: Optional[str] = None, + resource_id: Optional[str] = None, + workspaces: Optional[Sequence['outputs.SloObjectiveCountMetricBadAzureMonitorWorkspace']] = None): + """ + :param str data_type: Specifies source: 'metrics' or 'logs' + :param str aggregation: Aggregation type [Required for metrics] + :param Sequence['SloObjectiveCountMetricBadAzureMonitorDimensionArgs'] dimensions: Dimensions of the metric [Optional for metrics] + :param str kql_query: Logs query in Kusto Query Language [Required for logs] + :param str metric_name: Name of the metric [Required for metrics] + :param str metric_namespace: Namespace of the metric [Optional for metrics] + :param str resource_id: Identifier of the Azure Cloud resource [Required for metrics] + :param Sequence['SloObjectiveCountMetricBadAzureMonitorWorkspaceArgs'] workspaces: Log analytics workspace [Required for logs] + """ + pulumi.set(__self__, "data_type", data_type) + if aggregation is not None: + pulumi.set(__self__, "aggregation", aggregation) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if kql_query is not None: + pulumi.set(__self__, "kql_query", kql_query) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if metric_namespace is not None: + pulumi.set(__self__, "metric_namespace", metric_namespace) + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if workspaces is not None: + pulumi.set(__self__, "workspaces", workspaces) + + @property + @pulumi.getter(name="dataType") + def data_type(self) -> str: + """ + Specifies source: 'metrics' or 'logs' + """ + return pulumi.get(self, "data_type") + + @property + @pulumi.getter + def aggregation(self) -> Optional[str]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @property + @pulumi.getter + def dimensions(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadAzureMonitorDimension']]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @property + @pulumi.getter(name="kqlQuery") + def kql_query(self) -> Optional[str]: + """ + Logs query in Kusto Query Language [Required for logs] + """ + return pulumi.get(self, "kql_query") + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[str]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @property + @pulumi.getter(name="metricNamespace") + def metric_namespace(self) -> Optional[str]: + """ + Namespace of the metric [Optional for metrics] + """ + return pulumi.get(self, "metric_namespace") + + @property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[str]: + """ + Identifier of the Azure Cloud resource [Required for metrics] + """ + return pulumi.get(self, "resource_id") + + @property + @pulumi.getter + def workspaces(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadAzureMonitorWorkspace']]: + """ + Log analytics workspace [Required for logs] + """ + return pulumi.get(self, "workspaces") + + +@pulumi.output_type +class SloObjectiveCountMetricBadAzureMonitorDimension(dict): + def __init__(__self__, *, + name: str, + value: str): + """ + :param str name: The name of the previously defined alert method. + :param str value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> str: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def value(self) -> str: + """ + Burn rate value. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class SloObjectiveCountMetricBadAzureMonitorWorkspace(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "resourceGroup": + suggest = "resource_group" + elif key == "subscriptionId": + suggest = "subscription_id" + elif key == "workspaceId": + suggest = "workspace_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadAzureMonitorWorkspace. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadAzureMonitorWorkspace.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadAzureMonitorWorkspace.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + resource_group: str, + subscription_id: str, + workspace_id: str): + """ + :param str resource_group: Resource group of the workspace + :param str subscription_id: Subscription ID of the workspace + :param str workspace_id: ID of the workspace + """ + pulumi.set(__self__, "resource_group", resource_group) + pulumi.set(__self__, "subscription_id", subscription_id) + pulumi.set(__self__, "workspace_id", workspace_id) + + @property + @pulumi.getter(name="resourceGroup") + def resource_group(self) -> str: + """ + Resource group of the workspace + """ + return pulumi.get(self, "resource_group") + + @property + @pulumi.getter(name="subscriptionId") + def subscription_id(self) -> str: + """ + Subscription ID of the workspace + """ + return pulumi.get(self, "subscription_id") + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> str: + """ + ID of the workspace + """ + return pulumi.get(self, "workspace_id") + + +@pulumi.output_type +class SloObjectiveCountMetricBadBigquery(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "projectId": + suggest = "project_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadBigquery. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadBigquery.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadBigquery.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + location: str, + project_id: str, + query: str): + """ + :param str location: Location of you BigQuery + :param str project_id: Project ID + :param str query: Query for the metrics + """ + pulumi.set(__self__, "location", location) + pulumi.set(__self__, "project_id", project_id) + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def location(self) -> str: + """ + Location of you BigQuery + """ + return pulumi.get(self, "location") + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> str: + """ + Project ID + """ + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def query(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + +@pulumi.output_type +class SloObjectiveCountMetricBadCloudwatch(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "accountId": + suggest = "account_id" + elif key == "metricName": + suggest = "metric_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadCloudwatch. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadCloudwatch.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadCloudwatch.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + region: str, + account_id: Optional[str] = None, + dimensions: Optional[Sequence['outputs.SloObjectiveCountMetricBadCloudwatchDimension']] = None, + json: Optional[str] = None, + metric_name: Optional[str] = None, + namespace: Optional[str] = None, + sql: Optional[str] = None, + stat: Optional[str] = None): + """ + :param str region: Region of the CloudWatch instance + :param str account_id: AccountID used with cross-account observability feature + :param Sequence['SloObjectiveCountMetricBadCloudwatchDimensionArgs'] dimensions: Dimensions of the metric [Optional for metrics] + :param str json: JSON query + :param str metric_name: Name of the metric [Required for metrics] + :param str namespace: Namespace of the metric + :param str sql: SQL query + :param str stat: Metric data aggregations + """ + pulumi.set(__self__, "region", region) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if json is not None: + pulumi.set(__self__, "json", json) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if namespace is not None: + pulumi.set(__self__, "namespace", namespace) + if sql is not None: + pulumi.set(__self__, "sql", sql) + if stat is not None: + pulumi.set(__self__, "stat", stat) + + @property + @pulumi.getter + def region(self) -> str: + """ + Region of the CloudWatch instance + """ + return pulumi.get(self, "region") + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[str]: + """ + AccountID used with cross-account observability feature + """ + return pulumi.get(self, "account_id") + + @property + @pulumi.getter + def dimensions(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadCloudwatchDimension']]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @property + @pulumi.getter + def json(self) -> Optional[str]: + """ + JSON query + """ + return pulumi.get(self, "json") + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[str]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @property + @pulumi.getter + def namespace(self) -> Optional[str]: + """ + Namespace of the metric + """ + return pulumi.get(self, "namespace") + + @property + @pulumi.getter + def sql(self) -> Optional[str]: + """ + SQL query + """ + return pulumi.get(self, "sql") + + @property + @pulumi.getter + def stat(self) -> Optional[str]: + """ + Metric data aggregations + """ + return pulumi.get(self, "stat") + + +@pulumi.output_type +class SloObjectiveCountMetricBadCloudwatchDimension(dict): + def __init__(__self__, *, + name: str, + value: str): + """ + :param str name: The name of the previously defined alert method. + :param str value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> str: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def value(self) -> str: + """ + Burn rate value. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class SloObjectiveCountMetricBadDatadog(dict): + def __init__(__self__, *, + query: str): + """ + :param str query: Query for the metrics + """ + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def query(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + +@pulumi.output_type +class SloObjectiveCountMetricBadDynatrace(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "metricSelector": + suggest = "metric_selector" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadDynatrace. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadDynatrace.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadDynatrace.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + metric_selector: str): + """ + :param str metric_selector: Selector for the metrics + """ + pulumi.set(__self__, "metric_selector", metric_selector) + + @property + @pulumi.getter(name="metricSelector") + def metric_selector(self) -> str: + """ + Selector for the metrics + """ + return pulumi.get(self, "metric_selector") + + +@pulumi.output_type +class SloObjectiveCountMetricBadElasticsearch(dict): + def __init__(__self__, *, + index: str, + query: str): + """ + :param str index: Index of metrics we want to query + :param str query: Query for the metrics + """ + pulumi.set(__self__, "index", index) + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def index(self) -> str: + """ + Index of metrics we want to query + """ + return pulumi.get(self, "index") + + @property + @pulumi.getter + def query(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + +@pulumi.output_type +class SloObjectiveCountMetricBadGcm(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "projectId": + suggest = "project_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadGcm. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadGcm.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadGcm.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + project_id: str, + query: str): + """ + :param str project_id: Project ID + :param str query: Query for the metrics + """ + pulumi.set(__self__, "project_id", project_id) + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter(name="projectId") + def project_id(self) -> str: + """ + Project ID + """ + return pulumi.get(self, "project_id") + + @property + @pulumi.getter + def query(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + +@pulumi.output_type +class SloObjectiveCountMetricBadGrafanaLoki(dict): + def __init__(__self__, *, + logql: str): + """ + :param str logql: Query for the logs + """ + pulumi.set(__self__, "logql", logql) + + @property + @pulumi.getter + def logql(self) -> str: + """ + Query for the logs + """ + return pulumi.get(self, "logql") + + +@pulumi.output_type +class SloObjectiveCountMetricBadGraphite(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "metricPath": + suggest = "metric_path" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadGraphite. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadGraphite.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadGraphite.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + metric_path: str): + """ + :param str metric_path: Path to the metrics + """ + pulumi.set(__self__, "metric_path", metric_path) + + @property + @pulumi.getter(name="metricPath") + def metric_path(self) -> str: + """ + Path to the metrics + """ + return pulumi.get(self, "metric_path") + + +@pulumi.output_type +class SloObjectiveCountMetricBadHoneycomb(dict): + def __init__(__self__, *, + calculation: str, + attribute: Optional[str] = None): + """ + :param str calculation: Calculation type + :param str attribute: Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + pulumi.set(__self__, "calculation", calculation) + if attribute is not None: + pulumi.set(__self__, "attribute", attribute) + + @property + @pulumi.getter + def calculation(self) -> str: + """ + Calculation type + """ + return pulumi.get(self, "calculation") + + @property + @pulumi.getter + def attribute(self) -> Optional[str]: + """ + Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + return pulumi.get(self, "attribute") + + +@pulumi.output_type +class SloObjectiveCountMetricBadInfluxdb(dict): + def __init__(__self__, *, + query: str): + """ + :param str query: Query for the metrics + """ + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def query(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + +@pulumi.output_type +class SloObjectiveCountMetricBadInstana(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "metricType": + suggest = "metric_type" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadInstana. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadInstana.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadInstana.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + metric_type: str, + applications: Optional[Sequence['outputs.SloObjectiveCountMetricBadInstanaApplication']] = None, + infrastructures: Optional[Sequence['outputs.SloObjectiveCountMetricBadInstanaInfrastructure']] = None): + """ + :param str metric_type: Instana metric type 'application' or 'infrastructure' + :param Sequence['SloObjectiveCountMetricBadInstanaApplicationArgs'] applications: Infrastructure metric type + :param Sequence['SloObjectiveCountMetricBadInstanaInfrastructureArgs'] infrastructures: Infrastructure metric type + """ + pulumi.set(__self__, "metric_type", metric_type) + if applications is not None: + pulumi.set(__self__, "applications", applications) + if infrastructures is not None: + pulumi.set(__self__, "infrastructures", infrastructures) + + @property + @pulumi.getter(name="metricType") + def metric_type(self) -> str: + """ + Instana metric type 'application' or 'infrastructure' + """ + return pulumi.get(self, "metric_type") + + @property + @pulumi.getter + def applications(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadInstanaApplication']]: + """ + Infrastructure metric type + """ + return pulumi.get(self, "applications") + + @property + @pulumi.getter + def infrastructures(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricBadInstanaInfrastructure']]: + """ + Infrastructure metric type + """ + return pulumi.get(self, "infrastructures") + + +@pulumi.output_type +class SloObjectiveCountMetricBadInstanaApplication(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "apiQuery": + suggest = "api_query" + elif key == "groupBies": + suggest = "group_bies" + elif key == "metricId": + suggest = "metric_id" + elif key == "includeInternal": + suggest = "include_internal" + elif key == "includeSynthetic": + suggest = "include_synthetic" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadInstanaApplication. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadInstanaApplication.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadInstanaApplication.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + aggregation: str, + api_query: str, + group_bies: Sequence['outputs.SloObjectiveCountMetricBadInstanaApplicationGroupBy'], + metric_id: str, + include_internal: Optional[bool] = None, + include_synthetic: Optional[bool] = None): + """ + :param str aggregation: Aggregation type [Required for metrics] + :param str api_query: API query user passes in a JSON format + :param Sequence['SloObjectiveCountMetricBadInstanaApplicationGroupByArgs'] group_bies: Group by method + :param str metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param bool include_internal: Include internal + :param bool include_synthetic: Include synthetic + """ + pulumi.set(__self__, "aggregation", aggregation) + pulumi.set(__self__, "api_query", api_query) + pulumi.set(__self__, "group_bies", group_bies) + pulumi.set(__self__, "metric_id", metric_id) + if include_internal is not None: + pulumi.set(__self__, "include_internal", include_internal) + if include_synthetic is not None: + pulumi.set(__self__, "include_synthetic", include_synthetic) + + @property + @pulumi.getter + def aggregation(self) -> str: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @property + @pulumi.getter(name="apiQuery") + def api_query(self) -> str: + """ + API query user passes in a JSON format + """ + return pulumi.get(self, "api_query") + + @property + @pulumi.getter(name="groupBies") + def group_bies(self) -> Sequence['outputs.SloObjectiveCountMetricBadInstanaApplicationGroupBy']: + """ + Group by method + """ + return pulumi.get(self, "group_bies") + + @property + @pulumi.getter(name="metricId") + def metric_id(self) -> str: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ + return pulumi.get(self, "metric_id") + + @property + @pulumi.getter(name="includeInternal") + def include_internal(self) -> Optional[bool]: + """ + Include internal + """ + return pulumi.get(self, "include_internal") + + @property + @pulumi.getter(name="includeSynthetic") + def include_synthetic(self) -> Optional[bool]: + """ + Include synthetic + """ + return pulumi.get(self, "include_synthetic") + + +@pulumi.output_type +class SloObjectiveCountMetricBadInstanaApplicationGroupBy(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "tagEntity": + suggest = "tag_entity" + elif key == "tagSecondLevelKey": + suggest = "tag_second_level_key" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadInstanaApplicationGroupBy. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadInstanaApplicationGroupBy.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadInstanaApplicationGroupBy.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + tag: str, + tag_entity: str, + tag_second_level_key: Optional[str] = None): + """ + :param str tag: Group by tag + :param str tag_entity: Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ + pulumi.set(__self__, "tag", tag) + pulumi.set(__self__, "tag_entity", tag_entity) + if tag_second_level_key is not None: + pulumi.set(__self__, "tag_second_level_key", tag_second_level_key) + + @property + @pulumi.getter + def tag(self) -> str: + """ + Group by tag + """ + return pulumi.get(self, "tag") + + @property + @pulumi.getter(name="tagEntity") + def tag_entity(self) -> str: + """ + Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ + return pulumi.get(self, "tag_entity") + + @property + @pulumi.getter(name="tagSecondLevelKey") + def tag_second_level_key(self) -> Optional[str]: + return pulumi.get(self, "tag_second_level_key") + + +@pulumi.output_type +class SloObjectiveCountMetricBadInstanaInfrastructure(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "metricId": + suggest = "metric_id" + elif key == "metricRetrievalMethod": + suggest = "metric_retrieval_method" + elif key == "pluginId": + suggest = "plugin_id" + elif key == "snapshotId": + suggest = "snapshot_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadInstanaInfrastructure. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadInstanaInfrastructure.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadInstanaInfrastructure.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + metric_id: str, + metric_retrieval_method: str, + plugin_id: str, + query: Optional[str] = None, + snapshot_id: Optional[str] = None): + """ + :param str metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param str metric_retrieval_method: Metric retrieval method 'query' or 'snapshot' + :param str plugin_id: Plugin ID + :param str query: Query for the metrics + :param str snapshot_id: Snapshot ID + """ + pulumi.set(__self__, "metric_id", metric_id) + pulumi.set(__self__, "metric_retrieval_method", metric_retrieval_method) + pulumi.set(__self__, "plugin_id", plugin_id) + if query is not None: + pulumi.set(__self__, "query", query) + if snapshot_id is not None: + pulumi.set(__self__, "snapshot_id", snapshot_id) + + @property + @pulumi.getter(name="metricId") + def metric_id(self) -> str: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ + return pulumi.get(self, "metric_id") + + @property + @pulumi.getter(name="metricRetrievalMethod") + def metric_retrieval_method(self) -> str: + """ + Metric retrieval method 'query' or 'snapshot' + """ + return pulumi.get(self, "metric_retrieval_method") + + @property + @pulumi.getter(name="pluginId") + def plugin_id(self) -> str: + """ + Plugin ID + """ + return pulumi.get(self, "plugin_id") + + @property + @pulumi.getter + def query(self) -> Optional[str]: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @property + @pulumi.getter(name="snapshotId") + def snapshot_id(self) -> Optional[str]: + """ + Snapshot ID + """ + return pulumi.get(self, "snapshot_id") + + +@pulumi.output_type +class SloObjectiveCountMetricBadLightstep(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "typeOfData": + suggest = "type_of_data" + elif key == "streamId": + suggest = "stream_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadLightstep. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadLightstep.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadLightstep.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + type_of_data: str, + percentile: Optional[float] = None, + stream_id: Optional[str] = None, + uql: Optional[str] = None): + """ + :param str type_of_data: Type of data to filter by + :param float percentile: Optional value to filter by percentiles + :param str stream_id: ID of the metrics stream + :param str uql: UQL query + """ + pulumi.set(__self__, "type_of_data", type_of_data) + if percentile is not None: + pulumi.set(__self__, "percentile", percentile) + if stream_id is not None: + pulumi.set(__self__, "stream_id", stream_id) + if uql is not None: + pulumi.set(__self__, "uql", uql) + + @property + @pulumi.getter(name="typeOfData") + def type_of_data(self) -> str: + """ + Type of data to filter by + """ + return pulumi.get(self, "type_of_data") + + @property + @pulumi.getter + def percentile(self) -> Optional[float]: + """ + Optional value to filter by percentiles + """ + return pulumi.get(self, "percentile") + + @property + @pulumi.getter(name="streamId") + def stream_id(self) -> Optional[str]: + """ + ID of the metrics stream + """ + return pulumi.get(self, "stream_id") + + @property + @pulumi.getter + def uql(self) -> Optional[str]: + """ + UQL query + """ + return pulumi.get(self, "uql") + + +@pulumi.output_type +class SloObjectiveCountMetricBadNewrelic(dict): + def __init__(__self__, *, + nrql: str): + """ + :param str nrql: Query for the metrics + """ + pulumi.set(__self__, "nrql", nrql) + + @property + @pulumi.getter + def nrql(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "nrql") + + +@pulumi.output_type +class SloObjectiveCountMetricBadOpentsdb(dict): + def __init__(__self__, *, + query: str): + """ + :param str query: Query for the metrics + """ + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def query(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + +@pulumi.output_type +class SloObjectiveCountMetricBadPingdom(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "checkId": + suggest = "check_id" + elif key == "checkType": + suggest = "check_type" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadPingdom. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadPingdom.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadPingdom.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + check_id: str, + check_type: Optional[str] = None, + status: Optional[str] = None): + """ + :param str check_id: Pingdom uptime or transaction check's ID + :param str check_type: Pingdom check type - uptime or transaction + :param str status: Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ + pulumi.set(__self__, "check_id", check_id) + if check_type is not None: + pulumi.set(__self__, "check_type", check_type) + if status is not None: + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter(name="checkId") + def check_id(self) -> str: + """ + Pingdom uptime or transaction check's ID + """ + return pulumi.get(self, "check_id") + + @property + @pulumi.getter(name="checkType") + def check_type(self) -> Optional[str]: + """ + Pingdom check type - uptime or transaction + """ + return pulumi.get(self, "check_type") + + @property + @pulumi.getter + def status(self) -> Optional[str]: + """ + Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ + return pulumi.get(self, "status") + + +@pulumi.output_type +class SloObjectiveCountMetricBadPrometheus(dict): + def __init__(__self__, *, + promql: str): + """ + :param str promql: Query for the metrics + """ + pulumi.set(__self__, "promql", promql) + + @property + @pulumi.getter + def promql(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "promql") + + +@pulumi.output_type +class SloObjectiveCountMetricBadRedshift(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "clusterId": + suggest = "cluster_id" + elif key == "databaseName": + suggest = "database_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadRedshift. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadRedshift.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadRedshift.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + cluster_id: str, + database_name: str, + query: str, + region: str): + """ + :param str cluster_id: Redshift custer ID + :param str database_name: Database name + :param str query: Query for the metrics + :param str region: Region of the CloudWatch instance + """ + pulumi.set(__self__, "cluster_id", cluster_id) + pulumi.set(__self__, "database_name", database_name) + pulumi.set(__self__, "query", query) + pulumi.set(__self__, "region", region) + + @property + @pulumi.getter(name="clusterId") + def cluster_id(self) -> str: + """ + Redshift custer ID + """ + return pulumi.get(self, "cluster_id") + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> str: + """ + Database name + """ + return pulumi.get(self, "database_name") + + @property + @pulumi.getter + def query(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + @property + @pulumi.getter + def region(self) -> str: + """ + Region of the CloudWatch instance + """ + return pulumi.get(self, "region") + + +@pulumi.output_type +class SloObjectiveCountMetricBadSplunk(dict): + def __init__(__self__, *, + query: str): + """ + :param str query: Query for the metrics + """ + pulumi.set(__self__, "query", query) + + @property + @pulumi.getter + def query(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "query") + + +@pulumi.output_type +class SloObjectiveCountMetricBadSplunkObservability(dict): + def __init__(__self__, *, + program: str): + """ + :param str program: Query for the metrics + """ + pulumi.set(__self__, "program", program) + + @property + @pulumi.getter + def program(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "program") + + +@pulumi.output_type +class SloObjectiveCountMetricBadSumologic(dict): + def __init__(__self__, *, + query: str, + type: str, + quantization: Optional[str] = None, + rollup: Optional[str] = None): + """ + :param str query: Query for the metrics + :param str type: Sumologic source - metrics or logs + :param str quantization: Period of data aggregation + :param str rollup: Aggregation function - avg, sum, min, max, count, none + """ + pulumi.set(__self__, "query", query) + pulumi.set(__self__, "type", type) + if quantization is not None: + pulumi.set(__self__, "quantization", quantization) + if rollup is not None: + pulumi.set(__self__, "rollup", rollup) @property @pulumi.getter - def name(self) -> Optional[str]: + def query(self) -> str: """ - Objective's name. This field is computed if not provided. + Query for the metrics """ - return pulumi.get(self, "name") + return pulumi.get(self, "query") @property @pulumi.getter - def op(self) -> Optional[str]: + def type(self) -> str: """ - Type of logical operation + Sumologic source - metrics or logs """ - return pulumi.get(self, "op") + return pulumi.get(self, "type") @property - @pulumi.getter(name="rawMetrics") - def raw_metrics(self) -> Optional[Sequence['outputs.SloObjectiveRawMetric']]: + @pulumi.getter + def quantization(self) -> Optional[str]: """ - Raw data is used to compare objective values. + Period of data aggregation """ - return pulumi.get(self, "raw_metrics") + return pulumi.get(self, "quantization") @property - @pulumi.getter(name="timeSliceTarget") - def time_slice_target(self) -> Optional[float]: + @pulumi.getter + def rollup(self) -> Optional[str]: """ - Designated value for slice + Aggregation function - avg, sum, min, max, count, none """ - return pulumi.get(self, "time_slice_target") + return pulumi.get(self, "rollup") @pulumi.output_type -class SloObjectiveCountMetric(dict): - def __init__(__self__, *, - incremental: bool, - goods: Optional[Sequence['outputs.SloObjectiveCountMetricGood']] = None, - totals: Optional[Sequence['outputs.SloObjectiveCountMetricTotal']] = None): - pulumi.set(__self__, "incremental", incremental) - if goods is not None: - pulumi.set(__self__, "goods", goods) - if totals is not None: - pulumi.set(__self__, "totals", totals) +class SloObjectiveCountMetricBadThousandeye(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "testId": + suggest = "test_id" - @property - @pulumi.getter - def incremental(self) -> bool: - return pulumi.get(self, "incremental") + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricBadThousandeye. Access the value via the '{suggest}' property getter instead.") - @property - @pulumi.getter - def goods(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGood']]: - return pulumi.get(self, "goods") + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricBadThousandeye.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricBadThousandeye.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + test_id: int): + """ + :param int test_id: ID of the test + """ + pulumi.set(__self__, "test_id", test_id) @property - @pulumi.getter - def totals(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotal']]: - return pulumi.get(self, "totals") + @pulumi.getter(name="testId") + def test_id(self) -> int: + """ + ID of the test + """ + return pulumi.get(self, "test_id") @pulumi.output_type @@ -2040,6 +4646,8 @@ def __key_warning(key: str): suggest = None if key == "amazonPrometheuses": suggest = "amazon_prometheuses" + elif key == "azureMonitors": + suggest = "azure_monitors" elif key == "grafanaLokis": suggest = "grafana_lokis" elif key == "splunkObservabilities": @@ -2059,6 +4667,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, amazon_prometheuses: Optional[Sequence['outputs.SloObjectiveCountMetricGoodAmazonPrometheus']] = None, appdynamics: Optional[Sequence['outputs.SloObjectiveCountMetricGoodAppdynamic']] = None, + azure_monitors: Optional[Sequence['outputs.SloObjectiveCountMetricGoodAzureMonitor']] = None, bigqueries: Optional[Sequence['outputs.SloObjectiveCountMetricGoodBigquery']] = None, cloudwatches: Optional[Sequence['outputs.SloObjectiveCountMetricGoodCloudwatch']] = None, datadogs: Optional[Sequence['outputs.SloObjectiveCountMetricGoodDatadog']] = None, @@ -2067,6 +4676,7 @@ def __init__(__self__, *, gcms: Optional[Sequence['outputs.SloObjectiveCountMetricGoodGcm']] = None, grafana_lokis: Optional[Sequence['outputs.SloObjectiveCountMetricGoodGrafanaLoki']] = None, graphites: Optional[Sequence['outputs.SloObjectiveCountMetricGoodGraphite']] = None, + honeycombs: Optional[Sequence['outputs.SloObjectiveCountMetricGoodHoneycomb']] = None, influxdbs: Optional[Sequence['outputs.SloObjectiveCountMetricGoodInfluxdb']] = None, instanas: Optional[Sequence['outputs.SloObjectiveCountMetricGoodInstana']] = None, lightsteps: Optional[Sequence['outputs.SloObjectiveCountMetricGoodLightstep']] = None, @@ -2079,10 +4689,38 @@ def __init__(__self__, *, splunks: Optional[Sequence['outputs.SloObjectiveCountMetricGoodSplunk']] = None, sumologics: Optional[Sequence['outputs.SloObjectiveCountMetricGoodSumologic']] = None, thousandeyes: Optional[Sequence['outputs.SloObjectiveCountMetricGoodThousandeye']] = None): + """ + :param Sequence['SloObjectiveCountMetricGoodAmazonPrometheusArgs'] amazon_prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + :param Sequence['SloObjectiveCountMetricGoodAppdynamicArgs'] appdynamics: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + :param Sequence['SloObjectiveCountMetricGoodAzureMonitorArgs'] azure_monitors: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + :param Sequence['SloObjectiveCountMetricGoodBigqueryArgs'] bigqueries: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + :param Sequence['SloObjectiveCountMetricGoodCloudwatchArgs'] cloudwatches: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + :param Sequence['SloObjectiveCountMetricGoodDatadogArgs'] datadogs: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + :param Sequence['SloObjectiveCountMetricGoodDynatraceArgs'] dynatraces: [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + :param Sequence['SloObjectiveCountMetricGoodElasticsearchArgs'] elasticsearches: [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + :param Sequence['SloObjectiveCountMetricGoodGcmArgs'] gcms: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + :param Sequence['SloObjectiveCountMetricGoodGrafanaLokiArgs'] grafana_lokis: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + :param Sequence['SloObjectiveCountMetricGoodGraphiteArgs'] graphites: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + :param Sequence['SloObjectiveCountMetricGoodHoneycombArgs'] honeycombs: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + :param Sequence['SloObjectiveCountMetricGoodInfluxdbArgs'] influxdbs: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + :param Sequence['SloObjectiveCountMetricGoodInstanaArgs'] instanas: [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + :param Sequence['SloObjectiveCountMetricGoodLightstepArgs'] lightsteps: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + :param Sequence['SloObjectiveCountMetricGoodNewrelicArgs'] newrelics: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + :param Sequence['SloObjectiveCountMetricGoodOpentsdbArgs'] opentsdbs: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + :param Sequence['SloObjectiveCountMetricGoodPingdomArgs'] pingdoms: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + :param Sequence['SloObjectiveCountMetricGoodPrometheusArgs'] prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + :param Sequence['SloObjectiveCountMetricGoodRedshiftArgs'] redshifts: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + :param Sequence['SloObjectiveCountMetricGoodSplunkObservabilityArgs'] splunk_observabilities: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + :param Sequence['SloObjectiveCountMetricGoodSplunkArgs'] splunks: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + :param Sequence['SloObjectiveCountMetricGoodSumologicArgs'] sumologics: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + :param Sequence['SloObjectiveCountMetricGoodThousandeyeArgs'] thousandeyes: [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ if amazon_prometheuses is not None: pulumi.set(__self__, "amazon_prometheuses", amazon_prometheuses) if appdynamics is not None: pulumi.set(__self__, "appdynamics", appdynamics) + if azure_monitors is not None: + pulumi.set(__self__, "azure_monitors", azure_monitors) if bigqueries is not None: pulumi.set(__self__, "bigqueries", bigqueries) if cloudwatches is not None: @@ -2099,6 +4737,8 @@ def __init__(__self__, *, pulumi.set(__self__, "grafana_lokis", grafana_lokis) if graphites is not None: pulumi.set(__self__, "graphites", graphites) + if honeycombs is not None: + pulumi.set(__self__, "honeycombs", honeycombs) if influxdbs is not None: pulumi.set(__self__, "influxdbs", influxdbs) if instanas is not None: @@ -2127,111 +4767,193 @@ def __init__(__self__, *, @property @pulumi.getter(name="amazonPrometheuses") def amazon_prometheuses(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodAmazonPrometheus']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + """ return pulumi.get(self, "amazon_prometheuses") @property @pulumi.getter def appdynamics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodAppdynamic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + """ return pulumi.get(self, "appdynamics") + @property + @pulumi.getter(name="azureMonitors") + def azure_monitors(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodAzureMonitor']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + """ + return pulumi.get(self, "azure_monitors") + @property @pulumi.getter def bigqueries(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodBigquery']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + """ return pulumi.get(self, "bigqueries") @property @pulumi.getter def cloudwatches(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodCloudwatch']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + """ return pulumi.get(self, "cloudwatches") @property @pulumi.getter def datadogs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodDatadog']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + """ return pulumi.get(self, "datadogs") @property @pulumi.getter def dynatraces(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodDynatrace']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + """ return pulumi.get(self, "dynatraces") @property @pulumi.getter def elasticsearches(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodElasticsearch']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + """ return pulumi.get(self, "elasticsearches") @property @pulumi.getter def gcms(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodGcm']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + """ return pulumi.get(self, "gcms") @property @pulumi.getter(name="grafanaLokis") def grafana_lokis(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodGrafanaLoki']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + """ return pulumi.get(self, "grafana_lokis") @property @pulumi.getter def graphites(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodGraphite']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + """ return pulumi.get(self, "graphites") + @property + @pulumi.getter + def honeycombs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodHoneycomb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + """ + return pulumi.get(self, "honeycombs") + @property @pulumi.getter def influxdbs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodInfluxdb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + """ return pulumi.get(self, "influxdbs") @property @pulumi.getter def instanas(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodInstana']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + """ return pulumi.get(self, "instanas") @property @pulumi.getter def lightsteps(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodLightstep']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + """ return pulumi.get(self, "lightsteps") @property @pulumi.getter def newrelics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodNewrelic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + """ return pulumi.get(self, "newrelics") @property @pulumi.getter def opentsdbs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodOpentsdb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + """ return pulumi.get(self, "opentsdbs") @property @pulumi.getter def pingdoms(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodPingdom']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + """ return pulumi.get(self, "pingdoms") @property @pulumi.getter def prometheuses(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodPrometheus']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + """ return pulumi.get(self, "prometheuses") @property @pulumi.getter def redshifts(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodRedshift']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + """ return pulumi.get(self, "redshifts") @property @pulumi.getter(name="splunkObservabilities") def splunk_observabilities(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodSplunkObservability']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + """ return pulumi.get(self, "splunk_observabilities") @property @pulumi.getter def splunks(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodSplunk']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + """ return pulumi.get(self, "splunks") @property @pulumi.getter def sumologics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodSumologic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + """ return pulumi.get(self, "sumologics") @property @pulumi.getter def thousandeyes(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodThousandeye']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ return pulumi.get(self, "thousandeyes") @@ -2239,50 +4961,283 @@ def thousandeyes(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGood class SloObjectiveCountMetricGoodAmazonPrometheus(dict): def __init__(__self__, *, promql: str): + """ + :param str promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter - def promql(self) -> str: - return pulumi.get(self, "promql") + def promql(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "promql") + + +@pulumi.output_type +class SloObjectiveCountMetricGoodAppdynamic(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "applicationName": + suggest = "application_name" + elif key == "metricPath": + suggest = "metric_path" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricGoodAppdynamic. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricGoodAppdynamic.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricGoodAppdynamic.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + application_name: str, + metric_path: str): + """ + :param str application_name: Name of the added application + :param str metric_path: Path to the metrics + """ + pulumi.set(__self__, "application_name", application_name) + pulumi.set(__self__, "metric_path", metric_path) + + @property + @pulumi.getter(name="applicationName") + def application_name(self) -> str: + """ + Name of the added application + """ + return pulumi.get(self, "application_name") + + @property + @pulumi.getter(name="metricPath") + def metric_path(self) -> str: + """ + Path to the metrics + """ + return pulumi.get(self, "metric_path") + + +@pulumi.output_type +class SloObjectiveCountMetricGoodAzureMonitor(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dataType": + suggest = "data_type" + elif key == "kqlQuery": + suggest = "kql_query" + elif key == "metricName": + suggest = "metric_name" + elif key == "metricNamespace": + suggest = "metric_namespace" + elif key == "resourceId": + suggest = "resource_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricGoodAzureMonitor. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricGoodAzureMonitor.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricGoodAzureMonitor.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + data_type: str, + aggregation: Optional[str] = None, + dimensions: Optional[Sequence['outputs.SloObjectiveCountMetricGoodAzureMonitorDimension']] = None, + kql_query: Optional[str] = None, + metric_name: Optional[str] = None, + metric_namespace: Optional[str] = None, + resource_id: Optional[str] = None, + workspaces: Optional[Sequence['outputs.SloObjectiveCountMetricGoodAzureMonitorWorkspace']] = None): + """ + :param str data_type: Specifies source: 'metrics' or 'logs' + :param str aggregation: Aggregation type [Required for metrics] + :param Sequence['SloObjectiveCountMetricGoodAzureMonitorDimensionArgs'] dimensions: Dimensions of the metric [Optional for metrics] + :param str kql_query: Logs query in Kusto Query Language [Required for logs] + :param str metric_name: Name of the metric [Required for metrics] + :param str metric_namespace: Namespace of the metric [Optional for metrics] + :param str resource_id: Identifier of the Azure Cloud resource [Required for metrics] + :param Sequence['SloObjectiveCountMetricGoodAzureMonitorWorkspaceArgs'] workspaces: Log analytics workspace [Required for logs] + """ + pulumi.set(__self__, "data_type", data_type) + if aggregation is not None: + pulumi.set(__self__, "aggregation", aggregation) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if kql_query is not None: + pulumi.set(__self__, "kql_query", kql_query) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if metric_namespace is not None: + pulumi.set(__self__, "metric_namespace", metric_namespace) + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if workspaces is not None: + pulumi.set(__self__, "workspaces", workspaces) + + @property + @pulumi.getter(name="dataType") + def data_type(self) -> str: + """ + Specifies source: 'metrics' or 'logs' + """ + return pulumi.get(self, "data_type") + + @property + @pulumi.getter + def aggregation(self) -> Optional[str]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @property + @pulumi.getter + def dimensions(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodAzureMonitorDimension']]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @property + @pulumi.getter(name="kqlQuery") + def kql_query(self) -> Optional[str]: + """ + Logs query in Kusto Query Language [Required for logs] + """ + return pulumi.get(self, "kql_query") + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[str]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @property + @pulumi.getter(name="metricNamespace") + def metric_namespace(self) -> Optional[str]: + """ + Namespace of the metric [Optional for metrics] + """ + return pulumi.get(self, "metric_namespace") + + @property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[str]: + """ + Identifier of the Azure Cloud resource [Required for metrics] + """ + return pulumi.get(self, "resource_id") + + @property + @pulumi.getter + def workspaces(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodAzureMonitorWorkspace']]: + """ + Log analytics workspace [Required for logs] + """ + return pulumi.get(self, "workspaces") + + +@pulumi.output_type +class SloObjectiveCountMetricGoodAzureMonitorDimension(dict): + def __init__(__self__, *, + name: str, + value: str): + """ + :param str name: The name of the previously defined alert method. + :param str value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> str: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def value(self) -> str: + """ + Burn rate value. + """ + return pulumi.get(self, "value") @pulumi.output_type -class SloObjectiveCountMetricGoodAppdynamic(dict): +class SloObjectiveCountMetricGoodAzureMonitorWorkspace(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "applicationName": - suggest = "application_name" - elif key == "metricPath": - suggest = "metric_path" + if key == "resourceGroup": + suggest = "resource_group" + elif key == "subscriptionId": + suggest = "subscription_id" + elif key == "workspaceId": + suggest = "workspace_id" if suggest: - pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricGoodAppdynamic. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricGoodAzureMonitorWorkspace. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - SloObjectiveCountMetricGoodAppdynamic.__key_warning(key) + SloObjectiveCountMetricGoodAzureMonitorWorkspace.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - SloObjectiveCountMetricGoodAppdynamic.__key_warning(key) + SloObjectiveCountMetricGoodAzureMonitorWorkspace.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - application_name: str, - metric_path: str): - pulumi.set(__self__, "application_name", application_name) - pulumi.set(__self__, "metric_path", metric_path) + resource_group: str, + subscription_id: str, + workspace_id: str): + """ + :param str resource_group: Resource group of the workspace + :param str subscription_id: Subscription ID of the workspace + :param str workspace_id: ID of the workspace + """ + pulumi.set(__self__, "resource_group", resource_group) + pulumi.set(__self__, "subscription_id", subscription_id) + pulumi.set(__self__, "workspace_id", workspace_id) @property - @pulumi.getter(name="applicationName") - def application_name(self) -> str: - return pulumi.get(self, "application_name") + @pulumi.getter(name="resourceGroup") + def resource_group(self) -> str: + """ + Resource group of the workspace + """ + return pulumi.get(self, "resource_group") @property - @pulumi.getter(name="metricPath") - def metric_path(self) -> str: - return pulumi.get(self, "metric_path") + @pulumi.getter(name="subscriptionId") + def subscription_id(self) -> str: + """ + Subscription ID of the workspace + """ + return pulumi.get(self, "subscription_id") + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> str: + """ + ID of the workspace + """ + return pulumi.get(self, "workspace_id") @pulumi.output_type @@ -2308,6 +5263,11 @@ def __init__(__self__, *, location: str, project_id: str, query: str): + """ + :param str location: Location of you BigQuery + :param str project_id: Project ID + :param str query: Query for the metrics + """ pulumi.set(__self__, "location", location) pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @@ -2315,16 +5275,25 @@ def __init__(__self__, *, @property @pulumi.getter def location(self) -> str: + """ + Location of you BigQuery + """ return pulumi.get(self, "location") @property @pulumi.getter(name="projectId") def project_id(self) -> str: + """ + Project ID + """ return pulumi.get(self, "project_id") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -2333,7 +5302,9 @@ class SloObjectiveCountMetricGoodCloudwatch(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "metricName": + if key == "accountId": + suggest = "account_id" + elif key == "metricName": suggest = "metric_name" if suggest: @@ -2349,13 +5320,26 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, region: str, + account_id: Optional[str] = None, dimensions: Optional[Sequence['outputs.SloObjectiveCountMetricGoodCloudwatchDimension']] = None, json: Optional[str] = None, metric_name: Optional[str] = None, namespace: Optional[str] = None, sql: Optional[str] = None, stat: Optional[str] = None): + """ + :param str region: Region of the CloudWatch instance + :param str account_id: AccountID used with cross-account observability feature + :param Sequence['SloObjectiveCountMetricGoodCloudwatchDimensionArgs'] dimensions: Dimensions of the metric [Optional for metrics] + :param str json: JSON query + :param str metric_name: Name of the metric [Required for metrics] + :param str namespace: Namespace of the metric + :param str sql: SQL query + :param str stat: Metric data aggregations + """ pulumi.set(__self__, "region", region) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) if dimensions is not None: pulumi.set(__self__, "dimensions", dimensions) if json is not None: @@ -2372,36 +5356,65 @@ def __init__(__self__, *, @property @pulumi.getter def region(self) -> str: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[str]: + """ + AccountID used with cross-account observability feature + """ + return pulumi.get(self, "account_id") + @property @pulumi.getter def dimensions(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodCloudwatchDimension']]: + """ + Dimensions of the metric [Optional for metrics] + """ return pulumi.get(self, "dimensions") @property @pulumi.getter def json(self) -> Optional[str]: + """ + JSON query + """ return pulumi.get(self, "json") @property @pulumi.getter(name="metricName") def metric_name(self) -> Optional[str]: + """ + Name of the metric [Required for metrics] + """ return pulumi.get(self, "metric_name") @property @pulumi.getter def namespace(self) -> Optional[str]: + """ + Namespace of the metric + """ return pulumi.get(self, "namespace") @property @pulumi.getter def sql(self) -> Optional[str]: + """ + SQL query + """ return pulumi.get(self, "sql") @property @pulumi.getter def stat(self) -> Optional[str]: + """ + Metric data aggregations + """ return pulumi.get(self, "stat") @@ -2411,7 +5424,8 @@ def __init__(__self__, *, name: str, value: str): """ - :param str name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param str name: The name of the previously defined alert method. + :param str value: Burn rate value. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -2420,13 +5434,16 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @property @pulumi.getter def value(self) -> str: + """ + Burn rate value. + """ return pulumi.get(self, "value") @@ -2434,11 +5451,17 @@ def value(self) -> str: class SloObjectiveCountMetricGoodDatadog(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -2463,11 +5486,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, metric_selector: str): + """ + :param str metric_selector: Selector for the metrics + """ pulumi.set(__self__, "metric_selector", metric_selector) @property @pulumi.getter(name="metricSelector") def metric_selector(self) -> str: + """ + Selector for the metrics + """ return pulumi.get(self, "metric_selector") @@ -2476,17 +5505,27 @@ class SloObjectiveCountMetricGoodElasticsearch(dict): def __init__(__self__, *, index: str, query: str): + """ + :param str index: Index of metrics we want to query + :param str query: Query for the metrics + """ pulumi.set(__self__, "index", index) pulumi.set(__self__, "query", query) @property @pulumi.getter def index(self) -> str: + """ + Index of metrics we want to query + """ return pulumi.get(self, "index") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -2512,17 +5551,27 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, project_id: str, query: str): + """ + :param str project_id: Project ID + :param str query: Query for the metrics + """ pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @property @pulumi.getter(name="projectId") def project_id(self) -> str: + """ + Project ID + """ return pulumi.get(self, "project_id") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -2530,11 +5579,17 @@ def query(self) -> str: class SloObjectiveCountMetricGoodGrafanaLoki(dict): def __init__(__self__, *, logql: str): + """ + :param str logql: Query for the logs + """ pulumi.set(__self__, "logql", logql) @property @pulumi.getter def logql(self) -> str: + """ + Query for the logs + """ return pulumi.get(self, "logql") @@ -2559,23 +5614,65 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, metric_path: str): + """ + :param str metric_path: Path to the metrics + """ pulumi.set(__self__, "metric_path", metric_path) @property @pulumi.getter(name="metricPath") def metric_path(self) -> str: + """ + Path to the metrics + """ return pulumi.get(self, "metric_path") +@pulumi.output_type +class SloObjectiveCountMetricGoodHoneycomb(dict): + def __init__(__self__, *, + calculation: str, + attribute: Optional[str] = None): + """ + :param str calculation: Calculation type + :param str attribute: Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + pulumi.set(__self__, "calculation", calculation) + if attribute is not None: + pulumi.set(__self__, "attribute", attribute) + + @property + @pulumi.getter + def calculation(self) -> str: + """ + Calculation type + """ + return pulumi.get(self, "calculation") + + @property + @pulumi.getter + def attribute(self) -> Optional[str]: + """ + Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + return pulumi.get(self, "attribute") + + @pulumi.output_type class SloObjectiveCountMetricGoodInfluxdb(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -2602,6 +5699,11 @@ def __init__(__self__, *, metric_type: str, applications: Optional[Sequence['outputs.SloObjectiveCountMetricGoodInstanaApplication']] = None, infrastructures: Optional[Sequence['outputs.SloObjectiveCountMetricGoodInstanaInfrastructure']] = None): + """ + :param str metric_type: Instana metric type 'application' or 'infrastructure' + :param Sequence['SloObjectiveCountMetricGoodInstanaApplicationArgs'] applications: Infrastructure metric type + :param Sequence['SloObjectiveCountMetricGoodInstanaInfrastructureArgs'] infrastructures: Infrastructure metric type + """ pulumi.set(__self__, "metric_type", metric_type) if applications is not None: pulumi.set(__self__, "applications", applications) @@ -2611,16 +5713,25 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricType") def metric_type(self) -> str: + """ + Instana metric type 'application' or 'infrastructure' + """ return pulumi.get(self, "metric_type") @property @pulumi.getter def applications(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodInstanaApplication']]: + """ + Infrastructure metric type + """ return pulumi.get(self, "applications") @property @pulumi.getter def infrastructures(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricGoodInstanaInfrastructure']]: + """ + Infrastructure metric type + """ return pulumi.get(self, "infrastructures") @@ -2658,6 +5769,14 @@ def __init__(__self__, *, metric_id: str, include_internal: Optional[bool] = None, include_synthetic: Optional[bool] = None): + """ + :param str aggregation: Aggregation type [Required for metrics] + :param str api_query: API query user passes in a JSON format + :param Sequence['SloObjectiveCountMetricGoodInstanaApplicationGroupByArgs'] group_bies: Group by method + :param str metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param bool include_internal: Include internal + :param bool include_synthetic: Include synthetic + """ pulumi.set(__self__, "aggregation", aggregation) pulumi.set(__self__, "api_query", api_query) pulumi.set(__self__, "group_bies", group_bies) @@ -2670,31 +5789,49 @@ def __init__(__self__, *, @property @pulumi.getter def aggregation(self) -> str: + """ + Aggregation type [Required for metrics] + """ return pulumi.get(self, "aggregation") @property @pulumi.getter(name="apiQuery") def api_query(self) -> str: + """ + API query user passes in a JSON format + """ return pulumi.get(self, "api_query") @property @pulumi.getter(name="groupBies") def group_bies(self) -> Sequence['outputs.SloObjectiveCountMetricGoodInstanaApplicationGroupBy']: + """ + Group by method + """ return pulumi.get(self, "group_bies") @property @pulumi.getter(name="metricId") def metric_id(self) -> str: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @property @pulumi.getter(name="includeInternal") def include_internal(self) -> Optional[bool]: + """ + Include internal + """ return pulumi.get(self, "include_internal") @property @pulumi.getter(name="includeSynthetic") def include_synthetic(self) -> Optional[bool]: + """ + Include synthetic + """ return pulumi.get(self, "include_synthetic") @@ -2723,6 +5860,10 @@ def __init__(__self__, *, tag: str, tag_entity: str, tag_second_level_key: Optional[str] = None): + """ + :param str tag: Group by tag + :param str tag_entity: Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ pulumi.set(__self__, "tag", tag) pulumi.set(__self__, "tag_entity", tag_entity) if tag_second_level_key is not None: @@ -2731,11 +5872,17 @@ def __init__(__self__, *, @property @pulumi.getter def tag(self) -> str: + """ + Group by tag + """ return pulumi.get(self, "tag") @property @pulumi.getter(name="tagEntity") def tag_entity(self) -> str: + """ + Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ return pulumi.get(self, "tag_entity") @property @@ -2775,6 +5922,13 @@ def __init__(__self__, *, plugin_id: str, query: Optional[str] = None, snapshot_id: Optional[str] = None): + """ + :param str metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param str metric_retrieval_method: Metric retrieval method 'query' or 'snapshot' + :param str plugin_id: Plugin ID + :param str query: Query for the metrics + :param str snapshot_id: Snapshot ID + """ pulumi.set(__self__, "metric_id", metric_id) pulumi.set(__self__, "metric_retrieval_method", metric_retrieval_method) pulumi.set(__self__, "plugin_id", plugin_id) @@ -2786,26 +5940,41 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricId") def metric_id(self) -> str: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @property @pulumi.getter(name="metricRetrievalMethod") def metric_retrieval_method(self) -> str: + """ + Metric retrieval method 'query' or 'snapshot' + """ return pulumi.get(self, "metric_retrieval_method") @property @pulumi.getter(name="pluginId") def plugin_id(self) -> str: + """ + Plugin ID + """ return pulumi.get(self, "plugin_id") @property @pulumi.getter def query(self) -> Optional[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[str]: + """ + Snapshot ID + """ return pulumi.get(self, "snapshot_id") @@ -2835,6 +6004,12 @@ def __init__(__self__, *, percentile: Optional[float] = None, stream_id: Optional[str] = None, uql: Optional[str] = None): + """ + :param str type_of_data: Type of data to filter by + :param float percentile: Optional value to filter by percentiles + :param str stream_id: ID of the metrics stream + :param str uql: UQL query + """ pulumi.set(__self__, "type_of_data", type_of_data) if percentile is not None: pulumi.set(__self__, "percentile", percentile) @@ -2846,21 +6021,33 @@ def __init__(__self__, *, @property @pulumi.getter(name="typeOfData") def type_of_data(self) -> str: + """ + Type of data to filter by + """ return pulumi.get(self, "type_of_data") @property @pulumi.getter def percentile(self) -> Optional[float]: + """ + Optional value to filter by percentiles + """ return pulumi.get(self, "percentile") @property @pulumi.getter(name="streamId") def stream_id(self) -> Optional[str]: + """ + ID of the metrics stream + """ return pulumi.get(self, "stream_id") @property @pulumi.getter def uql(self) -> Optional[str]: + """ + UQL query + """ return pulumi.get(self, "uql") @@ -2868,11 +6055,17 @@ def uql(self) -> Optional[str]: class SloObjectiveCountMetricGoodNewrelic(dict): def __init__(__self__, *, nrql: str): + """ + :param str nrql: Query for the metrics + """ pulumi.set(__self__, "nrql", nrql) @property @pulumi.getter def nrql(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "nrql") @@ -2880,11 +6073,17 @@ def nrql(self) -> str: class SloObjectiveCountMetricGoodOpentsdb(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -2913,6 +6112,11 @@ def __init__(__self__, *, check_id: str, check_type: Optional[str] = None, status: Optional[str] = None): + """ + :param str check_id: Pingdom uptime or transaction check's ID + :param str check_type: Pingdom check type - uptime or transaction + :param str status: Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ pulumi.set(__self__, "check_id", check_id) if check_type is not None: pulumi.set(__self__, "check_type", check_type) @@ -2922,16 +6126,25 @@ def __init__(__self__, *, @property @pulumi.getter(name="checkId") def check_id(self) -> str: + """ + Pingdom uptime or transaction check's ID + """ return pulumi.get(self, "check_id") @property @pulumi.getter(name="checkType") def check_type(self) -> Optional[str]: + """ + Pingdom check type - uptime or transaction + """ return pulumi.get(self, "check_type") @property @pulumi.getter def status(self) -> Optional[str]: + """ + Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ return pulumi.get(self, "status") @@ -2939,11 +6152,17 @@ def status(self) -> Optional[str]: class SloObjectiveCountMetricGoodPrometheus(dict): def __init__(__self__, *, promql: str): + """ + :param str promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter def promql(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "promql") @@ -2973,6 +6192,12 @@ def __init__(__self__, *, database_name: str, query: str, region: str): + """ + :param str cluster_id: Redshift custer ID + :param str database_name: Database name + :param str query: Query for the metrics + :param str region: Region of the CloudWatch instance + """ pulumi.set(__self__, "cluster_id", cluster_id) pulumi.set(__self__, "database_name", database_name) pulumi.set(__self__, "query", query) @@ -2981,21 +6206,33 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> str: + """ + Redshift custer ID + """ return pulumi.get(self, "cluster_id") @property @pulumi.getter(name="databaseName") def database_name(self) -> str: + """ + Database name + """ return pulumi.get(self, "database_name") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter def region(self) -> str: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @@ -3003,11 +6240,17 @@ def region(self) -> str: class SloObjectiveCountMetricGoodSplunk(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -3015,11 +6258,17 @@ def query(self) -> str: class SloObjectiveCountMetricGoodSplunkObservability(dict): def __init__(__self__, *, program: str): + """ + :param str program: Query for the metrics + """ pulumi.set(__self__, "program", program) @property @pulumi.getter def program(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "program") @@ -3030,6 +6279,12 @@ def __init__(__self__, *, type: str, quantization: Optional[str] = None, rollup: Optional[str] = None): + """ + :param str query: Query for the metrics + :param str type: Sumologic source - metrics or logs + :param str quantization: Period of data aggregation + :param str rollup: Aggregation function - avg, sum, min, max, count, none + """ pulumi.set(__self__, "query", query) pulumi.set(__self__, "type", type) if quantization is not None: @@ -3040,21 +6295,33 @@ def __init__(__self__, *, @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter def type(self) -> str: + """ + Sumologic source - metrics or logs + """ return pulumi.get(self, "type") @property @pulumi.getter def quantization(self) -> Optional[str]: + """ + Period of data aggregation + """ return pulumi.get(self, "quantization") @property @pulumi.getter def rollup(self) -> Optional[str]: + """ + Aggregation function - avg, sum, min, max, count, none + """ return pulumi.get(self, "rollup") @@ -3079,11 +6346,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, test_id: int): + """ + :param int test_id: ID of the test + """ pulumi.set(__self__, "test_id", test_id) @property @pulumi.getter(name="testId") def test_id(self) -> int: + """ + ID of the test + """ return pulumi.get(self, "test_id") @@ -3094,6 +6367,8 @@ def __key_warning(key: str): suggest = None if key == "amazonPrometheuses": suggest = "amazon_prometheuses" + elif key == "azureMonitors": + suggest = "azure_monitors" elif key == "grafanaLokis": suggest = "grafana_lokis" elif key == "splunkObservabilities": @@ -3113,6 +6388,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, amazon_prometheuses: Optional[Sequence['outputs.SloObjectiveCountMetricTotalAmazonPrometheus']] = None, appdynamics: Optional[Sequence['outputs.SloObjectiveCountMetricTotalAppdynamic']] = None, + azure_monitors: Optional[Sequence['outputs.SloObjectiveCountMetricTotalAzureMonitor']] = None, bigqueries: Optional[Sequence['outputs.SloObjectiveCountMetricTotalBigquery']] = None, cloudwatches: Optional[Sequence['outputs.SloObjectiveCountMetricTotalCloudwatch']] = None, datadogs: Optional[Sequence['outputs.SloObjectiveCountMetricTotalDatadog']] = None, @@ -3121,6 +6397,7 @@ def __init__(__self__, *, gcms: Optional[Sequence['outputs.SloObjectiveCountMetricTotalGcm']] = None, grafana_lokis: Optional[Sequence['outputs.SloObjectiveCountMetricTotalGrafanaLoki']] = None, graphites: Optional[Sequence['outputs.SloObjectiveCountMetricTotalGraphite']] = None, + honeycombs: Optional[Sequence['outputs.SloObjectiveCountMetricTotalHoneycomb']] = None, influxdbs: Optional[Sequence['outputs.SloObjectiveCountMetricTotalInfluxdb']] = None, instanas: Optional[Sequence['outputs.SloObjectiveCountMetricTotalInstana']] = None, lightsteps: Optional[Sequence['outputs.SloObjectiveCountMetricTotalLightstep']] = None, @@ -3133,10 +6410,38 @@ def __init__(__self__, *, splunks: Optional[Sequence['outputs.SloObjectiveCountMetricTotalSplunk']] = None, sumologics: Optional[Sequence['outputs.SloObjectiveCountMetricTotalSumologic']] = None, thousandeyes: Optional[Sequence['outputs.SloObjectiveCountMetricTotalThousandeye']] = None): + """ + :param Sequence['SloObjectiveCountMetricTotalAmazonPrometheusArgs'] amazon_prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + :param Sequence['SloObjectiveCountMetricTotalAppdynamicArgs'] appdynamics: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + :param Sequence['SloObjectiveCountMetricTotalAzureMonitorArgs'] azure_monitors: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + :param Sequence['SloObjectiveCountMetricTotalBigqueryArgs'] bigqueries: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + :param Sequence['SloObjectiveCountMetricTotalCloudwatchArgs'] cloudwatches: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + :param Sequence['SloObjectiveCountMetricTotalDatadogArgs'] datadogs: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + :param Sequence['SloObjectiveCountMetricTotalDynatraceArgs'] dynatraces: [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + :param Sequence['SloObjectiveCountMetricTotalElasticsearchArgs'] elasticsearches: [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + :param Sequence['SloObjectiveCountMetricTotalGcmArgs'] gcms: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + :param Sequence['SloObjectiveCountMetricTotalGrafanaLokiArgs'] grafana_lokis: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + :param Sequence['SloObjectiveCountMetricTotalGraphiteArgs'] graphites: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + :param Sequence['SloObjectiveCountMetricTotalHoneycombArgs'] honeycombs: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + :param Sequence['SloObjectiveCountMetricTotalInfluxdbArgs'] influxdbs: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + :param Sequence['SloObjectiveCountMetricTotalInstanaArgs'] instanas: [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + :param Sequence['SloObjectiveCountMetricTotalLightstepArgs'] lightsteps: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + :param Sequence['SloObjectiveCountMetricTotalNewrelicArgs'] newrelics: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + :param Sequence['SloObjectiveCountMetricTotalOpentsdbArgs'] opentsdbs: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + :param Sequence['SloObjectiveCountMetricTotalPingdomArgs'] pingdoms: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + :param Sequence['SloObjectiveCountMetricTotalPrometheusArgs'] prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + :param Sequence['SloObjectiveCountMetricTotalRedshiftArgs'] redshifts: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + :param Sequence['SloObjectiveCountMetricTotalSplunkObservabilityArgs'] splunk_observabilities: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + :param Sequence['SloObjectiveCountMetricTotalSplunkArgs'] splunks: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + :param Sequence['SloObjectiveCountMetricTotalSumologicArgs'] sumologics: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + :param Sequence['SloObjectiveCountMetricTotalThousandeyeArgs'] thousandeyes: [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ if amazon_prometheuses is not None: pulumi.set(__self__, "amazon_prometheuses", amazon_prometheuses) if appdynamics is not None: pulumi.set(__self__, "appdynamics", appdynamics) + if azure_monitors is not None: + pulumi.set(__self__, "azure_monitors", azure_monitors) if bigqueries is not None: pulumi.set(__self__, "bigqueries", bigqueries) if cloudwatches is not None: @@ -3153,6 +6458,8 @@ def __init__(__self__, *, pulumi.set(__self__, "grafana_lokis", grafana_lokis) if graphites is not None: pulumi.set(__self__, "graphites", graphites) + if honeycombs is not None: + pulumi.set(__self__, "honeycombs", honeycombs) if influxdbs is not None: pulumi.set(__self__, "influxdbs", influxdbs) if instanas is not None: @@ -3181,111 +6488,193 @@ def __init__(__self__, *, @property @pulumi.getter(name="amazonPrometheuses") def amazon_prometheuses(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalAmazonPrometheus']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + """ return pulumi.get(self, "amazon_prometheuses") @property @pulumi.getter def appdynamics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalAppdynamic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + """ return pulumi.get(self, "appdynamics") + @property + @pulumi.getter(name="azureMonitors") + def azure_monitors(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalAzureMonitor']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + """ + return pulumi.get(self, "azure_monitors") + @property @pulumi.getter def bigqueries(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalBigquery']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + """ return pulumi.get(self, "bigqueries") @property @pulumi.getter def cloudwatches(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalCloudwatch']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + """ return pulumi.get(self, "cloudwatches") @property @pulumi.getter def datadogs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalDatadog']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + """ return pulumi.get(self, "datadogs") @property @pulumi.getter def dynatraces(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalDynatrace']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + """ return pulumi.get(self, "dynatraces") @property @pulumi.getter def elasticsearches(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalElasticsearch']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + """ return pulumi.get(self, "elasticsearches") @property @pulumi.getter def gcms(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalGcm']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + """ return pulumi.get(self, "gcms") @property @pulumi.getter(name="grafanaLokis") def grafana_lokis(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalGrafanaLoki']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + """ return pulumi.get(self, "grafana_lokis") @property @pulumi.getter def graphites(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalGraphite']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + """ return pulumi.get(self, "graphites") + @property + @pulumi.getter + def honeycombs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalHoneycomb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + """ + return pulumi.get(self, "honeycombs") + @property @pulumi.getter def influxdbs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalInfluxdb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + """ return pulumi.get(self, "influxdbs") @property @pulumi.getter def instanas(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalInstana']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + """ return pulumi.get(self, "instanas") @property @pulumi.getter def lightsteps(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalLightstep']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + """ return pulumi.get(self, "lightsteps") @property @pulumi.getter def newrelics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalNewrelic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + """ return pulumi.get(self, "newrelics") @property @pulumi.getter def opentsdbs(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalOpentsdb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + """ return pulumi.get(self, "opentsdbs") @property @pulumi.getter def pingdoms(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalPingdom']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + """ return pulumi.get(self, "pingdoms") @property @pulumi.getter def prometheuses(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalPrometheus']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + """ return pulumi.get(self, "prometheuses") @property @pulumi.getter def redshifts(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalRedshift']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + """ return pulumi.get(self, "redshifts") @property @pulumi.getter(name="splunkObservabilities") def splunk_observabilities(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalSplunkObservability']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + """ return pulumi.get(self, "splunk_observabilities") @property @pulumi.getter def splunks(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalSplunk']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + """ return pulumi.get(self, "splunks") @property @pulumi.getter def sumologics(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalSumologic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + """ return pulumi.get(self, "sumologics") @property @pulumi.getter def thousandeyes(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalThousandeye']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ return pulumi.get(self, "thousandeyes") @@ -3293,11 +6682,17 @@ def thousandeyes(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTota class SloObjectiveCountMetricTotalAmazonPrometheus(dict): def __init__(__self__, *, promql: str): + """ + :param str promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter def promql(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "promql") @@ -3325,20 +6720,247 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, application_name: str, metric_path: str): + """ + :param str application_name: Name of the added application + :param str metric_path: Path to the metrics + """ pulumi.set(__self__, "application_name", application_name) pulumi.set(__self__, "metric_path", metric_path) @property @pulumi.getter(name="applicationName") def application_name(self) -> str: + """ + Name of the added application + """ return pulumi.get(self, "application_name") @property @pulumi.getter(name="metricPath") def metric_path(self) -> str: + """ + Path to the metrics + """ return pulumi.get(self, "metric_path") +@pulumi.output_type +class SloObjectiveCountMetricTotalAzureMonitor(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dataType": + suggest = "data_type" + elif key == "kqlQuery": + suggest = "kql_query" + elif key == "metricName": + suggest = "metric_name" + elif key == "metricNamespace": + suggest = "metric_namespace" + elif key == "resourceId": + suggest = "resource_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricTotalAzureMonitor. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricTotalAzureMonitor.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricTotalAzureMonitor.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + data_type: str, + aggregation: Optional[str] = None, + dimensions: Optional[Sequence['outputs.SloObjectiveCountMetricTotalAzureMonitorDimension']] = None, + kql_query: Optional[str] = None, + metric_name: Optional[str] = None, + metric_namespace: Optional[str] = None, + resource_id: Optional[str] = None, + workspaces: Optional[Sequence['outputs.SloObjectiveCountMetricTotalAzureMonitorWorkspace']] = None): + """ + :param str data_type: Specifies source: 'metrics' or 'logs' + :param str aggregation: Aggregation type [Required for metrics] + :param Sequence['SloObjectiveCountMetricTotalAzureMonitorDimensionArgs'] dimensions: Dimensions of the metric [Optional for metrics] + :param str kql_query: Logs query in Kusto Query Language [Required for logs] + :param str metric_name: Name of the metric [Required for metrics] + :param str metric_namespace: Namespace of the metric [Optional for metrics] + :param str resource_id: Identifier of the Azure Cloud resource [Required for metrics] + :param Sequence['SloObjectiveCountMetricTotalAzureMonitorWorkspaceArgs'] workspaces: Log analytics workspace [Required for logs] + """ + pulumi.set(__self__, "data_type", data_type) + if aggregation is not None: + pulumi.set(__self__, "aggregation", aggregation) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if kql_query is not None: + pulumi.set(__self__, "kql_query", kql_query) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if metric_namespace is not None: + pulumi.set(__self__, "metric_namespace", metric_namespace) + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if workspaces is not None: + pulumi.set(__self__, "workspaces", workspaces) + + @property + @pulumi.getter(name="dataType") + def data_type(self) -> str: + """ + Specifies source: 'metrics' or 'logs' + """ + return pulumi.get(self, "data_type") + + @property + @pulumi.getter + def aggregation(self) -> Optional[str]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @property + @pulumi.getter + def dimensions(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalAzureMonitorDimension']]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @property + @pulumi.getter(name="kqlQuery") + def kql_query(self) -> Optional[str]: + """ + Logs query in Kusto Query Language [Required for logs] + """ + return pulumi.get(self, "kql_query") + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[str]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @property + @pulumi.getter(name="metricNamespace") + def metric_namespace(self) -> Optional[str]: + """ + Namespace of the metric [Optional for metrics] + """ + return pulumi.get(self, "metric_namespace") + + @property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[str]: + """ + Identifier of the Azure Cloud resource [Required for metrics] + """ + return pulumi.get(self, "resource_id") + + @property + @pulumi.getter + def workspaces(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalAzureMonitorWorkspace']]: + """ + Log analytics workspace [Required for logs] + """ + return pulumi.get(self, "workspaces") + + +@pulumi.output_type +class SloObjectiveCountMetricTotalAzureMonitorDimension(dict): + def __init__(__self__, *, + name: str, + value: str): + """ + :param str name: The name of the previously defined alert method. + :param str value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> str: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def value(self) -> str: + """ + Burn rate value. + """ + return pulumi.get(self, "value") + + +@pulumi.output_type +class SloObjectiveCountMetricTotalAzureMonitorWorkspace(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "resourceGroup": + suggest = "resource_group" + elif key == "subscriptionId": + suggest = "subscription_id" + elif key == "workspaceId": + suggest = "workspace_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveCountMetricTotalAzureMonitorWorkspace. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveCountMetricTotalAzureMonitorWorkspace.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveCountMetricTotalAzureMonitorWorkspace.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + resource_group: str, + subscription_id: str, + workspace_id: str): + """ + :param str resource_group: Resource group of the workspace + :param str subscription_id: Subscription ID of the workspace + :param str workspace_id: ID of the workspace + """ + pulumi.set(__self__, "resource_group", resource_group) + pulumi.set(__self__, "subscription_id", subscription_id) + pulumi.set(__self__, "workspace_id", workspace_id) + + @property + @pulumi.getter(name="resourceGroup") + def resource_group(self) -> str: + """ + Resource group of the workspace + """ + return pulumi.get(self, "resource_group") + + @property + @pulumi.getter(name="subscriptionId") + def subscription_id(self) -> str: + """ + Subscription ID of the workspace + """ + return pulumi.get(self, "subscription_id") + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> str: + """ + ID of the workspace + """ + return pulumi.get(self, "workspace_id") + + @pulumi.output_type class SloObjectiveCountMetricTotalBigquery(dict): @staticmethod @@ -3362,6 +6984,11 @@ def __init__(__self__, *, location: str, project_id: str, query: str): + """ + :param str location: Location of you BigQuery + :param str project_id: Project ID + :param str query: Query for the metrics + """ pulumi.set(__self__, "location", location) pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @@ -3369,16 +6996,25 @@ def __init__(__self__, *, @property @pulumi.getter def location(self) -> str: + """ + Location of you BigQuery + """ return pulumi.get(self, "location") @property @pulumi.getter(name="projectId") def project_id(self) -> str: + """ + Project ID + """ return pulumi.get(self, "project_id") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -3387,7 +7023,9 @@ class SloObjectiveCountMetricTotalCloudwatch(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "metricName": + if key == "accountId": + suggest = "account_id" + elif key == "metricName": suggest = "metric_name" if suggest: @@ -3403,13 +7041,26 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, region: str, + account_id: Optional[str] = None, dimensions: Optional[Sequence['outputs.SloObjectiveCountMetricTotalCloudwatchDimension']] = None, json: Optional[str] = None, metric_name: Optional[str] = None, namespace: Optional[str] = None, sql: Optional[str] = None, stat: Optional[str] = None): + """ + :param str region: Region of the CloudWatch instance + :param str account_id: AccountID used with cross-account observability feature + :param Sequence['SloObjectiveCountMetricTotalCloudwatchDimensionArgs'] dimensions: Dimensions of the metric [Optional for metrics] + :param str json: JSON query + :param str metric_name: Name of the metric [Required for metrics] + :param str namespace: Namespace of the metric + :param str sql: SQL query + :param str stat: Metric data aggregations + """ pulumi.set(__self__, "region", region) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) if dimensions is not None: pulumi.set(__self__, "dimensions", dimensions) if json is not None: @@ -3426,36 +7077,65 @@ def __init__(__self__, *, @property @pulumi.getter def region(self) -> str: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[str]: + """ + AccountID used with cross-account observability feature + """ + return pulumi.get(self, "account_id") + @property @pulumi.getter def dimensions(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalCloudwatchDimension']]: + """ + Dimensions of the metric [Optional for metrics] + """ return pulumi.get(self, "dimensions") @property @pulumi.getter def json(self) -> Optional[str]: + """ + JSON query + """ return pulumi.get(self, "json") @property @pulumi.getter(name="metricName") def metric_name(self) -> Optional[str]: + """ + Name of the metric [Required for metrics] + """ return pulumi.get(self, "metric_name") @property @pulumi.getter def namespace(self) -> Optional[str]: + """ + Namespace of the metric + """ return pulumi.get(self, "namespace") @property @pulumi.getter def sql(self) -> Optional[str]: + """ + SQL query + """ return pulumi.get(self, "sql") @property @pulumi.getter def stat(self) -> Optional[str]: + """ + Metric data aggregations + """ return pulumi.get(self, "stat") @@ -3465,7 +7145,8 @@ def __init__(__self__, *, name: str, value: str): """ - :param str name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param str name: The name of the previously defined alert method. + :param str value: Burn rate value. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -3474,13 +7155,16 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @property @pulumi.getter def value(self) -> str: + """ + Burn rate value. + """ return pulumi.get(self, "value") @@ -3488,11 +7172,17 @@ def value(self) -> str: class SloObjectiveCountMetricTotalDatadog(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -3517,11 +7207,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, metric_selector: str): + """ + :param str metric_selector: Selector for the metrics + """ pulumi.set(__self__, "metric_selector", metric_selector) @property @pulumi.getter(name="metricSelector") def metric_selector(self) -> str: + """ + Selector for the metrics + """ return pulumi.get(self, "metric_selector") @@ -3530,17 +7226,27 @@ class SloObjectiveCountMetricTotalElasticsearch(dict): def __init__(__self__, *, index: str, query: str): + """ + :param str index: Index of metrics we want to query + :param str query: Query for the metrics + """ pulumi.set(__self__, "index", index) pulumi.set(__self__, "query", query) @property @pulumi.getter def index(self) -> str: + """ + Index of metrics we want to query + """ return pulumi.get(self, "index") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -3566,17 +7272,27 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, project_id: str, query: str): + """ + :param str project_id: Project ID + :param str query: Query for the metrics + """ pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @property @pulumi.getter(name="projectId") def project_id(self) -> str: + """ + Project ID + """ return pulumi.get(self, "project_id") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -3584,11 +7300,17 @@ def query(self) -> str: class SloObjectiveCountMetricTotalGrafanaLoki(dict): def __init__(__self__, *, logql: str): + """ + :param str logql: Query for the logs + """ pulumi.set(__self__, "logql", logql) @property @pulumi.getter def logql(self) -> str: + """ + Query for the logs + """ return pulumi.get(self, "logql") @@ -3613,23 +7335,65 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, metric_path: str): + """ + :param str metric_path: Path to the metrics + """ pulumi.set(__self__, "metric_path", metric_path) @property @pulumi.getter(name="metricPath") def metric_path(self) -> str: + """ + Path to the metrics + """ return pulumi.get(self, "metric_path") +@pulumi.output_type +class SloObjectiveCountMetricTotalHoneycomb(dict): + def __init__(__self__, *, + calculation: str, + attribute: Optional[str] = None): + """ + :param str calculation: Calculation type + :param str attribute: Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + pulumi.set(__self__, "calculation", calculation) + if attribute is not None: + pulumi.set(__self__, "attribute", attribute) + + @property + @pulumi.getter + def calculation(self) -> str: + """ + Calculation type + """ + return pulumi.get(self, "calculation") + + @property + @pulumi.getter + def attribute(self) -> Optional[str]: + """ + Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + return pulumi.get(self, "attribute") + + @pulumi.output_type class SloObjectiveCountMetricTotalInfluxdb(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -3656,6 +7420,11 @@ def __init__(__self__, *, metric_type: str, applications: Optional[Sequence['outputs.SloObjectiveCountMetricTotalInstanaApplication']] = None, infrastructures: Optional[Sequence['outputs.SloObjectiveCountMetricTotalInstanaInfrastructure']] = None): + """ + :param str metric_type: Instana metric type 'application' or 'infrastructure' + :param Sequence['SloObjectiveCountMetricTotalInstanaApplicationArgs'] applications: Infrastructure metric type + :param Sequence['SloObjectiveCountMetricTotalInstanaInfrastructureArgs'] infrastructures: Infrastructure metric type + """ pulumi.set(__self__, "metric_type", metric_type) if applications is not None: pulumi.set(__self__, "applications", applications) @@ -3665,16 +7434,25 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricType") def metric_type(self) -> str: + """ + Instana metric type 'application' or 'infrastructure' + """ return pulumi.get(self, "metric_type") @property @pulumi.getter def applications(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalInstanaApplication']]: + """ + Infrastructure metric type + """ return pulumi.get(self, "applications") @property @pulumi.getter def infrastructures(self) -> Optional[Sequence['outputs.SloObjectiveCountMetricTotalInstanaInfrastructure']]: + """ + Infrastructure metric type + """ return pulumi.get(self, "infrastructures") @@ -3712,6 +7490,14 @@ def __init__(__self__, *, metric_id: str, include_internal: Optional[bool] = None, include_synthetic: Optional[bool] = None): + """ + :param str aggregation: Aggregation type [Required for metrics] + :param str api_query: API query user passes in a JSON format + :param Sequence['SloObjectiveCountMetricTotalInstanaApplicationGroupByArgs'] group_bies: Group by method + :param str metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param bool include_internal: Include internal + :param bool include_synthetic: Include synthetic + """ pulumi.set(__self__, "aggregation", aggregation) pulumi.set(__self__, "api_query", api_query) pulumi.set(__self__, "group_bies", group_bies) @@ -3724,31 +7510,49 @@ def __init__(__self__, *, @property @pulumi.getter def aggregation(self) -> str: + """ + Aggregation type [Required for metrics] + """ return pulumi.get(self, "aggregation") @property @pulumi.getter(name="apiQuery") def api_query(self) -> str: + """ + API query user passes in a JSON format + """ return pulumi.get(self, "api_query") @property @pulumi.getter(name="groupBies") def group_bies(self) -> Sequence['outputs.SloObjectiveCountMetricTotalInstanaApplicationGroupBy']: + """ + Group by method + """ return pulumi.get(self, "group_bies") @property @pulumi.getter(name="metricId") def metric_id(self) -> str: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @property @pulumi.getter(name="includeInternal") def include_internal(self) -> Optional[bool]: + """ + Include internal + """ return pulumi.get(self, "include_internal") @property @pulumi.getter(name="includeSynthetic") def include_synthetic(self) -> Optional[bool]: + """ + Include synthetic + """ return pulumi.get(self, "include_synthetic") @@ -3777,6 +7581,10 @@ def __init__(__self__, *, tag: str, tag_entity: str, tag_second_level_key: Optional[str] = None): + """ + :param str tag: Group by tag + :param str tag_entity: Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ pulumi.set(__self__, "tag", tag) pulumi.set(__self__, "tag_entity", tag_entity) if tag_second_level_key is not None: @@ -3785,11 +7593,17 @@ def __init__(__self__, *, @property @pulumi.getter def tag(self) -> str: + """ + Group by tag + """ return pulumi.get(self, "tag") @property @pulumi.getter(name="tagEntity") def tag_entity(self) -> str: + """ + Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ return pulumi.get(self, "tag_entity") @property @@ -3829,6 +7643,13 @@ def __init__(__self__, *, plugin_id: str, query: Optional[str] = None, snapshot_id: Optional[str] = None): + """ + :param str metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param str metric_retrieval_method: Metric retrieval method 'query' or 'snapshot' + :param str plugin_id: Plugin ID + :param str query: Query for the metrics + :param str snapshot_id: Snapshot ID + """ pulumi.set(__self__, "metric_id", metric_id) pulumi.set(__self__, "metric_retrieval_method", metric_retrieval_method) pulumi.set(__self__, "plugin_id", plugin_id) @@ -3840,26 +7661,41 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricId") def metric_id(self) -> str: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @property @pulumi.getter(name="metricRetrievalMethod") def metric_retrieval_method(self) -> str: + """ + Metric retrieval method 'query' or 'snapshot' + """ return pulumi.get(self, "metric_retrieval_method") @property @pulumi.getter(name="pluginId") def plugin_id(self) -> str: + """ + Plugin ID + """ return pulumi.get(self, "plugin_id") @property @pulumi.getter def query(self) -> Optional[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[str]: + """ + Snapshot ID + """ return pulumi.get(self, "snapshot_id") @@ -3889,6 +7725,12 @@ def __init__(__self__, *, percentile: Optional[float] = None, stream_id: Optional[str] = None, uql: Optional[str] = None): + """ + :param str type_of_data: Type of data to filter by + :param float percentile: Optional value to filter by percentiles + :param str stream_id: ID of the metrics stream + :param str uql: UQL query + """ pulumi.set(__self__, "type_of_data", type_of_data) if percentile is not None: pulumi.set(__self__, "percentile", percentile) @@ -3900,21 +7742,33 @@ def __init__(__self__, *, @property @pulumi.getter(name="typeOfData") def type_of_data(self) -> str: + """ + Type of data to filter by + """ return pulumi.get(self, "type_of_data") @property @pulumi.getter def percentile(self) -> Optional[float]: + """ + Optional value to filter by percentiles + """ return pulumi.get(self, "percentile") @property @pulumi.getter(name="streamId") def stream_id(self) -> Optional[str]: + """ + ID of the metrics stream + """ return pulumi.get(self, "stream_id") @property @pulumi.getter def uql(self) -> Optional[str]: + """ + UQL query + """ return pulumi.get(self, "uql") @@ -3922,11 +7776,17 @@ def uql(self) -> Optional[str]: class SloObjectiveCountMetricTotalNewrelic(dict): def __init__(__self__, *, nrql: str): + """ + :param str nrql: Query for the metrics + """ pulumi.set(__self__, "nrql", nrql) @property @pulumi.getter def nrql(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "nrql") @@ -3934,11 +7794,17 @@ def nrql(self) -> str: class SloObjectiveCountMetricTotalOpentsdb(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -3967,6 +7833,11 @@ def __init__(__self__, *, check_id: str, check_type: Optional[str] = None, status: Optional[str] = None): + """ + :param str check_id: Pingdom uptime or transaction check's ID + :param str check_type: Pingdom check type - uptime or transaction + :param str status: Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ pulumi.set(__self__, "check_id", check_id) if check_type is not None: pulumi.set(__self__, "check_type", check_type) @@ -3976,16 +7847,25 @@ def __init__(__self__, *, @property @pulumi.getter(name="checkId") def check_id(self) -> str: + """ + Pingdom uptime or transaction check's ID + """ return pulumi.get(self, "check_id") @property @pulumi.getter(name="checkType") def check_type(self) -> Optional[str]: + """ + Pingdom check type - uptime or transaction + """ return pulumi.get(self, "check_type") @property @pulumi.getter def status(self) -> Optional[str]: + """ + Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ return pulumi.get(self, "status") @@ -3993,11 +7873,17 @@ def status(self) -> Optional[str]: class SloObjectiveCountMetricTotalPrometheus(dict): def __init__(__self__, *, promql: str): + """ + :param str promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter def promql(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "promql") @@ -4027,6 +7913,12 @@ def __init__(__self__, *, database_name: str, query: str, region: str): + """ + :param str cluster_id: Redshift custer ID + :param str database_name: Database name + :param str query: Query for the metrics + :param str region: Region of the CloudWatch instance + """ pulumi.set(__self__, "cluster_id", cluster_id) pulumi.set(__self__, "database_name", database_name) pulumi.set(__self__, "query", query) @@ -4035,21 +7927,33 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> str: + """ + Redshift custer ID + """ return pulumi.get(self, "cluster_id") @property @pulumi.getter(name="databaseName") def database_name(self) -> str: + """ + Database name + """ return pulumi.get(self, "database_name") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter def region(self) -> str: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @@ -4057,11 +7961,17 @@ def region(self) -> str: class SloObjectiveCountMetricTotalSplunk(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -4069,11 +7979,17 @@ def query(self) -> str: class SloObjectiveCountMetricTotalSplunkObservability(dict): def __init__(__self__, *, program: str): + """ + :param str program: Query for the metrics + """ pulumi.set(__self__, "program", program) @property @pulumi.getter def program(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "program") @@ -4084,6 +8000,12 @@ def __init__(__self__, *, type: str, quantization: Optional[str] = None, rollup: Optional[str] = None): + """ + :param str query: Query for the metrics + :param str type: Sumologic source - metrics or logs + :param str quantization: Period of data aggregation + :param str rollup: Aggregation function - avg, sum, min, max, count, none + """ pulumi.set(__self__, "query", query) pulumi.set(__self__, "type", type) if quantization is not None: @@ -4094,21 +8016,33 @@ def __init__(__self__, *, @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter def type(self) -> str: + """ + Sumologic source - metrics or logs + """ return pulumi.get(self, "type") @property @pulumi.getter def quantization(self) -> Optional[str]: + """ + Period of data aggregation + """ return pulumi.get(self, "quantization") @property @pulumi.getter def rollup(self) -> Optional[str]: + """ + Aggregation function - avg, sum, min, max, count, none + """ return pulumi.get(self, "rollup") @@ -4133,24 +8067,35 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, test_id: int): + """ + :param int test_id: ID of the test + """ pulumi.set(__self__, "test_id", test_id) @property @pulumi.getter(name="testId") def test_id(self) -> int: + """ + ID of the test + """ return pulumi.get(self, "test_id") @pulumi.output_type class SloObjectiveRawMetric(dict): def __init__(__self__, *, - queries: Optional[Sequence['outputs.SloObjectiveRawMetricQuery']] = None): - if queries is not None: - pulumi.set(__self__, "queries", queries) + queries: Sequence['outputs.SloObjectiveRawMetricQuery']): + """ + :param Sequence['SloObjectiveRawMetricQueryArgs'] queries: Query for the metrics + """ + pulumi.set(__self__, "queries", queries) @property @pulumi.getter - def queries(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQuery']]: + def queries(self) -> Sequence['outputs.SloObjectiveRawMetricQuery']: + """ + Query for the metrics + """ return pulumi.get(self, "queries") @@ -4161,6 +8106,8 @@ def __key_warning(key: str): suggest = None if key == "amazonPrometheuses": suggest = "amazon_prometheuses" + elif key == "azureMonitors": + suggest = "azure_monitors" elif key == "grafanaLokis": suggest = "grafana_lokis" elif key == "splunkObservabilities": @@ -4180,6 +8127,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, amazon_prometheuses: Optional[Sequence['outputs.SloObjectiveRawMetricQueryAmazonPrometheus']] = None, appdynamics: Optional[Sequence['outputs.SloObjectiveRawMetricQueryAppdynamic']] = None, + azure_monitors: Optional[Sequence['outputs.SloObjectiveRawMetricQueryAzureMonitor']] = None, bigqueries: Optional[Sequence['outputs.SloObjectiveRawMetricQueryBigquery']] = None, cloudwatches: Optional[Sequence['outputs.SloObjectiveRawMetricQueryCloudwatch']] = None, datadogs: Optional[Sequence['outputs.SloObjectiveRawMetricQueryDatadog']] = None, @@ -4188,6 +8136,7 @@ def __init__(__self__, *, gcms: Optional[Sequence['outputs.SloObjectiveRawMetricQueryGcm']] = None, grafana_lokis: Optional[Sequence['outputs.SloObjectiveRawMetricQueryGrafanaLoki']] = None, graphites: Optional[Sequence['outputs.SloObjectiveRawMetricQueryGraphite']] = None, + honeycombs: Optional[Sequence['outputs.SloObjectiveRawMetricQueryHoneycomb']] = None, influxdbs: Optional[Sequence['outputs.SloObjectiveRawMetricQueryInfluxdb']] = None, instanas: Optional[Sequence['outputs.SloObjectiveRawMetricQueryInstana']] = None, lightsteps: Optional[Sequence['outputs.SloObjectiveRawMetricQueryLightstep']] = None, @@ -4200,10 +8149,38 @@ def __init__(__self__, *, splunks: Optional[Sequence['outputs.SloObjectiveRawMetricQuerySplunk']] = None, sumologics: Optional[Sequence['outputs.SloObjectiveRawMetricQuerySumologic']] = None, thousandeyes: Optional[Sequence['outputs.SloObjectiveRawMetricQueryThousandeye']] = None): + """ + :param Sequence['SloObjectiveRawMetricQueryAmazonPrometheusArgs'] amazon_prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + :param Sequence['SloObjectiveRawMetricQueryAppdynamicArgs'] appdynamics: [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + :param Sequence['SloObjectiveRawMetricQueryAzureMonitorArgs'] azure_monitors: [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + :param Sequence['SloObjectiveRawMetricQueryBigqueryArgs'] bigqueries: [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + :param Sequence['SloObjectiveRawMetricQueryCloudwatchArgs'] cloudwatches: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + :param Sequence['SloObjectiveRawMetricQueryDatadogArgs'] datadogs: [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + :param Sequence['SloObjectiveRawMetricQueryDynatraceArgs'] dynatraces: [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + :param Sequence['SloObjectiveRawMetricQueryElasticsearchArgs'] elasticsearches: [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + :param Sequence['SloObjectiveRawMetricQueryGcmArgs'] gcms: [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + :param Sequence['SloObjectiveRawMetricQueryGrafanaLokiArgs'] grafana_lokis: [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + :param Sequence['SloObjectiveRawMetricQueryGraphiteArgs'] graphites: [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + :param Sequence['SloObjectiveRawMetricQueryHoneycombArgs'] honeycombs: [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + :param Sequence['SloObjectiveRawMetricQueryInfluxdbArgs'] influxdbs: [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + :param Sequence['SloObjectiveRawMetricQueryInstanaArgs'] instanas: [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + :param Sequence['SloObjectiveRawMetricQueryLightstepArgs'] lightsteps: [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + :param Sequence['SloObjectiveRawMetricQueryNewrelicArgs'] newrelics: [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + :param Sequence['SloObjectiveRawMetricQueryOpentsdbArgs'] opentsdbs: [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + :param Sequence['SloObjectiveRawMetricQueryPingdomArgs'] pingdoms: [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + :param Sequence['SloObjectiveRawMetricQueryPrometheusArgs'] prometheuses: [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + :param Sequence['SloObjectiveRawMetricQueryRedshiftArgs'] redshifts: [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + :param Sequence['SloObjectiveRawMetricQuerySplunkObservabilityArgs'] splunk_observabilities: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + :param Sequence['SloObjectiveRawMetricQuerySplunkArgs'] splunks: [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + :param Sequence['SloObjectiveRawMetricQuerySumologicArgs'] sumologics: [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + :param Sequence['SloObjectiveRawMetricQueryThousandeyeArgs'] thousandeyes: [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ if amazon_prometheuses is not None: pulumi.set(__self__, "amazon_prometheuses", amazon_prometheuses) if appdynamics is not None: pulumi.set(__self__, "appdynamics", appdynamics) + if azure_monitors is not None: + pulumi.set(__self__, "azure_monitors", azure_monitors) if bigqueries is not None: pulumi.set(__self__, "bigqueries", bigqueries) if cloudwatches is not None: @@ -4220,6 +8197,8 @@ def __init__(__self__, *, pulumi.set(__self__, "grafana_lokis", grafana_lokis) if graphites is not None: pulumi.set(__self__, "graphites", graphites) + if honeycombs is not None: + pulumi.set(__self__, "honeycombs", honeycombs) if influxdbs is not None: pulumi.set(__self__, "influxdbs", influxdbs) if instanas is not None: @@ -4248,162 +8227,477 @@ def __init__(__self__, *, @property @pulumi.getter(name="amazonPrometheuses") def amazon_prometheuses(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryAmazonPrometheus']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Prometheus/#creating-slos-with-ams-prometheus) + """ return pulumi.get(self, "amazon_prometheuses") @property @pulumi.getter def appdynamics(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryAppdynamic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/appdynamics#creating-slos-with-appdynamics) + """ return pulumi.get(self, "appdynamics") + @property + @pulumi.getter(name="azureMonitors") + def azure_monitors(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryAzureMonitor']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/azure-monitor#creating-slos-with-azure-monitor) + """ + return pulumi.get(self, "azure_monitors") + @property @pulumi.getter def bigqueries(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryBigquery']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/bigquery#creating-slos-with-bigquery) + """ return pulumi.get(self, "bigqueries") @property @pulumi.getter def cloudwatches(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryCloudwatch']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_CloudWatch/#creating-slos-with-cloudwatch) + """ return pulumi.get(self, "cloudwatches") @property @pulumi.getter def datadogs(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryDatadog']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/datadog#creating-slos-with-datadog) + """ return pulumi.get(self, "datadogs") @property @pulumi.getter def dynatraces(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryDynatrace']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/dynatrace#creating-slos-with-dynatrace) + """ return pulumi.get(self, "dynatraces") @property @pulumi.getter def elasticsearches(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryElasticsearch']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/elasticsearch#creating-slos-with-elasticsearch) + """ return pulumi.get(self, "elasticsearches") @property @pulumi.getter def gcms(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryGcm']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/google-cloud-monitoring#creating-slos-with-google-cloud-monitoring) + """ return pulumi.get(self, "gcms") @property @pulumi.getter(name="grafanaLokis") def grafana_lokis(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryGrafanaLoki']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/grafana-loki#creating-slos-with-grafana-loki) + """ return pulumi.get(self, "grafana_lokis") @property @pulumi.getter def graphites(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryGraphite']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/graphite#creating-slos-with-graphite) + """ return pulumi.get(self, "graphites") + @property + @pulumi.getter + def honeycombs(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryHoneycomb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/honeycomb#creating-slos-with-honeycomb) + """ + return pulumi.get(self, "honeycombs") + @property @pulumi.getter def influxdbs(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryInfluxdb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/influxdb#creating-slos-with-influxdb) + """ return pulumi.get(self, "influxdbs") @property @pulumi.getter def instanas(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryInstana']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/instana#creating-slos-with-instana) + """ return pulumi.get(self, "instanas") @property @pulumi.getter def lightsteps(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryLightstep']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/lightstep#creating-slos-with-lightstep) + """ return pulumi.get(self, "lightsteps") @property @pulumi.getter def newrelics(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryNewrelic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/new-relic#creating-slos-with-new-relic) + """ return pulumi.get(self, "newrelics") @property @pulumi.getter def opentsdbs(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryOpentsdb']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/opentsdb#creating-slos-with-opentsdb) + """ return pulumi.get(self, "opentsdbs") @property @pulumi.getter def pingdoms(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryPingdom']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/pingdom#creating-slos-with-pingdom) + """ return pulumi.get(self, "pingdoms") @property @pulumi.getter def prometheuses(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryPrometheus']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/prometheus#creating-slos-with-prometheus) + """ return pulumi.get(self, "prometheuses") @property @pulumi.getter def redshifts(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryRedshift']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/Amazon_Redshift/#creating-slos-with-amazon-redshift) + """ return pulumi.get(self, "redshifts") @property @pulumi.getter(name="splunkObservabilities") def splunk_observabilities(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQuerySplunkObservability']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk-observability) + """ return pulumi.get(self, "splunk_observabilities") @property @pulumi.getter def splunks(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQuerySplunk']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/splunk#creating-slos-with-splunk) + """ return pulumi.get(self, "splunks") @property - @pulumi.getter - def sumologics(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQuerySumologic']]: - return pulumi.get(self, "sumologics") + @pulumi.getter + def sumologics(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQuerySumologic']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/sumo-logic#creating-slos-with-sumo-logic) + """ + return pulumi.get(self, "sumologics") + + @property + @pulumi.getter + def thousandeyes(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryThousandeye']]: + """ + [Configuration documentation](https://docs.nobl9.com/Sources/thousandeyes#creating-slos-with-thousandeyes) + """ + return pulumi.get(self, "thousandeyes") + + +@pulumi.output_type +class SloObjectiveRawMetricQueryAmazonPrometheus(dict): + def __init__(__self__, *, + promql: str): + """ + :param str promql: Query for the metrics + """ + pulumi.set(__self__, "promql", promql) + + @property + @pulumi.getter + def promql(self) -> str: + """ + Query for the metrics + """ + return pulumi.get(self, "promql") + + +@pulumi.output_type +class SloObjectiveRawMetricQueryAppdynamic(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "applicationName": + suggest = "application_name" + elif key == "metricPath": + suggest = "metric_path" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveRawMetricQueryAppdynamic. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveRawMetricQueryAppdynamic.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveRawMetricQueryAppdynamic.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + application_name: str, + metric_path: str): + """ + :param str application_name: Name of the added application + :param str metric_path: Path to the metrics + """ + pulumi.set(__self__, "application_name", application_name) + pulumi.set(__self__, "metric_path", metric_path) + + @property + @pulumi.getter(name="applicationName") + def application_name(self) -> str: + """ + Name of the added application + """ + return pulumi.get(self, "application_name") + + @property + @pulumi.getter(name="metricPath") + def metric_path(self) -> str: + """ + Path to the metrics + """ + return pulumi.get(self, "metric_path") + + +@pulumi.output_type +class SloObjectiveRawMetricQueryAzureMonitor(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dataType": + suggest = "data_type" + elif key == "kqlQuery": + suggest = "kql_query" + elif key == "metricName": + suggest = "metric_name" + elif key == "metricNamespace": + suggest = "metric_namespace" + elif key == "resourceId": + suggest = "resource_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveRawMetricQueryAzureMonitor. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SloObjectiveRawMetricQueryAzureMonitor.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SloObjectiveRawMetricQueryAzureMonitor.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + data_type: str, + aggregation: Optional[str] = None, + dimensions: Optional[Sequence['outputs.SloObjectiveRawMetricQueryAzureMonitorDimension']] = None, + kql_query: Optional[str] = None, + metric_name: Optional[str] = None, + metric_namespace: Optional[str] = None, + resource_id: Optional[str] = None, + workspaces: Optional[Sequence['outputs.SloObjectiveRawMetricQueryAzureMonitorWorkspace']] = None): + """ + :param str data_type: Specifies source: 'metrics' or 'logs' + :param str aggregation: Aggregation type [Required for metrics] + :param Sequence['SloObjectiveRawMetricQueryAzureMonitorDimensionArgs'] dimensions: Dimensions of the metric [Optional for metrics] + :param str kql_query: Logs query in Kusto Query Language [Required for logs] + :param str metric_name: Name of the metric [Required for metrics] + :param str metric_namespace: Namespace of the metric [Optional for metrics] + :param str resource_id: Identifier of the Azure Cloud resource [Required for metrics] + :param Sequence['SloObjectiveRawMetricQueryAzureMonitorWorkspaceArgs'] workspaces: Log analytics workspace [Required for logs] + """ + pulumi.set(__self__, "data_type", data_type) + if aggregation is not None: + pulumi.set(__self__, "aggregation", aggregation) + if dimensions is not None: + pulumi.set(__self__, "dimensions", dimensions) + if kql_query is not None: + pulumi.set(__self__, "kql_query", kql_query) + if metric_name is not None: + pulumi.set(__self__, "metric_name", metric_name) + if metric_namespace is not None: + pulumi.set(__self__, "metric_namespace", metric_namespace) + if resource_id is not None: + pulumi.set(__self__, "resource_id", resource_id) + if workspaces is not None: + pulumi.set(__self__, "workspaces", workspaces) + + @property + @pulumi.getter(name="dataType") + def data_type(self) -> str: + """ + Specifies source: 'metrics' or 'logs' + """ + return pulumi.get(self, "data_type") + + @property + @pulumi.getter + def aggregation(self) -> Optional[str]: + """ + Aggregation type [Required for metrics] + """ + return pulumi.get(self, "aggregation") + + @property + @pulumi.getter + def dimensions(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryAzureMonitorDimension']]: + """ + Dimensions of the metric [Optional for metrics] + """ + return pulumi.get(self, "dimensions") + + @property + @pulumi.getter(name="kqlQuery") + def kql_query(self) -> Optional[str]: + """ + Logs query in Kusto Query Language [Required for logs] + """ + return pulumi.get(self, "kql_query") + + @property + @pulumi.getter(name="metricName") + def metric_name(self) -> Optional[str]: + """ + Name of the metric [Required for metrics] + """ + return pulumi.get(self, "metric_name") + + @property + @pulumi.getter(name="metricNamespace") + def metric_namespace(self) -> Optional[str]: + """ + Namespace of the metric [Optional for metrics] + """ + return pulumi.get(self, "metric_namespace") + + @property + @pulumi.getter(name="resourceId") + def resource_id(self) -> Optional[str]: + """ + Identifier of the Azure Cloud resource [Required for metrics] + """ + return pulumi.get(self, "resource_id") @property @pulumi.getter - def thousandeyes(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryThousandeye']]: - return pulumi.get(self, "thousandeyes") + def workspaces(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryAzureMonitorWorkspace']]: + """ + Log analytics workspace [Required for logs] + """ + return pulumi.get(self, "workspaces") @pulumi.output_type -class SloObjectiveRawMetricQueryAmazonPrometheus(dict): +class SloObjectiveRawMetricQueryAzureMonitorDimension(dict): def __init__(__self__, *, - promql: str): - pulumi.set(__self__, "promql", promql) + name: str, + value: str): + """ + :param str name: The name of the previously defined alert method. + :param str value: Burn rate value. + """ + pulumi.set(__self__, "name", name) + pulumi.set(__self__, "value", value) @property @pulumi.getter - def promql(self) -> str: - return pulumi.get(self, "promql") + def name(self) -> str: + """ + The name of the previously defined alert method. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def value(self) -> str: + """ + Burn rate value. + """ + return pulumi.get(self, "value") @pulumi.output_type -class SloObjectiveRawMetricQueryAppdynamic(dict): +class SloObjectiveRawMetricQueryAzureMonitorWorkspace(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "applicationName": - suggest = "application_name" - elif key == "metricPath": - suggest = "metric_path" + if key == "resourceGroup": + suggest = "resource_group" + elif key == "subscriptionId": + suggest = "subscription_id" + elif key == "workspaceId": + suggest = "workspace_id" if suggest: - pulumi.log.warn(f"Key '{key}' not found in SloObjectiveRawMetricQueryAppdynamic. Access the value via the '{suggest}' property getter instead.") + pulumi.log.warn(f"Key '{key}' not found in SloObjectiveRawMetricQueryAzureMonitorWorkspace. Access the value via the '{suggest}' property getter instead.") def __getitem__(self, key: str) -> Any: - SloObjectiveRawMetricQueryAppdynamic.__key_warning(key) + SloObjectiveRawMetricQueryAzureMonitorWorkspace.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - SloObjectiveRawMetricQueryAppdynamic.__key_warning(key) + SloObjectiveRawMetricQueryAzureMonitorWorkspace.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - application_name: str, - metric_path: str): - pulumi.set(__self__, "application_name", application_name) - pulumi.set(__self__, "metric_path", metric_path) + resource_group: str, + subscription_id: str, + workspace_id: str): + """ + :param str resource_group: Resource group of the workspace + :param str subscription_id: Subscription ID of the workspace + :param str workspace_id: ID of the workspace + """ + pulumi.set(__self__, "resource_group", resource_group) + pulumi.set(__self__, "subscription_id", subscription_id) + pulumi.set(__self__, "workspace_id", workspace_id) @property - @pulumi.getter(name="applicationName") - def application_name(self) -> str: - return pulumi.get(self, "application_name") + @pulumi.getter(name="resourceGroup") + def resource_group(self) -> str: + """ + Resource group of the workspace + """ + return pulumi.get(self, "resource_group") @property - @pulumi.getter(name="metricPath") - def metric_path(self) -> str: - return pulumi.get(self, "metric_path") + @pulumi.getter(name="subscriptionId") + def subscription_id(self) -> str: + """ + Subscription ID of the workspace + """ + return pulumi.get(self, "subscription_id") + + @property + @pulumi.getter(name="workspaceId") + def workspace_id(self) -> str: + """ + ID of the workspace + """ + return pulumi.get(self, "workspace_id") @pulumi.output_type @@ -4429,6 +8723,11 @@ def __init__(__self__, *, location: str, project_id: str, query: str): + """ + :param str location: Location of you BigQuery + :param str project_id: Project ID + :param str query: Query for the metrics + """ pulumi.set(__self__, "location", location) pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @@ -4436,16 +8735,25 @@ def __init__(__self__, *, @property @pulumi.getter def location(self) -> str: + """ + Location of you BigQuery + """ return pulumi.get(self, "location") @property @pulumi.getter(name="projectId") def project_id(self) -> str: + """ + Project ID + """ return pulumi.get(self, "project_id") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -4454,7 +8762,9 @@ class SloObjectiveRawMetricQueryCloudwatch(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "metricName": + if key == "accountId": + suggest = "account_id" + elif key == "metricName": suggest = "metric_name" if suggest: @@ -4470,13 +8780,26 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, region: str, + account_id: Optional[str] = None, dimensions: Optional[Sequence['outputs.SloObjectiveRawMetricQueryCloudwatchDimension']] = None, json: Optional[str] = None, metric_name: Optional[str] = None, namespace: Optional[str] = None, sql: Optional[str] = None, stat: Optional[str] = None): + """ + :param str region: Region of the CloudWatch instance + :param str account_id: AccountID used with cross-account observability feature + :param Sequence['SloObjectiveRawMetricQueryCloudwatchDimensionArgs'] dimensions: Dimensions of the metric [Optional for metrics] + :param str json: JSON query + :param str metric_name: Name of the metric [Required for metrics] + :param str namespace: Namespace of the metric + :param str sql: SQL query + :param str stat: Metric data aggregations + """ pulumi.set(__self__, "region", region) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) if dimensions is not None: pulumi.set(__self__, "dimensions", dimensions) if json is not None: @@ -4493,36 +8816,65 @@ def __init__(__self__, *, @property @pulumi.getter def region(self) -> str: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[str]: + """ + AccountID used with cross-account observability feature + """ + return pulumi.get(self, "account_id") + @property @pulumi.getter def dimensions(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryCloudwatchDimension']]: + """ + Dimensions of the metric [Optional for metrics] + """ return pulumi.get(self, "dimensions") @property @pulumi.getter def json(self) -> Optional[str]: + """ + JSON query + """ return pulumi.get(self, "json") @property @pulumi.getter(name="metricName") def metric_name(self) -> Optional[str]: + """ + Name of the metric [Required for metrics] + """ return pulumi.get(self, "metric_name") @property @pulumi.getter def namespace(self) -> Optional[str]: + """ + Namespace of the metric + """ return pulumi.get(self, "namespace") @property @pulumi.getter def sql(self) -> Optional[str]: + """ + SQL query + """ return pulumi.get(self, "sql") @property @pulumi.getter def stat(self) -> Optional[str]: + """ + Metric data aggregations + """ return pulumi.get(self, "stat") @@ -4532,7 +8884,8 @@ def __init__(__self__, *, name: str, value: str): """ - :param str name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param str name: The name of the previously defined alert method. + :param str value: Burn rate value. """ pulumi.set(__self__, "name", name) pulumi.set(__self__, "value", value) @@ -4541,13 +8894,16 @@ def __init__(__self__, *, @pulumi.getter def name(self) -> str: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @property @pulumi.getter def value(self) -> str: + """ + Burn rate value. + """ return pulumi.get(self, "value") @@ -4555,11 +8911,17 @@ def value(self) -> str: class SloObjectiveRawMetricQueryDatadog(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -4584,11 +8946,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, metric_selector: str): + """ + :param str metric_selector: Selector for the metrics + """ pulumi.set(__self__, "metric_selector", metric_selector) @property @pulumi.getter(name="metricSelector") def metric_selector(self) -> str: + """ + Selector for the metrics + """ return pulumi.get(self, "metric_selector") @@ -4597,17 +8965,27 @@ class SloObjectiveRawMetricQueryElasticsearch(dict): def __init__(__self__, *, index: str, query: str): + """ + :param str index: Index of metrics we want to query + :param str query: Query for the metrics + """ pulumi.set(__self__, "index", index) pulumi.set(__self__, "query", query) @property @pulumi.getter def index(self) -> str: + """ + Index of metrics we want to query + """ return pulumi.get(self, "index") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -4633,17 +9011,27 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, project_id: str, query: str): + """ + :param str project_id: Project ID + :param str query: Query for the metrics + """ pulumi.set(__self__, "project_id", project_id) pulumi.set(__self__, "query", query) @property @pulumi.getter(name="projectId") def project_id(self) -> str: + """ + Project ID + """ return pulumi.get(self, "project_id") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -4651,11 +9039,17 @@ def query(self) -> str: class SloObjectiveRawMetricQueryGrafanaLoki(dict): def __init__(__self__, *, logql: str): + """ + :param str logql: Query for the logs + """ pulumi.set(__self__, "logql", logql) @property @pulumi.getter def logql(self) -> str: + """ + Query for the logs + """ return pulumi.get(self, "logql") @@ -4680,23 +9074,65 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, metric_path: str): + """ + :param str metric_path: Path to the metrics + """ pulumi.set(__self__, "metric_path", metric_path) @property @pulumi.getter(name="metricPath") def metric_path(self) -> str: + """ + Path to the metrics + """ return pulumi.get(self, "metric_path") +@pulumi.output_type +class SloObjectiveRawMetricQueryHoneycomb(dict): + def __init__(__self__, *, + calculation: str, + attribute: Optional[str] = None): + """ + :param str calculation: Calculation type + :param str attribute: Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + pulumi.set(__self__, "calculation", calculation) + if attribute is not None: + pulumi.set(__self__, "attribute", attribute) + + @property + @pulumi.getter + def calculation(self) -> str: + """ + Calculation type + """ + return pulumi.get(self, "calculation") + + @property + @pulumi.getter + def attribute(self) -> Optional[str]: + """ + Column name - required for all calculation types besides 'CONCURRENCY' and 'COUNT' + """ + return pulumi.get(self, "attribute") + + @pulumi.output_type class SloObjectiveRawMetricQueryInfluxdb(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -4723,6 +9159,11 @@ def __init__(__self__, *, metric_type: str, applications: Optional[Sequence['outputs.SloObjectiveRawMetricQueryInstanaApplication']] = None, infrastructures: Optional[Sequence['outputs.SloObjectiveRawMetricQueryInstanaInfrastructure']] = None): + """ + :param str metric_type: Instana metric type 'application' or 'infrastructure' + :param Sequence['SloObjectiveRawMetricQueryInstanaApplicationArgs'] applications: Infrastructure metric type + :param Sequence['SloObjectiveRawMetricQueryInstanaInfrastructureArgs'] infrastructures: Infrastructure metric type + """ pulumi.set(__self__, "metric_type", metric_type) if applications is not None: pulumi.set(__self__, "applications", applications) @@ -4732,16 +9173,25 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricType") def metric_type(self) -> str: + """ + Instana metric type 'application' or 'infrastructure' + """ return pulumi.get(self, "metric_type") @property @pulumi.getter def applications(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryInstanaApplication']]: + """ + Infrastructure metric type + """ return pulumi.get(self, "applications") @property @pulumi.getter def infrastructures(self) -> Optional[Sequence['outputs.SloObjectiveRawMetricQueryInstanaInfrastructure']]: + """ + Infrastructure metric type + """ return pulumi.get(self, "infrastructures") @@ -4779,6 +9229,14 @@ def __init__(__self__, *, metric_id: str, include_internal: Optional[bool] = None, include_synthetic: Optional[bool] = None): + """ + :param str aggregation: Aggregation type [Required for metrics] + :param str api_query: API query user passes in a JSON format + :param Sequence['SloObjectiveRawMetricQueryInstanaApplicationGroupByArgs'] group_bies: Group by method + :param str metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param bool include_internal: Include internal + :param bool include_synthetic: Include synthetic + """ pulumi.set(__self__, "aggregation", aggregation) pulumi.set(__self__, "api_query", api_query) pulumi.set(__self__, "group_bies", group_bies) @@ -4791,31 +9249,49 @@ def __init__(__self__, *, @property @pulumi.getter def aggregation(self) -> str: + """ + Aggregation type [Required for metrics] + """ return pulumi.get(self, "aggregation") @property @pulumi.getter(name="apiQuery") def api_query(self) -> str: + """ + API query user passes in a JSON format + """ return pulumi.get(self, "api_query") @property @pulumi.getter(name="groupBies") def group_bies(self) -> Sequence['outputs.SloObjectiveRawMetricQueryInstanaApplicationGroupBy']: + """ + Group by method + """ return pulumi.get(self, "group_bies") @property @pulumi.getter(name="metricId") def metric_id(self) -> str: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @property @pulumi.getter(name="includeInternal") def include_internal(self) -> Optional[bool]: + """ + Include internal + """ return pulumi.get(self, "include_internal") @property @pulumi.getter(name="includeSynthetic") def include_synthetic(self) -> Optional[bool]: + """ + Include synthetic + """ return pulumi.get(self, "include_synthetic") @@ -4844,6 +9320,10 @@ def __init__(__self__, *, tag: str, tag_entity: str, tag_second_level_key: Optional[str] = None): + """ + :param str tag: Group by tag + :param str tag_entity: Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ pulumi.set(__self__, "tag", tag) pulumi.set(__self__, "tag_entity", tag_entity) if tag_second_level_key is not None: @@ -4852,11 +9332,17 @@ def __init__(__self__, *, @property @pulumi.getter def tag(self) -> str: + """ + Group by tag + """ return pulumi.get(self, "tag") @property @pulumi.getter(name="tagEntity") def tag_entity(self) -> str: + """ + Tag entity - one of 'DESTINATION', 'SOURCE', 'NOT_APPLICABLE' + """ return pulumi.get(self, "tag_entity") @property @@ -4896,6 +9382,13 @@ def __init__(__self__, *, plugin_id: str, query: Optional[str] = None, snapshot_id: Optional[str] = None): + """ + :param str metric_id: Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + :param str metric_retrieval_method: Metric retrieval method 'query' or 'snapshot' + :param str plugin_id: Plugin ID + :param str query: Query for the metrics + :param str snapshot_id: Snapshot ID + """ pulumi.set(__self__, "metric_id", metric_id) pulumi.set(__self__, "metric_retrieval_method", metric_retrieval_method) pulumi.set(__self__, "plugin_id", plugin_id) @@ -4907,26 +9400,41 @@ def __init__(__self__, *, @property @pulumi.getter(name="metricId") def metric_id(self) -> str: + """ + Metric ID one of 'calls', 'erroneousCalls', 'errors', 'latency' + """ return pulumi.get(self, "metric_id") @property @pulumi.getter(name="metricRetrievalMethod") def metric_retrieval_method(self) -> str: + """ + Metric retrieval method 'query' or 'snapshot' + """ return pulumi.get(self, "metric_retrieval_method") @property @pulumi.getter(name="pluginId") def plugin_id(self) -> str: + """ + Plugin ID + """ return pulumi.get(self, "plugin_id") @property @pulumi.getter def query(self) -> Optional[str]: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter(name="snapshotId") def snapshot_id(self) -> Optional[str]: + """ + Snapshot ID + """ return pulumi.get(self, "snapshot_id") @@ -4956,6 +9464,12 @@ def __init__(__self__, *, percentile: Optional[float] = None, stream_id: Optional[str] = None, uql: Optional[str] = None): + """ + :param str type_of_data: Type of data to filter by + :param float percentile: Optional value to filter by percentiles + :param str stream_id: ID of the metrics stream + :param str uql: UQL query + """ pulumi.set(__self__, "type_of_data", type_of_data) if percentile is not None: pulumi.set(__self__, "percentile", percentile) @@ -4967,21 +9481,33 @@ def __init__(__self__, *, @property @pulumi.getter(name="typeOfData") def type_of_data(self) -> str: + """ + Type of data to filter by + """ return pulumi.get(self, "type_of_data") @property @pulumi.getter def percentile(self) -> Optional[float]: + """ + Optional value to filter by percentiles + """ return pulumi.get(self, "percentile") @property @pulumi.getter(name="streamId") def stream_id(self) -> Optional[str]: + """ + ID of the metrics stream + """ return pulumi.get(self, "stream_id") @property @pulumi.getter def uql(self) -> Optional[str]: + """ + UQL query + """ return pulumi.get(self, "uql") @@ -4989,11 +9515,17 @@ def uql(self) -> Optional[str]: class SloObjectiveRawMetricQueryNewrelic(dict): def __init__(__self__, *, nrql: str): + """ + :param str nrql: Query for the metrics + """ pulumi.set(__self__, "nrql", nrql) @property @pulumi.getter def nrql(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "nrql") @@ -5001,11 +9533,17 @@ def nrql(self) -> str: class SloObjectiveRawMetricQueryOpentsdb(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -5034,6 +9572,11 @@ def __init__(__self__, *, check_id: str, check_type: Optional[str] = None, status: Optional[str] = None): + """ + :param str check_id: Pingdom uptime or transaction check's ID + :param str check_type: Pingdom check type - uptime or transaction + :param str status: Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ pulumi.set(__self__, "check_id", check_id) if check_type is not None: pulumi.set(__self__, "check_type", check_type) @@ -5043,16 +9586,25 @@ def __init__(__self__, *, @property @pulumi.getter(name="checkId") def check_id(self) -> str: + """ + Pingdom uptime or transaction check's ID + """ return pulumi.get(self, "check_id") @property @pulumi.getter(name="checkType") def check_type(self) -> Optional[str]: + """ + Pingdom check type - uptime or transaction + """ return pulumi.get(self, "check_type") @property @pulumi.getter def status(self) -> Optional[str]: + """ + Optional for the Uptime checks. Use it to filter the Pingdom check results by status + """ return pulumi.get(self, "status") @@ -5060,11 +9612,17 @@ def status(self) -> Optional[str]: class SloObjectiveRawMetricQueryPrometheus(dict): def __init__(__self__, *, promql: str): + """ + :param str promql: Query for the metrics + """ pulumi.set(__self__, "promql", promql) @property @pulumi.getter def promql(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "promql") @@ -5094,6 +9652,12 @@ def __init__(__self__, *, database_name: str, query: str, region: str): + """ + :param str cluster_id: Redshift custer ID + :param str database_name: Database name + :param str query: Query for the metrics + :param str region: Region of the CloudWatch instance + """ pulumi.set(__self__, "cluster_id", cluster_id) pulumi.set(__self__, "database_name", database_name) pulumi.set(__self__, "query", query) @@ -5102,21 +9666,33 @@ def __init__(__self__, *, @property @pulumi.getter(name="clusterId") def cluster_id(self) -> str: + """ + Redshift custer ID + """ return pulumi.get(self, "cluster_id") @property @pulumi.getter(name="databaseName") def database_name(self) -> str: + """ + Database name + """ return pulumi.get(self, "database_name") @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter def region(self) -> str: + """ + Region of the CloudWatch instance + """ return pulumi.get(self, "region") @@ -5124,11 +9700,17 @@ def region(self) -> str: class SloObjectiveRawMetricQuerySplunk(dict): def __init__(__self__, *, query: str): + """ + :param str query: Query for the metrics + """ pulumi.set(__self__, "query", query) @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @@ -5136,11 +9718,17 @@ def query(self) -> str: class SloObjectiveRawMetricQuerySplunkObservability(dict): def __init__(__self__, *, program: str): + """ + :param str program: Query for the metrics + """ pulumi.set(__self__, "program", program) @property @pulumi.getter def program(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "program") @@ -5151,6 +9739,12 @@ def __init__(__self__, *, type: str, quantization: Optional[str] = None, rollup: Optional[str] = None): + """ + :param str query: Query for the metrics + :param str type: Sumologic source - metrics or logs + :param str quantization: Period of data aggregation + :param str rollup: Aggregation function - avg, sum, min, max, count, none + """ pulumi.set(__self__, "query", query) pulumi.set(__self__, "type", type) if quantization is not None: @@ -5161,21 +9755,33 @@ def __init__(__self__, *, @property @pulumi.getter def query(self) -> str: + """ + Query for the metrics + """ return pulumi.get(self, "query") @property @pulumi.getter def type(self) -> str: + """ + Sumologic source - metrics or logs + """ return pulumi.get(self, "type") @property @pulumi.getter def quantization(self) -> Optional[str]: + """ + Period of data aggregation + """ return pulumi.get(self, "quantization") @property @pulumi.getter def rollup(self) -> Optional[str]: + """ + Aggregation function - avg, sum, min, max, count, none + """ return pulumi.get(self, "rollup") @@ -5200,11 +9806,17 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, test_id: int): + """ + :param int test_id: ID of the test + """ pulumi.set(__self__, "test_id", test_id) @property @pulumi.getter(name="testId") def test_id(self) -> int: + """ + ID of the test + """ return pulumi.get(self, "test_id") @@ -5314,17 +9926,27 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, start_time: str, time_zone: str): + """ + :param str start_time: Date of the start + :param str time_zone: Timezone name in IANA Time Zone Database + """ pulumi.set(__self__, "start_time", start_time) pulumi.set(__self__, "time_zone", time_zone) @property @pulumi.getter(name="startTime") def start_time(self) -> str: + """ + Date of the start + """ return pulumi.get(self, "start_time") @property @pulumi.getter(name="timeZone") def time_zone(self) -> str: + """ + Timezone name in IANA Time Zone Database + """ return pulumi.get(self, "time_zone") diff --git a/sdk/python/pulumi_nobl9/project.py b/sdk/python/piclemx_pulumi_nobl9/project.py similarity index 99% rename from sdk/python/pulumi_nobl9/project.py rename to sdk/python/piclemx_pulumi_nobl9/project.py index 353c31a..d045e23 100644 --- a/sdk/python/pulumi_nobl9/project.py +++ b/sdk/python/piclemx_pulumi_nobl9/project.py @@ -180,7 +180,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this = nobl9.Project("this", description="An example N9 Terraform project", @@ -231,7 +231,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this = nobl9.Project("this", description="An example N9 Terraform project", diff --git a/sdk/python/pulumi_nobl9/provider.py b/sdk/python/piclemx_pulumi_nobl9/provider.py similarity index 92% rename from sdk/python/pulumi_nobl9/provider.py rename to sdk/python/piclemx_pulumi_nobl9/provider.py index 6ce0121..c22a171 100644 --- a/sdk/python/pulumi_nobl9/provider.py +++ b/sdk/python/piclemx_pulumi_nobl9/provider.py @@ -16,34 +16,36 @@ class ProviderArgs: def __init__(__self__, *, client_id: pulumi.Input[str], client_secret: pulumi.Input[str], - organization: pulumi.Input[str], - project: pulumi.Input[str], ingest_url: Optional[pulumi.Input[str]] = None, okta_auth_server: Optional[pulumi.Input[str]] = None, - okta_org_url: Optional[pulumi.Input[str]] = None): + okta_org_url: Optional[pulumi.Input[str]] = None, + organization: Optional[pulumi.Input[str]] = None, + project: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Provider resource. :param pulumi.Input[str] client_id: the [Client ID](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect to Nobl9. :param pulumi.Input[str] client_secret: the [Client Secret](https://docs.nobl9.com/sloctl-user-guide/#configuration) of your Nobl9 account required to connect to Nobl9. - :param pulumi.Input[str] organization: Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that - contains resources managed by the Nobl9 Terraform provider. - :param pulumi.Input[str] project: Nobl9 project used when importing resources. :param pulumi.Input[str] ingest_url: Nobl9 API URL. :param pulumi.Input[str] okta_auth_server: Authorization service configuration. :param pulumi.Input[str] okta_org_url: Authorization service URL. + :param pulumi.Input[str] organization: Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that + contains resources managed by the Nobl9 Terraform provider. + :param pulumi.Input[str] project: Nobl9 project used when importing resources. """ pulumi.set(__self__, "client_id", client_id) pulumi.set(__self__, "client_secret", client_secret) - pulumi.set(__self__, "organization", organization) - pulumi.set(__self__, "project", project) if ingest_url is not None: pulumi.set(__self__, "ingest_url", ingest_url) if okta_auth_server is not None: pulumi.set(__self__, "okta_auth_server", okta_auth_server) if okta_org_url is not None: pulumi.set(__self__, "okta_org_url", okta_org_url) + if organization is not None: + pulumi.set(__self__, "organization", organization) + if project is not None: + pulumi.set(__self__, "project", project) @property @pulumi.getter(name="clientId") @@ -71,31 +73,6 @@ def client_secret(self) -> pulumi.Input[str]: def client_secret(self, value: pulumi.Input[str]): pulumi.set(self, "client_secret", value) - @property - @pulumi.getter - def organization(self) -> pulumi.Input[str]: - """ - Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that - contains resources managed by the Nobl9 Terraform provider. - """ - return pulumi.get(self, "organization") - - @organization.setter - def organization(self, value: pulumi.Input[str]): - pulumi.set(self, "organization", value) - - @property - @pulumi.getter - def project(self) -> pulumi.Input[str]: - """ - Nobl9 project used when importing resources. - """ - return pulumi.get(self, "project") - - @project.setter - def project(self, value: pulumi.Input[str]): - pulumi.set(self, "project", value) - @property @pulumi.getter(name="ingestUrl") def ingest_url(self) -> Optional[pulumi.Input[str]]: @@ -132,6 +109,31 @@ def okta_org_url(self) -> Optional[pulumi.Input[str]]: def okta_org_url(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "okta_org_url", value) + @property + @pulumi.getter + def organization(self) -> Optional[pulumi.Input[str]]: + """ + Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that + contains resources managed by the Nobl9 Terraform provider. + """ + return pulumi.get(self, "organization") + + @organization.setter + def organization(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "organization", value) + + @property + @pulumi.getter + def project(self) -> Optional[pulumi.Input[str]]: + """ + Nobl9 project used when importing resources. + """ + return pulumi.get(self, "project") + + @project.setter + def project(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "project", value) + class Provider(pulumi.ProviderResource): @overload @@ -213,16 +215,14 @@ def _internal_init(__self__, __props__.__dict__["client_id"] = client_id if client_secret is None and not opts.urn: raise TypeError("Missing required property 'client_secret'") - __props__.__dict__["client_secret"] = client_secret + __props__.__dict__["client_secret"] = None if client_secret is None else pulumi.Output.secret(client_secret) __props__.__dict__["ingest_url"] = ingest_url __props__.__dict__["okta_auth_server"] = okta_auth_server __props__.__dict__["okta_org_url"] = okta_org_url - if organization is None and not opts.urn: - raise TypeError("Missing required property 'organization'") __props__.__dict__["organization"] = organization - if project is None and not opts.urn: - raise TypeError("Missing required property 'project'") __props__.__dict__["project"] = project + secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["clientSecret"]) + opts = pulumi.ResourceOptions.merge(opts, secret_opts) super(Provider, __self__).__init__( 'nobl9', resource_name, @@ -273,7 +273,7 @@ def okta_org_url(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter - def organization(self) -> pulumi.Output[str]: + def organization(self) -> pulumi.Output[Optional[str]]: """ Nobl9 [Organization ID](https://docs.nobl9.com/API_Documentation/api-endpoints-for-slo-annotations/#common-headers) that contains resources managed by the Nobl9 Terraform provider. @@ -282,7 +282,7 @@ def organization(self) -> pulumi.Output[str]: @property @pulumi.getter - def project(self) -> pulumi.Output[str]: + def project(self) -> pulumi.Output[Optional[str]]: """ Nobl9 project used when importing resources. """ diff --git a/sdk/python/piclemx_pulumi_nobl9/pulumi-plugin.json b/sdk/python/piclemx_pulumi_nobl9/pulumi-plugin.json new file mode 100644 index 0000000..245a7ef --- /dev/null +++ b/sdk/python/piclemx_pulumi_nobl9/pulumi-plugin.json @@ -0,0 +1,5 @@ +{ + "resource": true, + "name": "nobl9", + "server": "github://api.github.com/piclemx/pulumi-nobl9" +} diff --git a/sdk/python/piclemx_pulumi_nobl9/py.typed b/sdk/python/piclemx_pulumi_nobl9/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/sdk/python/pulumi_nobl9/role_binding.py b/sdk/python/piclemx_pulumi_nobl9/role_binding.py similarity index 73% rename from sdk/python/pulumi_nobl9/role_binding.py rename to sdk/python/piclemx_pulumi_nobl9/role_binding.py index 0ec092f..cad71fb 100644 --- a/sdk/python/pulumi_nobl9/role_binding.py +++ b/sdk/python/piclemx_pulumi_nobl9/role_binding.py @@ -15,32 +15,37 @@ class RoleBindingArgs: def __init__(__self__, *, role_ref: pulumi.Input[str], - user: pulumi.Input[str], display_name: Optional[pulumi.Input[str]] = None, + group_ref: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - project_ref: Optional[pulumi.Input[str]] = None): + project_ref: Optional[pulumi.Input[str]] = None, + user: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a RoleBinding resource. - :param pulumi.Input[str] role_ref: Role name; the role that you want the user to assume. - :param pulumi.Input[str] user: Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + :param pulumi.Input[str] role_ref: Role name; the role that you want the user or group to assume. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[str] group_ref: Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. :param pulumi.Input[str] name: Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] project_ref: Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + :param pulumi.Input[str] project_ref: Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + :param pulumi.Input[str] user: Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). """ pulumi.set(__self__, "role_ref", role_ref) - pulumi.set(__self__, "user", user) if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if group_ref is not None: + pulumi.set(__self__, "group_ref", group_ref) if name is not None: pulumi.set(__self__, "name", name) if project_ref is not None: pulumi.set(__self__, "project_ref", project_ref) + if user is not None: + pulumi.set(__self__, "user", user) @property @pulumi.getter(name="roleRef") def role_ref(self) -> pulumi.Input[str]: """ - Role name; the role that you want the user to assume. + Role name; the role that you want the user or group to assume. """ return pulumi.get(self, "role_ref") @@ -48,18 +53,6 @@ def role_ref(self) -> pulumi.Input[str]: def role_ref(self, value: pulumi.Input[str]): pulumi.set(self, "role_ref", value) - @property - @pulumi.getter - def user(self) -> pulumi.Input[str]: - """ - Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). - """ - return pulumi.get(self, "user") - - @user.setter - def user(self, value: pulumi.Input[str]): - pulumi.set(self, "user", value) - @property @pulumi.getter(name="displayName") def display_name(self) -> Optional[pulumi.Input[str]]: @@ -72,6 +65,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="groupRef") + def group_ref(self) -> Optional[pulumi.Input[str]]: + """ + Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + """ + return pulumi.get(self, "group_ref") + + @group_ref.setter + def group_ref(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "group_ref", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -88,7 +93,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="projectRef") def project_ref(self) -> Optional[pulumi.Input[str]]: """ - Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. """ return pulumi.get(self, "project_ref") @@ -96,11 +101,24 @@ def project_ref(self) -> Optional[pulumi.Input[str]]: def project_ref(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "project_ref", value) + @property + @pulumi.getter + def user(self) -> Optional[pulumi.Input[str]]: + """ + Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). + """ + return pulumi.get(self, "user") + + @user.setter + def user(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "user", value) + @pulumi.input_type class _RoleBindingState: def __init__(__self__, *, display_name: Optional[pulumi.Input[str]] = None, + group_ref: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, project_ref: Optional[pulumi.Input[str]] = None, role_ref: Optional[pulumi.Input[str]] = None, @@ -108,13 +126,16 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering RoleBinding resources. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[str] group_ref: Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. :param pulumi.Input[str] name: Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] project_ref: Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. - :param pulumi.Input[str] role_ref: Role name; the role that you want the user to assume. - :param pulumi.Input[str] user: Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + :param pulumi.Input[str] project_ref: Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + :param pulumi.Input[str] role_ref: Role name; the role that you want the user or group to assume. + :param pulumi.Input[str] user: Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). """ if display_name is not None: pulumi.set(__self__, "display_name", display_name) + if group_ref is not None: + pulumi.set(__self__, "group_ref", group_ref) if name is not None: pulumi.set(__self__, "name", name) if project_ref is not None: @@ -136,6 +157,18 @@ def display_name(self) -> Optional[pulumi.Input[str]]: def display_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "display_name", value) + @property + @pulumi.getter(name="groupRef") + def group_ref(self) -> Optional[pulumi.Input[str]]: + """ + Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + """ + return pulumi.get(self, "group_ref") + + @group_ref.setter + def group_ref(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "group_ref", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -152,7 +185,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="projectRef") def project_ref(self) -> Optional[pulumi.Input[str]]: """ - Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. """ return pulumi.get(self, "project_ref") @@ -164,7 +197,7 @@ def project_ref(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="roleRef") def role_ref(self) -> Optional[pulumi.Input[str]]: """ - Role name; the role that you want the user to assume. + Role name; the role that you want the user or group to assume. """ return pulumi.get(self, "role_ref") @@ -176,7 +209,7 @@ def role_ref(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def user(self) -> Optional[pulumi.Input[str]]: """ - Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). """ return pulumi.get(self, "user") @@ -191,6 +224,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, display_name: Optional[pulumi.Input[str]] = None, + group_ref: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, project_ref: Optional[pulumi.Input[str]] = None, role_ref: Optional[pulumi.Input[str]] = None, @@ -203,12 +237,12 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this = nobl9.RoleBinding("this", - project_ref="1234567890asdfghjkl", - role_ref="project-owner", - user="1234567890asdfghjkl") + group_ref="test", + project_ref="default", + role_ref="project-owner") ``` ## Useful Links @@ -219,10 +253,11 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[str] group_ref: Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. :param pulumi.Input[str] name: Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] project_ref: Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. - :param pulumi.Input[str] role_ref: Role name; the role that you want the user to assume. - :param pulumi.Input[str] user: Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + :param pulumi.Input[str] project_ref: Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + :param pulumi.Input[str] role_ref: Role name; the role that you want the user or group to assume. + :param pulumi.Input[str] user: Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). """ ... @overload @@ -237,12 +272,12 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this = nobl9.RoleBinding("this", - project_ref="1234567890asdfghjkl", - role_ref="project-owner", - user="1234567890asdfghjkl") + group_ref="test", + project_ref="default", + role_ref="project-owner") ``` ## Useful Links @@ -266,6 +301,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, display_name: Optional[pulumi.Input[str]] = None, + group_ref: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, project_ref: Optional[pulumi.Input[str]] = None, role_ref: Optional[pulumi.Input[str]] = None, @@ -280,13 +316,12 @@ def _internal_init(__self__, __props__ = RoleBindingArgs.__new__(RoleBindingArgs) __props__.__dict__["display_name"] = display_name + __props__.__dict__["group_ref"] = group_ref __props__.__dict__["name"] = name __props__.__dict__["project_ref"] = project_ref if role_ref is None and not opts.urn: raise TypeError("Missing required property 'role_ref'") __props__.__dict__["role_ref"] = role_ref - if user is None and not opts.urn: - raise TypeError("Missing required property 'user'") __props__.__dict__["user"] = user super(RoleBinding, __self__).__init__( 'nobl9:index/roleBinding:RoleBinding', @@ -299,6 +334,7 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, display_name: Optional[pulumi.Input[str]] = None, + group_ref: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, project_ref: Optional[pulumi.Input[str]] = None, role_ref: Optional[pulumi.Input[str]] = None, @@ -311,16 +347,18 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[str] group_ref: Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. :param pulumi.Input[str] name: Automatically generated, unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). - :param pulumi.Input[str] project_ref: Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. - :param pulumi.Input[str] role_ref: Role name; the role that you want the user to assume. - :param pulumi.Input[str] user: Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + :param pulumi.Input[str] project_ref: Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + :param pulumi.Input[str] role_ref: Role name; the role that you want the user or group to assume. + :param pulumi.Input[str] user: Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) __props__ = _RoleBindingState.__new__(_RoleBindingState) __props__.__dict__["display_name"] = display_name + __props__.__dict__["group_ref"] = group_ref __props__.__dict__["name"] = name __props__.__dict__["project_ref"] = project_ref __props__.__dict__["role_ref"] = role_ref @@ -335,6 +373,14 @@ def display_name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "display_name") + @property + @pulumi.getter(name="groupRef") + def group_ref(self) -> pulumi.Output[Optional[str]]: + """ + Group name that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Groups**) or using sloctl `get usergroups` command. + """ + return pulumi.get(self, "group_ref") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -347,7 +393,7 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter(name="projectRef") def project_ref(self) -> pulumi.Output[Optional[str]]: """ - Project name, the project in which we want the user to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. + Project name, the project in which we want the user or group to assume the specified role. When `project_ref` is empty, `role_ref` must contain an Organization Role. """ return pulumi.get(self, "project_ref") @@ -355,15 +401,15 @@ def project_ref(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="roleRef") def role_ref(self) -> pulumi.Output[str]: """ - Role name; the role that you want the user to assume. + Role name; the role that you want the user or group to assume. """ return pulumi.get(self, "role_ref") @property @pulumi.getter - def user(self) -> pulumi.Output[str]: + def user(self) -> pulumi.Output[Optional[str]]: """ - Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Users**). + Okta User ID that can be retrieved from the Nobl9 UI (**Settings** > **Access Controls** > **Users**). """ return pulumi.get(self, "user") diff --git a/sdk/python/pulumi_nobl9/service.py b/sdk/python/piclemx_pulumi_nobl9/service.py similarity index 99% rename from sdk/python/pulumi_nobl9/service.py rename to sdk/python/piclemx_pulumi_nobl9/service.py index 80473fb..bfbfb83 100644 --- a/sdk/python/pulumi_nobl9/service.py +++ b/sdk/python/piclemx_pulumi_nobl9/service.py @@ -226,7 +226,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this_project = nobl9.Project("thisProject", display_name="My Project", @@ -280,7 +280,7 @@ def __init__(__self__, ```python import pulumi - import pulumi_nobl9 as nobl9 + import piclemx_pulumi_nobl9 as nobl9 this_project = nobl9.Project("thisProject", display_name="My Project", diff --git a/sdk/python/pulumi_nobl9/slo.py b/sdk/python/piclemx_pulumi_nobl9/slo.py similarity index 64% rename from sdk/python/pulumi_nobl9/slo.py rename to sdk/python/piclemx_pulumi_nobl9/slo.py index 255af26..38332bc 100644 --- a/sdk/python/pulumi_nobl9/slo.py +++ b/sdk/python/piclemx_pulumi_nobl9/slo.py @@ -23,6 +23,8 @@ def __init__(__self__, *, service: pulumi.Input[str], time_window: pulumi.Input['SloTimeWindowArgs'], alert_policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + anomaly_config: Optional[pulumi.Input['SloAnomalyConfigArgs']] = None, + attachment: Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]] = None, attachments: Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]] = None, composite: Optional[pulumi.Input['SloCompositeArgs']] = None, description: Optional[pulumi.Input[str]] = None, @@ -33,14 +35,15 @@ def __init__(__self__, *, The set of arguments for constructing a Slo resource. :param pulumi.Input[str] budgeting_method: Method which will be use to calculate budget :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveArgs']]] objectives: [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. :param pulumi.Input[str] service: Name of the service :param pulumi.Input[Sequence[pulumi.Input[str]]] alert_policies: Alert Policies attached to SLO + :param pulumi.Input['SloAnomalyConfigArgs'] anomaly_config: Configuration for Anomalies. Currently supported Anomaly Type is NoData :param pulumi.Input['SloCompositeArgs'] composite: [Composite SLO documentation](https://docs.nobl9.com/yaml-guide/#slo) :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. - :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[str] display_name: Name displayed for the attachment. Max. length: 63 characters. :param pulumi.Input[Sequence[pulumi.Input['SloLabelArgs']]] labels: [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. """ pulumi.set(__self__, "budgeting_method", budgeting_method) pulumi.set(__self__, "indicator", indicator) @@ -50,6 +53,10 @@ def __init__(__self__, *, pulumi.set(__self__, "time_window", time_window) if alert_policies is not None: pulumi.set(__self__, "alert_policies", alert_policies) + if anomaly_config is not None: + pulumi.set(__self__, "anomaly_config", anomaly_config) + if attachment is not None: + pulumi.set(__self__, "attachment", attachment) if attachments is not None: warnings.warn("""\"attachments\" argument is deprecated use \"attachment\" instead""", DeprecationWarning) pulumi.log.warn("""attachments is deprecated: \"attachments\" argument is deprecated use \"attachment\" instead""") @@ -103,7 +110,7 @@ def objectives(self, value: pulumi.Input[Sequence[pulumi.Input['SloObjectiveArgs @pulumi.getter def project(self) -> pulumi.Input[str]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. """ return pulumi.get(self, "project") @@ -144,9 +151,33 @@ def alert_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def alert_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "alert_policies", value) + @property + @pulumi.getter(name="anomalyConfig") + def anomaly_config(self) -> Optional[pulumi.Input['SloAnomalyConfigArgs']]: + """ + Configuration for Anomalies. Currently supported Anomaly Type is NoData + """ + return pulumi.get(self, "anomaly_config") + + @anomaly_config.setter + def anomaly_config(self, value: Optional[pulumi.Input['SloAnomalyConfigArgs']]): + pulumi.set(self, "anomaly_config", value) + + @property + @pulumi.getter + def attachment(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]]: + return pulumi.get(self, "attachment") + + @attachment.setter + def attachment(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]]): + pulumi.set(self, "attachment", value) + @property @pulumi.getter def attachments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]]: + warnings.warn("""\"attachments\" argument is deprecated use \"attachment\" instead""", DeprecationWarning) + pulumi.log.warn("""attachments is deprecated: \"attachments\" argument is deprecated use \"attachment\" instead""") + return pulumi.get(self, "attachments") @attachments.setter @@ -181,7 +212,7 @@ def description(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="displayName") def display_name(self) -> Optional[pulumi.Input[str]]: """ - User-friendly display name of the resource. + Name displayed for the attachment. Max. length: 63 characters. """ return pulumi.get(self, "display_name") @@ -205,7 +236,7 @@ def labels(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloLabelArg @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -218,6 +249,8 @@ def name(self, value: Optional[pulumi.Input[str]]): class _SloState: def __init__(__self__, *, alert_policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + anomaly_config: Optional[pulumi.Input['SloAnomalyConfigArgs']] = None, + attachment: Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]] = None, attachments: Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]] = None, budgeting_method: Optional[pulumi.Input[str]] = None, composite: Optional[pulumi.Input['SloCompositeArgs']] = None, @@ -233,18 +266,23 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering Slo resources. :param pulumi.Input[Sequence[pulumi.Input[str]]] alert_policies: Alert Policies attached to SLO + :param pulumi.Input['SloAnomalyConfigArgs'] anomaly_config: Configuration for Anomalies. Currently supported Anomaly Type is NoData :param pulumi.Input[str] budgeting_method: Method which will be use to calculate budget :param pulumi.Input['SloCompositeArgs'] composite: [Composite SLO documentation](https://docs.nobl9.com/yaml-guide/#slo) :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. - :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[str] display_name: Name displayed for the attachment. Max. length: 63 characters. :param pulumi.Input[Sequence[pulumi.Input['SloLabelArgs']]] labels: [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. :param pulumi.Input[Sequence[pulumi.Input['SloObjectiveArgs']]] objectives: [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. :param pulumi.Input[str] service: Name of the service """ if alert_policies is not None: pulumi.set(__self__, "alert_policies", alert_policies) + if anomaly_config is not None: + pulumi.set(__self__, "anomaly_config", anomaly_config) + if attachment is not None: + pulumi.set(__self__, "attachment", attachment) if attachments is not None: warnings.warn("""\"attachments\" argument is deprecated use \"attachment\" instead""", DeprecationWarning) pulumi.log.warn("""attachments is deprecated: \"attachments\" argument is deprecated use \"attachment\" instead""") @@ -285,9 +323,33 @@ def alert_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def alert_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "alert_policies", value) + @property + @pulumi.getter(name="anomalyConfig") + def anomaly_config(self) -> Optional[pulumi.Input['SloAnomalyConfigArgs']]: + """ + Configuration for Anomalies. Currently supported Anomaly Type is NoData + """ + return pulumi.get(self, "anomaly_config") + + @anomaly_config.setter + def anomaly_config(self, value: Optional[pulumi.Input['SloAnomalyConfigArgs']]): + pulumi.set(self, "anomaly_config", value) + + @property + @pulumi.getter + def attachment(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]]: + return pulumi.get(self, "attachment") + + @attachment.setter + def attachment(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]]): + pulumi.set(self, "attachment", value) + @property @pulumi.getter def attachments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SloAttachmentArgs']]]]: + warnings.warn("""\"attachments\" argument is deprecated use \"attachment\" instead""", DeprecationWarning) + pulumi.log.warn("""attachments is deprecated: \"attachments\" argument is deprecated use \"attachment\" instead""") + return pulumi.get(self, "attachments") @attachments.setter @@ -334,7 +396,7 @@ def description(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="displayName") def display_name(self) -> Optional[pulumi.Input[str]]: """ - User-friendly display name of the resource. + Name displayed for the attachment. Max. length: 63 characters. """ return pulumi.get(self, "display_name") @@ -367,7 +429,7 @@ def labels(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloLabelArg @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -391,7 +453,7 @@ def objectives(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SloObje @pulumi.getter def project(self) -> Optional[pulumi.Input[str]]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. """ return pulumi.get(self, "project") @@ -427,6 +489,8 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, alert_policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + anomaly_config: Optional[pulumi.Input[pulumi.InputType['SloAnomalyConfigArgs']]] = None, + attachment: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloAttachmentArgs']]]]] = None, attachments: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloAttachmentArgs']]]]] = None, budgeting_method: Optional[pulumi.Input[str]] = None, composite: Optional[pulumi.Input[pulumi.InputType['SloCompositeArgs']]] = None, @@ -445,6 +509,115 @@ def __init__(__self__, For more information, refer to [SLO configuration documentation](https://docs.nobl9.com/yaml-guide#slo) + ## Example Usage + + ```python + import pulumi + import piclemx_pulumi_nobl9 as nobl9 + + this_project = nobl9.Project("thisProject", + display_name="Test N9 Terraform", + description="An example N9 Terraform project") + this_service = nobl9.Service("thisService", + project=this_project.name, + display_name=this_project.display_name.apply(lambda display_name: f"{display_name} Front Page"), + description="Front page service") + this_slo = nobl9.Slo("thisSlo", + service=this_service.name, + budgeting_method="Occurrences", + project=this_project.name, + labels=[ + nobl9.SloLabelArgs( + key="env", + values=[ + "dev", + "prod", + ], + ), + nobl9.SloLabelArgs( + key="team", + values=["red"], + ), + ], + attachments=[ + nobl9.SloAttachmentArgs( + url="https://www.nobl9.com/", + display_name="Nobl9 Reliability Center", + ), + nobl9.SloAttachmentArgs( + url="https://duckduckgo.com/", + display_name="Nice search engine", + ), + ], + alert_policies=["foo-front-page-latency"], + time_window=nobl9.SloTimeWindowArgs( + unit="Day", + count=30, + is_rolling=True, + ), + objectives=[nobl9.SloObjectiveArgs( + name="tf-objective-1", + target=0.99, + display_name="OK", + value=2000, + op="gte", + raw_metrics=[nobl9.SloObjectiveRawMetricArgs( + queries=[nobl9.SloObjectiveRawMetricQueryArgs( + prometheuses=[nobl9.SloObjectiveRawMetricQueryPrometheusArgs( + promql=" latency_west_c7{code=\\"ALL\\",instance=\\"localhost:3000\\",job=\\"prometheus\\",service=\\"glob_account\\"}\\n", + )], + )], + )], + )], + indicator=nobl9.SloIndicatorArgs( + name="test-terraform-prom-agent", + )) + this_index_slo_slo = nobl9.Slo("thisIndex/sloSlo", + service=this_service.name, + budgeting_method="Occurrences", + project=this_project.name, + time_window=nobl9.SloTimeWindowArgs( + unit="Day", + count=30, + is_rolling=True, + ), + objectives=[nobl9.SloObjectiveArgs( + name="tf-objective-1", + target=0.99, + display_name="OK", + value=1, + count_metrics=[nobl9.SloObjectiveCountMetricArgs( + incremental=True, + goods=[nobl9.SloObjectiveCountMetricGoodArgs( + prometheuses=[nobl9.SloObjectiveCountMetricGoodPrometheusArgs( + promql="1.0", + )], + )], + totals=[nobl9.SloObjectiveCountMetricTotalArgs( + prometheuses=[nobl9.SloObjectiveCountMetricTotalPrometheusArgs( + promql="1.0", + )], + )], + )], + )], + indicator=nobl9.SloIndicatorArgs( + name="test-terraform-prom-agent", + ), + anomaly_config=nobl9.SloAnomalyConfigArgs( + no_data=nobl9.SloAnomalyConfigNoDataArgs( + alert_methods=[ + nobl9.SloAnomalyConfigNoDataAlertMethodArgs( + name="foo-method-method", + project="default", + ), + nobl9.SloAnomalyConfigNoDataAlertMethodArgs( + name="bar-alert-method", + project="default", + ), + ], + ), + )) + ``` ## Nobl9 Official Documentation https://docs.nobl9.com/SLOs_as_code/?_highlight=slo @@ -452,14 +625,15 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] alert_policies: Alert Policies attached to SLO + :param pulumi.Input[pulumi.InputType['SloAnomalyConfigArgs']] anomaly_config: Configuration for Anomalies. Currently supported Anomaly Type is NoData :param pulumi.Input[str] budgeting_method: Method which will be use to calculate budget :param pulumi.Input[pulumi.InputType['SloCompositeArgs']] composite: [Composite SLO documentation](https://docs.nobl9.com/yaml-guide/#slo) :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. - :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[str] display_name: Name displayed for the attachment. Max. length: 63 characters. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloLabelArgs']]]] labels: [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloObjectiveArgs']]]] objectives: [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. :param pulumi.Input[str] service: Name of the service """ ... @@ -473,6 +647,115 @@ def __init__(__self__, For more information, refer to [SLO configuration documentation](https://docs.nobl9.com/yaml-guide#slo) + ## Example Usage + + ```python + import pulumi + import piclemx_pulumi_nobl9 as nobl9 + + this_project = nobl9.Project("thisProject", + display_name="Test N9 Terraform", + description="An example N9 Terraform project") + this_service = nobl9.Service("thisService", + project=this_project.name, + display_name=this_project.display_name.apply(lambda display_name: f"{display_name} Front Page"), + description="Front page service") + this_slo = nobl9.Slo("thisSlo", + service=this_service.name, + budgeting_method="Occurrences", + project=this_project.name, + labels=[ + nobl9.SloLabelArgs( + key="env", + values=[ + "dev", + "prod", + ], + ), + nobl9.SloLabelArgs( + key="team", + values=["red"], + ), + ], + attachments=[ + nobl9.SloAttachmentArgs( + url="https://www.nobl9.com/", + display_name="Nobl9 Reliability Center", + ), + nobl9.SloAttachmentArgs( + url="https://duckduckgo.com/", + display_name="Nice search engine", + ), + ], + alert_policies=["foo-front-page-latency"], + time_window=nobl9.SloTimeWindowArgs( + unit="Day", + count=30, + is_rolling=True, + ), + objectives=[nobl9.SloObjectiveArgs( + name="tf-objective-1", + target=0.99, + display_name="OK", + value=2000, + op="gte", + raw_metrics=[nobl9.SloObjectiveRawMetricArgs( + queries=[nobl9.SloObjectiveRawMetricQueryArgs( + prometheuses=[nobl9.SloObjectiveRawMetricQueryPrometheusArgs( + promql=" latency_west_c7{code=\\"ALL\\",instance=\\"localhost:3000\\",job=\\"prometheus\\",service=\\"glob_account\\"}\\n", + )], + )], + )], + )], + indicator=nobl9.SloIndicatorArgs( + name="test-terraform-prom-agent", + )) + this_index_slo_slo = nobl9.Slo("thisIndex/sloSlo", + service=this_service.name, + budgeting_method="Occurrences", + project=this_project.name, + time_window=nobl9.SloTimeWindowArgs( + unit="Day", + count=30, + is_rolling=True, + ), + objectives=[nobl9.SloObjectiveArgs( + name="tf-objective-1", + target=0.99, + display_name="OK", + value=1, + count_metrics=[nobl9.SloObjectiveCountMetricArgs( + incremental=True, + goods=[nobl9.SloObjectiveCountMetricGoodArgs( + prometheuses=[nobl9.SloObjectiveCountMetricGoodPrometheusArgs( + promql="1.0", + )], + )], + totals=[nobl9.SloObjectiveCountMetricTotalArgs( + prometheuses=[nobl9.SloObjectiveCountMetricTotalPrometheusArgs( + promql="1.0", + )], + )], + )], + )], + indicator=nobl9.SloIndicatorArgs( + name="test-terraform-prom-agent", + ), + anomaly_config=nobl9.SloAnomalyConfigArgs( + no_data=nobl9.SloAnomalyConfigNoDataArgs( + alert_methods=[ + nobl9.SloAnomalyConfigNoDataAlertMethodArgs( + name="foo-method-method", + project="default", + ), + nobl9.SloAnomalyConfigNoDataAlertMethodArgs( + name="bar-alert-method", + project="default", + ), + ], + ), + )) + ``` ## Nobl9 Official Documentation https://docs.nobl9.com/SLOs_as_code/?_highlight=slo @@ -493,6 +776,8 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, alert_policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + anomaly_config: Optional[pulumi.Input[pulumi.InputType['SloAnomalyConfigArgs']]] = None, + attachment: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloAttachmentArgs']]]]] = None, attachments: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloAttachmentArgs']]]]] = None, budgeting_method: Optional[pulumi.Input[str]] = None, composite: Optional[pulumi.Input[pulumi.InputType['SloCompositeArgs']]] = None, @@ -515,9 +800,8 @@ def _internal_init(__self__, __props__ = SloArgs.__new__(SloArgs) __props__.__dict__["alert_policies"] = alert_policies - if attachments is not None and not opts.urn: - warnings.warn("""\"attachments\" argument is deprecated use \"attachment\" instead""", DeprecationWarning) - pulumi.log.warn("""attachments is deprecated: \"attachments\" argument is deprecated use \"attachment\" instead""") + __props__.__dict__["anomaly_config"] = anomaly_config + __props__.__dict__["attachment"] = attachment __props__.__dict__["attachments"] = attachments if budgeting_method is None and not opts.urn: raise TypeError("Missing required property 'budgeting_method'") @@ -553,6 +837,8 @@ def get(resource_name: str, id: pulumi.Input[str], opts: Optional[pulumi.ResourceOptions] = None, alert_policies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + anomaly_config: Optional[pulumi.Input[pulumi.InputType['SloAnomalyConfigArgs']]] = None, + attachment: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloAttachmentArgs']]]]] = None, attachments: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloAttachmentArgs']]]]] = None, budgeting_method: Optional[pulumi.Input[str]] = None, composite: Optional[pulumi.Input[pulumi.InputType['SloCompositeArgs']]] = None, @@ -573,14 +859,15 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[str]]] alert_policies: Alert Policies attached to SLO + :param pulumi.Input[pulumi.InputType['SloAnomalyConfigArgs']] anomaly_config: Configuration for Anomalies. Currently supported Anomaly Type is NoData :param pulumi.Input[str] budgeting_method: Method which will be use to calculate budget :param pulumi.Input[pulumi.InputType['SloCompositeArgs']] composite: [Composite SLO documentation](https://docs.nobl9.com/yaml-guide/#slo) :param pulumi.Input[str] description: Optional description of the resource. Here, you can add details about who is responsible for the integration (team/owner) or the purpose of creating it. - :param pulumi.Input[str] display_name: User-friendly display name of the resource. + :param pulumi.Input[str] display_name: Name displayed for the attachment. Max. length: 63 characters. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloLabelArgs']]]] labels: [Labels](https://docs.nobl9.com/Features/labels/) containing a single key and a list of values. - :param pulumi.Input[str] name: Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] name: The name of the previously defined alert method. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SloObjectiveArgs']]]] objectives: [Objectives documentation](https://docs.nobl9.com/yaml-guide#objective) - :param pulumi.Input[str] project: Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + :param pulumi.Input[str] project: Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. :param pulumi.Input[str] service: Name of the service """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -588,6 +875,8 @@ def get(resource_name: str, __props__ = _SloState.__new__(_SloState) __props__.__dict__["alert_policies"] = alert_policies + __props__.__dict__["anomaly_config"] = anomaly_config + __props__.__dict__["attachment"] = attachment __props__.__dict__["attachments"] = attachments __props__.__dict__["budgeting_method"] = budgeting_method __props__.__dict__["composite"] = composite @@ -610,9 +899,25 @@ def alert_policies(self) -> pulumi.Output[Optional[Sequence[str]]]: """ return pulumi.get(self, "alert_policies") + @property + @pulumi.getter(name="anomalyConfig") + def anomaly_config(self) -> pulumi.Output[Optional['outputs.SloAnomalyConfig']]: + """ + Configuration for Anomalies. Currently supported Anomaly Type is NoData + """ + return pulumi.get(self, "anomaly_config") + + @property + @pulumi.getter + def attachment(self) -> pulumi.Output[Optional[Sequence['outputs.SloAttachment']]]: + return pulumi.get(self, "attachment") + @property @pulumi.getter def attachments(self) -> pulumi.Output[Optional[Sequence['outputs.SloAttachment']]]: + warnings.warn("""\"attachments\" argument is deprecated use \"attachment\" instead""", DeprecationWarning) + pulumi.log.warn("""attachments is deprecated: \"attachments\" argument is deprecated use \"attachment\" instead""") + return pulumi.get(self, "attachments") @property @@ -643,7 +948,7 @@ def description(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="displayName") def display_name(self) -> pulumi.Output[Optional[str]]: """ - User-friendly display name of the resource. + Name displayed for the attachment. Max. length: 63 characters. """ return pulumi.get(self, "display_name") @@ -664,7 +969,7 @@ def labels(self) -> pulumi.Output[Optional[Sequence['outputs.SloLabel']]]: @pulumi.getter def name(self) -> pulumi.Output[str]: """ - Unique name of the resource, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + The name of the previously defined alert method. """ return pulumi.get(self, "name") @@ -680,7 +985,7 @@ def objectives(self) -> pulumi.Output[Sequence['outputs.SloObjective']]: @pulumi.getter def project(self) -> pulumi.Output[str]: """ - Name of the Nobl9 project the resource sits in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). + Project name the Alert Method is in, must conform to the naming convention from [DNS RFC1123](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names). If not defined, Nobl9 returns a default value for this field. """ return pulumi.get(self, "project") diff --git a/sdk/python/pulumi_nobl9/pulumi-plugin.json b/sdk/python/pulumi_nobl9/pulumi-plugin.json deleted file mode 100644 index 44404ee..0000000 --- a/sdk/python/pulumi_nobl9/pulumi-plugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "resource": true, - "name": "nobl9", - "server": "https://github.com/piclemx/pulumi-nobl9/releases/" -} diff --git a/sdk/python/setup.py b/sdk/python/setup.py index 1cc6f4d..e04830c 100644 --- a/sdk/python/setup.py +++ b/sdk/python/setup.py @@ -3,32 +3,13 @@ # *** Do not edit by hand unless you're certain you know what you are doing! *** import errno +import os from setuptools import setup, find_packages from setuptools.command.install import install from subprocess import check_call -VERSION = "0.0.0" -PLUGIN_VERSION = "0.0.0" - -class InstallPluginCommand(install): - def run(self): - install.run(self) - try: - check_call(['pulumi', 'plugin', 'install', 'resource', 'nobl9', PLUGIN_VERSION, '--server', 'https://github.com/piclemx/pulumi-nobl9/releases/']) - except OSError as error: - if error.errno == errno.ENOENT: - print(f""" - There was an error installing the nobl9 resource provider plugin. - It looks like `pulumi` is not installed on your system. - Please visit https://pulumi.com/ to install the Pulumi CLI. - You may try manually installing the plugin by running - `pulumi plugin install resource nobl9 {PLUGIN_VERSION}` - """) - else: - raise - - +VERSION = os.getenv("PULUMI_PYTHON_VERSION", "0.0.0") def readme(): try: with open('README.md', encoding='utf-8') as f: @@ -37,28 +18,27 @@ def readme(): return "nobl9 Pulumi Package - Development Version" -setup(name='pulumi_nobl9', +setup(name='piclemx_pulumi_nobl9', + python_requires='>=3.7', version=VERSION, - description="A Pulumi package for creating and managing Nobl9 cloud resources.", + description="A Pulumi package for creating and managing Nobl9 resources", long_description=readme(), long_description_content_type='text/markdown', - cmdclass={ - 'install': InstallPluginCommand, - }, - keywords='pulumi nobl9 n9 category/cloud', - url='https://www.pulumi.com', + keywords='pulumi nobl9 category/monitoring', + url='https://github.com/piclemx/pulumi-nobl9', project_urls={ 'Repository': 'https://github.com/piclemx/pulumi-nobl9' }, license='Apache-2.0', packages=find_packages(), package_data={ - 'pulumi_nobl9': [ + 'piclemx_pulumi_nobl9': [ 'py.typed', 'pulumi-plugin.json', ] }, install_requires=[ + 'importlib-metadata>=6.0.0,<7.0.0; python_version < "3.8"', 'parver>=0.2.1', 'pulumi>=3.0.0,<4.0.0', 'semver>=2.8.1'