Skip to content

Commit

Permalink
Cleaned up some of the language to match our style guide
Browse files Browse the repository at this point in the history
  • Loading branch information
paperclypse committed Sep 2, 2021
1 parent 8aeb053 commit ddf1486
Showing 1 changed file with 45 additions and 44 deletions.
Expand Up @@ -158,37 +158,35 @@ Additional notes:
</Collapser>
</CollapserGroup>

## Configuration [#configuration]
## Create a New Relic user for your Redis server [#enable-instance]

### Enabling your Redis Server [#enable-instance]

If you are using Redis v6+ and using ACLs to control the access to your instance, you may want to create a user specific for the integration. Use this command to creat and grant the required permissions to your user:
If you're using Redis 6+ and using access control lists (ACLs) to control access to your instance, you may want to create a `newrelic` user for the integration. Use this command to create and grant the required permissions to your user:

```
ACL SETUSER newrelic on >'YOUR_SELECTED_PASSWORD' ~* +INFO +CONFIG|GET +SELECT +TYPE +LLEN +SCARD +ZCOUNT +HLEN
```

### Configure the integration [#config]
## Configure the integration [#config]

There are several ways to configure the integration, depending on how it was installed:

* If enabled via Kubernetes: see [Monitor services running on Kubernetes](/docs/monitor-service-running-kubernetes).
* If enabled via Amazon ECS: see [Monitor services running on ECS](/docs/integrations/host-integrations/host-integrations-list/monitor-services-running-amazon-ecs).
* If installed on-host: edit the config in the integration's YAML config file, `redis-config.yml`.
* If installed on-host: edit the config in the integration's YAML configuration file `redis-config.yml`.

An integration's YAML-format configuration is where you can place required login credentials and configure how data is collected. Which options you change depend on your setup and preference.
Use the YAML configuration to place required login credentials and configure how your data is collected, depending on your setup and preference.

