From 752e2348a60826da7a22408438e22afbe2e83f28 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 15 Feb 2019 11:34:17 -0700 Subject: [PATCH 01/12] updated telegraf config doc to include more info, resolves #36 --- assets/styles/layouts/_layout-article.scss | 4 +- .../v2.0/collect-data/advanced-telegraf.md | 62 ------- content/v2.0/collect-data/use-telegraf.md | 168 ++++++++++++++++++ content/v2.0/users/tokens/_index.md | 2 +- 4 files changed, 172 insertions(+), 64 deletions(-) delete mode 100644 content/v2.0/collect-data/advanced-telegraf.md create mode 100644 content/v2.0/collect-data/use-telegraf.md diff --git a/assets/styles/layouts/_layout-article.scss b/assets/styles/layouts/_layout-article.scss index 32058be35..94e1fc722 100644 --- a/assets/styles/layouts/_layout-article.scss +++ b/assets/styles/layouts/_layout-article.scss @@ -132,7 +132,9 @@ li { margin: .25rem 0; - p:only-child { margin-bottom: 0; } + &:not(:last-child) { + > p:only-child{ margin-bottom: 0; } + } } //////////////////////////////////// Code //////////////////////////////////// diff --git a/content/v2.0/collect-data/advanced-telegraf.md b/content/v2.0/collect-data/advanced-telegraf.md deleted file mode 100644 index 8b0a66a99..000000000 --- a/content/v2.0/collect-data/advanced-telegraf.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: Create a Telegraf configuration -weight: 103 -seotitle: Create a Telegraf configuration -description: > - Use the InfluxDB UI to create Telegraf configurations for collecting metrics data. -menu: - v2_0: - name : Create a Telegraf configuration - parent: Collect data - ---- - -{{% note %}} -* Telegraf 1.9.2 or later must be used -* Telegraf 1.9.x is required to use the `https://` option. -* All Telegraf plugins are supported, but only a subset are configurable using the InfluxDB UI. -* If you have a Telegraf agent (v. 1.8 or later) running, you can enable the InfluxDB v2 output plugin to "dual land" data using both your existing InfluxDB 1.x and InfluxDB 2.0 instances. -{{% /note %}} - -## Create a Telegraf configuration - -Follow the steps below to use the InfluxDB UI to create a Telegraf configuration for collecting time series data. - -1. Open a web browser to access the InfluxDB 2.0 user interface - ([localhost:9999](http://localhost:9999)). The **Getting started with InfluxDB 2.0** screen appears. -2. To access the **Telegraf Configurations** page, use either of the following two paths: - * Click **Organizations** in the navigation bar on the far left of the page, click on an organization, and then click the **Telegraf** tab. - * Click **Configure a Data Collector** and then select the **Telegraf** tab. -3. Click **Create Configuration**. The **Data Loading** page appears with the heading "Select Telegraf Plugins to add to your bucket." -4. Select your predefined **Bucket**, select one or more of the available options (**System**, **Docker**, **Kubernetes**, **NGINX**, or **Redis**), and then click **Continue**. A page with **Plugins to Configure** appears. -5. Review the list of **Plugins to Configure** for any configuration requirements. - * Plugins listed with a green checks in front require no additional configuration steps. - * To configure a plugin or access plugin documentation, click the plugin name. - * Click **Continue** repeatedly to cycle through information on each of the plugins and then continue to the next step. Alternatively, you can click **Skip to Verify** to immediately proceed to the next step. -6. On the **Listen for Telegraf Data** page, complete the three steps to install Telegraf, configure your API Token, and start Telegraf on your local instance. - - 1. Install the latest Telegraf version. - * See the note above for specifics about supported versions. - * The latest Telegraf version can be downloaded from the [InfluxData Downloads](https://portal.influxdata.com/downloads/) page. - 2. Configure your API token as an environment variable. - * The API token grants Telegraf access to your InfluxDB 2.0 instance. - * Copy the code from this page and run the code on your terminal window to set an environment variable with your token. - 3. Start the Telegraf service - * Copy the code from this page and run it in a terminal window. - * When you start Telegraf with the `-config` flag provided, Telegraf will download the configuration file generated by InfluxDB 2.0 and start Telegraf using that configuration file. - -7. Verify that you have correctly completed the steps by clicking **Listen for Data** (if you don't see this button, scroll down the internal frame or create a larger browser window). A **Connection Found!** message appears. -8. Click **Finish**. Your configuration name - and the associated bucket name appears in the list of Telegraf connections. - -You have configured Telegraf plugins that can collect data and add them to your InfluxDB buckets. - -## Next steps - -Now that you have data ready for exploration, you can: - -* **Query data.** To get started querying the data stored in InfluxDB buckets using the InfluxDB user interface (UI) and the `influx` command line interface (CLI), see [Query data in InfluxDB](/v2.0/query-data). - -* **Process data.** To learn about creating tasks for processing and analyzing data, see [Process data with InfluxDB tasks](/v2.0/process-data) - -* **Visualize data.** To learn how to build dashboards for visualizing your data, see [Visualize data with the InfluxDB UI](/v2.0/visualize-data). diff --git a/content/v2.0/collect-data/use-telegraf.md b/content/v2.0/collect-data/use-telegraf.md new file mode 100644 index 000000000..bae33600d --- /dev/null +++ b/content/v2.0/collect-data/use-telegraf.md @@ -0,0 +1,168 @@ +--- +title: Use Telegraf to collect data +weight: 103 +seotitle: Use Telegraf to collect and write data +description: > + Use Telegraf to collect and write data in InfluxDB v2.0. Create Telegraf configurations + in the InfluxDB UI or manually configure Telegraf. +aliases: + - /v2.0/collect-data/advanced-telegraf +menu: + v2_0: + name : Use Telegraf + parent: Collect data + +--- + +[Telegraf](https://www.influxdata.com/time-series-platform/telegraf/) is InfluxData's +data collection agent for collecting and reporting metrics. +Its vast library of input plugins and "plug-and-play" architecture lets you quickly +and easily collect metrics from many different sources. +This article walks through using Telegraf to collect and store data in InfluxDB v2.0. + +#### Requirements +- **Telegraf 1.9.2 or greater** installed on the machine from which metrics are collected. + _For information about installing Telegraf, see the + [Telegraf Installation instructions](https://docs.influxdata.com/telegraf/latest/introduction/installation/)._ + +## Configure Telegraf +All Telegraf input and output plugins are enabled and configured in Telegraf's configuration file (`telegraf.conf`). +You have the following options for configuring Telegraf: + +- [Create a Telegraf configuration in the InfluxDB user interface (UI)](#create-a-telegraf-configuration-in-the-influxdb-ui) +- [Manually configure Telegraf](#manually-configure-telegraf) + +### Create a Telegraf configuration in the InfluxDB UI + +1. Open the InfluxDB UI in your web browser + _(default: [localhost:9999](http://localhost:9999))_. +2. Access the **Telegraf Configurations** page by either of the following paths: + - Click **Organizations** in the left navigation menu, click on an organization, + then click the **Telegraf** tab. + - From the InfluxDB UI landing page, click **Configure a Data Collector**, + then select the **Telegraf** tab. +3. Click **Create Configuration**. + The **Data Loading** page appears with the heading "Select Telegraf Plugins to add to your bucket." +4. Select the **Bucket** in which Telegraf will store the collected data. +5. Select one or more of the available "plugin groups" + (e.g. **System**, **Docker**, **Kubernetes**, **NGINX**, or **Redis**), and click **Continue**. + {{% note %}} + All Telegraf plugins are supported, but only a subset are configurable using the InfluxDB UI. + To use plugins other than those listed, you must [manually configure Telegraf](#manually-configure-telegraf). + {{% /note %}} +6. Review the list of **Plugins to Configure** for any configuration requirements. + - Plugins listed with a green checkmarks require no additional configuration steps. + - To configure a plugin or access plugin documentation, click the plugin name. + - Click **Continue** on each plugin to cycle through information and continue to the next step. + Alternatively, you can click **Skip to Verify** to immediately proceed to the next step. +7. The **Test Your Configuration** page provides instructions for how to start + Telegraf using the generated configuration. + The [Start Telegraf](#start-telegraf) section below covers these steps in detail. +8. Once Telegraf is running, click **Listen for Data** to confirm Telegraf is successfully + sending data to InfluxDB. + Once confirmed, a **Connection Found!** message appears. +9. Click **Finish**. Your configuration name and the associated bucket name appears + in the list of Telegraf connections. + +### Manually configure Telegraf +Configure your Telegraf agents's input and output plugins in your `telegraf.conf`. +[Input plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/inputs/) collect metrics. +[Output plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/outputs/) define destinations to which metrics are sent. + +#### Enable and configure the InfluxDB v2 output plugin +To have Telegraf to write data to InfluxDB v2.0, enable in the +[`influxdb_v2` output plugin](https://github.com/influxdata/telegraf/blob/master/plugins/outputs/influxdb_v2/README.md) +in your `telegraf.conf`. + +The following settings are required: + +##### urls +The URLs of the InfluxDB instances. + +##### token +Your InfluxDB v2.0 authorization token. + +{{% note %}} +To prevent having InfluxDB authentication tokens stored in plain text in your `config.toml`, +store your token in the `INFLUX_TOKEN` environment variable and read it into your config. +{{% /note %}} + +##### organization +The name of the organization to which to write. + +##### bucket +The name of the bucket to which to write. + +#### Example influxdb_v2 configuration +```toml +# ... + +[[outputs.influxdb_v2]] + urls = ["http://localhost:9999"] + token = "$INFLUX_TOKEN" + organization = "example-org" + bucket = "example-bucket" + +# ... +``` + +{{% note %}} +##### Write to InfluxDB v1.x and v2.0 +For existing Telegraf agents already writing to an existing InfluxDB v1.x database, +enabling the InfluxDB v2 output plugin will "dual land" data in your InfluxDB v1.x +and InfluxDB v2.0 instances. +{{% /note %}} + + +## Start Telegraf + +### Configure your API token as an environment variable +Requests to the InfluxDB v2.0 API must include an authentication token. +Tokens represents given sets of permissions and grant access to your InfluxDB v2.0 instance. + +Define the `INFLUX_TOKEN` environment variable using your token. +For information about viewing tokens, see [View tokens](/v2.0/users/tokens/view-tokens/). + +```sh +export INFLUX_TOKEN=YourAuthenticationToken +``` + +_If creating a configuration through the UI, the setup instructions include this +command with your actual token in place._ + +### Start the Telegraf service +Start the Telegraf service using the `-config` flag to specify the location of your `telegraf.conf`. +This can be either a file path or a URL. + +Each Telegraf configuration generated through the InfluxDB UI is accessible via the InfluxDB v2 API. +The exact command, including the URL, is provided in the **Setup Details** for the configuration. + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[URL](#) +[File path](#) +{{% /code-tabs %}} + +{{% code-tab-content %}} +```sh +telegraf -config http://localhost:9999/api/v2/telegrafs/0xoX00oOx0xoX00o +``` +{{% /code-tab-content %}} + +{{% code-tab-content %}} +```sh +telegraf -config /path/to/custom/telegraf.conf +``` +{{% /code-tab-content %}} + +{{< /code-tabs-wrapper >}} + +## Next steps + +Now that you have data ready for exploration, you can: + +* **Query data.** To get started querying the data stored in InfluxDB buckets using the InfluxDB user interface (UI) and the `influx` command line interface (CLI), see [Query data in InfluxDB](/v2.0/query-data). + +* **Process data.** To learn about creating tasks for processing and analyzing data, see [Process data with InfluxDB tasks](/v2.0/process-data) + +* **Visualize data.** To learn how to build dashboards for visualizing your data, see [Visualize data with the InfluxDB UI](/v2.0/visualize-data). diff --git a/content/v2.0/users/tokens/_index.md b/content/v2.0/users/tokens/_index.md index d9a92e524..135ef2a36 100644 --- a/content/v2.0/users/tokens/_index.md +++ b/content/v2.0/users/tokens/_index.md @@ -10,7 +10,7 @@ weight: 105 --- InfluxDB ensures secure interaction between users and data through the use of **authentication tokens**. -Every user has a unique token. +Tokens represent a set of permissions granted to users using each token. The following articles provide information about managing authentication tokens. From 16fc047afa32fdb24e478c8f3a7b648899fcf8cd Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 25 Feb 2019 16:26:19 -0700 Subject: [PATCH 02/12] updated the scraper doc --- content/v2.0/collect-data/quick-start.md | 45 ++++++++++++++ .../v2.0/collect-data/scraper-quickstart.md | 56 ------------------ static/img/2-0-quickstart-confirmation.png | Bin 0 -> 41458 bytes 3 files changed, 45 insertions(+), 56 deletions(-) create mode 100644 content/v2.0/collect-data/quick-start.md delete mode 100644 content/v2.0/collect-data/scraper-quickstart.md create mode 100644 static/img/2-0-quickstart-confirmation.png diff --git a/content/v2.0/collect-data/quick-start.md b/content/v2.0/collect-data/quick-start.md new file mode 100644 index 000000000..2bcda0ea0 --- /dev/null +++ b/content/v2.0/collect-data/quick-start.md @@ -0,0 +1,45 @@ +--- +title: Quick start to data collection +description: > + Use the "Quick Start" to create a scraper that collects InfluxDB metrics from InfluxDB's `/metrics` endpoint. +aliases: + - /v2.0/collect-data/scraper-quickstart +menu: + v2_0: + name: Quick start + parent: Collect data +weight: 101 +--- + +The quickest way to start collecting data with InfluxDB v2.0 is to use the **Quick Start** +option available in the last step of InfluxDB's user interface (UI) initialization process. +The Quick Start creates a data scraper that collects metrics from InfluxDB's own `/metrics` endpoint. +The scraped data provides a robust dataset of internal InfluxDB metrics which you can query, visualize, and process. + +## Use Quick Start to collect InfluxDB metrics +After [initializing InfluxDB v2.0](/v2.0/get-started/#setup-influxdb), +the "Let's start collecting data!" page displays options for collecting data. +Click **Quick Start**. + +The following message briefly appears in the UI: + +{{< img-hd src="/img/2-0-quickstart-confirmation.png" />}} + +Behind the scenes, InfluxDB creates and configures a scraper named "InfluxDB Scraper." +The target URL points to the `/metrics` HTTP endpoint of your local InfluxDB instance (e.g. `http://localhost:9999/metrics`), +which outputs internal InfluxDB metrics in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). +InfluxDB stores the scraped metrics in the bucket created during the [initial setup process](/v2.0/get-started/#setup-influxdb). + +{{% note %}} +The Quick Start options is only available in the last step of InfluxDB's initial setup process. +However, if you miss it, you can [manually create a scraper](/v2.0/collect-data/scrape-data) that scrapes data from the `/metrics` endpoint. +{{% /note %}} + +## Next steps +Now that you have data ready for exploration, you can: + +* **Query data.** To get started querying the data stored in InfluxDB buckets using the InfluxDB user interface (UI) and the `influx` command line interface (CLI), see [Query data in InfluxDB](/v2.0/query-data). + +* **Process data.** To learn about creating tasks for processing and analyzing data, see [Process data with InfluxDB tasks](/v2.0/process-data) + +* **Visualize data.** To learn how to build dashboards for visualizing your data, see [Visualize data with the InfluxDB UI](/v2.0/visualize-data). diff --git a/content/v2.0/collect-data/scraper-quickstart.md b/content/v2.0/collect-data/scraper-quickstart.md deleted file mode 100644 index 93c5b9b38..000000000 --- a/content/v2.0/collect-data/scraper-quickstart.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Quick start to data collection -weight: 101 -seotitle: Quick start to data collection -description: > - Use Quick Start to create a scraper to collect InfluxDB metrics into a bucket. -menu: - v2_0: - name: Quick start - parent: Collect data ---- - -{{% note %}} -The steps below are available on a page that appears after you complete the initial configuration described in [Set up InfluxDB](/v2.0/get-started/#setup-influxdb). After clicking one of the three options, the page is no longer available. - -If you missed the change to select Quick Start or you want to learn how to configure a scraper yourself, see [Scrape data using the /metrics endpoint](/v2.0/collect-data/scraper-metrics-endpoint/). -{{% /note %}} - -## Use Quick Start to collect InfluxDB metrics - -When you start InfluxDB 2.0 for the first time, you are guided to configure a user, an organization, and a bucket (see [Set up InfluxDB](/v2.0/get-started/#setup-influxdb)). After completing the setup, the next page displays "Let's start collecting data!" and three options. - -On this page, click **Quick Start**. -The following message briefly appears in a pop-up alert: - -"The InfluxDB Scraper has been configured for http://localhost:9999/metrics." - -Behind the scenes, here's what happened: - -1. InfluxDB 2.0 configured a scraper named "InfluxDB Scraper." - - * The target URL points to the `/metrics` HTTP endpoint of your - local InfluxDB instance: `http://localhost:9999/metrics`. The `/metrics` HTTP endpoint monitors your InfluxDB instance, collects metrics from it, and provides the data in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). - * InfluxDB stores the scraped data in the default bucket created in [the initial setup procedure](/v2.0/get-started/#setup-influxdb). - -2. The InfluxDB Scraper immediately started collecting InfluxDB data and - writing it into your bucket. - -To see a sample of the data being collected in Prometheus format, you can use one of the following methods to display a sample of the exposed InfluxDB metrics in the Prometheus text-based format: - -* In a web browser, open the InfluxDB Scraper URL (http://localhost:9999/metrics). - -* In a terminal window, run the following cURL command: -``` -curl http://localhost:9999/metrics -``` - -## Next steps - -Now that you have data ready for exploration, you can: - -* **Query data.** To get started querying the data stored in InfluxDB buckets using the InfluxDB user interface (UI) and the `influx` command line interface (CLI), see [Query data in InfluxDB](/v2.0/query-data). - -* **Process data.** To learn about creating tasks for processing and analyzing data, see [Process data with InfluxDB tasks](/v2.0/process-data) - -* **Visualize data.** To learn how to build dashboards for visualizing your data, see [Visualize data with the InfluxDB UI](/v2.0/visualize-data). diff --git a/static/img/2-0-quickstart-confirmation.png b/static/img/2-0-quickstart-confirmation.png new file mode 100644 index 0000000000000000000000000000000000000000..58bc0ff059f8c3485ee19b26aa5a991d0b273acd GIT binary patch literal 41458 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 literal 0 HcmV?d00001 From ec165e20d1af9f0e09857d8ea4cf5b8ef18976ab Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 26 Feb 2019 16:27:57 -0700 Subject: [PATCH 03/12] restructured scraper docs, added information about creating scrapable endpoints --- .../v2.0/collect-data/scrape-data/_index.md | 24 +++++++++++ .../scrape-data/manage-scrapers/_index.md | 14 +++++++ .../manage-scrapers/create-a-scraper.md | 28 +++++++++++++ .../manage-scrapers/delete-a-scraper.md | 23 ++++++++++ .../manage-scrapers/update-a-scraper.md | 28 +++++++++++++ .../scrape-data/scrapable-endpoints.md | 39 +++++++++++++++++ .../collect-data/scraper-metrics-endpoint.md | 42 ------------------- 7 files changed, 156 insertions(+), 42 deletions(-) create mode 100644 content/v2.0/collect-data/scrape-data/_index.md create mode 100644 content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md create mode 100644 content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md create mode 100644 content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md create mode 100644 content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md create mode 100644 content/v2.0/collect-data/scrape-data/scrapable-endpoints.md delete mode 100644 content/v2.0/collect-data/scraper-metrics-endpoint.md diff --git a/content/v2.0/collect-data/scrape-data/_index.md b/content/v2.0/collect-data/scrape-data/_index.md new file mode 100644 index 000000000..7906ae8e5 --- /dev/null +++ b/content/v2.0/collect-data/scrape-data/_index.md @@ -0,0 +1,24 @@ +--- +title: Scrape data +seotitle: Scrape data using InfluxDB scrapers +weight: 102 +description: > + Scrape data from InfluxDB instances or remote endpoints using InfluxDB scrapers. + Create a scraper in the InfluxDB UI to collect metrics from a specified target. +aliases: + - /v2.0/collect-data/scraper-metrics-endpoint +v2.0/tags: [scraper] +menu: + v2_0: + name: Scrape data + parent: Collect data +--- + +InfluxDB scrapers collect data from specified targets at regular intervals, +then write the scraped data to an InfluxDB bucket. +Scrapers can collect data from any HTTP/S-accessible endpoints that provide data +in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). + +The following articles provide information about creating and managing InfluxDB data scrapers: + +{{< children >}} diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md new file mode 100644 index 000000000..10edb3480 --- /dev/null +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md @@ -0,0 +1,14 @@ +--- +title: Manage scrapers +seotitle: Manage InfluxDB scrapers +description: Create, update, and delete InfluxDB data scrapers in the InfluxDB user interface. +menu: + v2_0: + name: Manage scrapers + parent: Scrape data +weight: 201 +--- + +The following articles walk through managing InfluxDB scrapers: + +{{< children >}} diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md new file mode 100644 index 000000000..849f7f043 --- /dev/null +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md @@ -0,0 +1,28 @@ +--- +title: Create a scraper +seotitle: Create an InfluxDB scraper +description: Create an InfluxDB scraper that collects data from InfluxDB or a remote endpoint. +menu: + v2_0: + parent: Manage scrapers +weight: 301 +--- + +Create a new scraper in the InfluxDB user interface (UI). + +## Create a scraper in the InfluxDB UI +1. Click **Organizations** in the left navigation menu. + + {{< img-hd src="/img/organizations-icon.png" />}} + +2. In the list of organizations, click the name of your organization. +3. Click the **Scrapers** tab. +4. Click **+ Create Scraper**. +5. Provide a **Name** for the scraper. +5. Select a **Bucket** in which to store the scraped data. +6. Enter the **Target URL** to scrape. The default URL value is `http://localhost:9999/metrics` + which provides InfluxDB-specific metrics in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). +7. Click **Finish**. + +The new scraper will begin scraping data after approximately 10 seconds, +then continue scraping in 10 second intervals. diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md new file mode 100644 index 000000000..ae185f05d --- /dev/null +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md @@ -0,0 +1,23 @@ +--- +title: Delete a scraper +seotitle: Delete an InfluxDB scraper +description: Delete an InfluxDB scraper in the InfluxDB user interface. +menu: + v2_0: + parent: Manage scrapers +weight: 303 +--- + +Delete a scraper from the InfluxDB user interface (UI). + +## Delete a scraper from the InfluxDB UI +1. Click **Organizations** in the left navigation menu. + + {{< img-hd src="/img/organizations-icon.png" />}} + +2. In the list of organizations, click the name of your organization. +3. Click the **Scrapers** tab. A listing of any existing scrapers appears with the + **Name**, **URL**, and **BUCKET** for each scraper. +4. Hover over the scraper you would like to delete and click the **Delete** button + that appears on the far right of the scraper list item. +5. Click **Confirm**. diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md new file mode 100644 index 000000000..9de403279 --- /dev/null +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md @@ -0,0 +1,28 @@ +--- +title: Update a scraper +seotitle: Update an InfluxDB scraper +description: Update an InfluxDB scraper that collects data from InfluxDB or a remote endpoint. +menu: + v2_0: + parent: Manage scrapers +weight: 302 +--- + +Update a scraper in the InfluxDB user interface (UI). + +{{% note %}} +Scraper **Target URLs** and **BUCKETS** can not be updated. +To modify either, [create a new scraper](/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper). +{{% /note %}} + +## Update a scraper in the InfluxDB UI +1. Click **Organizations** in the left navigation menu. + + {{< img-hd src="/img/organizations-icon.png" />}} + +2. In the list of organizations, click the name of your organization. +3. Click the **Scrapers** tab. A listing of any existing scrapers appears with the + **Name**, **URL**, and **BUCKET** for each scraper. +4. Hover over the scraper you would like to update and click the edit icon (pencil) + that appears next to the scrape name. +5. Enter a new name for the scraper. Hit return or click out of the name field to save the change. diff --git a/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md b/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md new file mode 100644 index 000000000..df6620a2f --- /dev/null +++ b/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md @@ -0,0 +1,39 @@ +--- +title: Create scrapable endpoints +seotitle: Create scrapable endpoints for InfluxDB +description: placeholder +menu: + v2_0: + parent: Scrape data +weight: 202 +v2.0/tags: [scraper] +--- + +InfluxDB scrapers can collect data from any HTTP/S-accessible endpoint, provided the returned data +is in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). +The links below provide information about the Prometheus data format as well +as tools and clients that will generate Prometheus-formatted metrics for you. + +## Prometheus Node Exporter +The [Prometheus Node Exporter](https://github.com/prometheus/node_exporter) exposes +a wide variety of hardware- and kernel-related metrics for **\*nix** systems. + +##### Helpful links +[Monitoring linux host metrics with the Node Exporter](https://prometheus.io/docs/guides/node-exporter/) + +## Prometheus exporters and integrations +[Prometheus exporters and integrations](https://prometheus.io/docs/instrumenting/exporters/) +export Prometheus metrics from third-party systems or services. + +##### Helpful links +[List of third-party exporters](https://prometheus.io/docs/instrumenting/exporters/#third-party-exporters) +[Write a custom Prometheus exporter](https://prometheus.io/docs/instrumenting/writing_exporters/) + +## Prometheus client libraries +[Prometheus client libraries](https://prometheus.io/docs/instrumenting/clientlibs/) +instrument applications for each of their respective languages. +Application metrics are output to an HTTP/S endpoint from which they can be scraped. + +##### Helpful links +[Instrumenting a Go application for Prometheus](https://prometheus.io/docs/guides/go-application/) +[Write Prometheus client libraries](https://prometheus.io/docs/instrumenting/writing_clientlibs/) diff --git a/content/v2.0/collect-data/scraper-metrics-endpoint.md b/content/v2.0/collect-data/scraper-metrics-endpoint.md deleted file mode 100644 index 2c934a0a1..000000000 --- a/content/v2.0/collect-data/scraper-metrics-endpoint.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: Create a scraper -weight: 102 -seotitle: Create a scraper -description: > - Use the InfluxDB UI to configure a scraper for collecting metrics from InfluxDB instances or third-party systems. -v2.0/tags: [scraper] -menu: - v2_0: - name: Create a scraper - parent: Collect data ---- - -An InfluxDB scraper collects data from specified targets at regular intervals and then writes the scraped data to a bucket. Scrapers can collect data from available data sources as long as the data is in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/), which is supported by InfluxDB. - -To quickly create a scraper in InfluxDB 2.0, you can use the InfluxDB 2.0 user interface (UI) to specify the target URL and the bucket to store the data. The scraped data is collected in the Prometheus data format and then transformed to match the InfluxDB data structure in the buckets. - -## Use the InfluxDB UI to create a scraper - -Follow the steps below to configure an InfluxDB scraper. The steps below use the InfluxDB -`/metrics` HTTP endpoint as an example. This endpoint provides InfluxDB-specific metrics in the Prometheus data format. - -1. Open a web browser to access the InfluxDB 2.0 user interface - ([localhost:9999](http://localhost:9999)). The **Getting started with InfluxDB 2.0** screen appears. -2. In the navigation bar on the left, click **Organizations** and then click the name of your organization. The **Organization** page appears for the selected organization. -3. Click the **Scrapers** tab. A listing of any existing scrapers appears, listing the **URL** and the **BUCKET** name. -4. Click **Create Scraper**. The **Data Loading** page appears with **Add Scraper Target** options to define a scraper. -5. From the **Bucket** listing, select the bucket for collecting the data. -6. Enter the **Target URL** to use for the Prometheus `/metrics` HTTP endpoint. The default URL value is `http://localhost:9999/metrics`. -7. Click **Finish**. Your new scraper appears in the scraper listing, displaying the values you specified for the **URL** and the **BUCKET**. - -The new scraper is now collecting data into the InfluxDB bucket you specified. - -## Next steps - -Now that you have data ready to be explored, you can: - -* **Query data.** To get started querying the data stored in InfluxDB buckets using the InfluxDB user interface (UI) and the `influx` command line interface (CLI), see [Query data in InfluxDB](/v2.0/query-data). - -* **Process data.** To learn about creating tasks for processing and analyzing data, see [Process data with InfluxDB tasks](/v2.0/process-data) - -* **Visualize data.** To learn how to build dashboards for visualizing your data, see [Visualize data with the InfluxDB UI](/v2.0/visualize-data). From 3e0312d509419ae9121dcab2da593098b92d2e8c Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 26 Feb 2019 16:38:03 -0700 Subject: [PATCH 04/12] added tags to scraper docs --- content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md | 1 + content/v2.0/collect-data/scrape-data/scrapable-endpoints.md | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md index 10edb3480..ee0f6c5f9 100644 --- a/content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/_index.md @@ -7,6 +7,7 @@ menu: name: Manage scrapers parent: Scrape data weight: 201 +v2.0/tags: [scraper] --- The following articles walk through managing InfluxDB scrapers: diff --git a/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md b/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md index df6620a2f..d71e20ee4 100644 --- a/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md +++ b/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md @@ -36,4 +36,4 @@ Application metrics are output to an HTTP/S endpoint from which they can be scra ##### Helpful links [Instrumenting a Go application for Prometheus](https://prometheus.io/docs/guides/go-application/) -[Write Prometheus client libraries](https://prometheus.io/docs/instrumenting/writing_clientlibs/) +[Writing Prometheus client libraries](https://prometheus.io/docs/instrumenting/writing_clientlibs/) From d2f6fff25c866b52545c2784df6476d7ed3a4f3d Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 26 Feb 2019 16:41:26 -0700 Subject: [PATCH 05/12] added a description to the scrapable endpoints doc --- content/v2.0/collect-data/scrape-data/scrapable-endpoints.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md b/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md index d71e20ee4..6591c11e6 100644 --- a/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md +++ b/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md @@ -1,7 +1,9 @@ --- title: Create scrapable endpoints seotitle: Create scrapable endpoints for InfluxDB -description: placeholder +description: > + InfluxDB scrapers can collect data from any HTTP/S-accessible endpoint, provided the returned data is in the Prometheus data format. + This article provides information about and links to tools that output Prometheus-formatted metrics. menu: v2_0: parent: Scrape data From c7f64defb97093806d93d498d3bd6b52479416ef Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 1 Mar 2019 11:11:44 -0700 Subject: [PATCH 06/12] restructured telegraf docs --- .../v2.0/collect-data/scrape-data/_index.md | 2 +- .../manage-scrapers/create-a-scraper.md | 2 +- .../manage-scrapers/delete-a-scraper.md | 2 +- .../manage-scrapers/update-a-scraper.md | 2 +- content/v2.0/collect-data/use-telegraf.md | 168 ------------------ .../v2.0/collect-data/use-telegraf/_index.md | 32 ++++ .../use-telegraf/auto-config/_index.md | 85 +++++++++ .../auto-config/delete-telegraf-config.md | 27 +++ .../auto-config/update-telegraf-config.md | 29 +++ .../auto-config/view-telegraf-config.md | 34 ++++ .../use-telegraf/manual-config.md | 85 +++++++++ static/img/2-0-telegraf-config-delete.png | Bin 0 -> 69518 bytes static/img/2-0-telegraf-config-update.png | Bin 0 -> 66103 bytes static/img/2-0-telegraf-config-view.png | Bin 0 -> 71146 bytes static/img/organizations-icon.png | Bin 29505 -> 0 bytes 15 files changed, 296 insertions(+), 172 deletions(-) delete mode 100644 content/v2.0/collect-data/use-telegraf.md create mode 100644 content/v2.0/collect-data/use-telegraf/_index.md create mode 100644 content/v2.0/collect-data/use-telegraf/auto-config/_index.md create mode 100644 content/v2.0/collect-data/use-telegraf/auto-config/delete-telegraf-config.md create mode 100644 content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md create mode 100644 content/v2.0/collect-data/use-telegraf/auto-config/view-telegraf-config.md create mode 100644 content/v2.0/collect-data/use-telegraf/manual-config.md create mode 100644 static/img/2-0-telegraf-config-delete.png create mode 100644 static/img/2-0-telegraf-config-update.png create mode 100644 static/img/2-0-telegraf-config-view.png delete mode 100644 static/img/organizations-icon.png diff --git a/content/v2.0/collect-data/scrape-data/_index.md b/content/v2.0/collect-data/scrape-data/_index.md index 7906ae8e5..79e9a72c9 100644 --- a/content/v2.0/collect-data/scrape-data/_index.md +++ b/content/v2.0/collect-data/scrape-data/_index.md @@ -1,7 +1,7 @@ --- title: Scrape data seotitle: Scrape data using InfluxDB scrapers -weight: 102 +weight: 103 description: > Scrape data from InfluxDB instances or remote endpoints using InfluxDB scrapers. Create a scraper in the InfluxDB UI to collect metrics from a specified target. diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md index 849f7f043..a6fcbb005 100644 --- a/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md @@ -13,7 +13,7 @@ Create a new scraper in the InfluxDB user interface (UI). ## Create a scraper in the InfluxDB UI 1. Click **Organizations** in the left navigation menu. - {{< img-hd src="/img/organizations-icon.png" />}} + {{< nav-icon "orgs" >}} 2. In the list of organizations, click the name of your organization. 3. Click the **Scrapers** tab. diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md index ae185f05d..27e0eacc5 100644 --- a/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md @@ -13,7 +13,7 @@ Delete a scraper from the InfluxDB user interface (UI). ## Delete a scraper from the InfluxDB UI 1. Click **Organizations** in the left navigation menu. - {{< img-hd src="/img/organizations-icon.png" />}} + {{< nav-icon "orgs" >}} 2. In the list of organizations, click the name of your organization. 3. Click the **Scrapers** tab. A listing of any existing scrapers appears with the diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md index 9de403279..54bf8a36a 100644 --- a/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md @@ -18,7 +18,7 @@ To modify either, [create a new scraper](/v2.0/collect-data/scrape-data/manage-s ## Update a scraper in the InfluxDB UI 1. Click **Organizations** in the left navigation menu. - {{< img-hd src="/img/organizations-icon.png" />}} + {{< nav-icon "orgs" >}} 2. In the list of organizations, click the name of your organization. 3. Click the **Scrapers** tab. A listing of any existing scrapers appears with the diff --git a/content/v2.0/collect-data/use-telegraf.md b/content/v2.0/collect-data/use-telegraf.md deleted file mode 100644 index bae33600d..000000000 --- a/content/v2.0/collect-data/use-telegraf.md +++ /dev/null @@ -1,168 +0,0 @@ ---- -title: Use Telegraf to collect data -weight: 103 -seotitle: Use Telegraf to collect and write data -description: > - Use Telegraf to collect and write data in InfluxDB v2.0. Create Telegraf configurations - in the InfluxDB UI or manually configure Telegraf. -aliases: - - /v2.0/collect-data/advanced-telegraf -menu: - v2_0: - name : Use Telegraf - parent: Collect data - ---- - -[Telegraf](https://www.influxdata.com/time-series-platform/telegraf/) is InfluxData's -data collection agent for collecting and reporting metrics. -Its vast library of input plugins and "plug-and-play" architecture lets you quickly -and easily collect metrics from many different sources. -This article walks through using Telegraf to collect and store data in InfluxDB v2.0. - -#### Requirements -- **Telegraf 1.9.2 or greater** installed on the machine from which metrics are collected. - _For information about installing Telegraf, see the - [Telegraf Installation instructions](https://docs.influxdata.com/telegraf/latest/introduction/installation/)._ - -## Configure Telegraf -All Telegraf input and output plugins are enabled and configured in Telegraf's configuration file (`telegraf.conf`). -You have the following options for configuring Telegraf: - -- [Create a Telegraf configuration in the InfluxDB user interface (UI)](#create-a-telegraf-configuration-in-the-influxdb-ui) -- [Manually configure Telegraf](#manually-configure-telegraf) - -### Create a Telegraf configuration in the InfluxDB UI - -1. Open the InfluxDB UI in your web browser - _(default: [localhost:9999](http://localhost:9999))_. -2. Access the **Telegraf Configurations** page by either of the following paths: - - Click **Organizations** in the left navigation menu, click on an organization, - then click the **Telegraf** tab. - - From the InfluxDB UI landing page, click **Configure a Data Collector**, - then select the **Telegraf** tab. -3. Click **Create Configuration**. - The **Data Loading** page appears with the heading "Select Telegraf Plugins to add to your bucket." -4. Select the **Bucket** in which Telegraf will store the collected data. -5. Select one or more of the available "plugin groups" - (e.g. **System**, **Docker**, **Kubernetes**, **NGINX**, or **Redis**), and click **Continue**. - {{% note %}} - All Telegraf plugins are supported, but only a subset are configurable using the InfluxDB UI. - To use plugins other than those listed, you must [manually configure Telegraf](#manually-configure-telegraf). - {{% /note %}} -6. Review the list of **Plugins to Configure** for any configuration requirements. - - Plugins listed with a green checkmarks require no additional configuration steps. - - To configure a plugin or access plugin documentation, click the plugin name. - - Click **Continue** on each plugin to cycle through information and continue to the next step. - Alternatively, you can click **Skip to Verify** to immediately proceed to the next step. -7. The **Test Your Configuration** page provides instructions for how to start - Telegraf using the generated configuration. - The [Start Telegraf](#start-telegraf) section below covers these steps in detail. -8. Once Telegraf is running, click **Listen for Data** to confirm Telegraf is successfully - sending data to InfluxDB. - Once confirmed, a **Connection Found!** message appears. -9. Click **Finish**. Your configuration name and the associated bucket name appears - in the list of Telegraf connections. - -### Manually configure Telegraf -Configure your Telegraf agents's input and output plugins in your `telegraf.conf`. -[Input plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/inputs/) collect metrics. -[Output plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/outputs/) define destinations to which metrics are sent. - -#### Enable and configure the InfluxDB v2 output plugin -To have Telegraf to write data to InfluxDB v2.0, enable in the -[`influxdb_v2` output plugin](https://github.com/influxdata/telegraf/blob/master/plugins/outputs/influxdb_v2/README.md) -in your `telegraf.conf`. - -The following settings are required: - -##### urls -The URLs of the InfluxDB instances. - -##### token -Your InfluxDB v2.0 authorization token. - -{{% note %}} -To prevent having InfluxDB authentication tokens stored in plain text in your `config.toml`, -store your token in the `INFLUX_TOKEN` environment variable and read it into your config. -{{% /note %}} - -##### organization -The name of the organization to which to write. - -##### bucket -The name of the bucket to which to write. - -#### Example influxdb_v2 configuration -```toml -# ... - -[[outputs.influxdb_v2]] - urls = ["http://localhost:9999"] - token = "$INFLUX_TOKEN" - organization = "example-org" - bucket = "example-bucket" - -# ... -``` - -{{% note %}} -##### Write to InfluxDB v1.x and v2.0 -For existing Telegraf agents already writing to an existing InfluxDB v1.x database, -enabling the InfluxDB v2 output plugin will "dual land" data in your InfluxDB v1.x -and InfluxDB v2.0 instances. -{{% /note %}} - - -## Start Telegraf - -### Configure your API token as an environment variable -Requests to the InfluxDB v2.0 API must include an authentication token. -Tokens represents given sets of permissions and grant access to your InfluxDB v2.0 instance. - -Define the `INFLUX_TOKEN` environment variable using your token. -For information about viewing tokens, see [View tokens](/v2.0/users/tokens/view-tokens/). - -```sh -export INFLUX_TOKEN=YourAuthenticationToken -``` - -_If creating a configuration through the UI, the setup instructions include this -command with your actual token in place._ - -### Start the Telegraf service -Start the Telegraf service using the `-config` flag to specify the location of your `telegraf.conf`. -This can be either a file path or a URL. - -Each Telegraf configuration generated through the InfluxDB UI is accessible via the InfluxDB v2 API. -The exact command, including the URL, is provided in the **Setup Details** for the configuration. - -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[URL](#) -[File path](#) -{{% /code-tabs %}} - -{{% code-tab-content %}} -```sh -telegraf -config http://localhost:9999/api/v2/telegrafs/0xoX00oOx0xoX00o -``` -{{% /code-tab-content %}} - -{{% code-tab-content %}} -```sh -telegraf -config /path/to/custom/telegraf.conf -``` -{{% /code-tab-content %}} - -{{< /code-tabs-wrapper >}} - -## Next steps - -Now that you have data ready for exploration, you can: - -* **Query data.** To get started querying the data stored in InfluxDB buckets using the InfluxDB user interface (UI) and the `influx` command line interface (CLI), see [Query data in InfluxDB](/v2.0/query-data). - -* **Process data.** To learn about creating tasks for processing and analyzing data, see [Process data with InfluxDB tasks](/v2.0/process-data) - -* **Visualize data.** To learn how to build dashboards for visualizing your data, see [Visualize data with the InfluxDB UI](/v2.0/visualize-data). diff --git a/content/v2.0/collect-data/use-telegraf/_index.md b/content/v2.0/collect-data/use-telegraf/_index.md new file mode 100644 index 000000000..4cdcbe33a --- /dev/null +++ b/content/v2.0/collect-data/use-telegraf/_index.md @@ -0,0 +1,32 @@ +--- +title: Use Telegraf to collect data +weight: 102 +seotitle: Use Telegraf to collect and write data +description: > + Use Telegraf to collect and write data in InfluxDB v2.0. Create Telegraf configurations + in the InfluxDB UI or manually configure Telegraf. +aliases: + - /v2.0/collect-data/advanced-telegraf +menu: + v2_0: + name : Use Telegraf + parent: Collect data + +--- + +[Telegraf](https://www.influxdata.com/time-series-platform/telegraf/) is InfluxData's +data collection agent for collecting and reporting metrics. +Its vast library of input plugins and "plug-and-play" architecture lets you quickly +and easily collect metrics from many different sources. +This article walks through using Telegraf to collect and store data in InfluxDB v2.0. + +#### Requirements +- **Telegraf 1.9.2 or greater** installed on the machine from which metrics are collected. + _For information about installing Telegraf, see the + [Telegraf Installation instructions](https://docs.influxdata.com/telegraf/latest/introduction/installation/)._ + +## Configure Telegraf +All Telegraf input and output plugins are enabled and configured in Telegraf's configuration file (`telegraf.conf`). +You have the following options for configuring Telegraf: + +{{< children >}} diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/_index.md b/content/v2.0/collect-data/use-telegraf/auto-config/_index.md new file mode 100644 index 000000000..0862a400f --- /dev/null +++ b/content/v2.0/collect-data/use-telegraf/auto-config/_index.md @@ -0,0 +1,85 @@ +--- +title: Automatically configure Telegraf +seotitle: Automatically configure Telegraf for InfluxDB v2.0 +description: > + Use the InfluxDB UI to automatically generate a Telegraf configuration, + then start Telegraf using the generated configuration. +menu: + v2_0: + parent: Use Telegraf +weight: 201 +--- + +The InfluxDB user interface (UI) provides a workflow that automatically creates +Telegraf configuration files based on user-selected Telegraf Plugins. +This article walks through creating a Telegraf configuration in the InfluxDB UI and +then starting Telegraf using the generated configuration file. + +{{% note %}} +_View the [requirements](/v2.0/collect-data/use-telegraf#requirements) +for using Telegraf with InfluxDB v2.0._ +{{% /note %}} + +## Create a Telegraf configuration in the InfluxDB UI + +1. Open the InfluxDB UI in your web browser + _(default: [localhost:9999](http://localhost:9999))_. +2. Access the **Telegraf Configurations** page by either of the following paths: + 1. Click **Organizations** in the left navigation menu. + + {{< nav-icon "orgs" >}} + + Click on an organization, then click the **Telegraf** tab. + + 2. From the InfluxDB UI landing page, click **Configure a Data Collector**, + then select the **Telegraf** tab. +3. Click **{{< icon "plus" >}} Create Configuration**. +4. From the **Bucket** dropdown, select the bucket in which Telegraf will store the collected data. +5. Select one or more of the available "plugin groups" + (e.g. **System**, **Docker**, **Kubernetes**, **NGINX**, or **Redis**), and click **Continue**. + {{% note %}} + All Telegraf plugins are supported, but only a subset are configurable using the InfluxDB UI. + To use plugins other than those listed, you must [manually configure Telegraf](/v2.0/collect-data/use-telegraf/manual-config). + {{% /note %}} +6. Review the list of **Plugins to Configure** for any configuration requirements. + Plugins listed with a green checkmarks require no additional configuration steps. + To configure a plugin or access plugin documentation, click the plugin name. +7. Provide a **Telegraf Configuration Name** and an optional **Telegraf Configuration Description**. +8. Click **Create and Verify**. +9. The **Test Your Configuration** page provides instructions for how to start + Telegraf using the generated configuration. + _See [Start Telegraf](#start-telegraf) below for detailed information about what each step does._ +10. Once Telegraf is running, click **Listen for Data** to confirm Telegraf is successfully + sending data to InfluxDB. + Once confirmed, a **Connection Found!** message appears. +11. Click **Finish**. Your configuration name and the associated bucket name appears + in the list of Telegraf connections. + +## Start Telegraf + +### Configure your API token as an environment variable +Requests to the InfluxDB v2.0 API must include an authentication token. +Tokens represent given sets of permissions and grant access to your InfluxDB v2.0 instance. + +Define the `INFLUX_TOKEN` environment variable using your token. +_For information about viewing tokens, see [View tokens](/v2.0/users/tokens/view-tokens/)._ + +```sh +export INFLUX_TOKEN=YourAuthenticationToken +``` + +### Start the Telegraf service +Start the Telegraf service using the `-config` flag to specify the URL of your generated configuration file. +Telegraf will pull the configuration file from the InfluxDB API and start using the configured settings. + +_The exact command, including the URL, is provided in the **Setup Details** for the configuration._ + +```sh +telegraf -config http://localhost:9999/api/v2/telegrafs/0xoX00oOx0xoX00o +``` + +## Manage Telegraf configurations +Telegraf configurations created through the InfluxDB UI can be viewed and managed +through the UI as well. + +{{< children >}} diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/delete-telegraf-config.md b/content/v2.0/collect-data/use-telegraf/auto-config/delete-telegraf-config.md new file mode 100644 index 000000000..0438e77aa --- /dev/null +++ b/content/v2.0/collect-data/use-telegraf/auto-config/delete-telegraf-config.md @@ -0,0 +1,27 @@ +--- +title: Delete a Telegraf configuration +seotitle: Delete a Telegraf configuration from the InfluxDB UI +description: Delete a Telegraf configuration created in the InfluxDB UI. +menu: + v2_0: + parent: Automatically configure Telegraf +weight: 303 +--- + +To delete a Telegraf configuration created in the InfluxDB UI: + +1. Click **Organizations** in the left navigation menu. + + {{< nav-icon "orgs" >}} + +2. Click on the **Name** of the organization that owns the configuration you want to delete. +3. Click the **Telegraf** tab. +4. Hover over the configuration you would like to delete and click **Delete** on the far right. +5. Click **Confirm**. + + {{< img-hd src="/img/2-0-telegraf-config-delete.png" />}} + +{{% note %}} +Deleting a Telegraf configuration will not affect _**running**_ Telegraf agents. +However, if an agents stops, it will need a new configuration with which to start. +{{% /note %}} diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md b/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md new file mode 100644 index 000000000..6746247f1 --- /dev/null +++ b/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md @@ -0,0 +1,29 @@ +--- +title: Update a Telegraf configuration +seotitle: Update Telegraf configurations in the InfluxDB UI +description: Update the name and description of a Telegraf configuration created in the InfluxDB UI. +menu: + v2_0: + parent: Automatically configure Telegraf +weight: 302 +--- + +The InfluxDB user interface (UI) allows you to update the **name** or **description** of a Telegraf configuration created in the UI. + +{{% note %}} +You cannot modify the actual Telegraf settings associated with a configuration. +To modify Telegraf settings, [create a new Telegraf configuration](/v2.0/collect-data/use-telegraf/auto-config). +{{% /note %}} + + +1. Click **Organizations** in the left navigation menu. + + {{< nav-icon "orgs" >}} + +2. Click on the **Name** of the organization that owns the configuration you want to delete. +3. Click the **Telegraf** tab. +4. Hover over the configuration you would like to edit and click the **{{< icon "pencil" >}} icon** + that appears next to the name or description. +5. Update the name or description, then click out of the editable field. + + {{< img-hd src="/img/2-0-telegraf-config-update.png" />}} diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/view-telegraf-config.md b/content/v2.0/collect-data/use-telegraf/auto-config/view-telegraf-config.md new file mode 100644 index 000000000..7ad2c9ecc --- /dev/null +++ b/content/v2.0/collect-data/use-telegraf/auto-config/view-telegraf-config.md @@ -0,0 +1,34 @@ +--- +title: View a Telegraf configuration +seotitle: View a Telegraf configuration in the InfluxDB UI +description: > + View the `telegraf.conf` and setup details associated with a Telegraf configuration + created in the InfluxDB UI. +menu: + v2_0: + parent: Automatically configure Telegraf +weight: 301 +--- + +The InfluxDB user interface UI allows you to view information related to a Telegraf +configurations created in the UI: + +1. Click **Organizations** in the left navigation menu. + + {{< nav-icon "orgs" >}} + +2. Click on the **Name** of the organization that owns the configuration you want to delete. +3. Click the **Telegraf** tab. +4. Hover over a configuration for to display view options. + + {{< img-hd src="/img/2-0-telegraf-config-view.png" />}} + + +### View the telegraf.conf +To view the actual `telegraf.conf` associated with the configuration, click **View**. + +### View the setup details +To view the setup instructions shown when first creating the Telegraf configuration, +click **Setup Details**. +These include the commands for adding your InfluxDB authentication token as an environment +variable and starting Telegraf with the specific configuration. diff --git a/content/v2.0/collect-data/use-telegraf/manual-config.md b/content/v2.0/collect-data/use-telegraf/manual-config.md new file mode 100644 index 000000000..6f334029b --- /dev/null +++ b/content/v2.0/collect-data/use-telegraf/manual-config.md @@ -0,0 +1,85 @@ +--- +title: Manually configure Telegraf +seotitle: Manually configure Telegraf for InfluxDB v2.0 +description: > + Manually configure Telegraf to write to InfluxDB v2.0 using Telegraf's `influxdb_v2` + output plugin, then start Telegraf using the custom configuration. +menu: + v2_0: + parent: Use Telegraf +weight: 202 +--- + +Telegraf's `influxdb_v2` output plugin pushes all metrics collected by Telegraf +into an InfluxDB v2.0 bucket. +This article walks through manually configuring Telegraf, enabling the `influxdb_v2` +output plugin, then starting Telegraf using the configuration file. + +{{% note %}} +_View the [requirements](/v2.0/collect-data/use-telegraf#requirements) +for using Telegraf with InfluxDB v2.0._ +{{% /note %}} + +## Configure Telegraf input and output plugins +Configure your Telegraf agents' input and output plugins in your Telegraf configuration file (typically named `telegraf.conf`). +[Input plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/inputs/) collect metrics. +[Output plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/outputs/) define destinations to which metrics are sent. + +## Enable and configure the InfluxDB v2 output plugin +To have Telegraf write data to InfluxDB v2.0, enable in the +[`influxdb_v2` output plugin](https://github.com/influxdata/telegraf/blob/master/plugins/outputs/influxdb_v2/README.md) +in your `telegraf.conf`. + +The following settings are required: + +##### urls +An array of URLs for your InfluxDB v2.0 instances. +_By default, InfluxDB runs on port `9999`._ + +##### token +Your InfluxDB v2.0 authorization token. +For information about viewing tokens, see [View tokens](/v2.0/users/tokens/view-tokens/). + +{{% note %}} +A secure alternative to storing your InfluxDB authentication token in plain text in your +`telegraf.conf` is setting the `INFLUX_TOKEN` environment variable and reading it into your config. + +```sh +export INFLUX_TOKEN=YourAuthenticationToken +``` + +_See the [example `telegraf.conf` below](#example-influxdb-v2-configuration)._ +{{% /note %}} + +##### organization +The name of the organization to which the target bucket belongs. + +##### bucket +The name of the bucket to which to write. + +#### Example influxdb_v2 configuration +```toml +# ... + +[[outputs.influxdb_v2]] + urls = ["http://localhost:9999"] + token = "$INFLUX_TOKEN" + organization = "example-org" + bucket = "example-bucket" + +# ... +``` + +{{% note %}} +##### Write to InfluxDB v1.x and v2.0 +For existing Telegraf agents already writing to an InfluxDB v1.x database, +enabling the InfluxDB v2 output plugin will "dual land" data in your InfluxDB +v1.x and InfluxDB v2.0 instances. +{{% /note %}} + +## Start Telegraf +Start the Telegraf service using the `-config` flag to specify the location of your `telegraf.conf`. + +```sh +telegraf -config /path/to/custom/telegraf.conf +``` diff --git a/static/img/2-0-telegraf-config-delete.png b/static/img/2-0-telegraf-config-delete.png new file mode 100644 index 0000000000000000000000000000000000000000..ffd28c31990b73bac370a71c1d8769d8b1594ad1 GIT binary patch literal 69518 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�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ℜ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%0AW^=SDZfG`T?GzU~4ehy8t#lR0a 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 Date: Wed, 6 Mar 2019 15:35:02 -0700 Subject: [PATCH 07/12] updates to the quick start doc to address PR feedback --- content/v2.0/collect-data/quick-start.md | 36 ++++++++++++------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/content/v2.0/collect-data/quick-start.md b/content/v2.0/collect-data/quick-start.md index 2bcda0ea0..2bfe1585e 100644 --- a/content/v2.0/collect-data/quick-start.md +++ b/content/v2.0/collect-data/quick-start.md @@ -1,7 +1,8 @@ --- title: Quick start to data collection description: > - Use the "Quick Start" to create a scraper that collects InfluxDB metrics from InfluxDB's `/metrics` endpoint. + Use "Quick Start" in the initial InfluxDB setup process to create a scraper + that collects InfluxDB metrics from the InfluxDB `/metrics` endpoint. aliases: - /v2.0/collect-data/scraper-quickstart menu: @@ -11,35 +12,34 @@ menu: weight: 101 --- -The quickest way to start collecting data with InfluxDB v2.0 is to use the **Quick Start** -option available in the last step of InfluxDB's user interface (UI) initialization process. -The Quick Start creates a data scraper that collects metrics from InfluxDB's own `/metrics` endpoint. -The scraped data provides a robust dataset of internal InfluxDB metrics which you can query, visualize, and process. +Select **Quick Start** in the last step of the InfluxDB user interface's (UI) +[setup process](/v2.0/get-started/#setup-influxdb) to quickly start collecting data with InfluxDB. +Quick Start creates a data scraper that collects metrics from the InfluxDB `/metrics` endpoint. +The scraped data provides a robust dataset of internal InfluxDB metrics that you can query, visualize, and process. ## Use Quick Start to collect InfluxDB metrics After [initializing InfluxDB v2.0](/v2.0/get-started/#setup-influxdb), the "Let's start collecting data!" page displays options for collecting data. Click **Quick Start**. +InfluxDB creates and configures a new [scraper](/v2.0/collect-data/scrape-data/). +The target URL points to the `/metrics` HTTP endpoint of your local InfluxDB instance (e.g. `http://localhost:9999/metrics`), +which outputs internal InfluxDB metrics in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). +It stores the scraped metrics in the bucket created during the [initial setup process](/v2.0/get-started/#setup-influxdb). + The following message briefly appears in the UI: {{< img-hd src="/img/2-0-quickstart-confirmation.png" />}} -Behind the scenes, InfluxDB creates and configures a scraper named "InfluxDB Scraper." -The target URL points to the `/metrics` HTTP endpoint of your local InfluxDB instance (e.g. `http://localhost:9999/metrics`), -which outputs internal InfluxDB metrics in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). -InfluxDB stores the scraped metrics in the bucket created during the [initial setup process](/v2.0/get-started/#setup-influxdb). - {{% note %}} -The Quick Start options is only available in the last step of InfluxDB's initial setup process. -However, if you miss it, you can [manually create a scraper](/v2.0/collect-data/scrape-data) that scrapes data from the `/metrics` endpoint. +Quick Start is available only in the last step of the setup process. +If you missed the Quick Start option, you can [manually create a scraper](/v2.0/collect-data/scrape-data) +that scrapes data from the `/metrics` endpoint. {{% /note %}} ## Next steps -Now that you have data ready for exploration, you can: +Now with data to explore, you can: -* **Query data.** To get started querying the data stored in InfluxDB buckets using the InfluxDB user interface (UI) and the `influx` command line interface (CLI), see [Query data in InfluxDB](/v2.0/query-data). - -* **Process data.** To learn about creating tasks for processing and analyzing data, see [Process data with InfluxDB tasks](/v2.0/process-data) - -* **Visualize data.** To learn how to build dashboards for visualizing your data, see [Visualize data with the InfluxDB UI](/v2.0/visualize-data). +- [Query data in InfluxDB](/v2.0/query-data). +- [Process data with InfluxDB tasks](/v2.0/process-data). +- [Visualize data with the InfluxDB UI](/v2.0/visualize-data). From 49249b98adcdc8e12f59a3adc246af0d8d0ab50e Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Wed, 6 Mar 2019 16:30:37 -0700 Subject: [PATCH 08/12] added ui-message shortcode --- CONTRIBUTING.md | 23 ++++++++++ assets/styles/layouts/_ui-messages.scss | 48 +++++++++++++++++++++ assets/styles/styles-default.scss | 1 + content/v2.0/collect-data/quick-start.md | 2 +- layouts/shortcodes/ui-message.html | 6 +++ static/img/2-0-quickstart-confirmation.png | Bin 41458 -> 0 bytes 6 files changed, 79 insertions(+), 1 deletion(-) create mode 100644 assets/styles/layouts/_ui-messages.scss create mode 100644 layouts/shortcodes/ui-message.html delete mode 100644 static/img/2-0-quickstart-confirmation.png diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d086957b8..9b4cf9b9f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -352,6 +352,29 @@ The following case insensitive values are supported: - organizations, orgs - configuration, config +### InfluxDB UI notification messages +In some cases, documentation references a notification message that appears in +the top-right corner of the InfluxDB UI. +Rather than taking a screenshot of the message (that can be hard to maintain over time), +use the `{{< ui-message >}}` shortcode. + +It expects two parameters: + +**`text`** (Required) +The message displayed. + +**`color`** (Optional) +Sets the background color and icons used in the message. +The following options are available: + +- green _(default)_ +- blue +- red + +``` +{{< ui-message color="green" text="The message displayed in the notification.">}} +``` + ### Reference content The InfluxDB documentation is "task-based," meaning content primarily focuses on what a user is **doing**, not what they are **using**. diff --git a/assets/styles/layouts/_ui-messages.scss b/assets/styles/layouts/_ui-messages.scss new file mode 100644 index 000000000..bc5af7c20 --- /dev/null +++ b/assets/styles/layouts/_ui-messages.scss @@ -0,0 +1,48 @@ +.article--content { + .ui-message { + max-width: 350px; + margin: 1rem 0 2rem; + padding: .85rem 2.75rem; + font-size: .85rem; + border-radius: 5px; + position: relative; + color: $g20-white; + + &:before { + font-family: 'icomoon'; + display: block; + position: absolute; + left: 14px; + top: 17px; + font-size: 1.1rem; + } + + &:after { + content: "\e932"; + font-family: 'icomoon'; + display: block; + position: absolute; + right: 14px; + top: 18px; + font-size: 1.1rem; + opacity: .25; + } + + &.green { + background: linear-gradient(to right, #4dd7a1, #21adf5); + &:before { content: "\e922"; } + } + + &.blue { + background: linear-gradient(to right, #22adf6, #4591ed); + &:before { content: "\e935"; } + } + + &.red { + background: linear-gradient(to right, #e8695c, #7669e8); + &:before { content: "\e920"; } + } + + + } +} diff --git a/assets/styles/styles-default.scss b/assets/styles/styles-default.scss index c4acfdce2..3fb1e07fe 100644 --- a/assets/styles/styles-default.scss +++ b/assets/styles/styles-default.scss @@ -17,6 +17,7 @@ "layouts/layout-content-wrapper", "layouts/layout-article", "layouts/inline-icons", + "layouts/ui-messages", "layouts/syntax-highlighting", "layouts/algolia-search-overrides", "layouts/layout-landing", diff --git a/content/v2.0/collect-data/quick-start.md b/content/v2.0/collect-data/quick-start.md index 2bfe1585e..e02d9b946 100644 --- a/content/v2.0/collect-data/quick-start.md +++ b/content/v2.0/collect-data/quick-start.md @@ -29,7 +29,7 @@ It stores the scraped metrics in the bucket created during the [initial setup pr The following message briefly appears in the UI: -{{< img-hd src="/img/2-0-quickstart-confirmation.png" />}} +{{< ui-message text="The InfluxDB scraper has been configured for http://localhost:9999/metrics" >}} {{% note %}} Quick Start is available only in the last step of the setup process. diff --git a/layouts/shortcodes/ui-message.html b/layouts/shortcodes/ui-message.html new file mode 100644 index 000000000..8096b6e22 --- /dev/null +++ b/layouts/shortcodes/ui-message.html @@ -0,0 +1,6 @@ +{{ $text := .Get "text" }} +{{ $color := .Get "color" | default "green" }} + +

