@pulumiverse/grafana 2.19.0 → 2.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assert/index.d.ts +9 -0
- package/assert/index.js +16 -1
- package/assert/index.js.map +1 -1
- package/assert/profileConfig.d.ts +222 -0
- package/assert/profileConfig.js +174 -0
- package/assert/profileConfig.js.map +1 -0
- package/assert/promRuleFile.d.ts +320 -0
- package/assert/promRuleFile.js +302 -0
- package/assert/promRuleFile.js.map +1 -0
- package/assert/traceConfig.d.ts +222 -0
- package/assert/traceConfig.js +174 -0
- package/assert/traceConfig.js.map +1 -0
- package/cloud/accessPolicyRotatingToken.d.ts +7 -7
- package/cloud/accessPolicyRotatingToken.js +1 -1
- package/config/vars.d.ts +4 -0
- package/config/vars.js +6 -0
- package/config/vars.js.map +1 -1
- package/fleetmanagement/collector.d.ts +13 -0
- package/fleetmanagement/collector.js +3 -0
- package/fleetmanagement/collector.js.map +1 -1
- package/fleetmanagement/getCollector.d.ts +6 -0
- package/fleetmanagement/getCollector.js +2 -0
- package/fleetmanagement/getCollector.js.map +1 -1
- package/fleetmanagement/getCollectors.d.ts +2 -0
- package/fleetmanagement/getCollectors.js +2 -0
- package/fleetmanagement/getCollectors.js.map +1 -1
- package/fleetmanagement/pipeline.d.ts +16 -3
- package/fleetmanagement/pipeline.js +3 -0
- package/fleetmanagement/pipeline.js.map +1 -1
- package/package.json +2 -2
- package/provider.d.ts +8 -0
- package/provider.js +1 -0
- package/provider.js.map +1 -1
- package/types/input.d.ts +80 -0
- package/types/output.d.ts +81 -0
package/assert/index.d.ts
CHANGED
|
@@ -7,9 +7,18 @@ export declare const LogConfig: typeof import("./logConfig").LogConfig;
|
|
|
7
7
|
export { NotificationAlertsConfigArgs, NotificationAlertsConfigState } from "./notificationAlertsConfig";
|
|
8
8
|
export type NotificationAlertsConfig = import("./notificationAlertsConfig").NotificationAlertsConfig;
|
|
9
9
|
export declare const NotificationAlertsConfig: typeof import("./notificationAlertsConfig").NotificationAlertsConfig;
|
|
10
|
+
export { ProfileConfigArgs, ProfileConfigState } from "./profileConfig";
|
|
11
|
+
export type ProfileConfig = import("./profileConfig").ProfileConfig;
|
|
12
|
+
export declare const ProfileConfig: typeof import("./profileConfig").ProfileConfig;
|
|
13
|
+
export { PromRuleFileArgs, PromRuleFileState } from "./promRuleFile";
|
|
14
|
+
export type PromRuleFile = import("./promRuleFile").PromRuleFile;
|
|
15
|
+
export declare const PromRuleFile: typeof import("./promRuleFile").PromRuleFile;
|
|
10
16
|
export { SuppressedAssertionsConfigArgs, SuppressedAssertionsConfigState } from "./suppressedAssertionsConfig";
|
|
11
17
|
export type SuppressedAssertionsConfig = import("./suppressedAssertionsConfig").SuppressedAssertionsConfig;
|
|
12
18
|
export declare const SuppressedAssertionsConfig: typeof import("./suppressedAssertionsConfig").SuppressedAssertionsConfig;
|
|
13
19
|
export { ThresholdsArgs, ThresholdsState } from "./thresholds";
|
|
14
20
|
export type Thresholds = import("./thresholds").Thresholds;
|
|
15
21
|
export declare const Thresholds: typeof import("./thresholds").Thresholds;
|
|
22
|
+
export { TraceConfigArgs, TraceConfigState } from "./traceConfig";
|
|
23
|
+
export type TraceConfig = import("./traceConfig").TraceConfig;
|
|
24
|
+
export declare const TraceConfig: typeof import("./traceConfig").TraceConfig;
|
package/assert/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
3
|
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.Thresholds = exports.SuppressedAssertionsConfig = exports.NotificationAlertsConfig = exports.LogConfig = exports.CustomModelRules = void 0;
|
|
5
|
+
exports.TraceConfig = exports.Thresholds = exports.SuppressedAssertionsConfig = exports.PromRuleFile = exports.ProfileConfig = exports.NotificationAlertsConfig = exports.LogConfig = exports.CustomModelRules = void 0;
|
|
6
6
|
const pulumi = require("@pulumi/pulumi");
|
|
7
7
|
const utilities = require("../utilities");
|
|
8
8
|
exports.CustomModelRules = null;
|
|
@@ -11,10 +11,16 @@ exports.LogConfig = null;
|
|
|
11
11
|
utilities.lazyLoad(exports, ["LogConfig"], () => require("./logConfig"));
|
|
12
12
|
exports.NotificationAlertsConfig = null;
|
|
13
13
|
utilities.lazyLoad(exports, ["NotificationAlertsConfig"], () => require("./notificationAlertsConfig"));
|
|
14
|
+
exports.ProfileConfig = null;
|
|
15
|
+
utilities.lazyLoad(exports, ["ProfileConfig"], () => require("./profileConfig"));
|
|
16
|
+
exports.PromRuleFile = null;
|
|
17
|
+
utilities.lazyLoad(exports, ["PromRuleFile"], () => require("./promRuleFile"));
|
|
14
18
|
exports.SuppressedAssertionsConfig = null;
|
|
15
19
|
utilities.lazyLoad(exports, ["SuppressedAssertionsConfig"], () => require("./suppressedAssertionsConfig"));
|
|
16
20
|
exports.Thresholds = null;
|
|
17
21
|
utilities.lazyLoad(exports, ["Thresholds"], () => require("./thresholds"));
|
|
22
|
+
exports.TraceConfig = null;
|
|
23
|
+
utilities.lazyLoad(exports, ["TraceConfig"], () => require("./traceConfig"));
|
|
18
24
|
const _module = {
|
|
19
25
|
version: utilities.getVersion(),
|
|
20
26
|
construct: (name, type, urn) => {
|
|
@@ -25,10 +31,16 @@ const _module = {
|
|
|
25
31
|
return new exports.LogConfig(name, undefined, { urn });
|
|
26
32
|
case "grafana:assert/notificationAlertsConfig:NotificationAlertsConfig":
|
|
27
33
|
return new exports.NotificationAlertsConfig(name, undefined, { urn });
|
|
34
|
+
case "grafana:assert/profileConfig:ProfileConfig":
|
|
35
|
+
return new exports.ProfileConfig(name, undefined, { urn });
|
|
36
|
+
case "grafana:assert/promRuleFile:PromRuleFile":
|
|
37
|
+
return new exports.PromRuleFile(name, undefined, { urn });
|
|
28
38
|
case "grafana:assert/suppressedAssertionsConfig:SuppressedAssertionsConfig":
|
|
29
39
|
return new exports.SuppressedAssertionsConfig(name, undefined, { urn });
|
|
30
40
|
case "grafana:assert/thresholds:Thresholds":
|
|
31
41
|
return new exports.Thresholds(name, undefined, { urn });
|
|
42
|
+
case "grafana:assert/traceConfig:TraceConfig":
|
|
43
|
+
return new exports.TraceConfig(name, undefined, { urn });
|
|
32
44
|
default:
|
|
33
45
|
throw new Error(`unknown resource type ${type}`);
|
|
34
46
|
}
|
|
@@ -37,6 +49,9 @@ const _module = {
|
|
|
37
49
|
pulumi.runtime.registerResourceModule("grafana", "assert/customModelRules", _module);
|
|
38
50
|
pulumi.runtime.registerResourceModule("grafana", "assert/logConfig", _module);
|
|
39
51
|
pulumi.runtime.registerResourceModule("grafana", "assert/notificationAlertsConfig", _module);
|
|
52
|
+
pulumi.runtime.registerResourceModule("grafana", "assert/profileConfig", _module);
|
|
53
|
+
pulumi.runtime.registerResourceModule("grafana", "assert/promRuleFile", _module);
|
|
40
54
|
pulumi.runtime.registerResourceModule("grafana", "assert/suppressedAssertionsConfig", _module);
|
|
41
55
|
pulumi.runtime.registerResourceModule("grafana", "assert/thresholds", _module);
|
|
56
|
+
pulumi.runtime.registerResourceModule("grafana", "assert/traceConfig", _module);
|
|
42
57
|
//# sourceMappingURL=index.js.map
|
package/assert/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../assert/index.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAK7B,QAAA,gBAAgB,GAAyD,IAAW,CAAC;AAClG,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;AAI1E,QAAA,SAAS,GAA2C,IAAW,CAAC;AAC7E,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;AAI5D,QAAA,wBAAwB,GAAyE,IAAW,CAAC;AAC1H,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,0BAA0B,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC;AAI1F,QAAA,0BAA0B,GAA6E,IAAW,CAAC;AAChI,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,4BAA4B,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC,CAAC;AAI9F,QAAA,UAAU,GAA6C,IAAW,CAAC;AAChF,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../assert/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "../types/input";
|
|
3
|
+
import * as outputs from "../types/output";
|
|
4
|
+
/**
|
|
5
|
+
* Manages Knowledge Graph Profile Configuration through Grafana API.
|
|
6
|
+
*
|
|
7
|
+
* ## Example Usage
|
|
8
|
+
*
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
11
|
+
* import * as grafana from "@pulumiverse/grafana";
|
|
12
|
+
*
|
|
13
|
+
* const production = new grafana.assert.ProfileConfig("production", {
|
|
14
|
+
* name: "production",
|
|
15
|
+
* priority: 1000,
|
|
16
|
+
* defaultConfig: false,
|
|
17
|
+
* dataSourceUid: "grafanacloud-profiles",
|
|
18
|
+
* matches: [
|
|
19
|
+
* {
|
|
20
|
+
* property: "asserts_entity_type",
|
|
21
|
+
* op: "=",
|
|
22
|
+
* values: ["Service"],
|
|
23
|
+
* },
|
|
24
|
+
* {
|
|
25
|
+
* property: "deployment_environment",
|
|
26
|
+
* op: "=",
|
|
27
|
+
* values: [
|
|
28
|
+
* "production",
|
|
29
|
+
* "staging",
|
|
30
|
+
* ],
|
|
31
|
+
* },
|
|
32
|
+
* {
|
|
33
|
+
* property: "asserts_site",
|
|
34
|
+
* op: "=",
|
|
35
|
+
* values: [
|
|
36
|
+
* "us-east-1",
|
|
37
|
+
* "us-west-2",
|
|
38
|
+
* ],
|
|
39
|
+
* },
|
|
40
|
+
* ],
|
|
41
|
+
* entityPropertyToProfileLabelMapping: {
|
|
42
|
+
* cluster: "k8s_cluster_name",
|
|
43
|
+
* namespace: "k8s_namespace_name",
|
|
44
|
+
* container: "k8s_container_name",
|
|
45
|
+
* otel_service: "service_name",
|
|
46
|
+
* otel_namespace: "service_namespace",
|
|
47
|
+
* },
|
|
48
|
+
* });
|
|
49
|
+
* const development = new grafana.assert.ProfileConfig("development", {
|
|
50
|
+
* name: "development",
|
|
51
|
+
* priority: 2000,
|
|
52
|
+
* defaultConfig: false,
|
|
53
|
+
* dataSourceUid: "grafanacloud-profiles",
|
|
54
|
+
* matches: [
|
|
55
|
+
* {
|
|
56
|
+
* property: "asserts_entity_type",
|
|
57
|
+
* op: "=",
|
|
58
|
+
* values: ["Service"],
|
|
59
|
+
* },
|
|
60
|
+
* {
|
|
61
|
+
* property: "deployment_environment",
|
|
62
|
+
* op: "=",
|
|
63
|
+
* values: [
|
|
64
|
+
* "development",
|
|
65
|
+
* "testing",
|
|
66
|
+
* ],
|
|
67
|
+
* },
|
|
68
|
+
* {
|
|
69
|
+
* property: "asserts_site",
|
|
70
|
+
* op: "=",
|
|
71
|
+
* values: ["us-east-1"],
|
|
72
|
+
* },
|
|
73
|
+
* {
|
|
74
|
+
* property: "service",
|
|
75
|
+
* op: "=",
|
|
76
|
+
* values: ["my sample api"],
|
|
77
|
+
* },
|
|
78
|
+
* ],
|
|
79
|
+
* entityPropertyToProfileLabelMapping: {
|
|
80
|
+
* cluster: "k8s_cluster_name",
|
|
81
|
+
* namespace: "k8s_namespace_name",
|
|
82
|
+
* container: "k8s_container_name",
|
|
83
|
+
* otel_service: "service_name",
|
|
84
|
+
* otel_namespace: "service_namespace",
|
|
85
|
+
* pod: "k8s_pod_name",
|
|
86
|
+
* },
|
|
87
|
+
* });
|
|
88
|
+
* const minimal = new grafana.assert.ProfileConfig("minimal", {
|
|
89
|
+
* name: "minimal",
|
|
90
|
+
* priority: 3000,
|
|
91
|
+
* dataSourceUid: "pyroscope-minimal",
|
|
92
|
+
* matches: [{
|
|
93
|
+
* property: "asserts_entity_type",
|
|
94
|
+
* op: "IS NOT NULL",
|
|
95
|
+
* }],
|
|
96
|
+
* entityPropertyToProfileLabelMapping: {
|
|
97
|
+
* cluster: "k8s_cluster_name",
|
|
98
|
+
* otel_service: "service_name",
|
|
99
|
+
* otel_namespace: "service_namespace",
|
|
100
|
+
* },
|
|
101
|
+
* });
|
|
102
|
+
* ```
|
|
103
|
+
*
|
|
104
|
+
* ## Import
|
|
105
|
+
*
|
|
106
|
+
* ```sh
|
|
107
|
+
* $ pulumi import grafana:assert/profileConfig:ProfileConfig name "{{ name }}"
|
|
108
|
+
* ```
|
|
109
|
+
*/
|
|
110
|
+
export declare class ProfileConfig extends pulumi.CustomResource {
|
|
111
|
+
/**
|
|
112
|
+
* Get an existing ProfileConfig resource's state with the given name, ID, and optional extra
|
|
113
|
+
* properties used to qualify the lookup.
|
|
114
|
+
*
|
|
115
|
+
* @param name The _unique_ name of the resulting resource.
|
|
116
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
117
|
+
* @param state Any extra arguments used during the lookup.
|
|
118
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
119
|
+
*/
|
|
120
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ProfileConfigState, opts?: pulumi.CustomResourceOptions): ProfileConfig;
|
|
121
|
+
/**
|
|
122
|
+
* Returns true if the given object is an instance of ProfileConfig. This is designed to work even
|
|
123
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
124
|
+
*/
|
|
125
|
+
static isInstance(obj: any): obj is ProfileConfig;
|
|
126
|
+
/**
|
|
127
|
+
* DataSource to be queried (e.g., a Pyroscope instance).
|
|
128
|
+
*/
|
|
129
|
+
readonly dataSourceUid: pulumi.Output<string>;
|
|
130
|
+
/**
|
|
131
|
+
* Is it the default config, therefore undeletable?
|
|
132
|
+
*/
|
|
133
|
+
readonly defaultConfig: pulumi.Output<boolean>;
|
|
134
|
+
/**
|
|
135
|
+
* Mapping of entity properties to profile labels.
|
|
136
|
+
*/
|
|
137
|
+
readonly entityPropertyToProfileLabelMapping: pulumi.Output<{
|
|
138
|
+
[key: string]: string;
|
|
139
|
+
} | undefined>;
|
|
140
|
+
/**
|
|
141
|
+
* List of match rules for entity properties.
|
|
142
|
+
*/
|
|
143
|
+
readonly matches: pulumi.Output<outputs.assert.ProfileConfigMatch[] | undefined>;
|
|
144
|
+
/**
|
|
145
|
+
* The name of the profile configuration.
|
|
146
|
+
*/
|
|
147
|
+
readonly name: pulumi.Output<string>;
|
|
148
|
+
/**
|
|
149
|
+
* Priority of the profile configuration. A lower number means a higher priority.
|
|
150
|
+
*/
|
|
151
|
+
readonly priority: pulumi.Output<number>;
|
|
152
|
+
/**
|
|
153
|
+
* Create a ProfileConfig resource with the given unique name, arguments, and options.
|
|
154
|
+
*
|
|
155
|
+
* @param name The _unique_ name of the resource.
|
|
156
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
157
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
158
|
+
*/
|
|
159
|
+
constructor(name: string, args: ProfileConfigArgs, opts?: pulumi.CustomResourceOptions);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Input properties used for looking up and filtering ProfileConfig resources.
|
|
163
|
+
*/
|
|
164
|
+
export interface ProfileConfigState {
|
|
165
|
+
/**
|
|
166
|
+
* DataSource to be queried (e.g., a Pyroscope instance).
|
|
167
|
+
*/
|
|
168
|
+
dataSourceUid?: pulumi.Input<string>;
|
|
169
|
+
/**
|
|
170
|
+
* Is it the default config, therefore undeletable?
|
|
171
|
+
*/
|
|
172
|
+
defaultConfig?: pulumi.Input<boolean>;
|
|
173
|
+
/**
|
|
174
|
+
* Mapping of entity properties to profile labels.
|
|
175
|
+
*/
|
|
176
|
+
entityPropertyToProfileLabelMapping?: pulumi.Input<{
|
|
177
|
+
[key: string]: pulumi.Input<string>;
|
|
178
|
+
}>;
|
|
179
|
+
/**
|
|
180
|
+
* List of match rules for entity properties.
|
|
181
|
+
*/
|
|
182
|
+
matches?: pulumi.Input<pulumi.Input<inputs.assert.ProfileConfigMatch>[]>;
|
|
183
|
+
/**
|
|
184
|
+
* The name of the profile configuration.
|
|
185
|
+
*/
|
|
186
|
+
name?: pulumi.Input<string>;
|
|
187
|
+
/**
|
|
188
|
+
* Priority of the profile configuration. A lower number means a higher priority.
|
|
189
|
+
*/
|
|
190
|
+
priority?: pulumi.Input<number>;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* The set of arguments for constructing a ProfileConfig resource.
|
|
194
|
+
*/
|
|
195
|
+
export interface ProfileConfigArgs {
|
|
196
|
+
/**
|
|
197
|
+
* DataSource to be queried (e.g., a Pyroscope instance).
|
|
198
|
+
*/
|
|
199
|
+
dataSourceUid: pulumi.Input<string>;
|
|
200
|
+
/**
|
|
201
|
+
* Is it the default config, therefore undeletable?
|
|
202
|
+
*/
|
|
203
|
+
defaultConfig: pulumi.Input<boolean>;
|
|
204
|
+
/**
|
|
205
|
+
* Mapping of entity properties to profile labels.
|
|
206
|
+
*/
|
|
207
|
+
entityPropertyToProfileLabelMapping?: pulumi.Input<{
|
|
208
|
+
[key: string]: pulumi.Input<string>;
|
|
209
|
+
}>;
|
|
210
|
+
/**
|
|
211
|
+
* List of match rules for entity properties.
|
|
212
|
+
*/
|
|
213
|
+
matches?: pulumi.Input<pulumi.Input<inputs.assert.ProfileConfigMatch>[]>;
|
|
214
|
+
/**
|
|
215
|
+
* The name of the profile configuration.
|
|
216
|
+
*/
|
|
217
|
+
name?: pulumi.Input<string>;
|
|
218
|
+
/**
|
|
219
|
+
* Priority of the profile configuration. A lower number means a higher priority.
|
|
220
|
+
*/
|
|
221
|
+
priority: pulumi.Input<number>;
|
|
222
|
+
}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
|
|
3
|
+
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.ProfileConfig = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("../utilities");
|
|
8
|
+
/**
|
|
9
|
+
* Manages Knowledge Graph Profile Configuration through Grafana API.
|
|
10
|
+
*
|
|
11
|
+
* ## Example Usage
|
|
12
|
+
*
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
15
|
+
* import * as grafana from "@pulumiverse/grafana";
|
|
16
|
+
*
|
|
17
|
+
* const production = new grafana.assert.ProfileConfig("production", {
|
|
18
|
+
* name: "production",
|
|
19
|
+
* priority: 1000,
|
|
20
|
+
* defaultConfig: false,
|
|
21
|
+
* dataSourceUid: "grafanacloud-profiles",
|
|
22
|
+
* matches: [
|
|
23
|
+
* {
|
|
24
|
+
* property: "asserts_entity_type",
|
|
25
|
+
* op: "=",
|
|
26
|
+
* values: ["Service"],
|
|
27
|
+
* },
|
|
28
|
+
* {
|
|
29
|
+
* property: "deployment_environment",
|
|
30
|
+
* op: "=",
|
|
31
|
+
* values: [
|
|
32
|
+
* "production",
|
|
33
|
+
* "staging",
|
|
34
|
+
* ],
|
|
35
|
+
* },
|
|
36
|
+
* {
|
|
37
|
+
* property: "asserts_site",
|
|
38
|
+
* op: "=",
|
|
39
|
+
* values: [
|
|
40
|
+
* "us-east-1",
|
|
41
|
+
* "us-west-2",
|
|
42
|
+
* ],
|
|
43
|
+
* },
|
|
44
|
+
* ],
|
|
45
|
+
* entityPropertyToProfileLabelMapping: {
|
|
46
|
+
* cluster: "k8s_cluster_name",
|
|
47
|
+
* namespace: "k8s_namespace_name",
|
|
48
|
+
* container: "k8s_container_name",
|
|
49
|
+
* otel_service: "service_name",
|
|
50
|
+
* otel_namespace: "service_namespace",
|
|
51
|
+
* },
|
|
52
|
+
* });
|
|
53
|
+
* const development = new grafana.assert.ProfileConfig("development", {
|
|
54
|
+
* name: "development",
|
|
55
|
+
* priority: 2000,
|
|
56
|
+
* defaultConfig: false,
|
|
57
|
+
* dataSourceUid: "grafanacloud-profiles",
|
|
58
|
+
* matches: [
|
|
59
|
+
* {
|
|
60
|
+
* property: "asserts_entity_type",
|
|
61
|
+
* op: "=",
|
|
62
|
+
* values: ["Service"],
|
|
63
|
+
* },
|
|
64
|
+
* {
|
|
65
|
+
* property: "deployment_environment",
|
|
66
|
+
* op: "=",
|
|
67
|
+
* values: [
|
|
68
|
+
* "development",
|
|
69
|
+
* "testing",
|
|
70
|
+
* ],
|
|
71
|
+
* },
|
|
72
|
+
* {
|
|
73
|
+
* property: "asserts_site",
|
|
74
|
+
* op: "=",
|
|
75
|
+
* values: ["us-east-1"],
|
|
76
|
+
* },
|
|
77
|
+
* {
|
|
78
|
+
* property: "service",
|
|
79
|
+
* op: "=",
|
|
80
|
+
* values: ["my sample api"],
|
|
81
|
+
* },
|
|
82
|
+
* ],
|
|
83
|
+
* entityPropertyToProfileLabelMapping: {
|
|
84
|
+
* cluster: "k8s_cluster_name",
|
|
85
|
+
* namespace: "k8s_namespace_name",
|
|
86
|
+
* container: "k8s_container_name",
|
|
87
|
+
* otel_service: "service_name",
|
|
88
|
+
* otel_namespace: "service_namespace",
|
|
89
|
+
* pod: "k8s_pod_name",
|
|
90
|
+
* },
|
|
91
|
+
* });
|
|
92
|
+
* const minimal = new grafana.assert.ProfileConfig("minimal", {
|
|
93
|
+
* name: "minimal",
|
|
94
|
+
* priority: 3000,
|
|
95
|
+
* dataSourceUid: "pyroscope-minimal",
|
|
96
|
+
* matches: [{
|
|
97
|
+
* property: "asserts_entity_type",
|
|
98
|
+
* op: "IS NOT NULL",
|
|
99
|
+
* }],
|
|
100
|
+
* entityPropertyToProfileLabelMapping: {
|
|
101
|
+
* cluster: "k8s_cluster_name",
|
|
102
|
+
* otel_service: "service_name",
|
|
103
|
+
* otel_namespace: "service_namespace",
|
|
104
|
+
* },
|
|
105
|
+
* });
|
|
106
|
+
* ```
|
|
107
|
+
*
|
|
108
|
+
* ## Import
|
|
109
|
+
*
|
|
110
|
+
* ```sh
|
|
111
|
+
* $ pulumi import grafana:assert/profileConfig:ProfileConfig name "{{ name }}"
|
|
112
|
+
* ```
|
|
113
|
+
*/
|
|
114
|
+
class ProfileConfig extends pulumi.CustomResource {
|
|
115
|
+
/**
|
|
116
|
+
* Get an existing ProfileConfig resource's state with the given name, ID, and optional extra
|
|
117
|
+
* properties used to qualify the lookup.
|
|
118
|
+
*
|
|
119
|
+
* @param name The _unique_ name of the resulting resource.
|
|
120
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
121
|
+
* @param state Any extra arguments used during the lookup.
|
|
122
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
123
|
+
*/
|
|
124
|
+
static get(name, id, state, opts) {
|
|
125
|
+
return new ProfileConfig(name, state, { ...opts, id: id });
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Returns true if the given object is an instance of ProfileConfig. This is designed to work even
|
|
129
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
130
|
+
*/
|
|
131
|
+
static isInstance(obj) {
|
|
132
|
+
if (obj === undefined || obj === null) {
|
|
133
|
+
return false;
|
|
134
|
+
}
|
|
135
|
+
return obj['__pulumiType'] === ProfileConfig.__pulumiType;
|
|
136
|
+
}
|
|
137
|
+
constructor(name, argsOrState, opts) {
|
|
138
|
+
let resourceInputs = {};
|
|
139
|
+
opts = opts || {};
|
|
140
|
+
if (opts.id) {
|
|
141
|
+
const state = argsOrState;
|
|
142
|
+
resourceInputs["dataSourceUid"] = state?.dataSourceUid;
|
|
143
|
+
resourceInputs["defaultConfig"] = state?.defaultConfig;
|
|
144
|
+
resourceInputs["entityPropertyToProfileLabelMapping"] = state?.entityPropertyToProfileLabelMapping;
|
|
145
|
+
resourceInputs["matches"] = state?.matches;
|
|
146
|
+
resourceInputs["name"] = state?.name;
|
|
147
|
+
resourceInputs["priority"] = state?.priority;
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
const args = argsOrState;
|
|
151
|
+
if (args?.dataSourceUid === undefined && !opts.urn) {
|
|
152
|
+
throw new Error("Missing required property 'dataSourceUid'");
|
|
153
|
+
}
|
|
154
|
+
if (args?.defaultConfig === undefined && !opts.urn) {
|
|
155
|
+
throw new Error("Missing required property 'defaultConfig'");
|
|
156
|
+
}
|
|
157
|
+
if (args?.priority === undefined && !opts.urn) {
|
|
158
|
+
throw new Error("Missing required property 'priority'");
|
|
159
|
+
}
|
|
160
|
+
resourceInputs["dataSourceUid"] = args?.dataSourceUid;
|
|
161
|
+
resourceInputs["defaultConfig"] = args?.defaultConfig;
|
|
162
|
+
resourceInputs["entityPropertyToProfileLabelMapping"] = args?.entityPropertyToProfileLabelMapping;
|
|
163
|
+
resourceInputs["matches"] = args?.matches;
|
|
164
|
+
resourceInputs["name"] = args?.name;
|
|
165
|
+
resourceInputs["priority"] = args?.priority;
|
|
166
|
+
}
|
|
167
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
168
|
+
super(ProfileConfig.__pulumiType, name, resourceInputs, opts);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
exports.ProfileConfig = ProfileConfig;
|
|
172
|
+
/** @internal */
|
|
173
|
+
ProfileConfig.__pulumiType = 'grafana:assert/profileConfig:ProfileConfig';
|
|
174
|
+
//# sourceMappingURL=profileConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profileConfig.js","sourceRoot":"","sources":["../../assert/profileConfig.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyGG;AACH,MAAa,aAAc,SAAQ,MAAM,CAAC,cAAc;IACpD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA0B,EAAE,IAAmC;QACxH,OAAO,IAAI,aAAa,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,aAAa,CAAC,YAAY,CAAC;IAC9D,CAAC;IAmCD,YAAY,IAAY,EAAE,WAAoD,EAAE,IAAmC;QAC/G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA6C,CAAC;YAC5D,cAAc,CAAC,eAAe,CAAC,GAAG,KAAK,EAAE,aAAa,CAAC;YACvD,cAAc,CAAC,eAAe,CAAC,GAAG,KAAK,EAAE,aAAa,CAAC;YACvD,cAAc,CAAC,qCAAqC,CAAC,GAAG,KAAK,EAAE,mCAAmC,CAAC;YACnG,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;SAChD;aAAM;YACH,MAAM,IAAI,GAAG,WAA4C,CAAC;YAC1D,IAAI,IAAI,EAAE,aAAa,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAChE;YACD,IAAI,IAAI,EAAE,aAAa,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAChE;YACD,IAAI,IAAI,EAAE,QAAQ,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;aAC3D;YACD,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC;YACtD,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,aAAa,CAAC;YACtD,cAAc,CAAC,qCAAqC,CAAC,GAAG,IAAI,EAAE,mCAAmC,CAAC;YAClG,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC;SAC/C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;;AA5FL,sCA6FC;AA/EG,gBAAgB;AACO,0BAAY,GAAG,4CAA4C,CAAC"}
|