Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Daily release/12 06 24 morning #19461

Merged
merged 22 commits into from
Dec 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -201,7 +201,7 @@ Here is a summary of known limitations for async instrumentation with our .NET a
id="iis-wcf-nesting"
title="Problem with nesting in IIS-hosted WCF apps"
>
IIS-hosted [WCF services](/docs/agents/net-agent/instrumentation/instrumenting-wcf-applications) do not properly nest the <DNT>**WCF**</DNT> segment under the `ExecuteRequestHandler` segment. The two segments will appear to be siblings within a transaction trace, even though their reported [total time](/docs/data-analysis/user-interface-functions/response-time#response-time-total-time) will be accurate.
IIS-hosted [WCF services](/install/dotnet/?deployment=WCF) do not properly nest the <DNT>**WCF**</DNT> segment under the `ExecuteRequestHandler` segment. The two segments will appear to be siblings within a transaction trace, even though their reported [total time](/docs/data-analysis/user-interface-functions/response-time#response-time-total-time) will be accurate.
</Collapser>

<Collapser
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2831,7 +2831,16 @@ This section defines the Node.js agent variables in the order they typically app
</tbody>
</table>

Prefix of attributes to exclude from transaction events. Allows `*` as wildcard at end.
Prefix of attributes to exclude from transaction events. Allows `*` as wildcard at end. For example, in the config file, this would include all parameters except `somethingSecret`:

```js

attributes: {
include: [ 'request.parameters.*' ],
exclude: [ 'request.parameters.somethingSecret' ]
}
```

</Collapser>

<Collapser
Expand Down Expand Up @@ -2872,7 +2881,34 @@ This section defines the Node.js agent variables in the order they typically app
</tbody>
</table>

Prefix of attributes to include in transaction events. Allows `*` as wildcard at end.
Prefix of attributes to include in transaction events. Allows `*` as wildcard at end.

For example, in the `config` file, this would include all parameters:

```js

attributes: {
include: [ 'request.parameters.*' ]
}

```

Enter the following Express route definition and request URL:

```js

app.get('/api/users/:id', myMiddleware, myController)

```

```sh

curl http://localhost:3000/api/users/abc123?id=true

```

The `_route_ parameter` is `id`, and has a value of `abc123`. This becomes `request.parameters.route.id: abc123` on the Transaction, root Segment, and Span attributes. This example also has a `_query_ parameter `of `id`, which has a value of `true`. This would become `request.parameters.id: true` on the Transaction, root Segment, and Span attributes.

</Collapser>
</CollapserGroup>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ To create new non-web transactions, follow the procedures for your APM language
id="net"
title=".NET"
>
By default, the APM .NET agent instruments IIS ASP workers. To instrument other (non-IIS) .NET applications, such as standalone (WCF) services, console apps, and other Windows services, see [Instrumenting custom applications](/docs/agents/net-agent/features/instrumenting-custom-applications) and [Instrumenting WCF applications](/docs/agents/net-agent/features/instrumenting-wcf-applications).
By default, the APM .NET agent instruments IIS ASP workers. To instrument other (non-IIS) .NET applications, such as standalone (WCF) services, console apps, and other Windows services, see [Instrumenting custom applications](/docs/agents/net-agent/features/instrumenting-custom-applications) and [Instrumenting WCF applications](/install/dotnet/?deployment=WCF).

<Callout variant="important">
For IIS applications, you cannot change web transactions to non-web transactions.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,10 @@ SINCE 30 minutes ago LIMIT MAX
To see in-editor performance data, your service must meet the requirements listed below, and the service should have collected data in the last 30 minutes.

* [Distributed tracing](/docs/distributed-tracing/enable-configure/language-agents-enable-distributed-tracing) must be enabled. Distributed tracing is on by default in recent versions of all agents, so you only need to worry about this if you've disabled distributed tracing.
* If you're using VS Code, you must have an extension installed to have the language support for [Java](https://marketplace.visualstudio.com/items?itemName=redhat.java), [C#](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp), [PHP](https://marketplace.visualstudio.com/items?itemName=bmewburn.vscode-intelephense-client), [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python), [Go](https://marketplace.visualstudio.com/items?itemName=golang.go), or [Ruby](https://marketplace.visualstudio.com/items?itemName=Shopify.ruby-lsp).
* If you're using VS Code, you must have a language support extension installed for [Java](https://marketplace.visualstudio.com/items?itemName=redhat.java), [C#](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp), [PHP](https://marketplace.visualstudio.com/items?itemName=bmewburn.vscode-intelephense-client), [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python), [Go](https://marketplace.visualstudio.com/items?itemName=golang.go), or [Ruby](https://marketplace.visualstudio.com/items?itemName=Shopify.ruby-lsp).
* <DNT>**Java:**</DNT> Code-level metrics are only available for projects implemented with a [supported Java framework](/docs/apm/agents/java-agent/getting-started/compatibility-requirements-java-agent/#frameworks). Note that Kotlin support is only available in IntelliJ.
* <DNT>**.NET:**</DNT> If you're using Visual Studio, make sure that you have CodeLenses enabled from <DNT>**Tools > Options > Text Editor > All Languages > CodeLens**</DNT> and ensure that both **Enable CodeLens** and **Show CodeStream Code-Level Metrics** are checked.
* <DNT>**Node.js:**</DNT> If your codebase include anonymous functions, you can use either [change tracking](/docs/change-tracking/change-tracking-introduction/) to send deployment information to New Relic, or send your [build SHA using an environment variable](/docs/codestream/observability/error-investigation/#buildsha) in your build pipeline.
* <DNT>**Node.js:**</DNT> If your codebase include anonymous functions, you must use either [change tracking](/docs/change-tracking/change-tracking-introduction/) to send deployment information to New Relic, or send your [build SHA using an environment variable](/docs/codestream/observability/error-investigation/#buildsha) in your build pipeline.
* <DNT>**Python:**</DNT> Code-level metrics are only available for projects implemented with a [supported Python framework](/docs/apm/agents/python-agent/getting-started/instrumented-python-packages) and for PHP version 7.0 or higher.
* <DNT>**Ruby:**</DNT> Code-level metrics are only available for Rails applications and Ruby methods with manual traces ([learn more about Ruby methods and CodeStream](/docs/apm/agents/ruby-agent/features/ruby-codestream-integration)).

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ You can install the CodeStream extension for your specific IDE.
</Collapser>
</CollapserGroup>

If you're using VS Code, some CodeStream features require to install an extension to have a language support for [Java](https://marketplace.visualstudio.com/items?itemName=redhat.java), [C#](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp), [PHP](https://marketplace.visualstudio.com/items?itemName=bmewburn.vscode-intelephense-client), [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python), [Go](https://marketplace.visualstudio.com/items?itemName=golang.go), or [Ruby](https://marketplace.visualstudio.com/items?itemName=Shopify.ruby-lsp).
If you're using VS Code, some CodeStream features require a language support extension for [Java](https://marketplace.visualstudio.com/items?itemName=redhat.java), [C#](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp), [PHP](https://marketplace.visualstudio.com/items?itemName=bmewburn.vscode-intelephense-client), [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python), [Go](https://marketplace.visualstudio.com/items?itemName=golang.go), or [Ruby](https://marketplace.visualstudio.com/items?itemName=Shopify.ruby-lsp).

## Sign in [#signin]

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ Learn more about dropping data in this video (7:09 minutes):

Besides creating drop-data rules, other ways to minimize unwanted data include:

* If you want to drop APM metric timeslice data, you can use [metric normalization rules](/docs/new-relic-one/use-new-relic-one/ui-data/metric-normalization-rules).
* If you want to drop [APM metric timeslice data](/docs/data-apis/understand-data/metric-data/query-apm-metric-timeslice-data-nrql), you can use [metric normalization rules](/docs/new-relic-one/use-new-relic-one/ui-data/metric-normalization-rules). However, you can't drop metric timeslice data with drop rules. For more information on difference between metric timeslice data and dimensional metrics, refer [New Relic data types doc.](/docs/data-apis/understand-data/new-relic-data-types/#timeslice-data)
* If you're reporting logs, you can [drop log data via the UI](/docs/logs/ui-data/drop-data-drop-filter-rules).
* If you're using Prometheus remote write, see [Drop Prometheus remote write data](/docs/integrations/prometheus-integrations/install-configure/remote-write-drop-data/).

Expand All @@ -56,9 +56,10 @@ The following data types can be targeted for data dropping:
* [Default infrastructure monitoring events](/docs/infrastructure/manage-your-data/data-instrumentation/default-infrastructure-monitoring-data) and [infrastructure integrations](/docs/integrations/infrastructure-integrations/get-started/introduction-infrastructure-integrations) events. Some caveats:
* When you drop this data, the raw data is dropped, but the aggregated `SystemSample`, `ProcessSample`, `NetworkSample` and `StorageSample` events are still available (for more on this, see [Data retention](/docs/data-apis/manage-data/manage-data-retention/#infrastructure-data)). Though still available, this data doesn't count towards ingest and is not billable.
* Raw infrastructure data is used for alerting, so if you drop that data, you can't alert on it. Because the aggregated data is still available, you may still see that data in charts with time ranges above 59 minutes.
* [Dimensional metrics](/docs/telemetry-data-platform/ingest-manage-data/understand-data/new-relic-data-types#dimensional-metrics) (the `Metric` data type). Some caveats:
* [Dimensional metrics](/docs/telemetry-data-platform/ingest-manage-data/understand-data/new-relic-data-types#dimensional-metrics). Some caveats:
* For organizations on our [original pricing model](/docs/accounts/original-accounts-billing/product-pricing/product-based-pricing): billing is based on product subscription, meaning dropped dimensional metrics remain billable.
* For metrics generated by the [events-to-metrics service](/docs/data-ingest-apis/get-data-new-relic/metric-api/events-metrics-service-create-metrics): drop rules won't work but these metrics can be stopped or attributes pruned by disabling or re-configuring the events-to-metric rule.
* Metric timeslice data can't be dropped with drop rules. For more information about APM metric timeslice data see [this doc](/docs/data-apis/understand-data/new-relic-data-types/#timeslice-data).

## Create a drop data rule [#how-to]

Expand Down
18 changes: 11 additions & 7 deletions src/content/docs/logs/logs-context/configure-logs-context-go.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,19 @@ With our Go language <InlinePopover type="apm"/> agent, you can get <DNT>**logs
Got lots of Go logs? Check out our [tutorial on how to optimize and manage them](/docs/tutorial-large-logs/get-started-managing-large-logs/).
</Callout>

## Supported logging libraries [#supported-libraries]
## Logging libraries and attributes [#supported-libraries]

The following table provides information on all the supported libraries and user-defined attributes.

<table>
<thead>
<tr>
<th>
Library
Supported library
</th>

<th>
Supports attribute collection?
Is user-defined attributes supported?
</th>
</tr>
</thead>
Expand Down Expand Up @@ -97,9 +99,11 @@ Modifications to the Go agent's config options are needed in order to use the fo
<CollapserGroup>
<Collapser
id="1-automatic"
title="Decorate and forward logs with APM"
title="Option 1: Decorate and forward logs with APM"
>
For most users, using the automatic log forwarding built into the Go agent is the best solution. It's easy to set up and works great for a majority of use cases. [Learn about log forwarding limitations.](/docs/logs/logs-context/get-started-logs-context#forwarding-details)
For most users, using the automatic log forwarding built into the Go agent is the best solution. It's easy to set up and works great for a majority of use cases.

Using this option, your logs include `span.id`, `trace.id`, `hostname`, `entity.guid`, and `entity.name`. These attributes link your logs to spans, traces, and other telemetry, making it easier to troubleshoot. [Learn about log forwarding limitations.](/docs/logs/logs-context/get-started-logs-context#forwarding-details)

Automatic application log forwarding is now enabled by default in Go agent version 3.20.0 or higher. If your applications use these Go agent versions, you don't need to change your config options to enable automatic log forwarding.

Expand All @@ -114,10 +118,10 @@ Modifications to the Go agent's config options are needed in order to use the fo

<Collapser
id="2-manual"
title="Decorate logs with APM and manually forward logs"
title="Option 2: Decorate logs with APM and manually forward logs"
>
For users with more custom logging needs, or users who want to send more than 10,000 logs per 60 second cycle, or 833 logs per 5 second cycle, to New Relic we recommend that you manually set up log forwarding.
Once you have a log forwarder configured to send logs to New Relic, allow the Go agent to enrich your logs for forwarding by modifying its config to include this setting:
After, configuring the log forwarder to send logs to New Relic, modify the Go agent's configuration to enrich your logs. Enriching the logs means the log forwarder adds the APM context data including `span.id`, `trace.id`, `hostname`, `entity.guid`, and `entity.name`to the log:

```go
app, err := newrelic.NewApplication(
Expand Down
3 changes: 2 additions & 1 deletion src/data/whats-new-ids.json
Original file line number Diff line number Diff line change
Expand Up @@ -352,5 +352,6 @@
"/whats-new/2024/10/whats-new-10-21-in-app-help": "43009",
"/whats-new/2024/11/whats-new-11-11-data-explorer": "43010",
"/whats-new/2024/11/whats-new-11-12-browser-apm-summary": "43011",
"/whats-new/2024/12/whats-new-12-03-fossa": "43012"
"/whats-new/2024/12/whats-new-12-03-fossa": "43012",
"/whats-new/2024/11/whats-new-11-20-k8s-apm-auto-attach": "43013"
}
2 changes: 1 addition & 1 deletion src/install/dotnet/installation/wcf.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
componentType: default
optionType: deployment
headingText: Enable for WCF
descriptionText: ""
descriptionText: ""
---

Enable or disable ASP.NET compatibility mode in your WCF application depending on which type of events you want monitored:
Expand Down
Loading