The configuration file has common settings applicable to all integrations like `interval`, `timeout`, `inventory_source`. To read all about these common settings refer to our [Configuration Format](/docs/create-integrations/infrastructure-integrations-sdk/specifications/host-integrations-newer-configuration-format/#configuration-basics) document.
The configuration file has common settings applicable to all integrations, like `interval`, `timeout`, `inventory_source`. To learn more about these common settings, see our [YAML configuration format](/docs/create-integrations/infrastructure-integrations-sdk/specifications/host-integrations-newer-configuration-format/#configuration-basics).

<Callout variant="important">
If you are still using our Legacy configuration/definition files please refer to this [document](/docs/create-integrations/infrastructure-integrations-sdk/specifications/host-integrations-standard-configuration-format/) for help.
If you're still using our legacy configuration/definition files, use our [older, standard configuration foramt](/docs/create-integrations/infrastructure-integrations-sdk/specifications/host-integrations-standard-configuration-format/).
</Callout>

Specific settings related to Redis are defined using the `env` section of the configuration file. These settings control the connection to your Redis instance as well as other security settings and features. The list of valid settings is described in the next section of this document.
Specific settings related to Redis are defined using the `env` section of the configuration file. These settings control the connection to your Redis instance as well as other security settings and features.

### Redis Instance Settings [#instance-settings]
## Redis instance settings [#instance-settings]

The Redis integration collects both Metrics(**M**) and Inventory(**I**) information. Check the "**Applies To**" column below to find which settings can be used for each specific collection:
The Redis integration collects both Metrics(**M**) and Inventory(**I**) information. In the table, use the **Applies To** column for the settings available to each collection:

<table>
<thead>
Expand Down Expand Up @@ -244,7 +242,7 @@ The Redis integration collects both Metrics(**M**) and Inventory(**I**) informat
**USERNAME**
</td>
<td>
Username to use when connecting to the Redis server. Use only with Redis v6+ if ACL is enabled.
Username to use when connecting to the Redis server. Use only with Redis 6+ if ACL is enabled.
</td>
<td>
N/A
Expand Down Expand Up @@ -349,7 +347,7 @@ The Redis integration collects both Metrics(**M**) and Inventory(**I**) informat
**KEYS_LIMIT**
</td>
<td>
Max number of the keys to retrieve their lengths.
Max number of keys to retrieve their lengths.
</td>
<td>
30
Expand All @@ -364,7 +362,7 @@ The Redis integration collects both Metrics(**M**) and Inventory(**I**) informat
**CONFIG_INVENTORY**
</td>
<td>
Set to 'false' in environments where the Redis CONFIG command is not allowed (e.g. AWS, ElastiCache).
Set to 'false' in environments where the Redis CONFIG command is not allowed (for example, AWS or ElastiCache).
</td>
<td>
true
Expand All @@ -379,7 +377,7 @@ The Redis integration collects both Metrics(**M**) and Inventory(**I**) informat
**RENAMED_COMMANDS**
</td>
<td>
Map of default Redis commands to their renamed form.
Map default Redis commands to their renamed form.
</td>
<td>
N/A
Expand Down Expand Up @@ -409,7 +407,7 @@ The Redis integration collects both Metrics(**M**) and Inventory(**I**) informat
**METRICS**
</td>
<td>
Set to `true` to enable Metrics only collection.
Set to `true` to enable metrics-only collection.
</td>
<td>
false
Expand All @@ -423,7 +421,7 @@ The Redis integration collects both Metrics(**M**) and Inventory(**I**) informat
**INVENTORY**
</td>
<td>
Set to `true` to enable Inventory only collection.
Set to `true` to enable inventory-only collection.
</td>
<td>
false
Expand All @@ -436,14 +434,15 @@ The Redis integration collects both Metrics(**M**) and Inventory(**I**) informat
</table>

The values for these settings can be defined in several ways:
* Adding the value directly in the config file. This is the most common way.
* Replacing the values from environment variables using the `{{}}` notation. This requires infrastructure agent v1.14.0+. Read more [here](/docs/infrastructure/install-infrastructure-agent/configuration/configure-infrastructure-agent/#passthrough).
* Using Secrets management. Use this to protect sensible information such as passwords to be exposed in plain text on the configuration file. For more information, see [Secrets management](https://docs.newrelic.com/docs/integrations/host-integrations/installation/secrets-management).
* Add the value directly to the configuration file. This is the most common way.
* Replace the values from environment variables using the `{{}}` notation. This requires infrastructure agent 1.14.0+. For more on this, see more on [infrastructure agent passthrough environment variables](/docs/infrastructure/install-infrastructure-agent/configuration/configure-infrastructure-agent/#passthrough).
* Use secrets management to protect sensible information, such as passwords, so that it's not exposed in plain text on the configuration file. For more information, see [secrets management](https://docs.newrelic.com/docs/integrations/host-integrations/installation/secrets-management).

## Labels and custom attributes [#labels]

### Labels/Custom Attributes [#labels]
You can also decorate your metrics with labels. Labels allow you to add key/value pair attributes to your metrics so that you can query, filter, or group your metrics.

You can further decorate your metrics using labels. Labels allow you to add key/value pairs attributes to your metrics which you can then use to query, filter or group your metrics on.<br/>
Our default sample config file includes examples of labels but, as they are not mandatory, you can remove, modify or add new ones of your choice.
Even though our default sample configuration file includes examples of labels, they're optional. You can remove, modify, or add new ones.

```
labels:
Expand All @@ -455,10 +454,10 @@ Our default sample config file includes examples of labels but, as they are not

<CollapserGroup>
<Collapser
id="example1"
title="BASIC CONFIGURATION"
id="basic-config"
title="Basic configuration"
>
This is the very basic configuration to collect Metrics and Inventory from your localhost:
This is the basic configuration used to collect metrics and inventory from your localhost:

```
integrations:
Expand All @@ -485,8 +484,8 @@ Our default sample config file includes examples of labels but, as they are not
```
</Collapser>
<Collapser
id="example2"
title="BASIC AUTHENTICATION"
id="basic-auth"
title="Basic authentication"
>
This configuration connects to Redis using basic authentication. Replace `my_password` with your `REQUIREPASS` password:

Expand Down Expand Up @@ -518,10 +517,10 @@ Our default sample config file includes examples of labels but, as they are not
</Collapser>

<Collapser
id="example3"
title="REDIS v6+ ACL AUTHENTICATION"
id="acl-auth"
title="REDIS 6+ ACL authentication"
>
In Redis version 6 or above you can protect your instance with [Access Control List](https://redis.io/topics/acl) (ACLs). In this scenario, use `USERNAME` and `PASSWORD` replacing their values with your correct credentials:
In Redis 6+, you can protect your instance with [Access Control Lists (ACLs)](https://redis.io/topics/acl). For ACLs, replace the `USERNAME` and `PASSWORD` values with your credentials:

```
integrations:
Expand Down Expand Up @@ -553,10 +552,10 @@ Our default sample config file includes examples of labels but, as they are not
</Collapser>

<Collapser
id="example4"
title="METRICS ONLY WITH TLS CONNECTION"
id="metrics-tls-connection"
title="Metrics-only with TLS connection"
>
This configuration connects to Redis using TLS. You can also add `TLS_INSECURE_SKIP_VERIFY : true` to disable server name verification:
Use to connect to Redis with TLS. You can add `TLS_INSECURE_SKIP_VERIFY : true` to disable the server name verification:

```
integrations:
Expand All @@ -574,10 +573,10 @@ Our default sample config file includes examples of labels but, as they are not
</Collapser>

<Collapser
id="example5"
title="METRICS ONLY CONNECTING OVER SOCKET"
id="metrics-connect-socket"
title="Metrics-only connecting over socket"
>
This configuration connects to Redis using a socket file as an alternative to TCP Hostname/Port connection:
Use to connect to Redis using a socket file. This is an alternative to a TCP Hostname/Port connection:

```
integrations:
Expand All @@ -594,10 +593,10 @@ Our default sample config file includes examples of labels but, as they are not
</Collapser>

<Collapser
id="example6"
title="USING RENAMED COMMANDS"
id="renamed-commands"
title="Using renamed commands"
>
This configuration shows how to collect your metrics/inventory if you have used [`rename-command`](https://redis.io/topics/security#disabling-of-specific-commands) to protect your instance:
Use this to collect your metrics/inventory if you've used the [`rename-command`](https://redis.io/topics/security#disabling-of-specific-commands) to protect your instance:

```
integrations:
Expand Down Expand Up @@ -627,10 +626,12 @@ Our default sample config file includes examples of labels but, as they are not
</Collapser>

<Collapser
id="example7"
title="MULTI-INSTANCE MONITORING WITH KEYS FILTERING"
id="multi-instance-keys-filtering"
title="Multi-instance monitoring with keys filtering"
>
In this configuration we collect metrics from 2 different Redis servers using the the same integration. In the first instance we are collecting only `KEY_1` amd `KEY_2` from Redis database 0. If you need to collect from different databases specify them as `{"DB":"KEYS"}` as in the second instance example:
Use this if you need to collect metrics from two different Redis servers using the the same integration.

The first instance example is only collecting `KEY_1` amd `KEY_2` from Redis database 0. The second instance example shows how to collect from different databases with `{"DB":"KEYS"}`.

```
integrations:
Expand Down

0 comments on commit ddf1486

Please sign in to comment.