diff --git a/src/content/docs/apm/agents/go-agent/configuration/go-agent-logging.mdx b/src/content/docs/apm/agents/go-agent/configuration/go-agent-logging.mdx index 92bd4258aeb..90eb31d3e93 100644 --- a/src/content/docs/apm/agents/go-agent/configuration/go-agent-logging.mdx +++ b/src/content/docs/apm/agents/go-agent/configuration/go-agent-logging.mdx @@ -19,7 +19,7 @@ To use the Go agent methods for writing log and audit files, see [log.go on the ## Logrus integration example [#logrus] -New Relic offers an [integration for the Logrus logging system](https://github.com/newrelic/go-agent/blob/master/_integrations/nrlogrus/nrlogrus.go). Here is an example of using the New Relic Logrus integration in an application: +New Relic offers an [integration for the Logrus logging system.](https://github.com/newrelic/go-agent/blob/master/v3/integrations/nrlogrus/nrlogrus.go) Here is an example of using the New Relic Logrus integration in an application: 1. Import both `github.com/sirupsen/logrus` and `github.com/newrelic/go-agent/v3/integrations/nrlogrus`. 2. Set the log level and assign the Logger output to Logrus. For example: diff --git a/src/content/docs/nrql/nrql-syntax-clauses-functions.mdx b/src/content/docs/nrql/nrql-syntax-clauses-functions.mdx index 82c353840c9..e471256e0d7 100644 --- a/src/content/docs/nrql/nrql-syntax-clauses-functions.mdx +++ b/src/content/docs/nrql/nrql-syntax-clauses-functions.mdx @@ -2181,13 +2181,31 @@ SELECT histogram(duration, 10, 20) FROM PageView SINCE 1 week ago uniqueCount(attribute)} + title={uniqueCount(attribute, [, attribute [, ...]] [, precision: number])} > - Use the `uniqueCount()` function to return the number of unique values recorded for an attribute over the time range specified. - - To optimize query performance, this function returns approximate results for queries that inspect 256 or more unique values. - + Use the `uniqueCount()` function to get the number of unique values recorded for an attribute over a specified time range. This function provides an exact result for up to 256 unique values when you call it without the `precision` argument. For more than 256 unique values, the result is approximate. You can specify a `precision` value within the range of 256 to 50,000 to increase the threshold for exact results. When unique values exceed the set threshold, the function uses the [HyperLogLog probabilistic data structure](https://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf) to provide an approximate result. + + Use the `uniqueCount()` function by specifying the attributes and optionally set the precision argument as follows: + + ```sql + uniqueCount(attribute, [, attribute [, ...]] [, precision: number]) + ``` + * **Attribute(s)**: Attributes for which you want to count unique values. + * **Precision**: A numeric argument that sets the threshold for exact results. You can set a value up to 50,000. + + Query example without a `precision` argument: + + ```sql + SELECT uniqueCount(accountId) FROM Transaction SINCE 1 day ago + ``` + + Query example with a `precision` argument: + + ```sql + SELECT uniqueCount(foo, bar, baz, precision: 1000) FROM Transaction SINCE 1 day ago + ``` + The nested variables feature is available only to Pro, Enterprise, and Core Compute customers. To learn more about our pricing model, editions, and buying programs, refer to the [pricing](/docs/accounts/accounts-billing/new-relic-one-pricing-billing/new-relic-one-pricing-billing/) documentation. + **Example:** - `Variable Env` = `production` or `staging` - `Variable Machine` = `SELECT uniques(machine) FROM Table WHERE env in ({{Env}})` @@ -44,4 +46,4 @@ When you use nested variables, be aware of the following limitations: - **Parent variable selection required for child definition:** Make sure your `env` variable has selected values when you define your `machine` variable. Otherwise, the `machine` query will return no results. - **Variable selection required for widget usage:** Ensure the variable has selected values when you use it inside widgets. Otherwise, the widget's query will return no results. - **Deletion impact:** If your `env` variable is deleted, your `machine` variable may show errors when loading. -- **Cleared values:** If your `env` variable's values are cleared, your `machine` variable will continue to show values based on `env`'s previous selections. \ No newline at end of file +- **Cleared values:** If your `env` variable's values are cleared, your `machine` variable will continue to show values based on `env`'s previous selections.