diff --git a/src/content/docs/alerts/create-alert/create-alert-condition/alert-conditions.mdx b/src/content/docs/alerts/create-alert/create-alert-condition/alert-conditions.mdx
index a4e21450080..8284b0bcc9a 100644
--- a/src/content/docs/alerts/create-alert/create-alert-condition/alert-conditions.mdx
+++ b/src/content/docs/alerts/create-alert/create-alert-condition/alert-conditions.mdx
@@ -14,6 +14,7 @@ redirects:
- /docs/alerts/create-alert/create-alert-condition/create-alert-conditions
- /docs/alerts/create-alert/create-alert-condition/update-or-disable-policies-conditions
- /docs/alerts/new-relic-alerts-beta/configuring-alert-policies/define-alert-conditions
+ - /docs/alerts/new-relic-alerts/configuring-alert-policies/define-alert-conditions
freshnessValidatedDate: never
---
diff --git a/src/content/docs/alerts/create-alert/create-alert-condition/create-nrql-alert-conditions.mdx b/src/content/docs/alerts/create-alert/create-alert-condition/create-nrql-alert-conditions.mdx
index e37fa3dd4a1..e14d7704970 100644
--- a/src/content/docs/alerts/create-alert/create-alert-condition/create-nrql-alert-conditions.mdx
+++ b/src/content/docs/alerts/create-alert/create-alert-condition/create-nrql-alert-conditions.mdx
@@ -615,7 +615,7 @@ Here are some tips for creating and using a NRQL condition:
Use the **Condition settings** to:
- * Create a concise, descriptive [condition name](/docs/alerts/new-relic-alerts/configuring-alert-policies/define-alert-conditions#rename-condition).
+ * Create a concise, descriptive [condition name](/docs/alerts/create-alert/create-alert-condition/alert-conditions/#name-your-condition).
* Provide a custom incident description for the condition on the **Add details** page that will be included in incidents and notifications.
* Add the runbook URL to include your organization's procedures for handling incidents. You may also add this information to the custom incident description.
|
@@ -772,7 +772,7 @@ Loss of signal settings include a time duration and a few actions.
* Do not open "lost signal" incidents on expected termination. When a signal is expected to terminate, you can choose not to open a new incident. This is useful when you know that a signal will be lost at a certain time, and you don't want to open a new incident for that signal loss. The GraphQL node name for this is [`ignoreOnExpectedTermination`](/docs/apis/nerdgraph/examples/nerdgraph-api-loss-signal-gap-filling/#loss-of-signal).
- In order to prevent a loss of signal incident from opening when "Do not open "lost signal" incident on expected termination", the tag `termination: expected` must be added to the entity. This tag tells us the signal was expected to terminate. See [how to add the tag directly to the entity](/docs/new-relic-solutions/new-relic-one/core-concepts/use-tags-help-organize-find-your-data/#add-tags).
+ To prevent a loss of signal incident from opening when **Do not open "lost signal" incident on expected termination**, you must add the tag `termination: expected` to the entity. This tag tells us that we expected the signal to end. See [how to add the tag directly to the entity](/docs/new-relic-solutions/new-relic-one/core-concepts/use-tags-help-organize-find-your-data/#add-tags).
To create a NRQL alert configured with loss of signal detection in the UI:
@@ -782,11 +782,15 @@ To create a NRQL alert configured with loss of signal detection in the UI:
3. Set the signal expiration duration time in minutes or seconds in the **Consider the signal lost after** field.
4. Choose what you want to happen when the signal is lost. You can check any or all of the following options: **Close all current open incidents**, **Open new "lost signal" incident**, **Do not open "lost signal" incident on expected termination**. These control how loss of signal incidents will be handled for the condition.
5. You can optionally add or remove static/anomaly numeric thresholds. A condition that has only a loss of signal threshold and no static/anomaly numeric thresholds is valid, and it's considered a "stand alone" loss of signal condition.
+
+ When creating a stand alone loss of signal condition, consider the query used. Using complex queries could cost more than what's necessary to monitor a signal.
+
+
6. Continue through the steps to save your condition.
-7. If you selected "**Do not open "lost signal" incident on expected termination**", you must add the `termination: expected` tag to the entity to prevent a loss of signal incident from opening. See [how to add the tag directly to the entity](/docs/new-relic-solutions/new-relic-one/core-concepts/use-tags-help-organize-find-your-data/#add-tags).
+7. If you selected **Do not open "lost signal" incident on expected termination**, you must add the `termination: expected` tag to the entity to prevent a loss of signal incident from opening. See [how to add the tag directly to the entity](/docs/new-relic-solutions/new-relic-one/core-concepts/use-tags-help-organize-find-your-data/#add-tags).
- You might be curious why you'd ever want to have bothOpen new "lost signal" incident and Do not open "lost signal" incident on expected termination set to true. Think of it like this: you always want to be notified when a signal is lost until the one time you know the signal is scheduled to stop and you don't want to be notified. In that case, you'd set both to true, and when you expect the signal to be lost, you'd add the `termination: expected` tag to the relevant entity.
+ You might be curious why you'd ever want to have both **Open new "lost signal" incident** and **Do not open "lost signal" incident on expected termination** set to true. Think of it like this: you want to get a notification when you lose a signal. Except, you don't want a notification for the one time you know the signal will stop because you scheduled it. In that case, you'd set both to true, and when you expect the signal to be lost, you'd add the `termination: expected` tag to the relevant entity.
Incidents open due to loss of signal close when:
diff --git a/src/content/docs/alerts/create-alert/examples/scope-alert-thresholds-specific-instances.mdx b/src/content/docs/alerts/create-alert/examples/scope-alert-thresholds-specific-instances.mdx
index 73f92afc248..7c53b19fd94 100644
--- a/src/content/docs/alerts/create-alert/examples/scope-alert-thresholds-specific-instances.mdx
+++ b/src/content/docs/alerts/create-alert/examples/scope-alert-thresholds-specific-instances.mdx
@@ -125,7 +125,7 @@ During a five-minute time period the three instances have these error rates:
To create a policy that triggers notifications for incidents by your app's individual instances:
1. Follow the [basic workflow process](/docs/alerts/new-relic-alerts/configuring-alert-policies/alert-policy-workflow#alert-policy-process) to set up a policy.
-2. When creating a [condition](/docs/alerts/new-relic-alerts/configuring-alert-policies/define-alert-conditions) (step 2), select [**APM**](/docs/alerts/new-relic-alerts/configuring-alert-policies/select-product-targets-alert-condition).
+2. When creating a [condition](/docs/alerts/create-alert/create-alert-condition/alert-conditions) (step 2), select [**APM**](/docs/alerts/new-relic-alerts/configuring-alert-policies/select-product-targets-alert-condition).
3. Select **Application metric** as the type of condition.
4. To evaluate alert threshold incidents **individually** for each of the app's selected instances, select **Scope to Java application instances**.
5. Select **Next, select entities**, then identify one or more apps for this condition.
diff --git a/src/content/docs/alerts/scale-automate/rest-api/alerts-conditions-api-field-names.mdx b/src/content/docs/alerts/scale-automate/rest-api/alerts-conditions-api-field-names.mdx
index 905ceabd95b..9b40e7254a9 100644
--- a/src/content/docs/alerts/scale-automate/rest-api/alerts-conditions-api-field-names.mdx
+++ b/src/content/docs/alerts/scale-automate/rest-api/alerts-conditions-api-field-names.mdx
@@ -337,7 +337,7 @@ Not every field listed in this glossary is required for every condition type. Th
>
This condition title will allow to you identify it in the UI.
- Follow the [guidelines](/docs/alerts/new-relic-alerts/configuring-alert-policies/define-alert-conditions#best-practices-conditions) for making this descriptive but short.
+ Follow the [guidelines](/docs/alerts/create-alert/create-alert-condition/alert-conditions/#name-your-condition) for making this descriptive but short.
Used for:
diff --git a/src/content/docs/alerts/scale-automate/rest-api/disable-enable-alerts-conditions-using-api.mdx b/src/content/docs/alerts/scale-automate/rest-api/disable-enable-alerts-conditions-using-api.mdx
index 716fce63e0a..602f6ba8b95 100644
--- a/src/content/docs/alerts/scale-automate/rest-api/disable-enable-alerts-conditions-using-api.mdx
+++ b/src/content/docs/alerts/scale-automate/rest-api/disable-enable-alerts-conditions-using-api.mdx
@@ -13,7 +13,7 @@ redirects:
freshnessValidatedDate: never
---
-In a policy, a [condition](/docs/alerts/new-relic-alerts/configuring-alert-policies/define-alert-conditions) identifies what triggers an alert. You can use the REST API to disable and enable conditions. You can also [disable and enable conditions in the UI](/docs/alerts/new-relic-alerts/updating-alert-policies/disable-or-delete-alert-policies-conditions#condition-on-off).
+In a policy, a [condition](/docs/alerts/create-alert/create-alert-condition/alert-conditions) identifies what triggers an alert. You can use the REST API to disable and enable conditions. You can also [disable and enable conditions in the UI](/docs/alerts/new-relic-alerts/updating-alert-policies/disable-or-delete-alert-policies-conditions#condition-on-off).
[Policies can't be enabled or disabled](/docs/alerts/new-relic-alerts/updating-alert-policies/disable-or-delete-alert-policies-conditions#disable-policy), whether via the API or the UI. Policies can only be created, deleted, or have their conditions changed.
diff --git a/src/content/docs/apm/new-relic-apm/apdex/apdex-measure-user-satisfaction.mdx b/src/content/docs/apm/new-relic-apm/apdex/apdex-measure-user-satisfaction.mdx
index b749fd7d393..e1d7b5e61bc 100644
--- a/src/content/docs/apm/new-relic-apm/apdex/apdex-measure-user-satisfaction.mdx
+++ b/src/content/docs/apm/new-relic-apm/apdex/apdex-measure-user-satisfaction.mdx
@@ -237,7 +237,7 @@ You can define multiple Apdex T values for each of these:
## Apdex alerting [#apdex-alerts]
-You can also [configure alert conditions](/docs/alerts/new-relic-alerts/configuring-alert-policies/define-alert-conditions) for Apdex. When the Apdex score passes the [threshold](/docs/alerts/new-relic-alerts/configuring-alert-policies/define-thresholds-trigger-alert) you define, New Relic sends an alert to the notification mechanism (channel).
+You can also [configure alert conditions](/docs/alerts/create-alert/create-alert-condition/alert-conditions) for Apdex. When the Apdex score passes the [threshold](/docs/alerts/new-relic-alerts/configuring-alert-policies/define-thresholds-trigger-alert) you define, New Relic sends an alert to the notification mechanism (channel).
## Errors pages [#error]
diff --git a/src/content/docs/infrastructure/host-integrations/host-integrations-list/nvidia-jetson-integration.mdx b/src/content/docs/infrastructure/host-integrations/host-integrations-list/nvidia-jetson-integration.mdx
index 2ef66c88108..e4c68990f32 100644
--- a/src/content/docs/infrastructure/host-integrations/host-integrations-list/nvidia-jetson-integration.mdx
+++ b/src/content/docs/infrastructure/host-integrations/host-integrations-list/nvidia-jetson-integration.mdx
@@ -57,7 +57,7 @@ Follow these steps to collect data about your NVIDIA Jetson device:
integrations:
- name: nri-flex
config:
- name: JestonMetrics
+ name: JetsonMetrics
apis:
- event_type: jetsonTegrastats
commands:
diff --git a/src/content/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-agent-operator.mdx b/src/content/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-agent-operator.mdx
index 66a59344ae5..9b783761c4e 100644
--- a/src/content/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-agent-operator.mdx
+++ b/src/content/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-agent-operator.mdx
@@ -185,7 +185,7 @@ You've got to specify the APM agent and its version within the instrumentation C
Language
- Available version
+ Available versions
|
diff --git a/src/content/docs/logs/forward-logs/kong-gateway.mdx b/src/content/docs/logs/forward-logs/kong-gateway.mdx
index 7739c2e4c4b..8d76cedb2d3 100644
--- a/src/content/docs/logs/forward-logs/kong-gateway.mdx
+++ b/src/content/docs/logs/forward-logs/kong-gateway.mdx
@@ -31,7 +31,7 @@ To receive logs from Kong Gateway, you need to connect the Kong Gateway File Log
## Configure the File Log plugin [#install-config-filelog]
- Once you've [installed the Kong Gateway File Log pluin](https://docs.konghq.com/hub/kong-inc/file-log/), you need to direct the plugin to send logs to `/dev/stdout`. Here is an example manifest for this configuration:
+ Once you've [installed the Kong Gateway File Log plugin](https://docs.konghq.com/hub/kong-inc/file-log/), you need to direct the plugin to send logs to `/dev/stdout`. Here is an example manifest for this configuration:
```yaml
# file-log-plugin.yaml
diff --git a/src/content/docs/new-relic-solutions/build-nr-ui/newrelic-cli.mdx b/src/content/docs/new-relic-solutions/build-nr-ui/newrelic-cli.mdx
index 70087b7cfe2..60fbb4abd5c 100644
--- a/src/content/docs/new-relic-solutions/build-nr-ui/newrelic-cli.mdx
+++ b/src/content/docs/new-relic-solutions/build-nr-ui/newrelic-cli.mdx
@@ -12,12 +12,16 @@ The New Relic CLI enables the integration of New Relic into your existing workfl
Find details for the New Relic CLI command docs in GitHub.
-### Options [nr-cli-commands-options]
+### Options [#nr-cli-commands-options]
```bash copyable=false
-[output] --format string output text format [YAML, JSON, Text] (default "JSON")
-[output] -h, --help help for newrelic
-[output] --plain output compact text
+[output] -a, --accountId int the account ID to use. Can be overridden by setting NEW_RELIC_ACCOUNT_ID
+[output] --debug debug level logging
+[output] --format string output text format [JSON, Text, YAML] (default "JSON")
+[output] -h, --help help for newrelic
+[output] --plain output compact text
+[output] --profile string the authentication profile to use
+[output] --trace trace level logging
```
### Commands [#commands]
diff --git a/src/content/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-35-1.mdx b/src/content/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-35-1.mdx
new file mode 100644
index 00000000000..3cb7e561ed3
--- /dev/null
+++ b/src/content/docs/release-notes/agent-release-notes/go-release-notes/go-agent-3-35-1.mdx
@@ -0,0 +1,24 @@
+---
+subject: Go agent
+releaseDate: '2024-10-24'
+version: 3.35.1
+downloadLink: 'https://github.com/newrelic/go-agent/tree/v3.35.1'
+features: ["Faster Trace ID generation"]
+bugs: ["Security agent bug hotfix: Don't update the security agent until the Go agent has completed its connect process"]
+security: [""]
+---
+
+
+We recommend updating to the latest agent version as soon as it's available. If your organization has established practices that prevent you from updating to the latest version, ensure that your agents are regularly updated to a version that's at most 90 days old. Read more about [keeping your agent up to date](https://docs.newrelic.com/docs/new-relic-solutions/new-relic-one/install-configure/update-new-relic-agent/).
+
+
+
+## 3.35.1
+### Fixed
+ - Security agent bug hotfix: Don't update the security agent until the Go agent has completed its connect process [PR](https://github.com/newrelic/go-agent/pull/978)
+ - Faster Trace ID generation
+ - Community member [@ankon](https://github.com/ankon) contributed [this change](https://github.com/newrelic/go-agent/pull/977)
+
+### Support statement
+We use the latest version of the Go language. At minimum, you should be using no version of Go older than what is supported by the Go team themselves.
+See the [Go agent EOL Policy](https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/go-agent-eol-policy/) for details about supported versions of the Go agent and third-party components.
diff --git a/src/content/docs/serverless-function-monitoring/aws-lambda-monitoring/instrument-lambda-function/containerized-images.mdx b/src/content/docs/serverless-function-monitoring/aws-lambda-monitoring/instrument-lambda-function/containerized-images.mdx
index 2d09d5cb9c3..17b66948fe8 100644
--- a/src/content/docs/serverless-function-monitoring/aws-lambda-monitoring/instrument-lambda-function/containerized-images.mdx
+++ b/src/content/docs/serverless-function-monitoring/aws-lambda-monitoring/instrument-lambda-function/containerized-images.mdx
@@ -32,8 +32,8 @@ Here's a guide to adding our pre-built layer to your code.
1. Select the layer compatible with your specific Lambda function's runtime and region:
* [Java](https://gallery.ecr.aws/newrelic-lambda-layers-for-docker/newrelic-lambda-layers-java)
* [Node.js](https://gallery.ecr.aws/newrelic-lambda-layers-for-docker/newrelic-lambda-layers-nodejs)
- * [Python](https://gallery.ecr.aws/x6n7b2o2/newrelic-lambda-layers-python)
- * [Ruby](https://gallery.ecr.aws/x6n7b2o2/newrelic-lambda-layers-ruby)
+ * [Python](https://gallery.ecr.aws/newrelic-lambda-layers-for-docker/newrelic-lambda-layers-python)
+ * [Ruby](https://gallery.ecr.aws/newrelic-lambda-layers-for-docker/newrelic-lambda-layers-ruby)
* [.NET](https://gallery.ecr.aws/newrelic-lambda-layers-for-docker/newrelic-lambda-layers-dotnet)
* [Extension-only](https://gallery.ecr.aws/newrelic-lambda-layers-for-docker/newrelic-lambda-layers-lambdaextension)
2. In your multi-stage Dockerfile, use New Relic's prebuilt image as an intermediate build stage. Then, copy New Relic's agent and extension from our prebuilt image into your final build stage.
@@ -85,6 +85,7 @@ Here's a guide to adding our pre-built layer to your code.
CMD [ "com.newrelic.java.HandlerWrapper::handleRequest" ]
# CMD [ "com.newrelic.java.HandlerWrapper::handleStreamsRequest" ]
```
+ Try out [working example](https://github.com/newrelic/newrelic-lambda-extension/tree/main/examples/sam/containerized-lambda/java-17-maven-sam-example) of a Java containerized Lambda function using SAM.
@@ -103,6 +104,7 @@ Here's a guide to adding our pre-built layer to your code.
# CMD override to New Relic's handler wrapper
CMD [ "newrelic_lambda_wrapper.handler" ]
```
+ Try out [working example](https://github.com/newrelic/newrelic-lambda-extension/tree/main/examples/sam/containerized-lambda/python-sam-example) of a Python containerized Lambda function using SAM.
@@ -121,6 +123,7 @@ Here's a guide to adding our pre-built layer to your code.
# CMD override to New Relic's handler wrapper
CMD [ "newrelic-lambda-wrapper.handler" ]
```
+ Try out [working example](https://github.com/newrelic/newrelic-lambda-extension/tree/main/examples/sam/containerized-lambda/nodejs-sam-example) of a Node.js containerized Lambda function using SAM.
diff --git a/src/content/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring.mdx b/src/content/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring.mdx
index 3262c694baa..1af8bde6fe3 100644
--- a/src/content/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring.mdx
+++ b/src/content/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring.mdx
@@ -181,7 +181,7 @@ You might choose to create a scripted browser monitor instead of a step monitor
```js
- //Visit `http://telco.nrdemo.com/`
+ // Visit `http://telco.nrdemo.com/`
$webDriver.get("http://telco.nrdemo.com/");
```
@@ -191,9 +191,9 @@ You might choose to create a scripted browser monitor instead of a step monitor
```js
$webDriver.get("http://telco.nrdemo.com/").then(function(){
- //Find a link with display text that matches `About`
- return $webDriver.findElement($selenium.By.linkText("About")).click();
- //Click the link that matches `About`
+ // Find a link with display text that matches `About`
+ return $webDriver.findElement($selenium.By.linkText("About")).click();
+ // Click the link that matches `About`
}).then(function(){
return $webDriver.findElement($selenium.By.partialLinkText("Home")).click();
});
@@ -205,16 +205,16 @@ You might choose to create a scripted browser monitor instead of a step monitor
```js
async function waitForAndFindElement(locator, timeout){
- const element = await $webDriver.wait($selenium.until.elementLocated(locator), timeout, 'Timed-out waiting for element to be located using: '+locator);
- await $webDriver.wait($selenium.until.elementIsVisible(element), timeout, 'Timed-out waiting for element to be visible using ${element}');
- return await $webDriver.findElement(locator);
+ const element = await $webDriver.wait($selenium.until.elementLocated(locator), timeout, 'Timed-out waiting for element to be located using: '+locator);
+ await $webDriver.wait($selenium.until.elementIsVisible(element), timeout, 'Timed-out waiting for element to be visible using ${element}');
+ return await $webDriver.findElement(locator);
}
await $webDriver.get("http://telco.nrdemo.com/")
await $webDriver.findElement($selenium.By.id("supportDropDown")).click();
- //Wait up to 20000 seconds for the FAQ page to appear
+ // Wait up to 20000 seconds for the FAQ page to appear
let aboutPage = await waitForAndFindElement($selenium.By.id("supportFAQLink"), 20000)
await aboutPage.click();
```
@@ -225,13 +225,13 @@ You might choose to create a scripted browser monitor instead of a step monitor
```js
$webDriver.get("http://example.com/login.jsp").then(function(){
- return $webDriver.findElement($selenium.By.name("username")).sendKeys($secure.SECURE_USERNAME);
+ return $webDriver.findElement($selenium.By.name("username")).sendKeys($secure.SECURE_USERNAME);
}).then(function(){
- //Find the password field by specifying its name, then submits a secured password.
- return $webDriver.findElement($selenium.By.name("password")).sendKeys($secure.SECURE_PASSWORD);
+ // Find the password field by specifying its name, then submits a secured password.
+ return $webDriver.findElement($selenium.By.name("password")).sendKeys($secure.SECURE_PASSWORD);
}).then(function(){
- //Find and click the login button.
- return $webDriver.findElement($selenium.By.xpath("//inp[@value='Login']")).click();
+ // Find and click the login button.
+ return $webDriver.findElement($selenium.By.xpath("//inp[@value='Login']")).click();
});
```
diff --git a/src/content/whats-new/2024/10/whats-new-10-23-kogs-gateway-logs-integration.md b/src/content/whats-new/2024/10/whats-new-10-23-kogs-gateway-logs-integration.md
index da12a0c8854..8a999fa53cb 100644
--- a/src/content/whats-new/2024/10/whats-new-10-23-kogs-gateway-logs-integration.md
+++ b/src/content/whats-new/2024/10/whats-new-10-23-kogs-gateway-logs-integration.md
@@ -26,7 +26,7 @@ Follow these steps:
**Step 1: Install the New Relic Kubernetes logging integration**
- Before configuring the File Log plugin, ensure you have the New Relic Kubernetes logging integration installed. Follow the [instructions](https:/docs.newrelic.com/docs/logs/forward-logs/kubernetes-plugin-log-forwarding/) to set this up.
+ Before configuring the File Log plugin, ensure you have the New Relic Kubernetes logging integration installed. Follow the [instructions](https://docs.newrelic.com/docs/logs/forward-logs/kubernetes-plugin-log-forwarding) to set this up.
**Step 2: Install and configure Kong File Log plugin**