Skip to content
This repository has been archived by the owner on Dec 15, 2021. It is now read-only.

Docs team edits #30

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
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
43 changes: 20 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
[![Go Report Card](https://goreportcard.com/badge/github.com/newrelic/newrelic-istio-adapter)](https://goreportcard.com/report/github.com/newrelic/newrelic-istio-adapter)
[![Build Status](https://travis-ci.com/newrelic/newrelic-istio-adapter.svg?branch=master)](https://travis-ci.com/newrelic/newrelic-istio-adapter)

# New Relic Istio Adapter
# New Relic Istio adapter
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I prefer using title case for section headers. Is this case structure a standard we are trying to adhere to?


*An Istio Mixer adapter to send telemetry data to New Relic.*

For more information on how Istio Mixer telemetry is created and collected, please see this [Mixer Overview](https://istio.io/docs/reference/config/policy-and-telemetry/mixer-overview/).
For more information on how Istio Mixer telemetry is created and collected, please see this [Mixer overview](https://istio.io/docs/reference/config/policy-and-telemetry/mixer-overview/).

For more information about out-of-process Istio Mixer adapters, please see the [Mixer Out of Process Adapter Walkthrough](https://github.com/istio/istio/wiki/Mixer-Out-Of-Process-Adapter-Walkthrough)
For more information about out-of-process Istio Mixer adapters, please see the [Mixer out of process adapter walkthrough](https://github.com/istio/istio/wiki/Mixer-Out-Of-Process-Adapter-Walkthrough)

## Quotas

**Metrics and Spans exported from this adapter to New Relic will be rate limited!**
**Metrics and spans exported from this adapter to New Relic will be rate limited!**

Currently (2019-08-30) the following quotas apply to APM Professional accounts:

* 500,000 Metrics / minute
* 250,000 unique Metric timeseries
* 50 attributes per Metric
* 500,000 metrics / minute
* 250,000 unique metric timeseries
* 50 attributes per metric
* 5,000 Spans / minute

You may request a quota increase for Metrics and/or Span by contacting your New Relic account representative.
You may request a quota increase for metrics and/or spans by contacting your New Relic account representative.

## Quickstart

Expand All @@ -29,17 +29,17 @@ The `newrelic-istio-adapter` should be run alongside an installed/configured Ist
For Kubernetes installations, Helm deployment charts have been provided in the `helm-charts` directory.
These charts are intended to provide a simple installation and customization method for users.

See the [Helm installation docs](https://helm.sh/docs/using_helm/#install-helm) for installation/configuration of Helm.
See the [Helm install docs](https://helm.sh/docs/using_helm/#install-helm) for installation/configuration of Helm.

### Prerequisites

* A Kubernetes cluster
* A working `kubectl` installation
* A working `helm` installation
* A Healthy Istio deployment
* A New Relic Insights Insert API Key.
* A healthy Istio deployment
* A [New Relic Insights Insert API Key](https://docs.newrelic.com/docs/apis/get-started/intro-apis/types-new-relic-api-keys#event-insert-key).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome 🏅


### Deploy Helm Template
### Deploy Helm template

The `newrelic-istio-adapter` should be deployed to an independent namespace.
This provides isolation and customizable access control.
Expand Down Expand Up @@ -118,8 +118,7 @@ newrelic-response-size 10s
newrelic-span 10s
```

You should start to see metrics sent to [Insights](https://insights.newrelic.com) a few minutes after the deployment.
As an example, this Insights query will display a timeseries graph of total Istio requests:
You should be able to query your data via [NRQL](https://docs.newrelic.com/docs/query-data/nrql-new-relic-query-language/getting-started/introduction-nrql) within a few minutes of deployment. For example, this NRQL query will display a timeseries graph of total Istio requests:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm a fan of wrapping on sentence breaks to make reviews of the Markdown changes easier to understand.

Suggested change
You should be able to query your data via [NRQL](https://docs.newrelic.com/docs/query-data/nrql-new-relic-query-language/getting-started/introduction-nrql) within a few minutes of deployment. For example, this NRQL query will display a timeseries graph of total Istio requests:
You should be able to query your data via [NRQL](https://docs.newrelic.com/docs/query-data/nrql-new-relic-query-language/getting-started/introduction-nrql) within a few minutes of deployment.
For example, this NRQL query will display a timeseries graph of total Istio requests:


```
From Metric SELECT sum(istio.request.total) TIMESERIES
Expand All @@ -143,15 +142,15 @@ kubectl -n newrelic-istio-adapter logs -l app.kubernetes.io/name=newrelic-istio-

To get started visualizing your data try the [sample dashboard template](#new-relic-dashboard-template).

### Clean Up
### Clean up

If you want to remove the `newrelic-istio-adapter` you can do so by deleting the resources defined in the manifest you deployed.

```
kubectl delete -f newrelic-istio-adapter.yaml
```

## Distributed Tracing
## Distributed tracing

The `newrelic-istio-adapter` is able to send [trace spans from services within the Istio service mesh](https://istio.io/docs/tasks/telemetry/distributed-tracing/overview/) to New Relic.
This functionality is disabled by default, but it can be enabled by adding the following `telemetry.rules` value when deploying the `newrelic-istio-adapter` Helm [chart](./helm-charts/README.md#configuration).
Expand All @@ -175,17 +174,15 @@ Additionally, the cost of sending spans to New Relic needs to be understood **be

## Find and use your data

Once the adapter is sending data you can start to explore your data in New Relic:

- Metric data: see [Metric API docs](https://docs.newrelic.com/docs/data-ingest-apis/get-data-new-relic/metric-api/introduction-metric-api#find-data).
- Trace/span data: see [Trace API docs](https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/trace-api/introduction-trace-api#view-data).
Tips on how to find and query your data in New Relic:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Tips on how to find and query your data in New Relic:
Tips on how to find and query your data in New Relic:

- [Find metric data](https://docs.newrelic.com/docs/data-ingest-apis/get-data-new-relic/metric-api/introduction-metric-api#find-data)
- [Find trace/span data](https://docs.newrelic.com/docs/understand-dependencies/distributed-tracing/trace-api/introduction-trace-api#view-data)

For general querying information, see:

- [Query New Relic data](https://docs.newrelic.com/docs/using-new-relic/data/understand-data/query-new-relic-data)
- [Intro to NRQL](https://docs.newrelic.com/docs/query-data/nrql-new-relic-query-language/getting-started/nrql-syntax-clauses-functions)
- [Intro to NRQL](https://docs.newrelic.com/docs/query-data/nrql-new-relic-query-language/getting-started/introduction-nrql)

### New Relic Dashboard Template
### New Relic dashboard template

A [dashboard template](sample_newrelic_dashboard.json) is provided to chart some Istio metrics the default configuration produces. The template is designed to be imported with the [Insights Dashboard API](https://docs.newrelic.com/docs/insights/insights-api/manage-dashboards/insights-dashboard-api) and can be created straight from the [API Explorer](https://rpm.newrelic.com/api/explore/dashboards/create).

Expand Down