UNPKG

@pulumi/wavefront

Version:

A Pulumi package for creating and managing wavefront cloud resources.

195 lines (194 loc) 6.79 kB
import * as pulumi from "@pulumi/pulumi"; /** * Provides a Wavefront Dashboard JSON resource. This allows dashboards to be created, updated, and deleted. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as wavefront from "@pulumi/wavefront"; * * const testDashboardJson = new wavefront.DashboardJson("test_dashboard_json", {dashboardJson: `{ * "acl": { * "canModify": [ * "group-uuid", * "role-uuid" * ], * "canView": [ * "group-uuid", * "role-uuid" * ] * }, * "name": "Terraform Test Dashboard Json", * "description": "a", * "eventFilterType": "BYCHART", * "eventQuery": "", * "defaultTimeWindow": "", * "url": "tftestimport", * "displayDescription": false, * "displaySectionTableOfContents": true, * "displayQueryParameters": false, * "sections": [ * { * "name": "section 1", * "rows": [ * { * "charts": [ * { * "name": "chart 1", * "sources": [ * { * "name": "source 1", * "query": "ts()", * "scatterPlotSource": "Y", * "querybuilderEnabled": false, * "sourceDescription": "" * } * ], * "units": "someunit", * "base": 0, * "noDefaultEvents": false, * "interpolatePoints": false, * "includeObsoleteMetrics": false, * "description": "This is chart 1, showing something", * "chartSettings": { * "type": "markdown-widget", * "max": 100, * "expectedDataSpacing": 120, * "windowing": "full", * "windowSize": 10, * "autoColumnTags": false, * "columnTags": "deprecated", * "tagMode": "all", * "numTags": 2, * "customTags": [ * "tag1", * "tag2" * ], * "groupBySource": true, * "y1Max": 100, * "y1Units": "units", * "y0ScaleSIBy1024": true, * "y1ScaleSIBy1024": true, * "y0UnitAutoscaling": true, * "y1UnitAutoscaling": true, * "fixedLegendEnabled": true, * "fixedLegendUseRawStats": true, * "fixedLegendPosition": "RIGHT", * "fixedLegendDisplayStats": [ * "stat1", * "stat2" * ], * "fixedLegendFilterSort": "TOP", * "fixedLegendFilterLimit": 1, * "fixedLegendFilterField": "CURRENT", * "plainMarkdownContent": "markdown content" * }, * "chartAttributes": { * "dashboardLinks": { * "*": { * "variables": { * "xxx": "xxx" * }, * "destination": "/dashboards/xxxx" * } * } * }, * "summarization": "MEAN" * } * ], * "heightFactor": 50 * } * ] * } * ], * "parameterDetails": { * "param": { * "hideFromView": false, * "description": null, * "allowAll": null, * "tagKey": null, * "queryValue": null, * "dynamicFieldType": null, * "reverseDynSort": null, * "parameterType": "SIMPLE", * "label": "test", * "defaultValue": "Label", * "valuesToReadableStrings": { * "Label": "test" * }, * "selectedLabel": "Label", * "value": "test" * } * }, * "tags": { * "customerTags": [ * "terraform" * ] * } * } * `}); * ``` * * * * *Note: * ** If there are dynamic variables in the Wavefront dashboard json, then these variables must be present in a separate file as mentioned in the section below. * * ## Import * * Dashboard JSON can be imported by using the `id`, e.g.: * * ```sh * $ pulumi import wavefront:index/dashboardJson:DashboardJson dashboard_json tftestimport * ``` */ export declare class DashboardJson extends pulumi.CustomResource { /** * Get an existing DashboardJson 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. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DashboardJsonState, opts?: pulumi.CustomResourceOptions): DashboardJson; /** * Returns true if the given object is an instance of DashboardJson. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is DashboardJson; /** * See the [Wavefront API Documentation](https://docs.wavefront.com/wavefront_api.html#api-documentation-wavefront-instance) * for instructions on how to get to your API documentation for more details. */ readonly dashboardJson: pulumi.Output<string>; /** * Create a DashboardJson 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: DashboardJsonArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering DashboardJson resources. */ export interface DashboardJsonState { /** * See the [Wavefront API Documentation](https://docs.wavefront.com/wavefront_api.html#api-documentation-wavefront-instance) * for instructions on how to get to your API documentation for more details. */ dashboardJson?: pulumi.Input<string>; } /** * The set of arguments for constructing a DashboardJson resource. */ export interface DashboardJsonArgs { /** * See the [Wavefront API Documentation](https://docs.wavefront.com/wavefront_api.html#api-documentation-wavefront-instance) * for instructions on how to get to your API documentation for more details. */ dashboardJson: pulumi.Input<string>; }