diff --git a/static/img/2-0-quickstart-confirmation.png b/static/img/2-0-quickstart-confirmation.png deleted file mode 100644 index 58bc0ff059f8c3485ee19b26aa5a991d0b273acd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41458 zcmaI7cRZW#_dl+~Xem`)+S)a1lo%yOZEBCuWtOPD!i^NIQ5{N$6>8K@%u*{ct9I;7 zV$`g02SpI$m)Gm_d4ImYKfa%D{z&foeq85V=Q`K9uQQ$}Z;cJLFPy(|o`#0zg07B+ zDGkkOkb3=*;SBZL7Qtyt{b5IFK17&#!V!R-k0Xt$gQvYCx30ULlcTAlokO5^hod45 z%^4wQ^M{Cs2KoxmJl)0Z{uv`4;O<4GrlC<(3GlLe=IV&xws&-L_E6#_;Tm|kogI{T zEoBVu8hEKYK6lm$@^Lf^GBke{cCvo?l zgd{{vQdU9wu7Z>l_kVwQsk8Ywz!gk2wElZ8>YWnra|FUmK|%rm0C4~!?&;$sAt^5} zFL75&LP|=EIzr4h&;wx?Am-uA_a6=#j=s-)oV^gvo*vx)aI~}c^g}4|QYHPbCAfS2 z4_go4|5g)KVG;p$UJ{bxcmG+^e+C*D{J)2~yZ_H(ui{by3Ew^*jB+k0q2uxypL_^(v`kjo?vAhsxV;Y3V=HTmXFq4Gb)3v0Ja zHVuX|gv(YAkB{YBIvx#I$^7h6Xl;hJ{1X1LNIpDLYH#4=y2S@m1=*<$9x;pJ#~Q=eK!^wiVkN<(k{n z+j=y63!$wo8hK$;JNvHP%e=*#_d9Es_jh%v+G||YAIab;+I>%$$z7Z)U;QmnJK6{? zyq)QnZtTBZLXvCl@EcfMARicvW*YR>h7$Vu`NeZ)L6xprNZsJQs?81(NqYdzU%poI zXI`v^Al=yg_}BKGs#%_*zq&&?N)1H2p|;@BDY2T#wBNtExP^ETnNqbAYCYw5s(x$s zmEOgT=#S(mwzcRD=LwZB>(+gYo9|U=?yp+jv~1pP-(1uh%vZzz5d5(!+cXd~HZ)J( zm8hN2>2A1FG0)8{sL|Q_V{Mwhbo1B7yhao8_3sY7p){pfAJyJ6;UDu#tsSD(zeTZ= zvwK@g?X}>+o?LVH#O}tOs%bgw!oAk!@QFz^e7Rar#iQ{8sp=)umf8EAO%nP#++2bc z%PaiF8!|sTgsW#IYDajIMtFR`-TT$5*;jbCX2x=`kxLnNuL-Z;)vY&_rQKH`T0JdR zGo?F}_h2Yryk=Tw5Ti4gCt5wFJ(RCKly|3QN}_s3qMCTSWLvZE`<(Wdr5q2WlrOv8Xs`J&DE5AK33PEJ8CE+I}XK~7EqE-t~7lau*ZGPX1{ zDdxHws^$R`Yjwzn2|HM^=rG=l96Di<%(oBF{MSVS)Q-X$H>8Z-9t5_p%t87UBWBSS zpD*P)bZBY15>tqsHvG@J& zsS|%IWfqBAiFe6FrZ!K)94F8ybF!*sHhAIb)@)BXv^S)@*Ml(gmp9M`QG|Yzo>27? zzA%NDi{0W2jgzSPyVg@ay#fgl#rAJ&hZN`kiPb!?+GtDZta~%fyVVS&5d(Lh1p7DB z1owY%rTd-oF8koUhqMIwrd)`G${+IKpMOV8zSu>gNz*B6RlT7S_yw}uH;PO%LdOqO z#Qj~9J79|C4K@;=9y*)hX${tH$ZXYd+aQ<5Q=J+*oMJ1T?Pxb`Gu)o?!BtbUho#CGY&>!uJ$_!l@$ZtJ^d2+tnq^0xAkqFWtd&Q%+Y-9! zI=-p>moPzeLJ~e7>(8y_zELyKTVS4jEzyQTu}B6s4Yu&-JK6A@bScoZ!ZP)`|ZE|FPawuuu!Xeis^H{ zG2EeMHP?>18V;*Mk4jEP)%8ZZpOE{ofwlAdwT8HDmqD%Rit!2uOS_bxvhE3&L2J_* zBw*#Z17>%2POOwW6%@GkrWIj|6z%|%7)&K)&l-IFy7I!Ao7?Aq6LEks$*j&hb*0XX zlnRxgwV4nm=jb&xHEk*03qWoVYMOji(s9AycFp8Ya{bZd`n3Ok=c4|u?c8&8)(60_6UyNmJ^;>T?qjo;Lb=}^~2fe90 z@&k#5)EF|`Ky0D_yu&KF{m$z9U%$+2*i6|jZRo_etwhX645K?bc!Hvm$UM$G&I>%+ zYWDV>vA=%ZdW*Wj2JsurMW;x~8FYV5Mxg@lgUfgVzLh{Av@S0%6E-$ly=v^6Z$4YF za&t?o?R_5~yLFXSQbd+lR;_r?B#U?ZU2JTu&|8VOz35)ym|o!?w2BbmU1!aqFa+dF zFa$%Se`IjSSvIxwov!J9s_46jZ~3N@DsSlvCMGBQURlygFQ~rzxVXEzAr85{$WiUB zRL$q2jpJCKsCe&kEz&iDur+0E!l8|D^RFBJK6f1RtPPx2u_y_lP!|5i#6eZ0d@Qn+ zAOHOwRR$}vtng3@d4aNi-+9&Grj4xo#E;|MiGhZbQnBXO?vF}s$HMHkDrZ8E$R}GW z>*K?S)OX3nM03z|{p8?can4pHf|JvyXjR&CR57mRa$OwK?xygLm0m)|NMd_dsT8`* z3vhIFv?7i_5GH?cl6&yolkgA*%gGTRyYSvu=Vi)_eC5ziJ$WjPJYk;*ed4NwY&_r`SIS;Q zZre8Lbr?m@DS6vp_jqd5LF_{BY~QUh0k;mTUnG4L*G!X{-HR9~)bQ>2!nL5T7ACfv z$2MbJ^wC*o<>($2VqI)&x z*L{NDen9 z!k@YadV{ffc}}_=PW+to^-lbk7T$uUOX$jZZ~m_G`T5}vp*;uTeIM1`k6S;Ier#P= zC3k7t$2^T;eR|EU_jaXTjT3Y4tzuZ(O=5eLqO0@oWEFF2RSof%;#nG#&5z@hYl@yuXjTOi7^K^4={S4-lm^3=0j;W0^cefEIsMzc{Qd zQgA;b)+$wj{YF*}vzJYnkBw;+&KSgEJIno?zVw{`gx2~_nyfNvBwk_{_KOVo24ODi znj1oMi}}}VANA-3-*-@K=?MegS(S*tBUxRZ#65OslNk#q3GJr^vD}qwvN8@ndRbC2 zw$AU!nYSF1oER4RZh>>8a42VFuwrJAc3RNkT#hQLYlrXqQJc9Y*}Puq1NlDi8<&Z^ z0ZQ{o`B)jgKUZ_hH<0b3b!YIP7cVaEz)Lv57MXil-i3pfOFULfmHcofkkch~NBO+b zUz+u^WCm3~MPqQYk^K4V!KJ`?p-=4SM#C4^5GI2poW8-Rz!$0P+(7tppfpf2o!uVN=xFr>DR7g90ilk-&e)9=0iCV#( z_5q$=>-`Ef^F2jtqz0MLBung%*-6+U<7Po96JUvmm0IqR>*ZI3tGrCTm@cuPeANLy z5aLB{*XbfUotinf^=>mm>NIJFwB?a(d_#4|`C!C`)w&&;g!5w0pp=bwC5TbdSB}I6 zuDY6;{Pj7pEcGX-Ih_5S*eU6Uz6*E(r+``Tf%AE930Cpuch|srD7v&*0j+?pG)%%P zUp{!Gx%(l5Gy~p-oarE*u&r6K*V;lEr*fp4Y)NOgQ~H7rmKKvRV=?52UGb~Lg`=6` zaL*QE$-~7MQ^D%+cAf65p{B`-3Bk;nQyZe>yg1yQc#~a^sWX$Y;kYxz*gP&vgdj@y zNHTuOO!-nH(feWiASMI)QEB{^$=mg?wFM!+OlS-`Y!x-XzV(T~vFwr0^c-3Z)qzee zeJ6%lke%n8eLeiE*A4D_&5dzyoW=j$0gEk(*{m&JF)Z)|Q>$xscc-w#=-+7oio4`8hQyRC#7RXJ(RSdf^vVBVRwK4Cvc^%w21HF#h4}ey}_F z6OQqV-FLZ*(?)11HVtt;{*nblI*CZ}c<|BRvHi7^CeOQf5>Y56Cy6$-H1I?j##=+*VZPA+cDYno< zUXyo2 zH-sCay2Ve7{1A<}WkyTXg|`#+e#hhH!nu*bx;^dTg@5hyCTPba+lS6fMB-MxWz1`E zPk$0=iM^IzDUOI1NlkLMM@`lYkmTd}3a4E|2#!zzLc88c?Q=`-o35QEeR?5OtbOCR zM+_z?yi*9vSZM@(BwN(bvMXi`Kc3(!6^}Fwq+3u%HkF-t6hT}BtI>oL6+Plk(m~&V zp#x~THxH)zA4P5X%NJff#vhEL?KaZnFH2ryYyOe{648Ds`WvtCg>{;?y9U z<@rD6`D~f4d`v&w8y+5C6IxG%QCCGfKE1v&?6@f8nf~n4(K{GC0yn+tLq7Ey&+uK6 z!11CL2LGAgEreAW?s^aYdHiRqDHFel}NmhZ%GxtPJKCL28?3n;H|ugP?2zgH52c+h=^#-B}gS=fNGqk|1C={2lNv+ zGBp1@R{PPSNB@zS2*h+NThfP|aywESL6;-WprY4-8^OwBOi?^3^5?AJhd(yoAH*h3 za+=dlMeW$!mkoElo{geab2=Wq@Eiib zfDbZ|ra8u_^4GZZD~J*z!^3I%$9&7y!x^3WAM3vnjN}Q#K9t@(2nB+wai4gLuFC`1 z1<-VZbl?kQ)yioDC19EXG5F;$v5EMWR19*`xi4NN5Y4uK5>9R8)AeM(P( z7*8qTl}0Wj3q?p6Ev@G@Py7U?;(`xt+9&n6v6Md`NBfleH{4A(daQaNmrH4|P~QqTKcEHf9#Hp(-VXxkz-AXX&`#2b^){t!7C9}_vZc> z!!JeRj7nR?Nul~zBC7g&-eaLj$aa^jiU@Y$9cjgZ0rAAPmz^7hB8`T`-~fSbcGbP7 zH9V~WegF?7w?_4%zPi5o%W5Wzm}MR*LBjmG_{j){sqZ+BUiq_ z6seN6Cq5Q35@ z{)&!BFDt!w2NGmjp*=j67-aK#5HkoHh7bBj;atmg*)O!~U(1^h9WGw69fX%HPYq^L zu6U8%LSIy2q4DgR0V|-lUDYu0g5T(!JF5X#g)TS(?NaCZh(%jHKSLE{9$ie!jK2Cp zN{`dtL5JZXg_XND1G#8k23*B;eyquceDGlh4Xw0Tl}9e#ctwp+u8voXW*1tq6!6Qp zY|;y>b4njtwV;ewz#Y0V_0-Rnp!FG$S)9-FT12-I8z9kGSDR1Dk{jSt=gCVY#vHm7PE_nEE0dCSh@47sXYZxmJ zTY1PY>YMkF!PM-^XoHc|DR;&`$W?B${KbI3BrqsiM(FLV~PB{4?yFkpLIRsD9$#%~S2R$mj@r?^)` zp#^^vf)HfG)%@x&jjl~uBd^wHz_4|vRZM|hG8&`g8dHE^{o!8F$rOWj7ps>0dfL}> zti#??{xhKtxQoMx^v+BfvilTg;j0N&D_^aK#iy|m@KTslF%7Zgx|(keJ775#<22-0 zHf}CsHT+iY8_qICw<=ES-O;@jr8|tl!vms&E}cH#ts;Ry5qj8<saHsV)U zh^e1(e+t9u^m4x7x{wUuhunf2oT)cmlQG{b3q;y1{JI$`mo$I1GX88E)O?A_`@o%f zog??_SNqe@F(f_hp7E|Zw0fqvQ-7IVco(wN2P^8Mc*=y{Tn~aDGu?c3`VgL1faQB9 z9+sj6Y23|^F|h`ZEwqae`6No)inmPqZzk|j3|Pz=rlXy53R{)CExy1EdQ4#A2zja~ z_T1O(H_pLXvNl4pbm>i4>%EI;!Q#VUYEE;##A?{ElaMnutX7)+QRMdH0%Q0LN ziRBZqVdmaw1$tR<(g}xwt)R|rO{wNZJGK77?3#$rd68=}q$a~ZNX-Q>v^`>6dv&y{yFnZ)XuGx2Md*fe-%aUF6s06k^`X z^!~_s7xsnCq5$;3VoLE0)#{15XMhI%O{G=@^%a8Tot};CWAOEK=+>5dZI*a0@ic(9 z3kQ~|Cc zO!N-^9)Y-n|KW=OjEdN1>om0b>#|~XNZD++sJ8gGQL7KN1S9N zzM>K`5g>-hhp0Imq&yRe17u-M@Z{oa&f2gm$yfV=r_@;Yu$MEcUIELEBQYFB5{=)({CVI5P{ z=BK$~R$XH1g7OD}u;bkHcWpK%ThArG&-18fRy=l4|BHBtqeVDb!iXRLMsF#XmnDYFFo6N$Pt^CP( z+ZI{Fn1`}8CVByP)PAy}4x~lTI)LXc@~B5MybVfRTE?6v%2^2@dxwfK!^Cg+KFAsN zOJmHvO#Aw2=RZd5nwTyt77obrL< zO%95XIirNsZ1FSKntnLHKPZs;3%JX?!gU2+327HIpMC|F)ApChSvA;^uGT;&^;c=Y z&gpMmh-7W3!%aW@<$+tmFJ5Dz59%L}LH)>>@<#u_j~#2}Y3$s{C)z00e$v@`y`m>C z8irCrP^pPwDXSpes0ulgg8NCxS)TT*q0AJAgpluWI=1d;6q7mDrD9$G4&tS@(r=dpN|bdI=~RI5?USQ1eV8LOhK4$-#AuS z*tN5t@x63f{JsC)bgh;3ocz}HA3Ccj??W)9E=I?0ZQWypc=V3A0(!Ey;g1i$Qv}ze zgu=J09ydBK|Ma0c>80d_SYs*N>p<#L?P zE3&c$ipP7pru>nm%vc=G5}58O##kKStdS4(LI8fqgx!sdI+&kE>m#BS4r3RB#YOr@ zwdXsv+8#y}Zi{*Wet3rt$(=Uy_aIF`CQ_td=`8Ju;Jc4Ji&hL{)Uw(_m-$pA&dH-} z*QUm&iRgSti*lC6BCD73lk>_s)^Zm$uM4nwMzr5jT;>%rnF{IKBNoYq-`O^Zb;`}K z&ELe?IJ|#L_x;_C(ffBN2JKD3;~Yn7?X!-Kdd|rIyrc0G@{Hrt1~yhx+wb$By_A4t z5S*8fMgL`8`ynvvu(-&v7 zJER+8p;LOjjTEz_Cz7~UTwEwxSWpOkVr6ATZDgLOshsI=TPub(4>o+B@BwG{>g-mB2JO4 zU6%C|E+(4>FhuK$Zfe7(i0|8Ad&F_LR2u3czw}4m*lZ3HwKMOpS5pNwzEN>e!%6mc zDF)A>Jv{b&1iPB_%~c>aPT;3SEi*7vdc(wqm!K4NH7tCmg^%U&Ur(WNq>z~Xw-~X{ zSc>L)fyKiH%5(o@w;EE0YBUzNih8Bz77>M;`*p*y1{v1?Dvulx$t26sXc5xU<>^@< zeIWpTi%7f&XF{gS7P)=0L`l-BL|=JACU zDAgKuphVqC=9~vv!3T&2mU;Ya;$d*xBvz19x^E68pOeNuyPg+)bS-#Txe1&}%f$J^ z@}}nj5;dW|*KvDHd1>lN2CiY+ss-RQD=#mS8Vtwanu$fA$7Y>nk~Zp8HDkQ)+0Z=D z5c$v|tc_Hht78b^FSNeUfV+f}=2+Jm+^kFbm~{O!dlIkQ_W}&v_t~?1&wUrv5SC!^ za+;GLP|-s(0ZU*#E>2^2B*~v%=il7f93s45tsBrk;+cCRJ*dBp|5`;j@@yo(vk?(# zBt+s01P7XlT!dLajmN$CC{7VySMBWIxB|SseU1?oj>uU{&7_Eq-oJRxavmc!3l^bk zVx3YtI4$zfVDX?nSK>wY-wS`v&>}{L*!CICY>m`D4i8Jp=pP z`SN=14BT3(U&Dze*9UbEs2*TqY8gd6?d4S#rXu(D^W7{dO;ZOOV8IWUkz}ZiTtp+YR@m<2hX0-#$uWN;8ViD4g4(;FC3=yzd2?Q_o#gQI9&EbE6_~C1zkf^VpPbivFUA zIoKmR_*pFgj_H3Mwq{KqnA^DxBaaVaoTaG7!y~1th^CWIL+Sk_F66)4tb?C<5d$g{ zIUnLm2}cNkew@Q`aSEQszDKR)(LZ;J*B(B#^2WhtCqk19@6>^ulj7Ku77y^va9=1eAF=Cnxra_$M<<54N5SSl(}(JHQ>jl z#toKN93<|NZ(D{_%#OLgBu_2feSd$+T$}Tjb0oV9WMm!8>k$G7L1{>f(Zxk;qN}r{iD^jP;aiz&}UMyTwlOO;#VN3l0A8*ulQJ0d^X5c zI3SMOOA$EwZ^A!2bN>KT5K(+vaa+5}%$4*wz*l>|n^5;Yo$oUtIA)kw5)jYs2r3~l zd-(*831p=u>XT0tzf^P#kO~X#>|F=F@!45<$;=B@VrN?=n*S(Sru5f~4C^Ri%Er3< z9?M+Vot93-wOx0FS2Gvb-+OWd_IDE9n;`GGjT`|;-><7*VhTijCBC`Rbs~d%+CP7~ z%&Q%<-6K_}tH2hN-~3IzM|yA{vh?T8VPpt!AEz)SN9o1gC^i(QhxA1#yvq0-tR3+u%<{5*5 z=z^|`#G9g?Dhr$Vr>1nh%`3ZlP1j9{F{SKI$#2!>ch~!f91WC`-A08m)c_TQ<;w=O zw&)=E$RMeHY7zgjE}g+FYpe)CzN;O5w(M`|TJ6ck^b`MTeZn_F!plW) z1{hr1;4$)U-aYEUy<+S+q5tix#m*j)1MG2z$zzVYy~yY1P~&U<7OB z&EBYv`mQv5^o*-xbmoIDg(8fFh5!&;-g<5sOv`8VeT+_}S*kN^5r6mH{Tkc^Lv()~ z`pu~(gDPWq!h|f_50qaq6WTo2>}CavaYURPjUo?@N<(OaoS=bbz(;QQ-W_z(}GH=(dO&`|am{W&cG~S#`IpvvmE`ZMnbE~^m z^h>(aYk5ecU*H!t%U-73@^Ax7*b(^SO|Up27~3HA%m;pW2wJ7=6HBNiK@1gyDkon4 zerh-0 zVoX!t>NfN2ydiAhxz$An-K9*Bp4p32`As)5U1O(|=aOdmejX5o@eH3N?Hz(&P}}3k z;m@T%i0)n_AA|+1zE+&yBSwA3v0MR_x4*WEz@E-H4|fq8ZkL9R7o))ASurdomiP{b zlZS+DtYIG1G;e@=#3#LFgB&ATec0$?l&0go@8YIa&=z(KIG6+}w@vCPc)SoiE(Jtg zh)RBp&{#3vRo8>||LwW;-7uN2GW&xaX#=bNRk$!~x~`1*Qy>F=vOQ3M0TNBTUmM+n zVg7N|R?ew)1-29*#2niITWtA2Bu;SV(@L(#T_?J|G$wZe)yVdF z=><^#_8Zlh>)~?C$xXU`U*w$VtcJC&5u2O;0I{+rf!{5FJSQ#nUyY7hEtAEVj2DJ) zpZ;LE99vid&>VLksB=ucU}J|w%?~uzhQ0quh+-c8%0B-FcCS-EG76_2KfdNgrsvTJ zVQ9k%YT{iWvHSAyH51t85o@YNs`Ohd^bka-R|){sXknySYVhE891zdb7Mo6|ojsyB z$Pg_Bc|yUI2R=*IH9m3~+{rB%J-hV&@qKcR20$vr3>_$H`Uf|EY`f$SW0X&@%F{jT zBwuHVyoz`oqchCwXCb5G2UrWd%^(XydgeP&svzB1bl&`{l^8xBu$P6f^Y?uiiG&dx z=)v4zQ)OiTWO?WW3w+99`^3O}%4jUQz4{3PX7v$};{5}pe+*H)({&GyckCl}PwTv% zhFdjWjrtqGx=Z=m+qfpZ}==muWES?P2k4b`Sm?Fpy z8nP+ym4Ls6n77FtTq!4SqyQf2qol8SbTc|B+8Nt*(ag5<9&y6qZL0AGu?pD(wirR>5vZy6(V>l3cbvH*B@c)V90(s_jRSl<#;n z(O7s3k}lCQ2jp#qbQ(f-`lH+R5)Tz2gD_P8eC;(A!_C?AN&7z=oKX#{y1dIPmMd~d zcyYd~R`JfNj8p3-o`#4EwN-*JSGsI-f50f6q3*?&@9>Zb96uy0 z`oNIq^K#G3g*PANlX+h^i!7mTfyJ_6>Kx2yuC0%wB=KeC?XhH4_Pr+_C+PE^QvSSs z(Wkn{aa@jxo1zv^Izufg;(O)VVQ~FRr#{04ye<4pRk#mDTYwd?{1)3Q1zt-Yr(FFg z@^&dkX}IADTd9DC_+8zzjF+b+3xX=%c(mshRK3yI@d6Y_ywh|aSVgw`89spt!T`yO z@qhJ)m(fyhY0fnc-|D^^ak5r=vh(On7cqrZxIIKf=Zwjpx7i|pUmg-dJ*xP79}V|b zh2t8k$DB%H^PV(NaK%z{)B~pzM9@KxD z;`*zW6naUu{40Cx^}t)SEDaRzaFSMZ#FhsYz2vpb6UgIr7WkEbl!C+$Ec;PiBRVCw z_3m@{in%2a#e{n6qjFz?ZAu5^oV@ND2dEQfQIg?E)-1O@&$ot{Olln}tbZ*$TZ&#u z`Sd7>bHdGH=S9`!zg34($l?vHzC{lb&xLq)(BQwKqMozO zJ#SM;VcqAF1NH$Szpq24J8!ziIEx7^kr@k>#5b(82UivTY=3;RchGI~I!y?;` zFkOw*EDSoKA0u_zwqLn}OZe!^B!I)I|1q^rwcjyN)KE zOl7`(sWy-G`&+o-p+%NHo3vrwF3HlG$vbUT1I2&5AJFQtRxq(Q{<|e=!QgmnK3uV4 znKPSkWbT>5_Q$)n`Sxp{hR_2;r@blLm}G>HJhw?AN2Ul@DyZr^F&nRh6&C|tcch*d2hMX*gv`O zWW1u;2V3|{X_oeC;M=DfkWD;BTDNbJmgx6iAbXE|Jfsy#*Dltca-(`6(;)I+{14Zq zD9|D?Fq-kgmJ;De>N5AAMb>GnMSjis%dwcG(DhByQHS^b>C#&ksb_5+-k^+g z8gOas5sM}$JEJSh;$M$2sc`HFFE*=WC;PH`^vb|p_EG&L-0(yE^*Uu=D8(a>?xWT?od2Kq%`0|;$^cBXdX zdu?>RL%9)j3-!vBcjkvL_TwY!o7b6%R+!M1Q8vM}q_H{g{X`*A{Twpe>l!HMjHwt< z49-Az69?@0`n-p^8ulb5cNi^ECW3cS&;v{^0haVC^8WWDpXfG-uSOn9N)mm;Jr<*r ze6Dvv`ilZD%lsdcc!XA(R&=KsF}0#+){SHK4A9%b6E7@&^#y6hKl$B4>53?+Pll7) z$c1>_J8IwyKRX_4b^QY3q$3(mDpi8DNtUZC*)vy$=FxIFexafx(9aBr(5Ti-!y9@d zF?Up^;TP{&!Mcc+?1J+hQlo!8E|9!5JS1bNL(xGF1_f&xHcpc1k zW^2qMT*~zHbfZap3e@ML^xr>STOE;e$}$_rN7WTuc>()ozZN-yWbbZtgvo3bh`RA# zKY41K@v*Mr)hoag6j1SE`j#L1TtEl!2$ zJkz0iRbyP;eKKycccc6Hbhj~zWX-IP>OYnbb<|RVm@da&|1x%akLdpHdH^ze7QFjr zwn<|MrVmsRQtfYRL-Ttw3b6P60IElUlou|$^bhB*jut9zriQF#niF@*8&nBTxewJHIfyk;tj9Dw*}oM&8;~;ASSFNk zMx_h2y?Lq+ZjSmCv`ag+5aXyqTUH)`r$fJsitH@Bd%{-rdiI18cV*8K-W;)gj?3BE z^M3#F%jOklG^Y8PY&+MUotMlTcaU0zf2* z!9?*`@vOc2h}Cv!Cps!}@PG-Pt{HKixxjSmhI(mlCK7hB21i;}2}(c6JA|o(V1SF( zD%=FCizmTl!0R`GeMIt4!pyZzQq#yxZ`FxgHRY*i4e)(o$}eUnw6j;G>!c7_98iOM zMeXRka>t_f{3&=R{kS&*#~2t(dAV1!kp?Qvv+lk+3{zq7n-)p83JF`N4>%s_;QF>( z|0muWYoMHFXrx`!yG;F?2jBiy9H=6Y@Sw#lK7dY+CDv;Jo(e`C1?$y;h7@ z*8jqJ1=-5-LyMvtf43bqL__KANP8UEg?8_FVfz--m#@+}3s1~N{7K&qMi*S^>ZZOO zn;jnSd=n)%j`l``q`%^GQEdvOwxnhCj%E-f%*_?wZyo(<>IR%j2>`W$vpOsFJyqq5vao|Ez80xxaFUz6zvKu4|8&+NYSJ z-ghIMgSuH|3~O(q;wWKu$r`rv?9eGygT<8(nYpV~x-_jT%sG;J!}=NQ_S^U${by|r zG2&>~EMfcW_~OFXcYLx^NHJ+ETH&BL5PJF3&9D_nWEaExq|@|Xp08TylQc@pV>N*U zO53Cg%keFJ$|-q_OO277_VBt@@;A!Yrmg+>I}7PyO~q1Y5WRFPL7x`D_SM$=wz8zu z>zV0k`*VYanc5J*k;!dBw{6#pFzUzBFd~&MJ zv$P-?s+f$WuwCD31XQOtp4)M-(>G2m7#;e!iCW9r>vmu4yOx2>Fh>SQ9Db;cK06bD z$NbiVs-r%Is*H?qT{`%(g}%F|J|pHjR83#E zCJ+RFiU_@AO>UcKVcX#7$=^Ct#Ch}1v_tsV!yqbn2c76f3OK<(Ygrkc21wdgbQ_%V zT|4;uC};Pif15U|iEU)LSAkz)#NXL(+$CQF*>9|5_Ch{Pp(ZboIdYV zYuskNEI$50e%J+sE8JNKsl+_aX)kw|c|Q~K9=xFSMx&E58J4Je;pFz)CjN?jSziWm ztMeA%l%rth5ohb7BhA85JSr9^f&~J}Pw0s_513)lXnfQ0a*WT3JT5Pf5Zud%b;8M? z9S7LMYG*Z`K25qM6q0eP#;>JvUzB`5Wj&@%J79k~)B1b1)?1 zyQD&u$+5v>PEOp_+jPmeq2E)rUbWGhYjoDFnFP7}?=^N*bl2-{*Wa`5M2Ovjw3Jl2 z3}dRT-+fnNE~MQt{aEw{6kg)d%>3G$-tVJg;T^MlY}PV8PhQ?-Lr~9ul{;8ZSwb*< z=aGj9X^YJ!_cou3w`Uvcp5vCb^eEApd(1OOX9Q|#un3_WgBF~(bYMqOL4kV7;4-D3erAAHZ_Pi>B@fAcNN$)wU%**K>ewmbT# zQ_+T}v6hx*zVs*_PoST;iaK}DOP7H3JnZX7Ri7OP%@EfD$Qe`zt&#b)3g?hZ3o7r8 zB1zBqkqF>`cy4tS2G}%&1n-U@=kJV$Y*eJeFYR((CHs;0A%V+^l9KvqZpcn=d~#U1)yO!9k*S@N2}H#Xk?NRco#s3`!&wTI7&{eKjlhd)*S zAIGh)QMO7F3K1%Cjkrc4qm05el6_qn*&MoNWo9OE35kp=B$?MH^Ij4%&%MfC=NfTs zzx(?S?!Aw5KA-pd^?JTumon$`9<3XszhBs^uJWa5v^q<{Ap472nrF^!F*`p5|ELyC zM|`k)^JOA)X~&iQn~ZupOkGi$T72iOQ=ZHy_l4+o7RS5|Ea_~D!9}^D3O+(t0uVX@ zt$R5~Q(Ll!*t{)zP4+*LfinerDJp!kKeuh-3H;~xCCV`B@ zD^K@2RCWc_$N`A+AiQ}VLS-WL8IBpI+%Y`$)S&W@Ipr?w?#Jm$zIk5Qqq94k$;O5Sr^mRp4p?D z5Ib^oJBz!%&%2R++Da2(D$!Vrx`bkwR%+GJ5#rTX6`#V(toScoM6&D6-yrS&K$%Ew5G zslGRZv>z*7aQSzadtc+_RHc0R*Zp^#;H*LY*>Ao&!K!yJ&#M_9Vz;{8NAo)J4m9slG@d~J6;6*eOdn6n@PcH< z2K8}SpoM>0z)NkZx9LU8^y49FETkdHzX6-tg^i_I{~WxA`sCI%g^=&Vd28j!H5}?i zX}!ep^V8lHL?fanS{o;(3E%I+goiBW@hdy;ds)})1FBYxtFrVS5H~etFZ%NuGecpA zC)TE*%m+4W#`*`f>NoM5HNp?eSuP9e|6M86H`z6ghR4WX# z{sO5v8@`zqusC@+1Xdt@+clT^`tDSj%X?gNeR>RW(yK3BGd&vpn)Orl3oo|eoDwW_ zI)u*hFj*^P@CF?tffKBZil2htix=54>b=ScCiUd*CX}QP-;x#w)Z4pO3dOHPNDr#q z{_uQM-%Xg=^BuX(Z0O2rzr00kxo%_pqgqzsidg9O{kM26ug?7D0{(LuDLW!>biS2J z&L1FEkCXQ-M?e8TTXfe)_=0H~E;p6rNQjhXYj`+u=nLGWkXZrpg~$Ybd{q2f+l7h5 z&}oo*2JatpWiYem^(qeQd(eGNC7<-c$&C&Rn3=#_F(7RJ>4dF8)VSP^CcE#DK#16N zSo<_rV_x3a%?g-ZGp-Nj5ts1`bC1B~rWt6n7zQn{>fg&TeW&FyTt7TXStRDbiWbYJeth`aKCS?2j)=m@%s?)j`i4UFD%HVi^@npZj$Lgs zJR&;bG99BZ9s@tpE52rN$D3L}d_Xe($~}GJ@qg_z zlxNcZIWmra+BA(rXn$BhQyXR_==D0H`SK29pk zGoO!PdYZOsTwU#IhT7NCL>y*Cce+#tD~UvrCTcP<&OZeris{pEXS0X$B^&f5I9i2w z?{-bSghE~@j)CNQWG~(?AFmG#SvOD6HHXwnO_rP!&ck_zR8oD&wuejCn}Hvj_<#6; z6TZvGO|dJB)`=j7NqnH>7^vMX+q z7zByDp}?cyAdLetYXpkdlKLoePEPlEF5|FPDtzOq9v49GacQqKFuwwe{sPN`amDb2_7?axpG2zsNlJnb{?^=YjcgiR!`XCOp`SQTkZ=J zhP$BkV4ag|2c6^NmH3Yh(2Wty? zTSlMIxpt%AX^HhHx~}onQgcXyI%b0S-@)HM=DE@AbbdPKJEKZo)kPWQuB~_sIh8cs z@lKanE;(YaKJCS$wAEGG>tpe0Qf4ab&l!HfH$r=ky61WEd#%hVFPH5}t!iIiS|doo z*I-*O)S82$TG?1M=l`DX4@*A9%9QkhZLS$y^^-feRD8jY%PG07SpPxjEh_SNm}>=eT~L^;JYE0p>;@efW^l!xQ#8b5u%a3 zEnAr-z>2K#W;>D?v{-Ha(>x9RMu7a&9TgTikZOB5AvE0A^WdQVM$Kj}dpX7$Ws zN_2AgkS#BsqM(RBCjU*l(B#;k%hf>JaZb(lD3#eUoQ#BEcuSWAJ?qfy0kEqVs@0ki zanv;^_D1MLC?Qib`X~u22p%6vN8yAHL!;BN;IdGMpYLOsk4cT!&qi zaY>DspzYUiB#wVy-Wqw%k$;1pG{eXdfY7jET<4=7?7tHqXqUL05E)o+&&IR8^>=4J zS-z4h|Kz1l(W-T%?ww9fQH5{KF!w~-b$ID1Fjp10%>O-#rS)VQ{B-yzA3tLHv~J@m zn&yS#JOmF29%BnLKTGzQe~-om;5pws=}^}{bPjr&@Phr64j;Jdai5YHT7|VR)f~fz z;$`n+w+ycu7sKn(1^jUQgTQlo)%YGB7Qb;JUrPR zq(WLx7w~~5oqmcug_!0hx7AvYW?Ynw4}4VvcE{mTnQ|THWU^@SnWTnloLFOY z!Nb^YpudC;xd%Ezh-7S5i?ZkU)#NvT|3Rz<}vdftB|W^fh`g zN|FAI*ZrDtE{emuRtq?oHr{|{!3H5N;Zn)BVMnqX~6bY{G5-1)%AM|&ZDg)Ii06?v$@rh8NFJJ+y9 z`HkKChBNZ-FeiQl{DKD66TS-!6o0CU>wYdPteV5;#tAb(>=5e4iBXwor#xk0H!iLc z2T?N?YVXo}4F@lLMiW+}W{wYw{0-cx!lr*G8r+b)3CkoC-4%HNVBB)F+&V0Kc;~kg zOf_pB&-!sTBwT~yK7jpJ@uxc;Ih#sX&&b zDsSlv@|70sC5EKl=I->88WuywPW-@{_&XWMnRIe;_4>=#8wz3#V*I#?IuqwAEv)7A zp6Rr8`}&dXRCvPk2zQ3jI}OF!05EfWUr}Uh`e*J}`Kd3lr&d2wsgfjr$l6ZRqbDcs zyua&km`};H!Tq4V0Ku!qb|4;5Gzo2~-2aEu`OC&=*S$)eX%_G^f!H1DARkpLCqYqfyo;SNf%0;NO(;t=qp$$m{j&d z_&Y10Fn;|73kxy|o*yyBs!r6GKCD|}a3d#dfK^j*VL-kLt3a}bbvD|MLF>6(LH8>` zP1HBAY(n)0K>kzCne(g$*qg^GS_!k3j(Z!zQt-FgNA*PRy5~4+sAz7RS;^+Jq$sDa zPn1$ks>?9>s3i{{<{3aoyWkcqMu9J-bLUy2|6HV70rxiOsIzQ?*mKe^;AUg+BD{Nd z4t8p8g%yzVr{_zFW*8@Uh=E_8gdf==V~^Xp5|RL4$`=Z7Zt8OvFGhdl zrZy(!t)ex;@pQD@H3eh(ya8NLHQ=(sQq9c;4Z$#Uwn*Pmht>Kx!IZ_kU;)=5Z}Q`a z^yGK_L?%eHD=7Df`gA$TUo@S6DW*tLwcrhW>N5n+;pIrg%BKF>P#osNkUO9_T(*mq z75Q~TWO!Xb3|7%yra;E53mD$OUO-D*bJ@C51>0IcR5DuzU1e~u!18&x3nG=9<&A|b zg*m;umCG`bwbGy!_-Cpy>0d&duCJ|`)hj=rGc~@{6@$4!2m7e{K(SOgn9&6LqJ!Z> zs^hOPj^DUm{s2Xjh%ma1pD)S$Lj+I4er*^)V*_hmO ziYo`}5@hrFQasMIX;QY;chzojX%o;HtTm|qtLFS;PRo4EQl3vQ-V)B=5FGiv z5RHk~t*Unv7YaFG7>3OS8a(l4(iivuE^@AB>evAU9m*pmD-$ z8H5IKPGu{M(6#obWBwyHixRlH(6q5+0aRcIu!-%42$L23X|)nVJIE!Xz|BIw)X?^v zF+323_nY~&rz!BkSaJGTMOIik(^#huUnwm;4L&D-6vwG9F5p#`47lDHF9^=p%1>pH zp^1Tl4yLpJq=hD9urd0BE+M1$*YFB&?925PjJIP&3OVP4 z`(Lo~x?278THNCAHJ__;?Vxm)LF!X87!|F(_^eNE3Vz8~UK1YLf;ef}`b{`ma??-B%sp*H(eST#F-dpZn zvkxKEr2AV`GcwL%q-+aZ@3y)|1Nh}D&SVZr{cgzKf&N837W1^n*Le%FYAp zyI5fnV{D^y4M_YWNrr3?fZmY-4%7Z(KXPGcIq`-J8)mcMQ(>mcNRhlt)P4&~;Yc11 zwxyh)L>;rTGr$`Erj~$R(QZKmHP_!{xvJ zh7LYzd;98|$CI4c`>Lj4F;-RQLFvhJGILbe(G9QRFULu=bedU1fNNqjiv0kkgHntd zA1Gh3a)eJ_+q4kHBN+9CZ~rKlaM=CzfsbLK$)WyGN*7RfG3z`9SpoOTh@ecak|}s* zIWDUz%VQDHF;DBKydF^b2e%?`H;xW0Cn`kZF>Q^KKB%uwZ{LW?(*_DDrg-OR&>uk_ z&FEwgv(Fcni=p&$VD`Fzb`({a^D~b(9Thl)yL%BUF2$~-lZo*-XJ0o3^HB?^d`)$L z$dk2>V8h+lMpBzVKEmp%^rJFv2G~)vb-89n1!q#C@LmfHb;R#Lu@3F;@HBuwh6FcQLpmrW%4I(0IBs(?f;+rcLE184S3w)Pk;r%K+X-Ncu4 zE%CY_!L*~!%^l=FUL4Al-Ts`Q1+EoC>-yB|vjS_IXyN<3%Mdm{#l^v3Lr*$X!ol5} zaU$9^W=)`tc9h>w@QyH>r@2#CCi4f}vO=P60Adj%`qKZ@!|Iq4B+sW0voDf7g8cpU zoKt@yRL>5^^O-$=DC`)3@`b0Sk`p5*%;Kh96ibCodlzu z7W&UnHy9N3AY>ygYYU7ZC*E@82|woTG>V5!gA)X#ACL+`PkHdd_HUqZ{A<>k5mO*7 z;stXtKI0l=*n@>h)w{uyP6aeVu`)6a7Umu2D*vFibJ_yBta&EnX*0I+E%EQV8D<_s zGUrp#1D9l{ckIYdogW!_qY6^FC-OS7@;omz2I+Q`M@LD1<7HJ>)C+K;{_^1 z6@ZQ&cE~I%?{QN8;WyjxXXB(qopzzbJq5DW20vP*&b}p&+{PO9X z<>;;uMSWvQt^6t#WAZMpL-R{IF5@5s=(0o&1ui-`2Y79lW9@LZ&4(4l`@Fq>fK9M9?P5CSp$IFWD`2*&ww{Vo?^jIyS9enh6HUnWKH4| zCYW?y@EH`>WZW}o$AJXV#$$10qpjCF>K1iPE|YuT8Hxe?C<5C4Bn=2E!fW}vcM+dA z!>cLB<5cR;3|^X&qA%=K1Dhb|mx*+zduR4eGP8aT`mxi0H%?B1Atv@i*^-*oE5*x_ zzUwtPdjLdA0g%d0<)Gr{Bn?V7@qDUo?01&dfUszs{FLW5u>xgDc&KLEXE5C)o^g17 z*!C@lt%zp49)qcH$Hsl*wTgpa{>z{$UTYx|!(ev`>hmNPIVzfzNcepwm#7!2g&ce@ z3Ahe3DiTxiRmMb&eU$ADJEP=tfRRhaB+JN0%bCOaUO;dD|w3 z(I&d|jorH%jGUYi5ICn&xv;a>(v$ER8>2ao60;FW!vQn^$NGj?J&q7F5)4RC^4h_{ zF)uDlgUE7DwcSO+315mCP^&zb$Z@Pdt}ejeP4^CfO;oN0mj!4dx7PP^s@fdW+_>Qq z1=`20Z!9*#nA%~q7ABn^j%-&TeJ;nE!{-WQ0&G}cOhcc7Js3R{Kb^Vv?b_v;*)LcR za`M!DByd*pH|#ku6wsTZrh07OMN@zfmE@E*+XOANr%B)U^(G*({GR4(hL>msEK8*qX2F_lG!aH({Gz zP;U?aTm4fv8^SgnSC+lEa)SeP0bB~cSf@d9XHB}OX1P(Q0yoU=LQUaZ;2V7_s~PNUetw=fxB|&FPgT0t_xS}@ zR6BCPEekJH0thvZpcHh$LT`U-7IzB@Hja4L~YrS8A?n~+=F@}*v% zO+WYhru_*ST4{K2Ro35lV-Bi5j8|fvHPj)aaqF!S?*}frn{N$tNCr{yNb6CxB`jmu z$Bf!SLEl>3Cmc2Y*}fuXq{C`5i9dJ{K z^-aMcRs2WvhkP8`O22RfUE(aZx%b*8q-DRb!X9eC&*VoNJX~PAzvql!4Oi@O%7NSk zIJ!e+Pq1qWz3O8!5kPFin+9qS9KVA-XUHGWV`=Z-jHDS4wxz3qtf zmir1iI3z@`a`WCL=tS%d$bE?yjJ`C8f3$-ip>C4r$D07W<-org_IZfoiIdohrYD`( zyEl-C3Jw!5o6it>DvHy(_!b@$AAoT7ey^93twx8(K5@4#ILl`9IHb!%?n;AW^zElG zJ93q?RSP-=gP3o0?Qi2>m2=TnB)e!ASdm*yT5#+eEHxq|RlOq2YbrH|5DA=JYku+* zL#537o_LgdE5hWLKIwT;u0%ITHBi{2IAecHb`I)HAbuciy#9YyZsIROCk|2MAkIu2 z=LMxY%X;`X+^*>uznX{<2$j959*vg^BpKnbtR&c2yledxo!;voj0nH~sCVen>RWRJq_MZXHH7d1rE@`3+3 zbt~V82r97kk#iGI0db(^2X&zXD@o(bF%Sxf7Qg!IHUKMi4TAHgq$T9;#?@p+Vag`{ z;a2Y4)rR1twR)?(>6T*G0s&7l4WVH!LDM|qU=oOIc^hnuis za?-ynwX|7eeMaG3N2OMjzAovNiUZa(N(+B2u1cQY64vkMwkv<`#n8@F`k`@^ycOIa z`?t5@c?s%zY;@8#Yaa?if2~e|{%15*^I%wlN&i`wz>)tkY;$AnF69 zv--uVrLipMHV4|ue^(~sIVBS6I;+@0S4@#R}gs6pt z@Eho`pG&fdDXl|b{u5IW0g!u+1%8tg<=g#et16WHV~H`}hp{NRtXC7tA5@c%ra!uZUn!AMM-2iHHZ}Xvz6RD0yfsJs-GMelX>v4YJ2t#ZZO+G z;#>yHpE(3C!ba-n2 zN^j`686&|5Q%`kV2{}lEsfR9KXZ&|TC|e0QoT3ua$A7zR_b*g5zL`EQuaJdSKQWEw zhBTk2f}0c@+I^;lz`DbkvcZ0`()K9tP2ZN)&1e(ZMB;WE%^oOz(&+FY+;cOzEF7qi z^>vuS$H!yHn3w96Dz`go13J)!`ID13Ie6@+fBS=$() z()DJ7>s#SA;&%O_HsTdIH%6iodz?9^F3Mi6sFz1`*q8u9p+R|`$+s!05fKq+F%HWQ z-@K-Ih7$S}846UUCC6^WggHLa?mJu;KU=5H)uVpT&TjE?XK#0NxT9Xg*S&(vN1C&g*OBa}9u&htP7E8{1x+xQxct{+W5T)HzeVfQLU@@k9q(2 z>H_9a^WAMw{*I9<>>jH845t3U)o;rOJ5%2=g0jQ6$4QZz|G;LN01P~kB5kxI&JR#tb5)fB{OpH!-DKL znZWGUv0j!^6Z8Jn^jyYb>5&1f*IqNje&kiEZaijDrhJ}6N4ngD?^JBPbG*%{Ryn3$ zs%?@bQ(^o>J_;`5kS+4t&Xt`{{zpcaNc$AmXf;WPxn_!GG#uv}1N}#BpJ;d;m4n$< zrv=@KuUTP`1EcXx5^D733o3Yffxl zaU}lK09&eMUVX`}N6x7b`}`Mu?(LN0RHKuL_q`Bpi=)}$@k@v@;mN?9q7erfcbnX< z%iMgnF(oDAa)3*tsC?y~ErywwBkTL6Wg?kka&f_j<-xEJr{6HuwJZsy(Q@g+J?NFt zuTSu1bGj&fjYOpY82Dynx5KfpM>^0iWS8dkO@Wh$KlE1f#b=zf)f%xZ%SXO`I`x{C zO3G0w&`Ywt<84d>8;LVwxu`q7t=AWy0mWM0YbNO;gMetdeUUYIJw7dS5xWMPj>A?CC>>zwd(GrZksW<0~r0j%erTE}u}_@-#=q%x12` zc zV&sD9m0Ba;iKIa6>rFM8RtUG{nCX~L;sCW~;qiX1{Ps`+ThbZDee54~OXv-$`SgS_ z^C}|dU&!>~uWP|pja1+{3ETD_=Q-xnV$^f^a4WXE4HU{at@7d9uiwV?Xds$tYuE+d zld$H=ztrY`NWJ1J{kOqH|Kjh?wh*$SMe0A=6ncij7Vd?_!Dh*B#8K);WETZ{8wiF4 z!&2JpB}gixrMxG3dt$0zOx14iP9~B+K%WGN0om%;f3 zStBd)s>oms|A?B{_OC;;t$^r9@`-@CzjHm#12`q1Lud6_39xPb!})fN^LarR2ekcc z3I?#sS#Z{D`)~`lf>VdIuXcyM-&_pM5&a=&n;@|ljE{LSBFWEpp$Pm&h9rrDqL)GQK}dpJOaEcMHtlk z;%NOaWer(+*Ns}4?tEfzgA!@C$@PonYl5m`XS_2fL~b3bM&kwxWJO3KQVd|ETGPS1 zSko7E=F;uJi-XOiuK1wftUP5sU@dpRhG)Fss^8a;XA|it^FH7 z{;hfdE(g>O>zjfJvtUK(8A$C@y>r(+6`1gLeP*l@tZFGX{+|y;S72~K&SVwQ&_{Ex z;O^lkm+_`rr_71Q+WP`2Rp&_<+8fA)mC?dd^9o+;rqG=zl}ry9fnm4VqogX!C3~WA ztc#6qq2|(MQz;jk_r9*&CY{N0CWvZ|9NkyYMjT7&zQB!E4K_L~CHt@PE0gl65NA&W z>IL<0Kh(FqnLz3Pm^_OhHS>CSnyxAN_h1=BoS*XKI8^Z4_aCU(+D9)@OP@|(kZ0J8 zy?vK3T&VAVi8;n&gB%tlUn)a;p2FPV+?^fM4|)Hk-@j#{^0*%Tp{O*D9BVU8s;oZe zTJX-kPp9cuPcitG}#J|{FKE#@10aFWaA8K`7eKBFgYi<3FESx8Q~cg*}w zLNoMGftdd7@S<%i?HeeSAI9%14pWe>l`)SwiT8>+DbIWC9>XYAIX&wbv8;w5vH|I~ zeosU64808(&B_XXatWP&IZxDF{XD|f5Z!=A5WcMJ`)=Sf^hSO2rI#e_7pWGYGdznz zZ8ylV88(>2TcIjeLU~@?{1VclkhO&X1_4!AfJNHF*Y(0S#6Mpj_|+x?0fNhM|sVQc3l|vu-4Xl56I7}S7>e4&-MZO!)dL5SDPsteL z+p5rTrcPdb&EEQebG?X8{5)~|qCme7NB6@y924U}>q%lGvxwGPd@(fOGZ=gKm$V-+ z*%7BX(ZV)9wQiDjm17hL=lf+KoZS8B4fNuXs;#%-kN}q2FV~G@QVpdP3#@xgW~%i9skmV7^xT9pxZxnepyBB(Xco#>cHKUISBTpsjY zS+hSq%VW_0LG&g6fc=g_C?HD->XLuOAY<)x_aHG?myp@kcj<+2Y8|?QJ)mc@K~h_) za`gL<2BpJ-OGxf^F>T~Ynj~yGlThO-bQ2KeqUJtA%Nq`#QekB&3`Qy4ol)YUb;F%m zbP_cNbc{&Ez6mioy5XSfV(ypj`8t~E-@7qsWY#;rFQlm%#?Mkf?LFiN4T_9Wqy~qg z6(Xg`Jd@bJq(r;@@L`phg=`0Z{zPo-_NeTY>fh;xGtVUk-1OyCI}U8`SgPT4eu9mm zxfOXogI@`!e@jwW%HdbVth!#xKM!_{1(v-)|3_sAE`44qSEIX63H+MQ-4O0?wu9yo zI-Oe$rzmPT#k(ye&qF^!X~|~WJ7F6BlsLzW&fgm15l)u}@reRYMc0PF=SKdoJrK_o z{{FcR8_#UAO~TH>rW<)(0NBJ8x;NXi{dMwL(;=BR19HrZO2mC4Qk=ez&SfxXmS4CE z9jrVLfZcSW`#Kw?b%AOZJ^f@q=B2q+5a$Q@YdI*ISo`l-vIn#(e)YDcCL5++rqn)% z-!8uSGX(XhqdN|2dUX=EJD@JPDr+DpB5)-PvnUKeKX`oj7Mm2l^A z*`!5PFhy6;t@*ujzJbr%h)NTx<;N0^h>-l&<_ssxV4ui$HoM&Jx>|w$_{f5p0 zhtGuN>m%aWPAG}8xE*x&V9Ga8ur)d$6H~Pasg5l+R8Uq|Hon8lF@--eW^=)PE~3Vz(;wUe5k&gR1Id!uc7L?O)zEq zH=vGe;v0ov$$^wDNE^qyt2R}DL)E0XIi)4#};6sb@AxyE=@}T4`~yh zNqaa0-IBk+DXD_2<%dCL*#_%|+-(XjsP=L!wRYhZ>f36rh!?7d#-=LjP+w{sr)c8} zKc^i|WEUe=mNqPo2F~mDzf;5Z%-bT+&B*tNVokI zNdAe(%V8ix9B!F-adsF&E*gCMz!(0w+o6F3?Bp2q*Og$K;olF=83J-~)|n0`@FUiD z7=p@H7NLa<8#kTz&J7-as1=$N1Yn?GIj1v$aCMiz$0v(R`0-^A7;GGIvv*K>@TQFB zK|S|6p7`in-jb?|>~%@Wx1(zuF8BgW#hc2zp3_c=sO7f@4;Ywl$)5J>jH;&O4=Lo}tfnT2v}#>mq3Z&I{CN0>&K zyU)57^MQQJ0Tm_c9I)=g6B^}%dRsxj=eCOV19h-cllRWkW-w8DpM>&q0$rP|u;e>QiAROJ=sfPiUd8n>Hk2nTR}ry8Hj;9PQQ$X@t(OJ=>Hm1=BFy`l4nCU-gu!k?y(H z#S5Fj8a8v^2AN|)s~l4QeOnmY!*0{a3||n)canVAVn5(B|5j=DvA?zLgO@7U!k7S~ z-eQ?kGj$`o;29?*N(;x^=gs6;_)`!t9SY}G+WgHVxYsto(z5r%dYkh!@~TTA+M3Kx z#CDZRr!Ionh578BVSGFn%y~fwR1R}%&7Szd*~ZGuw+VW3(`{4)CzU90@%f?V3iX~; zeKxNSpw(mWDRSjixp+nQ!MCP~X9SPON+$S)rnr9&t9>)ozZz>b>ZdaGT!A~XA8{O) z=GFG(<9jf$^;@YMAmABqOck@i3opQM!9R|rvm;pnX2TZ8YD0)MTm;b%DG14%5W$G?L-+lMBkyN}Cdn(7|^pk&OH zxe_gCMW18x-wFYu8fTJW#K9*l%G6&KaR1(=kKsO{4d?9hF&i1go0b zbb-sjM@42+I$`bzU25w;P^Ka9 zkGM9jL$`5zv35Q^Yq5Q7shM@Sv_1dCqWm!XPejs#+#|uwA)yOtFJZo$Gw84Z z5}6K0{>yL~T?Z+HChbM&d-n*Xw|!3rQ%Qjye?}vPGG0!R>B*tbLZAkcl-)jAKe)S1TZQQHyk37YtfclSRK|-CT4zq_#Yj;r# z(&f!?iN|yd@3~5bL;C*XN7Nm#YPMFuT@QEh1dLP{tOx@cr#_;*h*ybN@ZgcmG1ZspPRpYR0-eHUEUr>%&%O6i}f%=0s z)_a=F6!XR60NXKM1rWx~{r%(MQOj(%1RtNg5Oc|Kj4J>KHF{H$;3gtVX^6h|*mS zaMHqVmzMwp{8Dhz*JJ(3%$t9kK1T*o5S^NZQdfTY!^+ORyNE{6#*WO8X?Rt%UoH^d zX%!H$f8XkT;PV|f-^M$BH)(uWDp>>%q1@VziR&I&Km{N7`eU_okACCsT;e#{o@Zy_ zQeieP)D%M4ZXH6DA9mTxXrJlyT%16dP|@Kl#}wHEYVI0kK0*HN~TSvXmO(E$UM_HbyAL{ua?80A)j##+X6}!(k zsD86UJZxM~G9t+MW*Ui)r_^?~zY5*T}2BW!6 z9|RC(_o>ZOT-#gFmQxX0<0mj?JsKiQq9s^;y%XDve*RW)SCn)=6~bOfm2+$Yj1|2~ z`wT|op4-0V(i=5gKl!=wZcP`aa z-k!Mq$0nxo9i4+j&ENn{++eMaO)$Vl%XBfN;~C`-+4Sap);zw8DQ9&#U&*8vm>Yb{ z5U|f1<7RkYrdpQyr8T(XYZm%jDb|Jh^ohW>J3GvK0$T2Az}gjtGvxzv_3psDW+sT6 z5<-tHb)sGkpb!My;156b$VJm2PbG=_Nb$7OtovSq7gO4!*RDM2?ZLF{>cXC63e4c7 z)j55yM4h8s#LFq17}jFA#jl;TkU@6twnAGqiriJ$mJ@(M^_H#Nd#hYLPt43I z1@c*E4JP6;V*7Vt!X_s5^N%kS;jnSBa;Z%cE!alvmoH^c!;9xm7o?oE1x@rst^|uH znE!}ZTI|C}tjkTRvUvu7zFCsHJ(mp#o;#A>Q8uAqpAALJ>gardwBp~ujp91B70&8Cc0a*c* zc`$k#{E;ESyoQDRIcI(x{?umt^2?9WdAuo_e>D07xtzgH3?)4IT$no+V7}y_=#CPz z9z0Zluv?Eu4S_&1J^dIF^`z=CU+cl8Bo8qOVpXI(j{k(;hWf;+{%+M0l}*WjsI$%3 zpU?@7$4-ysf7vTCXU2}Ogc-gOb9A^&Yq1Q8()4@Vx|WRDpt{QC2oFBYd!ugEL+rIB zt~T#suO5yPw4|KOt(tL6<~|?zuFBinh-kLKs6 z^!YD~z6AxsKW+W&4zOAK!sI4ac5-FcbT!?pp(PGDQx_D{Fo^sP$HBkj!~`tv+o5u`$oIN?7b_-9JPL>^Erm_!9jwzy1m#TpDN^;%Dp@c z*$Df@kkwvm+HFHhHG zp|2^GRb~L_;adRhHE(eZ;4eGHEc+>b5)+B+R?%ExWzcD5$-OGxl#IjPS<&%f2xwAx zR~1GaNcQS{*Kk#oj({5r8qTi8I#ZR7G7O)rFo(d-V-(WdKV5`Iyq{9hZa4O#^udk| zXAi!|b=Se0mq07&i#sWqjcYdpiSSDxOjAYCSSoEpEtQ?!+ zY;j*u30vTNp-W>C@j1~tm;yfj^lbNwTEK&u2i>@WC+9)^w=trk+#{=BQu|J;{pH^a zFML0g3x4B4Da3J<7ff1r;b!r7ZeZ(V6FHSujgy4~dRI~0G`D>j=J4+Czh(Afr;mey z+R_!nrXP~tCZoE154lRWBEx;F<>6xo&_|pmzH`!}(9mjN#PW$bnY#eE6zHh%k-*}`I0 z7FPa6`#bs}yaMsY>X+4|{O$Z$%3u)wziZkTB5r1mWcEtE8vBc@sARCayd&Rtm6K#0 z&i`|DeC4i3S22J>T{5J4DFk$PtzY)q;|mdYw=;vrdoi(zcpnBkbMyQXK39s%9RB)k zqo87$Cz`we)Q^YPLkINpXF&1)E~aQTqN_rfMSguMkEB`K4AY=l@J_NiH;0?LM?VVD z(RjGsqp7>h)O53jAP<=S$&9VV*59KIjrSCBda9T@i}Q8dagY#U;JuG?Lo)iXk@8@|x=REmN*Tx?zUb4>@@5jzH&oMHYdR!nNT+EL6 zn;_yjB^y;*aTQh#b&*ODHM zaocL^0@+VQqJ>E^=HGL_OHcSP&3wT=fLuJI%`ZP>5GrU-@#nCx^u}O&A~Kd_Uyd zP>~3?dyExtkBtIFxi}oQXPcmMnqnLYt=Ty2(9OIkB_(C53s8;7cPD*Rlm;)urF8$vWOd%9 zxhjr#8aQwjo$wf`7{tKh&=dbO1PCg@?=&Q(w5-Ka+SbjZA5_n-jT4|x#oCTB1Yo+* zjF_4sWozzaj26j&G&*a@=(@p?mr9{l25k5hXmL?mScRWwEYx)tH0AX^uLGDmbD=?c z=7~Gj=$O_Mhr?+P#^v%<{**-v#TDFlWhu;O(a`Q2X@d)~gseq7Qqr+Gu>@xoz;`p4 zJs_MNkkeI3lm|57^Dzqb=$9`tE(NWV5cylz7_70EE$4e*&Go9$pG?pnCg`3}YStwo zlTUER?O@j?qU{3!%wgwn9=mFkg5aDFm@Ot2?DM4#=)b|dtOHN0OL(bsdSA+9{m?^J zE%H44creOJMN+!Y7h9mO09YDbWqb6?9(XW?i};UOI5ew@8>x za{o+_~*NSBhBU2?T&<4OOARygore;LFiLPR5N;!#U3+h#G4K#w_n&Li^F``2BC$m?}F%We(%#8KRoc7PBVwR-VIWk)0 zn@~nc3AUQ-u+}(8m0q;nWLjv?BhO3y&?mjggmtxb4jY8pskTC{|EdUE!DQfdgo8sE z{nZq(1J&U134QWS*p*Q_F5OS$TkkBfWj&bv`;p7J2yD@jZ))2QF67#r2{*8by+>0evXJYd|;Cg&GbByLa%d zzkhUuk$o})%wT^(;hk4T&a7ec$FfX|T1h7`51iDJChq-xC=!E`g{`C=A)sA8o?%OQ zPz7$0S*agS-4x)YAc*gkoFB#YF4V!OvBjvBZxDp%C_{pSQODr>dpS|-&me*+qwC>< zj%fCLUl;o8hC*^Aa)M*q_{TX>UgGOulRll$P~@70Xm_ zUE_8`>8&R`;~29ouh3PomnJ(X_c)@G#i-l%;X?*3ViBKILd)AGdrYM~>dRd;!2=j} z(T{Zc_zcllrQpnj`u7|7=4E(9Spk$ z{QZWy>5_fliC{(vVP$_iY3DSAg#iMq#Y{>xm-D*XfPvYzkZBEin|HpMlk=ClVj# zEqjhM8&C`1-2%0bv#R~@w=dZr_qTA7m~6N$G)a{e+5U2<9ua`xoQ`%Kko&jHazD?o zlUrost^h#i@XK@aKQ7BG-OH^B9L(BOzij%(4NitXzENbvv2Ac+`}Pitn7voo3eos< zoq))K&9MSs4~ieu@PQiI?fO(Os6X^5%1SiyPOGCOqg3eCeM{isNzseATd2FICCq$k zWP?x%z=loO`!GM$6x~6M{^nB<{vFET8mka;lovMCsRX-(rc{Oy-gv!k6@8f^`j(Oo z3eTamOc*M!-L!s$ts-Gz-c-kYbmaM@VrFDbTC4anV#0C~^|Pw4>e+#1|AJ($7;~EE zMYd-LO0a{tWtN~i@LN3xNLp;L;Qs_3B7U!7Voh6Tv#_5+sJi`k%@;Zp0JE6)502_` zs9L)WT@>_A=#r>GA!XX5r9?I#-7pB)V(6vw(IO*0qhxe$#-h>?6c`un7H@-GxmqsX zx-i*-R@NCSMVbhmeQSfeSA63TTe z!44mb8F4b!g?{-ppvicCtPnQEsaKV8wyt#3U-G@YqN3xi^ONsV@$!7D+YM=1eEMwr zSSzcmZH~X~ys*G_XUKaWBDV1_Hd~Fl@mwdEo%41rzw6{fYPV#WgY;Sa)vFw_uER^^*`f(IOZsl3sR?OW`8#DKm3 zBfY8+oI5s3?5-U@?7Msqe zw(QpSFL5Qd=pGswSL>Od*)6n&?d*LnV|i})auf_0Z~6IB@@oFy;(k)ZgDK}3b#3Wj zw&wJE1Vh7N!JGrT)a)C6bS{=r_+snvDwYLAi9oWMlhA3obSi!DJDfp2!fzi9S%ssTqCISea6zIFo7Oky(24sn7P`^vphanta3I`d*FxJQywJa#ob_lrewrmpusG^$$@Ar0f4 z5-z)T*i*0=XvE0)&f;UbN4}N_C^}Oe+!V1*p4aO?qhuR-&O(W)vX2_qKk`2B^ zI<|cZYbwK?!U^#61fS|Jm)|F)z0-L)U(b+Kz=k-3f>HBlukQvvQknAln5PVO!XLV`J(JYj<94ujnTv>WilGFbzHLpI1dL-9(y zQ03NKCY0w3=vZP1iYf43~) z94;VTMLfYG`*ofbw)D(kpUQgwGN9j6W`?-Z+I8v{u|oSn2D=H33P#!Du|fPjOdpLI z`dU*i6qU^TWFz4F%#8bXe?KmIGTS}&S+N_3fPI%TQI=Y6RwZ#0N-e?{+kTA0EqG8r zr5wWRKezxvJPfeBg`T;ZeoCWsIuhZ~iI`|G;B2su4=s`tHAFD7+`P&xXlN_-EvOSk z)l_16R&KpmzXps$Fb(WUK7F{@JjDe!uQ7ycr^Ki+s=~Ze zB9&6s8*W;$X$*N}inZ;uI(zr130XuBQ}%V{x9n)$BB zlNJS;5}0G2t-*M_sBivLfn>y6l+;i&s$Z%6#0*7e!aA8aT+(Nd`C!)HApB<-hx6i5 z6FxEk(t^ml6uuQE38}si%)arLPR!F-dqe>zR zRCA+HXI5nv+GhjhdyYS5wR+jX%MV4u4s)3i-T5AD2l#=LAdRDncsyeLonw^8QX9=u z#SW5N7G!#uHi#q{4nV#;OFVt0B1b*R#vbH*zS#Y2-MfBku4|02;CIvKP(2ZlVw7Tk zQ)(kpWb|A8W)#YY!!#Oa`akaL|4lFWRY|-K zbOzMa$1oyO`#hW}fl;tJM>pA-UfKQj_9P44$a6Pu_Mc*1W!b#L4boGZCNHU&2OvMt zIf}IklvnI^z&9rImO(LI-W!KiaZE(v+m@Wb;Ry-lm?=r2-8)q25i*6?^@f8NOQgBt z4zFUTv(ybocSzo#QO4o8k8QcF#Df433jhue7&c@5OzzW(Lk8&AaNbLeB*ft__gR8< zBy{2eI1!S1g=SxNDEjg{t@u(RcCOaUFg3j`nS{io^%*qS;MU>-ak81PTV5Xb>xprD z9lt%&5=>0*R<~?23kc7i@!at?#mST`OHdEeW_75Pr7~0@EB4-}R46LJ6xjtmEOkZo zlV*O?FOc`53+OQEG?ii&vx`#5%AWhf%uqQx7aKf0&M9EY(9Wj&y!ze;KxQNNY4=MP z#7T~SloI-$MXbmT8B9lJh1Rb8D*A0Ds zNMK8!4KLMgSnw1i1+ZM#RaNdu#*8eM%UT>WX6*VLR!hiEd93B3*~9DM?3;9$jm^p< z)E)%0J+XbZ28|}E7@6ZCFU`|)pM7^_pD0Gn-b(Gs{z@WJ_kKVLvgJ~(l(4cCb@?zG zS`bq)Id6bmvRr})W7+g$k-S*C@r)}xvD$#Wy|UyKEAi(KQ-{Kn$x#Um^?7s%5iKRm zF`blazllR6#Aq+|vGLPPXi)kqC2hQZZ56u$Xe~Gt{ zb1E?ZzJ(+QcWgbta3U7KK(OH=yZSwdh1z}+ZGgGA zSQCZ;l@CWZn>5`S%xa_`f@J;)n*D&cufT@WF(Z`lVR(z=mn^rUMKDx3=_Go|{z896 z5q$xcK3(;hxx&AOFcdJa!vmYX4XbzfE2gVmg7K zGl|Ar-X#%HIN5F6IH3VUhQ_FrkOJUDV8jl1uA+mG z50jVZH2zW`WC~ zy5v{75=`9eVz2f7FJHXQ{p-zh(lPb`*U@K<7D8vevY>TI=~rEU6oytp?$4i$O?wJf zKMO{!Ve1*e?5PaxVNiCd8VZAI1SR)*;1Y$}!q+46-S3b#<8@`hm;l>`>@V(_Yshy@ zhBmpzT|1@+8u&;*n|(!kpAWd3^uzip#JhDc+=V^5UPWXEw7!*HVM+^WmGs$7xs^KO zW3M+;4EnPjTJp&Icf|R)eZ7oV5q<37&KPO9HGclSJVWE}urh2pfS~$}h<&TSzhoe3 zjJj@<$T4@d`GLju?j){aCv5!NLBl9chZqP`wp%=`)sz!E28DU|1^iRCZYtB$w^y>;Lo+&ClENlW57us0iwCp#RHG95$& z@c$;_ST^xDnmE+10Yl?9D6M_2$(^dH?NTAT5>KI2Mym97YB?g*?5_{q>86Bx*cRPM zS^~SNtLXW)=Mm;dZZh{gtG3crJj=}L@ZHUe#&kb(h{Opfzalgwpt*=X+?0TjUA)@sp{v)>K7eK;Ex3w5j6FSaKQEgu^ZyoOgv?y!;`8j z)N#ZJ)gtt!vVQA+lxFtP@Q_sf_z(!TKvWIqWTUP&+A_fkfNxtv(e*oj;xn8wiXLIu z{~A!!S{^XsL^h?iQmha#h&_V(?oSIecl?aG-&{J6^>a0E z*62-5Ooy`SpX8x%Zs3+Jf4f1=v;pU}(pZ`>eo@im3FsdBB^USw>Uobio^brQ)XF1H zhbX^+Y4v+xb>I*O`XI?TAXLgrjc2ng`iV>>iYK3FqjH5K-tcB`d``>WP^j@d0^lK25b$o+WLOOjN%`QifL*BFFraN0`?8 zm8>Gj==%#-ZHW{15^BIi$Nf$d;iuvcfmc$;iW9w?l(aev#a($3aYXH=BkJA~nNZd+ zXs_^3jFy7TNMC&2TxWb5m6+3#HE+Vp@sR*&HR`W^@!5{3tNjBsCg(riV4~INEmyoH z#|9s5D(P_b>qV8hprV8#`3K5JCO@=S%LX8wl69vjGefg=ct7b^$qk}i7`yH*-&P;h znVr!WE2zElX~gAvhx)hA&)(ccOg2<}b6GP^K%G7Ncdnp4?PV;4sNuHdFEFAu6LCkU z-qu+X6#9Q>iIC5`zbRZRzNx*}W56zMEpBbS`7LbQVaisMjPkQ9oIEPO9TNrdzDpye zOc)-h_({HCxS17XJdr0mivOoVK6k|HE4$n>7;g~dJjjpiFl*1;wyYN&C(qV|9dndd z0x$_dH#aY~ATDg@8W1vWF5;|4w%fbpFK<1VzW#2jMXBek)Xht@tK+p9nu649_(K>c5FNc>Z6i6N zBt#HW@>M^P?mR+XnNpXpM~w)qDKWli_X^|=p?)&D|D77R4h$^(A*_UOX$;XZ^;)?yrcdq`*s*H&xL?}I+f1&> zNz??g?0tW1ki|xqh8|NcKGwF?uEY0R%aj5ivRpC59wq}f*kILM6I7ySy!SL?V^HRE z>l2d2&gkCu&I|s{$#}6P%`8}bw~_(=srOQIk8y5JX@&741lYNe{QRY-m5|ia+PTsT z*?U%et8vdy?f7M3eyryHQzS6oA98Ws{S5ooN!6Z`Gds$gbDNt}I0dnLnTgvP3P1c< zHR;Z)y|V=ivt|uj&Du_ZCD#?K;6K#MCUOqT=KMDf-Z(Tp;cJemDPVVDud0B!o!c{d zbJKOT*MH5`EVLoNqr%+dGNoUm>NagEP4TU zCKf|G9e!pN&%0`S^?!r^-E{4K6t^9IxpDHQ7Lh&bzB^CeKCS(~(KT+;ag94R%cBRG zw9|d)2qRR9)!%lD|N1M{fWGd2bXn*2ab28w-0pVfY0-=SruN6IA>66SOVn@_pT_>s zLdS0Z_wc>OJ3IR&+#5IE?KFm{YHiJS{dc>;_~YpL3sShh`;o^c#esV^-NAM l)xoxIqcqic&o+dcEAVs}U(7|`I4;hmd&fwt^tRor{{utXDIEX+ From 6277bcc7e9141cc232b0f83862a3a173230a30e5 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Wed, 6 Mar 2019 17:20:41 -0700 Subject: [PATCH 09/12] WIP addressed feedback from PR review --- content/v2.0/collect-data/quick-start.md | 6 +-- .../v2.0/collect-data/scrape-data/_index.md | 2 +- .../manage-scrapers/create-a-scraper.md | 10 ++--- .../manage-scrapers/delete-a-scraper.md | 3 +- .../manage-scrapers/update-a-scraper.md | 9 ++-- .../scrape-data/scrapable-endpoints.md | 16 ++++--- .../v2.0/collect-data/use-telegraf/_index.md | 8 ++-- .../use-telegraf/auto-config/_index.md | 45 +++++++++---------- 8 files changed, 48 insertions(+), 51 deletions(-) diff --git a/content/v2.0/collect-data/quick-start.md b/content/v2.0/collect-data/quick-start.md index e02d9b946..51f01f3f1 100644 --- a/content/v2.0/collect-data/quick-start.md +++ b/content/v2.0/collect-data/quick-start.md @@ -40,6 +40,6 @@ that scrapes data from the `/metrics` endpoint. ## Next steps Now with data to explore, you can: -- [Query data in InfluxDB](/v2.0/query-data). -- [Process data with InfluxDB tasks](/v2.0/process-data). -- [Visualize data with the InfluxDB UI](/v2.0/visualize-data). +- [Query data in InfluxDB](/v2.0/query-data) +- [Process data with InfluxDB tasks](/v2.0/process-data) +- [Visualize data with the InfluxDB UI](/v2.0/visualize-data) diff --git a/content/v2.0/collect-data/scrape-data/_index.md b/content/v2.0/collect-data/scrape-data/_index.md index 79e9a72c9..d15eac15e 100644 --- a/content/v2.0/collect-data/scrape-data/_index.md +++ b/content/v2.0/collect-data/scrape-data/_index.md @@ -16,7 +16,7 @@ menu: InfluxDB scrapers collect data from specified targets at regular intervals, then write the scraped data to an InfluxDB bucket. -Scrapers can collect data from any HTTP/S-accessible endpoints that provide data +Scrapers can collect data from any HTTP(S)-accessible endpoint that provides data in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). The following articles provide information about creating and managing InfluxDB data scrapers: diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md index a6fcbb005..2adbd41e8 100644 --- a/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/create-a-scraper.md @@ -17,12 +17,12 @@ Create a new scraper in the InfluxDB user interface (UI). 2. In the list of organizations, click the name of your organization. 3. Click the **Scrapers** tab. -4. Click **+ Create Scraper**. -5. Provide a **Name** for the scraper. -5. Select a **Bucket** in which to store the scraped data. -6. Enter the **Target URL** to scrape. The default URL value is `http://localhost:9999/metrics` +4. Click **{{< icon "plus" >}} Create Scraper**. +5. Enter a **Name** for the scraper. +6. Select a **Bucket** to store the scraped data. +7. Enter the **Target URL** to scrape. The default URL value is `http://localhost:9999/metrics`, which provides InfluxDB-specific metrics in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). -7. Click **Finish**. +8. Click **Finish**. The new scraper will begin scraping data after approximately 10 seconds, then continue scraping in 10 second intervals. diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md index 27e0eacc5..05daf088f 100644 --- a/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/delete-a-scraper.md @@ -18,6 +18,5 @@ Delete a scraper from the InfluxDB user interface (UI). 2. In the list of organizations, click the name of your organization. 3. Click the **Scrapers** tab. A listing of any existing scrapers appears with the **Name**, **URL**, and **BUCKET** for each scraper. -4. Hover over the scraper you would like to delete and click the **Delete** button - that appears on the far right of the scraper list item. +4. Hover over the scraper you want to delete and click **Delete**. 5. Click **Confirm**. diff --git a/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md b/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md index 54bf8a36a..882ed52c9 100644 --- a/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md +++ b/content/v2.0/collect-data/scrape-data/manage-scrapers/update-a-scraper.md @@ -21,8 +21,7 @@ To modify either, [create a new scraper](/v2.0/collect-data/scrape-data/manage-s {{< nav-icon "orgs" >}} 2. In the list of organizations, click the name of your organization. -3. Click the **Scrapers** tab. A listing of any existing scrapers appears with the - **Name**, **URL**, and **BUCKET** for each scraper. -4. Hover over the scraper you would like to update and click the edit icon (pencil) - that appears next to the scrape name. -5. Enter a new name for the scraper. Hit return or click out of the name field to save the change. +3. Click the **Scrapers** tab. A list of existing scrapers appears. +4. Hover over the scraper you would like to update and click the **{{< icon "pencil" >}}** + that appears next to the scraper name. +5. Enter a new name for the scraper. Press Return or click out of the name field to save the change. diff --git a/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md b/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md index 6591c11e6..d409fa87b 100644 --- a/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md +++ b/content/v2.0/collect-data/scrape-data/scrapable-endpoints.md @@ -2,8 +2,10 @@ title: Create scrapable endpoints seotitle: Create scrapable endpoints for InfluxDB description: > - InfluxDB scrapers can collect data from any HTTP/S-accessible endpoint, provided the returned data is in the Prometheus data format. - This article provides information about and links to tools that output Prometheus-formatted metrics. + InfluxDB scrapers can collect data from any HTTP(S)-accessible endpoint that + returns data in the Prometheus data format. + This article provides links to information about the Prometheus data format + and tools that generate Prometheus-formatted metrics. menu: v2_0: parent: Scrape data @@ -11,10 +13,10 @@ weight: 202 v2.0/tags: [scraper] --- -InfluxDB scrapers can collect data from any HTTP/S-accessible endpoint, provided the returned data -is in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). -The links below provide information about the Prometheus data format as well -as tools and clients that will generate Prometheus-formatted metrics for you. +InfluxDB scrapers can collect data from any HTTP(S)-accessible endpoint that returns data +in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). +The links below provide information about the Prometheus data format and tools +and clients that generate Prometheus-formatted metrics. ## Prometheus Node Exporter The [Prometheus Node Exporter](https://github.com/prometheus/node_exporter) exposes @@ -34,7 +36,7 @@ export Prometheus metrics from third-party systems or services. ## Prometheus client libraries [Prometheus client libraries](https://prometheus.io/docs/instrumenting/clientlibs/) instrument applications for each of their respective languages. -Application metrics are output to an HTTP/S endpoint from which they can be scraped. +Application metrics are output to an HTTP(S) endpoint where they can be scraped. ##### Helpful links [Instrumenting a Go application for Prometheus](https://prometheus.io/docs/guides/go-application/) diff --git a/content/v2.0/collect-data/use-telegraf/_index.md b/content/v2.0/collect-data/use-telegraf/_index.md index 4cdcbe33a..4ac10dae1 100644 --- a/content/v2.0/collect-data/use-telegraf/_index.md +++ b/content/v2.0/collect-data/use-telegraf/_index.md @@ -3,8 +3,8 @@ title: Use Telegraf to collect data weight: 102 seotitle: Use Telegraf to collect and write data description: > - Use Telegraf to collect and write data in InfluxDB v2.0. Create Telegraf configurations - in the InfluxDB UI or manually configure Telegraf. + Use Telegraf to collect and write data to InfluxDB v2.0. + Create Telegraf configurations in the InfluxDB UI or manually configure Telegraf. aliases: - /v2.0/collect-data/advanced-telegraf menu: @@ -18,10 +18,10 @@ menu: data collection agent for collecting and reporting metrics. Its vast library of input plugins and "plug-and-play" architecture lets you quickly and easily collect metrics from many different sources. -This article walks through using Telegraf to collect and store data in InfluxDB v2.0. +This article describes how to use Telegraf to collect and store data in InfluxDB v2.0. #### Requirements -- **Telegraf 1.9.2 or greater** installed on the machine from which metrics are collected. +- **Telegraf 1.9.2 or greater**. _For information about installing Telegraf, see the [Telegraf Installation instructions](https://docs.influxdata.com/telegraf/latest/introduction/installation/)._ diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/_index.md b/content/v2.0/collect-data/use-telegraf/auto-config/_index.md index 0862a400f..448b9df69 100644 --- a/content/v2.0/collect-data/use-telegraf/auto-config/_index.md +++ b/content/v2.0/collect-data/use-telegraf/auto-config/_index.md @@ -3,7 +3,7 @@ title: Automatically configure Telegraf seotitle: Automatically configure Telegraf for InfluxDB v2.0 description: > Use the InfluxDB UI to automatically generate a Telegraf configuration, - then start Telegraf using the generated configuration. + then start Telegraf using the generated configuration file. menu: v2_0: parent: Use Telegraf @@ -11,48 +11,45 @@ weight: 201 --- The InfluxDB user interface (UI) provides a workflow that automatically creates -Telegraf configuration files based on user-selected Telegraf Plugins. -This article walks through creating a Telegraf configuration in the InfluxDB UI and -then starting Telegraf using the generated configuration file. +Telegraf configuration files based on user-selected Telegraf plugins. +This article describes how to create a Telegraf configuration in the InfluxDB UI and +start Telegraf using the generated configuration file. {{% note %}} _View the [requirements](/v2.0/collect-data/use-telegraf#requirements) for using Telegraf with InfluxDB v2.0._ {{% /note %}} -## Create a Telegraf configuration in the InfluxDB UI +## Create a Telegraf configuration -1. Open the InfluxDB UI in your web browser - _(default: [localhost:9999](http://localhost:9999))_. -2. Access the **Telegraf Configurations** page by either of the following paths: - 1. Click **Organizations** in the left navigation menu. +1. Open the InfluxDB UI _(default: [localhost:9999](http://localhost:9999))_. +2. Click **Organizations** in the left navigation menu. - {{< nav-icon "orgs" >}} + {{< nav-icon "orgs" >}} - Click on an organization, then click the **Telegraf** tab. - - 2. From the InfluxDB UI landing page, click **Configure a Data Collector**, - then select the **Telegraf** tab. -3. Click **{{< icon "plus" >}} Create Configuration**. -4. From the **Bucket** dropdown, select the bucket in which Telegraf will store the collected data. -5. Select one or more of the available "plugin groups" +3. Click on the name of your organization. +4. Click the **Telegraf** tab. +5. Click **{{< icon "plus" >}} Create Configuration**. +6. In the **Bucket** dropdown, select the bucket where Telegraf will store collected data. +7. Select one or more of the available plugin groups (e.g. **System**, **Docker**, **Kubernetes**, **NGINX**, or **Redis**), and click **Continue**. {{% note %}} All Telegraf plugins are supported, but only a subset are configurable using the InfluxDB UI. To use plugins other than those listed, you must [manually configure Telegraf](/v2.0/collect-data/use-telegraf/manual-config). {{% /note %}} -6. Review the list of **Plugins to Configure** for any configuration requirements. - Plugins listed with a green checkmarks require no additional configuration steps. +8. Review the list of **Plugins to Configure** for configuration requirements. + Plugins listed with a {{< icon "check" >}} + require no additional configuration. To configure a plugin or access plugin documentation, click the plugin name. -7. Provide a **Telegraf Configuration Name** and an optional **Telegraf Configuration Description**. -8. Click **Create and Verify**. -9. The **Test Your Configuration** page provides instructions for how to start +9. Provide a **Telegraf Configuration Name** and an optional **Telegraf Configuration Description**. +10. Click **Create and Verify**. +11. The **Test Your Configuration** page provides instructions for how to start Telegraf using the generated configuration. _See [Start Telegraf](#start-telegraf) below for detailed information about what each step does._ -10. Once Telegraf is running, click **Listen for Data** to confirm Telegraf is successfully +12. Once Telegraf is running, click **Listen for Data** to confirm Telegraf is successfully sending data to InfluxDB. Once confirmed, a **Connection Found!** message appears. -11. Click **Finish**. Your configuration name and the associated bucket name appears +13. Click **Finish**. Your configuration name and the associated bucket name appears in the list of Telegraf connections. ## Start Telegraf From ed0b8d880f7622c71e3b5fce56470537facafe0d Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 7 Mar 2019 10:08:49 -0700 Subject: [PATCH 10/12] updated collect data docs to address PR feedback, added margins to inline icons --- assets/styles/layouts/_inline-icons.scss | 1 + .../use-telegraf/auto-config/_index.md | 9 +++--- .../auto-config/delete-telegraf-config.md | 10 +++--- .../auto-config/update-telegraf-config.md | 9 +++--- .../auto-config/view-telegraf-config.md | 12 +++---- .../use-telegraf/manual-config.md | 31 ++++++++++--------- content/v2.0/users/tokens/_index.md | 2 +- 7 files changed, 37 insertions(+), 37 deletions(-) diff --git a/assets/styles/layouts/_inline-icons.scss b/assets/styles/layouts/_inline-icons.scss index 804f13aa2..e2819be10 100644 --- a/assets/styles/layouts/_inline-icons.scss +++ b/assets/styles/layouts/_inline-icons.scss @@ -1,6 +1,7 @@ // Helper styles for inline icons used with the "icon" shortcode .article--content { .inline { + margin: 0 .2rem; &.middle:before { vertical-align: middle; } &.xsmall:before { font-size: .8rem; } &.small:before { font-size: .9rem; } diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/_index.md b/content/v2.0/collect-data/use-telegraf/auto-config/_index.md index 448b9df69..d78da21e7 100644 --- a/content/v2.0/collect-data/use-telegraf/auto-config/_index.md +++ b/content/v2.0/collect-data/use-telegraf/auto-config/_index.md @@ -56,7 +56,7 @@ for using Telegraf with InfluxDB v2.0._ ### Configure your API token as an environment variable Requests to the InfluxDB v2.0 API must include an authentication token. -Tokens represent given sets of permissions and grant access to your InfluxDB v2.0 instance. +A token identifies specific permissions to the InfluxDB instance. Define the `INFLUX_TOKEN` environment variable using your token. _For information about viewing tokens, see [View tokens](/v2.0/users/tokens/view-tokens/)._ @@ -67,16 +67,15 @@ export INFLUX_TOKEN=YourAuthenticationToken ### Start the Telegraf service Start the Telegraf service using the `-config` flag to specify the URL of your generated configuration file. -Telegraf will pull the configuration file from the InfluxDB API and start using the configured settings. +Telegraf starts using the Telegraf configuration pulled from InfluxDB API. -_The exact command, including the URL, is provided in the **Setup Details** for the configuration._ +_See the configuration **Setup Details** for the exact command._ ```sh telegraf -config http://localhost:9999/api/v2/telegrafs/0xoX00oOx0xoX00o ``` ## Manage Telegraf configurations -Telegraf configurations created through the InfluxDB UI can be viewed and managed -through the UI as well. +Create, view, and manage Telegraf configurations in the InfluxDB UI. {{< children >}} diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/delete-telegraf-config.md b/content/v2.0/collect-data/use-telegraf/auto-config/delete-telegraf-config.md index 0438e77aa..038252fae 100644 --- a/content/v2.0/collect-data/use-telegraf/auto-config/delete-telegraf-config.md +++ b/content/v2.0/collect-data/use-telegraf/auto-config/delete-telegraf-config.md @@ -8,20 +8,20 @@ menu: weight: 303 --- -To delete a Telegraf configuration created in the InfluxDB UI: +To delete a Telegraf configuration: 1. Click **Organizations** in the left navigation menu. {{< nav-icon "orgs" >}} -2. Click on the **Name** of the organization that owns the configuration you want to delete. +2. Click the **Name** of the organization that owns the configuration you want to delete. 3. Click the **Telegraf** tab. -4. Hover over the configuration you would like to delete and click **Delete** on the far right. +4. Hover over the configuration you want to delete and click **Delete** on the far right. 5. Click **Confirm**. {{< img-hd src="/img/2-0-telegraf-config-delete.png" />}} {{% note %}} -Deleting a Telegraf configuration will not affect _**running**_ Telegraf agents. -However, if an agents stops, it will need a new configuration with which to start. +Deleting a Telegraf configuration does not affect _**running**_ Telegraf agents. +However, if an agents stops, it needs a new configuration to start. {{% /note %}} diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md b/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md index 6746247f1..659d28a24 100644 --- a/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md +++ b/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md @@ -8,7 +8,8 @@ menu: weight: 302 --- -The InfluxDB user interface (UI) allows you to update the **name** or **description** of a Telegraf configuration created in the UI. +The InfluxDB user interface (UI) allows you to update the **name** or **description** +of a Telegraf configuration created in the UI. {{% note %}} You cannot modify the actual Telegraf settings associated with a configuration. @@ -22,8 +23,8 @@ To modify Telegraf settings, [create a new Telegraf configuration](/v2.0/collect 2. Click on the **Name** of the organization that owns the configuration you want to delete. 3. Click the **Telegraf** tab. -4. Hover over the configuration you would like to edit and click the **{{< icon "pencil" >}} icon** - that appears next to the name or description. -5. Update the name or description, then click out of the editable field. +4. Hover over the configuration you want to edit and click **{{< icon "pencil" >}}** + to update the name or description. +5. Press Return or click out of the editable field to save your changes. {{< img-hd src="/img/2-0-telegraf-config-update.png" />}} diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/view-telegraf-config.md b/content/v2.0/collect-data/use-telegraf/auto-config/view-telegraf-config.md index 7ad2c9ecc..ca6ed5419 100644 --- a/content/v2.0/collect-data/use-telegraf/auto-config/view-telegraf-config.md +++ b/content/v2.0/collect-data/use-telegraf/auto-config/view-telegraf-config.md @@ -10,16 +10,15 @@ menu: weight: 301 --- -The InfluxDB user interface UI allows you to view information related to a Telegraf -configurations created in the UI: +View Telegraf configuration information in the InfluxDB user interface (UI): 1. Click **Organizations** in the left navigation menu. {{< nav-icon "orgs" >}} -2. Click on the **Name** of the organization that owns the configuration you want to delete. +2. Click the **Name** of the organization that owns the configuration you want to delete. 3. Click the **Telegraf** tab. -4. Hover over a configuration for to display view options. +4. Hover over a configuration to view options. {{< img-hd src="/img/2-0-telegraf-config-view.png" />}} @@ -28,7 +27,6 @@ configurations created in the UI: To view the actual `telegraf.conf` associated with the configuration, click **View**. ### View the setup details -To view the setup instructions shown when first creating the Telegraf configuration, -click **Setup Details**. -These include the commands for adding your InfluxDB authentication token as an environment +To view the setup instructions, click **Setup Details**. +Setup details include commands for adding your InfluxDB authentication token as an environment variable and starting Telegraf with the specific configuration. diff --git a/content/v2.0/collect-data/use-telegraf/manual-config.md b/content/v2.0/collect-data/use-telegraf/manual-config.md index 6f334029b..193f6cfec 100644 --- a/content/v2.0/collect-data/use-telegraf/manual-config.md +++ b/content/v2.0/collect-data/use-telegraf/manual-config.md @@ -2,8 +2,8 @@ title: Manually configure Telegraf seotitle: Manually configure Telegraf for InfluxDB v2.0 description: > - Manually configure Telegraf to write to InfluxDB v2.0 using Telegraf's `influxdb_v2` - output plugin, then start Telegraf using the custom configuration. + Manually configure Telegraf to write to InfluxDB v2.0 using the Telegraf `influxdb_v2` + output plugin, and then start Telegraf using the custom configuration. menu: v2_0: parent: Use Telegraf @@ -12,8 +12,8 @@ weight: 202 Telegraf's `influxdb_v2` output plugin pushes all metrics collected by Telegraf into an InfluxDB v2.0 bucket. -This article walks through manually configuring Telegraf, enabling the `influxdb_v2` -output plugin, then starting Telegraf using the configuration file. +This article describes how to enable the `influxdb_v2` output plugin, +and then start Telegraf using the custom configuration file. {{% note %}} _View the [requirements](/v2.0/collect-data/use-telegraf#requirements) @@ -21,14 +21,14 @@ for using Telegraf with InfluxDB v2.0._ {{% /note %}} ## Configure Telegraf input and output plugins -Configure your Telegraf agents' input and output plugins in your Telegraf configuration file (typically named `telegraf.conf`). +Configure Telegraf input and output plugins in the Telegraf configuration file (typically named `telegraf.conf`). [Input plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/inputs/) collect metrics. -[Output plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/outputs/) define destinations to which metrics are sent. +[Output plugins](https://docs.influxdata.com/telegraf/v1.9/plugins/outputs/) define destinations where metrics are sent. ## Enable and configure the InfluxDB v2 output plugin -To have Telegraf write data to InfluxDB v2.0, enable in the +To send data to an InfluxDB v2.0 instance, enable in the [`influxdb_v2` output plugin](https://github.com/influxdata/telegraf/blob/master/plugins/outputs/influxdb_v2/README.md) -in your `telegraf.conf`. +in the `telegraf.conf`. The following settings are required: @@ -41,8 +41,10 @@ Your InfluxDB v2.0 authorization token. For information about viewing tokens, see [View tokens](/v2.0/users/tokens/view-tokens/). {{% note %}} -A secure alternative to storing your InfluxDB authentication token in plain text in your -`telegraf.conf` is setting the `INFLUX_TOKEN` environment variable and reading it into your config. +#### Avoid storing tokens in plain text +InfluxData does not recommend storing authentication tokens in plain text in the `telegraf.conf`. +A secure alternative is to set the `INFLUX_TOKEN` environment variable and include +it into your configuration file. ```sh export INFLUX_TOKEN=YourAuthenticationToken @@ -52,10 +54,10 @@ _See the [example `telegraf.conf` below](#example-influxdb-v2-configuration)._ {{% /note %}} ##### organization -The name of the organization to which the target bucket belongs. +The name of the organization that owns the target bucket. ##### bucket -The name of the bucket to which to write. +The name of the bucket to write data to. #### Example influxdb_v2 configuration ```toml @@ -72,9 +74,8 @@ The name of the bucket to which to write. {{% note %}} ##### Write to InfluxDB v1.x and v2.0 -For existing Telegraf agents already writing to an InfluxDB v1.x database, -enabling the InfluxDB v2 output plugin will "dual land" data in your InfluxDB -v1.x and InfluxDB v2.0 instances. +If a Telegraf agent is already writing to an InfluxDB v1.x database, +enabling the InfluxDB v2 output plugin will write data to both v1.x and v2.0 instances. {{% /note %}} ## Start Telegraf diff --git a/content/v2.0/users/tokens/_index.md b/content/v2.0/users/tokens/_index.md index 6f3450c5f..f4d8b1a26 100644 --- a/content/v2.0/users/tokens/_index.md +++ b/content/v2.0/users/tokens/_index.md @@ -11,7 +11,7 @@ weight: 105 --- InfluxDB ensures secure interaction between users and data through the use of **authentication tokens**. -Tokens represent a set of permissions granted to users using each token. +A token identifies InfluxDB permissions? The following articles provide information about managing authentication tokens. From 306ee8c3fa326fb2c010b2775af42fb9b523e25d Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 7 Mar 2019 10:20:22 -0700 Subject: [PATCH 11/12] fixed a copy/paste typo in tokens doc --- content/v2.0/users/tokens/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/users/tokens/_index.md b/content/v2.0/users/tokens/_index.md index f4d8b1a26..17ac434d4 100644 --- a/content/v2.0/users/tokens/_index.md +++ b/content/v2.0/users/tokens/_index.md @@ -11,7 +11,7 @@ weight: 105 --- InfluxDB ensures secure interaction between users and data through the use of **authentication tokens**. -A token identifies InfluxDB permissions? +A token identifies InfluxDB permissions. The following articles provide information about managing authentication tokens. From 7ecf2434ae101fc80e61d1702abb3bbbb9e9421b Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 7 Mar 2019 11:01:55 -0700 Subject: [PATCH 12/12] updated ui-messages shortcode and styles, more changes to address PR feedback --- assets/styles/layouts/_ui-messages.scss | 36 +++++++++---------- .../auto-config/update-telegraf-config.md | 4 +-- layouts/shortcodes/ui-message.html | 4 ++- 3 files changed, 21 insertions(+), 23 deletions(-) diff --git a/assets/styles/layouts/_ui-messages.scss b/assets/styles/layouts/_ui-messages.scss index bc5af7c20..d10bb8de5 100644 --- a/assets/styles/layouts/_ui-messages.scss +++ b/assets/styles/layouts/_ui-messages.scss @@ -1,46 +1,44 @@ .article--content { .ui-message { - max-width: 350px; + display: flex; + align-items: center; + width: 375px; margin: 1rem 0 2rem; - padding: .85rem 2.75rem; - font-size: .85rem; + padding: .85rem 0; + font-size: .9rem; border-radius: 5px; - position: relative; color: $g20-white; - &:before { + .icon, .close { + width: 13%; + text-align: center; font-family: 'icomoon'; - display: block; - position: absolute; - left: 14px; - top: 17px; font-size: 1.1rem; } - &:after { + .close:after { content: "\e932"; - font-family: 'icomoon'; - display: block; - position: absolute; - right: 14px; - top: 18px; - font-size: 1.1rem; opacity: .25; } + .text { + width: 74%; + font-weight: 600; + } + &.green { background: linear-gradient(to right, #4dd7a1, #21adf5); - &:before { content: "\e922"; } + .icon:before { content: "\e922"; } } &.blue { background: linear-gradient(to right, #22adf6, #4591ed); - &:before { content: "\e935"; } + .icon:before { content: "\e935"; } } &.red { background: linear-gradient(to right, #e8695c, #7669e8); - &:before { content: "\e920"; } + .icon:before { content: "\e920"; } } diff --git a/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md b/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md index 659d28a24..5a9a4451f 100644 --- a/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md +++ b/content/v2.0/collect-data/use-telegraf/auto-config/update-telegraf-config.md @@ -12,11 +12,9 @@ The InfluxDB user interface (UI) allows you to update the **name** or **descript of a Telegraf configuration created in the UI. {{% note %}} -You cannot modify the actual Telegraf settings associated with a configuration. -To modify Telegraf settings, [create a new Telegraf configuration](/v2.0/collect-data/use-telegraf/auto-config). +You cannot modify Telegraf settings in existing Telegraf configurations through the UI. {{% /note %}} - 1. Click **Organizations** in the left navigation menu. {{< nav-icon "orgs" >}} diff --git a/layouts/shortcodes/ui-message.html b/layouts/shortcodes/ui-message.html index 8096b6e22..175a44eef 100644 --- a/layouts/shortcodes/ui-message.html +++ b/layouts/shortcodes/ui-message.html @@ -2,5 +2,7 @@ {{ $color := .Get "color" | default "green" }}
- {{ $text }} +
+
{{ $text }}
+