@pulumi/newrelic 5.71.0-alpha.1780989583 → 5.71.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/cardinalityManagement.d.ts +35 -0
- package/cardinalityManagement.d.ts.map +1 -1
- package/cardinalityManagement.js +35 -0
- package/cardinalityManagement.js.map +1 -1
- package/cloud/ociLinkAccount.d.ts +24 -0
- package/cloud/ociLinkAccount.d.ts.map +1 -1
- package/cloud/ociLinkAccount.js +4 -0
- package/cloud/ociLinkAccount.js.map +1 -1
- package/metricPruningRule.d.ts +45 -0
- package/metricPruningRule.d.ts.map +1 -1
- package/metricPruningRule.js +45 -0
- package/metricPruningRule.js.map +1 -1
- package/package.json +2 -2
|
@@ -82,6 +82,41 @@ import * as outputs from "./types/output";
|
|
|
82
82
|
* });
|
|
83
83
|
* ```
|
|
84
84
|
*
|
|
85
|
+
* ### Example — managing many metrics in bulk
|
|
86
|
+
*
|
|
87
|
+
* If you have a long list of metrics to manage, you can keep a single source of truth in `locals` and use a `dynamic` block to expand them into `metric` blocks at apply time. Adding or removing a metric is then a one-line edit.
|
|
88
|
+
*
|
|
89
|
+
* ```typescript
|
|
90
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
91
|
+
* import * as newrelic from "@pulumi/newrelic";
|
|
92
|
+
*
|
|
93
|
+
* const highCardinalityMetrics = [
|
|
94
|
+
* {
|
|
95
|
+
* name: "http.server.duration",
|
|
96
|
+
* limit: 200000,
|
|
97
|
+
* },
|
|
98
|
+
* {
|
|
99
|
+
* name: "otelcol_nrreceiver_incoming_request_proxy",
|
|
100
|
+
* limit: 300000,
|
|
101
|
+
* },
|
|
102
|
+
* {
|
|
103
|
+
* name: "k8s.pod.cpu.usage",
|
|
104
|
+
* limit: 150000,
|
|
105
|
+
* },
|
|
106
|
+
* {
|
|
107
|
+
* name: "k8s.pod.memory.usage",
|
|
108
|
+
* limit: 150000,
|
|
109
|
+
* },
|
|
110
|
+
* ];
|
|
111
|
+
* const bulk = new newrelic.CardinalityManagement("bulk", {
|
|
112
|
+
* metrics: highCardinalityMetrics.map((v, k) => ({key: k, value: v})).map(entry => ({
|
|
113
|
+
* name: entry.value.name,
|
|
114
|
+
* cardinalityLimit: Number(entry.value.limit),
|
|
115
|
+
* })),
|
|
116
|
+
* mode: "PER_METRIC",
|
|
117
|
+
* });
|
|
118
|
+
* ```
|
|
119
|
+
*
|
|
85
120
|
* ### Behaviour
|
|
86
121
|
*
|
|
87
122
|
* - **`pulumi up`** — submits one override per `metric` block. A warning is displayed as a reminder that updates may take a few minutes to be reflected in the UI.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cardinalityManagement.d.ts","sourceRoot":"","sources":["../cardinalityManagement.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAG1C
|
|
1
|
+
{"version":3,"file":"cardinalityManagement.d.ts","sourceRoot":"","sources":["../cardinalityManagement.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAG1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4KG;AACH,qBAAa,qBAAsB,SAAQ,MAAM,CAAC,cAAc;IAC5D;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,0BAA0B,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,qBAAqB;IAO5J;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,qBAAqB;IAOhE;;OAEG;IACH,SAAwB,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5E;;OAEG;IACH,SAAwB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,2BAA2B,EAAE,GAAG,SAAS,CAAC,CAAC;IAClG;;;;OAIG;IACH,SAAwB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEpD;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CAqBjG;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACvC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpD;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,2BAA2B,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IACvF;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpD;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,2BAA2B,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;IACvF;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAC9B"}
|
package/cardinalityManagement.js
CHANGED
|
@@ -109,6 +109,41 @@ const utilities = __importStar(require("./utilities"));
|
|
|
109
109
|
* });
|
|
110
110
|
* ```
|
|
111
111
|
*
|
|
112
|
+
* ### Example — managing many metrics in bulk
|
|
113
|
+
*
|
|
114
|
+
* If you have a long list of metrics to manage, you can keep a single source of truth in `locals` and use a `dynamic` block to expand them into `metric` blocks at apply time. Adding or removing a metric is then a one-line edit.
|
|
115
|
+
*
|
|
116
|
+
* ```typescript
|
|
117
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
118
|
+
* import * as newrelic from "@pulumi/newrelic";
|
|
119
|
+
*
|
|
120
|
+
* const highCardinalityMetrics = [
|
|
121
|
+
* {
|
|
122
|
+
* name: "http.server.duration",
|
|
123
|
+
* limit: 200000,
|
|
124
|
+
* },
|
|
125
|
+
* {
|
|
126
|
+
* name: "otelcol_nrreceiver_incoming_request_proxy",
|
|
127
|
+
* limit: 300000,
|
|
128
|
+
* },
|
|
129
|
+
* {
|
|
130
|
+
* name: "k8s.pod.cpu.usage",
|
|
131
|
+
* limit: 150000,
|
|
132
|
+
* },
|
|
133
|
+
* {
|
|
134
|
+
* name: "k8s.pod.memory.usage",
|
|
135
|
+
* limit: 150000,
|
|
136
|
+
* },
|
|
137
|
+
* ];
|
|
138
|
+
* const bulk = new newrelic.CardinalityManagement("bulk", {
|
|
139
|
+
* metrics: highCardinalityMetrics.map((v, k) => ({key: k, value: v})).map(entry => ({
|
|
140
|
+
* name: entry.value.name,
|
|
141
|
+
* cardinalityLimit: Number(entry.value.limit),
|
|
142
|
+
* })),
|
|
143
|
+
* mode: "PER_METRIC",
|
|
144
|
+
* });
|
|
145
|
+
* ```
|
|
146
|
+
*
|
|
112
147
|
* ### Behaviour
|
|
113
148
|
*
|
|
114
149
|
* - **`pulumi up`** — submits one override per `metric` block. A warning is displayed as a reminder that updates may take a few minutes to be reflected in the UI.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cardinalityManagement.js","sourceRoot":"","sources":["../cardinalityManagement.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AAGzC,uDAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"cardinalityManagement.js","sourceRoot":"","sources":["../cardinalityManagement.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AAGzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4KG;AACH,MAAa,qBAAsB,SAAQ,MAAM,CAAC,cAAc;IAC5D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAkC,EAAE,IAAmC;QAChI,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,4DAA4D,CAAC;IAEnG;;;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,qBAAqB,CAAC,YAAY,CAAC;IACtE,CAAC;IAyBD,YAAY,IAAY,EAAE,WAAoE,EAAE,IAAmC;QAC/H,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAqD,CAAC;YACpE,cAAc,CAAC,kBAAkB,CAAC,GAAG,KAAK,EAAE,gBAAgB,CAAC;YAC7D,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;SACxC;aAAM;YACH,MAAM,IAAI,GAAG,WAAoD,CAAC;YAClE,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACvD;YACD,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAI,EAAE,gBAAgB,CAAC;YAC5D,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;SACvC;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;;AAtEL,sDAuEC"}
|
|
@@ -144,10 +144,18 @@ export declare class OciLinkAccount extends pulumi.CustomResource {
|
|
|
144
144
|
* OCI region for the linkage (ignored on create, applied on update).
|
|
145
145
|
*/
|
|
146
146
|
readonly ociRegion: pulumi.Output<string | undefined>;
|
|
147
|
+
/**
|
|
148
|
+
* A value propagated as the `extResourceTag` claim on the RPST so customer IAM policies can scope authorization on a specific tag value (for example, `env=prod`). Ignored when `trustType = "UPST"`. Cannot be changed after creation.
|
|
149
|
+
*/
|
|
150
|
+
readonly resourceTag: pulumi.Output<string | undefined>;
|
|
147
151
|
/**
|
|
148
152
|
* OCI tenancy OCID (root tenancy). Changing forces a new linked account.
|
|
149
153
|
*/
|
|
150
154
|
readonly tenantId: pulumi.Output<string>;
|
|
155
|
+
/**
|
|
156
|
+
* The OCI WIF trust type. Allowed values are `UPST` (default) or `RPST`. Set this to `RPST` to use Resource Principal Session Token (claim-based) authorization instead of the default User Principal Session Token (service-user-based) flow. The corresponding identity propagation trust must be configured with the matching trust type in your OCI tenancy. Cannot be changed after creation — re-create the linked account to switch trust types. See the WIF setup module for details.
|
|
157
|
+
*/
|
|
158
|
+
readonly trustType: pulumi.Output<string | undefined>;
|
|
151
159
|
/**
|
|
152
160
|
* Vault secret OCID containing a user or auxiliary secret.
|
|
153
161
|
*/
|
|
@@ -213,10 +221,18 @@ export interface OciLinkAccountState {
|
|
|
213
221
|
* OCI region for the linkage (ignored on create, applied on update).
|
|
214
222
|
*/
|
|
215
223
|
ociRegion?: pulumi.Input<string | undefined>;
|
|
224
|
+
/**
|
|
225
|
+
* A value propagated as the `extResourceTag` claim on the RPST so customer IAM policies can scope authorization on a specific tag value (for example, `env=prod`). Ignored when `trustType = "UPST"`. Cannot be changed after creation.
|
|
226
|
+
*/
|
|
227
|
+
resourceTag?: pulumi.Input<string | undefined>;
|
|
216
228
|
/**
|
|
217
229
|
* OCI tenancy OCID (root tenancy). Changing forces a new linked account.
|
|
218
230
|
*/
|
|
219
231
|
tenantId?: pulumi.Input<string | undefined>;
|
|
232
|
+
/**
|
|
233
|
+
* The OCI WIF trust type. Allowed values are `UPST` (default) or `RPST`. Set this to `RPST` to use Resource Principal Session Token (claim-based) authorization instead of the default User Principal Session Token (service-user-based) flow. The corresponding identity propagation trust must be configured with the matching trust type in your OCI tenancy. Cannot be changed after creation — re-create the linked account to switch trust types. See the WIF setup module for details.
|
|
234
|
+
*/
|
|
235
|
+
trustType?: pulumi.Input<string | undefined>;
|
|
220
236
|
/**
|
|
221
237
|
* Vault secret OCID containing a user or auxiliary secret.
|
|
222
238
|
*/
|
|
@@ -274,10 +290,18 @@ export interface OciLinkAccountArgs {
|
|
|
274
290
|
* OCI region for the linkage (ignored on create, applied on update).
|
|
275
291
|
*/
|
|
276
292
|
ociRegion?: pulumi.Input<string | undefined>;
|
|
293
|
+
/**
|
|
294
|
+
* A value propagated as the `extResourceTag` claim on the RPST so customer IAM policies can scope authorization on a specific tag value (for example, `env=prod`). Ignored when `trustType = "UPST"`. Cannot be changed after creation.
|
|
295
|
+
*/
|
|
296
|
+
resourceTag?: pulumi.Input<string | undefined>;
|
|
277
297
|
/**
|
|
278
298
|
* OCI tenancy OCID (root tenancy). Changing forces a new linked account.
|
|
279
299
|
*/
|
|
280
300
|
tenantId: pulumi.Input<string>;
|
|
301
|
+
/**
|
|
302
|
+
* The OCI WIF trust type. Allowed values are `UPST` (default) or `RPST`. Set this to `RPST` to use Resource Principal Session Token (claim-based) authorization instead of the default User Principal Session Token (service-user-based) flow. The corresponding identity propagation trust must be configured with the matching trust type in your OCI tenancy. Cannot be changed after creation — re-create the linked account to switch trust types. See the WIF setup module for details.
|
|
303
|
+
*/
|
|
304
|
+
trustType?: pulumi.Input<string | undefined>;
|
|
281
305
|
/**
|
|
282
306
|
* Vault secret OCID containing a user or auxiliary secret.
|
|
283
307
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ociLinkAccount.d.ts","sourceRoot":"","sources":["../../cloud/ociLinkAccount.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFG;AACH,qBAAa,cAAe,SAAQ,MAAM,CAAC,cAAc;IACrD;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,cAAc;IAO9I;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc;IAOzD;;OAEG;IACH,SAAwB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzD;;OAEG;IACH,SAAwB,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/D;;OAEG;IACH,SAAwB,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC3E;;OAEG;IACH,SAAwB,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC/E;;OAEG;IACH,SAAwB,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5E;;OAEG;IACH,SAAwB,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC3E;;OAEG;IACH,SAAwB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpD;;OAEG;IACH,SAAwB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3D;;OAEG;IACH,SAAwB,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/D;;OAEG;IACH,SAAwB,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5D;;OAEG;IACH,SAAwB,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7D;;OAEG;IACH,SAAwB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACrE;;OAEG;IACH,SAAwB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxD;;OAEG;IACH,SAAwB,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEzE;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;
|
|
1
|
+
{"version":3,"file":"ociLinkAccount.d.ts","sourceRoot":"","sources":["../../cloud/ociLinkAccount.ts"],"names":[],"mappings":"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"}
|
package/cloud/ociLinkAccount.js
CHANGED
|
@@ -151,7 +151,9 @@ class OciLinkAccount extends pulumi.CustomResource {
|
|
|
151
151
|
resourceInputs["ociDomainUrl"] = state?.ociDomainUrl;
|
|
152
152
|
resourceInputs["ociHomeRegion"] = state?.ociHomeRegion;
|
|
153
153
|
resourceInputs["ociRegion"] = state?.ociRegion;
|
|
154
|
+
resourceInputs["resourceTag"] = state?.resourceTag;
|
|
154
155
|
resourceInputs["tenantId"] = state?.tenantId;
|
|
156
|
+
resourceInputs["trustType"] = state?.trustType;
|
|
155
157
|
resourceInputs["userVaultOcid"] = state?.userVaultOcid;
|
|
156
158
|
}
|
|
157
159
|
else {
|
|
@@ -186,7 +188,9 @@ class OciLinkAccount extends pulumi.CustomResource {
|
|
|
186
188
|
resourceInputs["ociDomainUrl"] = args?.ociDomainUrl;
|
|
187
189
|
resourceInputs["ociHomeRegion"] = args?.ociHomeRegion;
|
|
188
190
|
resourceInputs["ociRegion"] = args?.ociRegion;
|
|
191
|
+
resourceInputs["resourceTag"] = args?.resourceTag;
|
|
189
192
|
resourceInputs["tenantId"] = args?.tenantId;
|
|
193
|
+
resourceInputs["trustType"] = args?.trustType;
|
|
190
194
|
resourceInputs["userVaultOcid"] = args?.userVaultOcid;
|
|
191
195
|
}
|
|
192
196
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ociLinkAccount.js","sourceRoot":"","sources":["../../cloud/ociLinkAccount.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,wDAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFG;AACH,MAAa,cAAe,SAAQ,MAAM,CAAC,cAAc;IACrD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA2B,EAAE,IAAmC;QACzH,OAAO,IAAI,cAAc,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,8CAA8C,CAAC;IAErF;;;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,cAAc,CAAC,YAAY,CAAC;IAC/D,CAAC;
|
|
1
|
+
{"version":3,"file":"ociLinkAccount.js","sourceRoot":"","sources":["../../cloud/ociLinkAccount.ts"],"names":[],"mappings":"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"}
|
package/metricPruningRule.d.ts
CHANGED
|
@@ -31,6 +31,51 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
31
31
|
* });
|
|
32
32
|
* ```
|
|
33
33
|
*
|
|
34
|
+
* ### Pruning the same attribute from many metrics in bulk
|
|
35
|
+
*
|
|
36
|
+
* When the same attribute needs to be stripped from a set of metrics, keep the metric list in `locals` and use `forEach` with a templated `nrql` and `description`. Only the metric name varies between rules — the rest of the configuration is shared.
|
|
37
|
+
*
|
|
38
|
+
* ```typescript
|
|
39
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
40
|
+
* import * as newrelic from "@pulumi/newrelic";
|
|
41
|
+
* import * as std from "@pulumi/std";
|
|
42
|
+
*
|
|
43
|
+
* export = async () => {
|
|
44
|
+
* // The attribute to prune from every metric in the list below.
|
|
45
|
+
* const prunedAttribute = "collector.name";
|
|
46
|
+
* // Metrics to apply the pruning rule to.
|
|
47
|
+
* // Add or remove entries here to manage rules in bulk.
|
|
48
|
+
* const metricsToPrune = (await std.toset({
|
|
49
|
+
* input: [
|
|
50
|
+
* "http.server.duration",
|
|
51
|
+
* "http.client.duration",
|
|
52
|
+
* "rpc.server.duration",
|
|
53
|
+
* "k8s.pod.cpu.usage",
|
|
54
|
+
* "k8s.pod.memory.usage",
|
|
55
|
+
* ],
|
|
56
|
+
* })).result;
|
|
57
|
+
* const bulk: newrelic.MetricPruningRule[] = [];
|
|
58
|
+
* for (const range of metricsToPrune.map((v, k) => ({key: k, value: v}))) {
|
|
59
|
+
* bulk.push(new newrelic.MetricPruningRule(`bulk-${range.key}`, {
|
|
60
|
+
* nrql: `SELECT ${prunedAttribute} FROM Metric WHERE metricName = '${range.value}'`,
|
|
61
|
+
* description: `Remove ${prunedAttribute} from ${range.value} to reduce cardinality`,
|
|
62
|
+
* }));
|
|
63
|
+
* }
|
|
64
|
+
* }
|
|
65
|
+
* ```
|
|
66
|
+
*
|
|
67
|
+
* Each entry in `metricsToPrune` produces an independent `newrelic.MetricPruningRule` resource (e.g. `newrelic_metric_pruning_rule.bulk["http.server.duration"]`) that can be inspected, imported, or destroyed individually.
|
|
68
|
+
*
|
|
69
|
+
* ***
|
|
70
|
+
*
|
|
71
|
+
* ## Behaviour
|
|
72
|
+
*
|
|
73
|
+
* - **`pulumi up`** — creates the pruning rule in New Relic. The rule begins stripping the nominated attributes from matching metric aggregates immediately after creation.
|
|
74
|
+
* - **`pulumi preview` / `terraform refresh` on an existing resource** — reads the current state of the pruning rule from New Relic and surfaces any drift (e.g. if the rule was deleted outside of Terraform).
|
|
75
|
+
* - **`terraform destroy`** — permanently deletes the pruning rule. Once removed, the nominated attributes will no longer be stripped from incoming metric data. There is no reset to a default state; the rule is deleted outright.
|
|
76
|
+
*
|
|
77
|
+
* > **Note:** Because all arguments are immutable, any in-place change (e.g. updating the NRQL or description) will trigger a destroy-and-recreate. The old rule is deleted before the new one is created, so there will be a brief window during which no pruning is active for the affected metric.
|
|
78
|
+
*
|
|
34
79
|
* ***
|
|
35
80
|
*
|
|
36
81
|
* ## Import
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metricPruningRule.d.ts","sourceRoot":"","sources":["../metricPruningRule.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC
|
|
1
|
+
{"version":3,"file":"metricPruningRule.d.ts","sourceRoot":"","sources":["../metricPruningRule.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsFG;AACH,qBAAa,iBAAkB,SAAQ,MAAM,CAAC,cAAc;IACxD;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,sBAAsB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,iBAAiB;IAOpJ;;;OAGG;WACW,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,iBAAiB;IAO5D;;;;OAIG;IACH,SAAwB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzD;;OAEG;IACH,SAAwB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACvE;;OAEG;IACH,SAAwB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpD;;OAEG;IACH,SAAgC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE9D;;;;;;OAMG;gBACS,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,qBAAqB;CAuB7F;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC/C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACxC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC/C;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAC9B"}
|
package/metricPruningRule.js
CHANGED
|
@@ -60,6 +60,51 @@ const utilities = __importStar(require("./utilities"));
|
|
|
60
60
|
* });
|
|
61
61
|
* ```
|
|
62
62
|
*
|
|
63
|
+
* ### Pruning the same attribute from many metrics in bulk
|
|
64
|
+
*
|
|
65
|
+
* When the same attribute needs to be stripped from a set of metrics, keep the metric list in `locals` and use `forEach` with a templated `nrql` and `description`. Only the metric name varies between rules — the rest of the configuration is shared.
|
|
66
|
+
*
|
|
67
|
+
* ```typescript
|
|
68
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
69
|
+
* import * as newrelic from "@pulumi/newrelic";
|
|
70
|
+
* import * as std from "@pulumi/std";
|
|
71
|
+
*
|
|
72
|
+
* export = async () => {
|
|
73
|
+
* // The attribute to prune from every metric in the list below.
|
|
74
|
+
* const prunedAttribute = "collector.name";
|
|
75
|
+
* // Metrics to apply the pruning rule to.
|
|
76
|
+
* // Add or remove entries here to manage rules in bulk.
|
|
77
|
+
* const metricsToPrune = (await std.toset({
|
|
78
|
+
* input: [
|
|
79
|
+
* "http.server.duration",
|
|
80
|
+
* "http.client.duration",
|
|
81
|
+
* "rpc.server.duration",
|
|
82
|
+
* "k8s.pod.cpu.usage",
|
|
83
|
+
* "k8s.pod.memory.usage",
|
|
84
|
+
* ],
|
|
85
|
+
* })).result;
|
|
86
|
+
* const bulk: newrelic.MetricPruningRule[] = [];
|
|
87
|
+
* for (const range of metricsToPrune.map((v, k) => ({key: k, value: v}))) {
|
|
88
|
+
* bulk.push(new newrelic.MetricPruningRule(`bulk-${range.key}`, {
|
|
89
|
+
* nrql: `SELECT ${prunedAttribute} FROM Metric WHERE metricName = '${range.value}'`,
|
|
90
|
+
* description: `Remove ${prunedAttribute} from ${range.value} to reduce cardinality`,
|
|
91
|
+
* }));
|
|
92
|
+
* }
|
|
93
|
+
* }
|
|
94
|
+
* ```
|
|
95
|
+
*
|
|
96
|
+
* Each entry in `metricsToPrune` produces an independent `newrelic.MetricPruningRule` resource (e.g. `newrelic_metric_pruning_rule.bulk["http.server.duration"]`) that can be inspected, imported, or destroyed individually.
|
|
97
|
+
*
|
|
98
|
+
* ***
|
|
99
|
+
*
|
|
100
|
+
* ## Behaviour
|
|
101
|
+
*
|
|
102
|
+
* - **`pulumi up`** — creates the pruning rule in New Relic. The rule begins stripping the nominated attributes from matching metric aggregates immediately after creation.
|
|
103
|
+
* - **`pulumi preview` / `terraform refresh` on an existing resource** — reads the current state of the pruning rule from New Relic and surfaces any drift (e.g. if the rule was deleted outside of Terraform).
|
|
104
|
+
* - **`terraform destroy`** — permanently deletes the pruning rule. Once removed, the nominated attributes will no longer be stripped from incoming metric data. There is no reset to a default state; the rule is deleted outright.
|
|
105
|
+
*
|
|
106
|
+
* > **Note:** Because all arguments are immutable, any in-place change (e.g. updating the NRQL or description) will trigger a destroy-and-recreate. The old rule is deleted before the new one is created, so there will be a brief window during which no pruning is active for the affected metric.
|
|
107
|
+
*
|
|
63
108
|
* ***
|
|
64
109
|
*
|
|
65
110
|
* ## Import
|
package/metricPruningRule.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metricPruningRule.js","sourceRoot":"","sources":["../metricPruningRule.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"metricPruningRule.js","sourceRoot":"","sources":["../metricPruningRule.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsFG;AACH,MAAa,iBAAkB,SAAQ,MAAM,CAAC,cAAc;IACxD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA8B,EAAE,IAAmC;QAC5H,OAAO,IAAI,iBAAiB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,oDAAoD,CAAC;IAE3F;;;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,iBAAiB,CAAC,YAAY,CAAC;IAClE,CAAC;IA6BD,YAAY,IAAY,EAAE,WAA4D,EAAE,IAAmC;QACvH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAiD,CAAC;YAChE,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;YAC/C,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC;YACnD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAK,EAAE,MAAM,CAAC;SAC5C;aAAM;YACH,MAAM,IAAI,GAAG,WAAgD,CAAC;YAC9D,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACvD;YACD,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC;YAC9C,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,WAAW,CAAC;YAClD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAChD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,iBAAiB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACtE,CAAC;;AA5EL,8CA6EC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulumi/newrelic",
|
|
3
|
-
"version": "5.71.0
|
|
3
|
+
"version": "5.71.0",
|
|
4
4
|
"description": "A Pulumi package for creating and managing New Relic resources.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pulumi",
|
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
"pulumi": {
|
|
24
24
|
"resource": true,
|
|
25
25
|
"name": "newrelic",
|
|
26
|
-
"version": "5.71.0
|
|
26
|
+
"version": "5.71.0"
|
|
27
27
|
}
|
|
28
28
|
}
|