From 19aa60160d7bcc1a9c48ee8f20f72490a23f4e3c Mon Sep 17 00:00:00 2001 From: Kelly Date: Wed, 12 Aug 2020 14:03:08 -0700 Subject: [PATCH 001/119] add example to show string w quotes --- .../v2.0/reference/cli/influx/stacks/init.md | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/content/v2.0/reference/cli/influx/stacks/init.md b/content/v2.0/reference/cli/influx/stacks/init.md index b8945cabd..f65f50d5a 100644 --- a/content/v2.0/reference/cli/influx/stacks/init.md +++ b/content/v2.0/reference/cli/influx/stacks/init.md @@ -35,10 +35,22 @@ influx stacks init [flags] | `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | ## Examples + +### Initialize a stack with a name and description ```sh -# Initialize a stack with a name and description +# Use environment variables influx stack init -n $STACK_NAME -d $STACK_DESCRIPTION -# Initialize a stack with a name and urls to associate with stack. -influx stack init -n $STACK_NAME -u $PATH_TO_TEMPLATE +# Use strings +influx stack init -n "Example Stack" -d "InfluxDB stack for monitoring some awesome stuff" +``` + +### Initialize a stack with a name and urls to associate with the stack + +```sh +# Use environment variables +influx stack init -n $STACK_NAME -u $PATH_TO_TEMPLATE + +# Use strings +influx stack init -n "Example Stack" -u https://example.com/template-1.yml ``` From 2b334daf621436d47b9e7af91b60ba08a0171e94 Mon Sep 17 00:00:00 2001 From: Kelly Date: Fri, 14 Aug 2020 15:35:57 -0700 Subject: [PATCH 002/119] edit f Will --- content/v2.0/reference/cli/influx/stacks/init.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/reference/cli/influx/stacks/init.md b/content/v2.0/reference/cli/influx/stacks/init.md index f65f50d5a..42c72e4a6 100644 --- a/content/v2.0/reference/cli/influx/stacks/init.md +++ b/content/v2.0/reference/cli/influx/stacks/init.md @@ -45,7 +45,7 @@ influx stack init -n $STACK_NAME -d $STACK_DESCRIPTION influx stack init -n "Example Stack" -d "InfluxDB stack for monitoring some awesome stuff" ``` -### Initialize a stack with a name and urls to associate with the stack +### Initialize a stack with a name and URLs to associate with the stack ```sh # Use environment variables From 00fb942e5d743403ed2e954a538c119b74975503 Mon Sep 17 00:00:00 2001 From: Kelly Date: Tue, 25 Aug 2020 17:19:52 -0700 Subject: [PATCH 003/119] add stacks example --- .../v2.0/influxdb-templates/stacks/_index.md | 96 +++++++++++++++--- static/img/gitops-workflow.png | Bin 0 -> 181057 bytes 2 files changed, 80 insertions(+), 16 deletions(-) create mode 100644 static/img/gitops-workflow.png diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index df956bf03..1a89e4b6c 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -1,10 +1,8 @@ --- title: InfluxDB stacks description: > - InfluxDB stacks are stateful InfluxDB templates that let you add, - update, and remove templated resources over time, avoid duplicating resources - when applying the same or similar templates more than once, and apply - changes to distributed instances of InfluxDB OSS or InfluxDB Cloud. + InfluxDB stacks are templates that let you apply changes to distributed instances of InfluxDB OSS or InfluxDB Cloud. + Stacks recognize when a resource already exists, and only apply new resources to an instance. menu: v2_0: parent: InfluxDB templates @@ -13,24 +11,83 @@ related: - /v2.0/reference/cli/influx/pkg/stack/ --- -**InfluxDB stacks** are **stateful [InfluxDB templates](/v2.0/influxdb-templates)** -that let you add, update, and remove templated resources over time, avoid -duplicating resources when applying the same or similar templates more than once, -and apply changes to distributed instances of InfluxDB OSS or InfluxDB Cloud. +**InfluxDB stacks** are stateful [templates](/v2.0/influxdb-templates) that let you apply changes +to distributed instances of InfluxDB OSS or InfluxDB Cloud. Stacks (like templates) are groups of +pre-defined resources, including buckets, dashboards, tasks, checks, labels, and Telegraf configurations. -## Ideal use cases for InfluxDB stacks -Stacks help save time and effort in the following use cases: +- [Review ideal use cases for InfluxDB stacks](#review-ideal-use-cases-for-influxdb-stacks), + like automating InfluxDB deployments with GitOps and stacks. +- [Manage InfluxDB stacks](#manage-influxdb-stacks) -- [Actively develop and extend templates](#actively-develop-and-extend-templates) +{{% note %}} +**Key differences between stacks and templates**: + +- A template is a file outside of InfluxDB. Once a template is applied to InfluxDB, it becomes a stack. +- Stacks only add a resource to an instance if the resource doesn't exist. +Templates add all resources even if a resource already exists, which creates duplicate resources. + {{% /note %}} + +## Review ideal use cases for InfluxDB stacks + +Use stacks to save time in the following cases: + +- [Automate deployments with GitOps and stacks](#automate-deployments-with-gitops-and-stacks) - [Apply updates from source-controlled templates](#apply-updates-from-source-controlled-templates) - [Apply template updates across multiple InfluxDB instances](#apply-template-updates-across-multiple-influxdb-instances) +- [Develop templates](#develop-templates) -### Actively develop and extend templates -InfluxDB stacks aid in developing and maintaining InfluxDB templates. -Stacks let you modify and update template manifests and apply those changes in -any stack that uses the template. +### Automate deployments with GitOps and stacks + +GitOps is popular way to configure and automate deployments. Use InfluxDB stacks in a GitOps workflow +to automatically update distributed instances of InfluxDB OSS or InfluxDB Cloud. + +#### Set up a GitHub repository to back your InfluxDB instance + +Use our sample [`influxDB-assets` repository](https://github.com/russorat/influxdb-assets) to get started. + + {{% note %}} + The sample repository **contains** buckets, dashboards, tasks, checks, labels, Telegraf configurations, + and infrastructure scripts. It **does not contain** organizations, users, or tokens; these are set up + in your InfluxDB instance and do not change very often. It also **does not contain** hard-coded IDs, + which lets you spin up and run the resources against your local InfluxDB OSS instance or on InfluxDB Cloud. + {{% /note %}} + +1. Clone the [`influxDB-assets` repository](https://github.com/russorat/influxdb-assets). + For more information, see [GitHub docs for cloning a repository](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository). +2. In the cloned or duplicated repository, update resources to suit your needs, for example, + [clone dashboards](/v2.0/visualize-data/dashboards/create-dashboard/#clone-a-dashboard), [update tasks](/v2.0/process-data/manage-tasks/update-task/), or + [update Telegraf configurations](/v2.0/telegraf-configs/update/). +3. In your integrated development environment (IDE), update the `install.sh` script as needed. + For example, set your `CONFIG_PROFILE` to check for a specific configuration profile. +4. Start an instance of InfluxDB, and then in your IDE, run `./install.sh`. + The install script finds your instance (`CONFIG_PROFILE.url`) and sets one up if the instance doesn't exist, + and then creates the stacks with the specified resources. This script creates separate stacks for buckets, dashboards, tasks, and Telegraf configurations; + however, you can create a stack with any combination of resources. + A message confirms your stacks were set up successfully and provides a link to your instance, for example `http://localhost:9999`. + +5. Click the link to open your InfluxDB instance and sign in. Your stacks should be applied to your instance. +6. To start ingesting data into your instance, in your IDE, run `./start_telegraf.sh` script. + The script runs your Telegraf configurations and connects to your instance. You should see data coming into your instance. +7. Open the `.github/workflows` directory, and make changes to `main.yml` as needed. This file uses a [GitHub Action](https://github.com/features/actions) to pull in some secrets + set in the GitHub project, grab the latest nightly version of InfluxDB, unzip the build, go to the `GITHUB_WORKSPACE`, and then + deploy the changes to your instance. Note the final line in this script `./install.sh prod` passes in a the `prod` configuration variable, + which grabs the INFLUX_TOKEN, INFLUX_ORG, and INFLUX_URL to install everything into the Cloud instance. +8. Click **Actions** in the repository to see all the tasks in the `deploy-to-cloud` workflow. + + Optionally, you can set up another continuous integration platform, such as [Circle CI](https://circleci.com/). + +#### Make a change in your repository + +Once you've set up your GitHub repository to back your InfluxDB instance, follow the steps below +to make a change to your new repository and automatically deploy the change to your InfluxDB instances. + +1. In your integrated development environment (IDE), open the repository, make a change locally, and then test against your InfluxDB instance. +2. Commit your change. For more information, see [GitHub docs about commits](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/committing-and-reviewing-changes-to-your-project#about-commits). +3. Create a pull request. For more information, see [GitHub docs for creating a pull request](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request). +4. Merge your pull request. For more information, see [GitHub docs for merging a pull request](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/merging-a-pull-request). Your change is automatically deployed to your InfluxDB instance. ### Apply updates from source-controlled templates + You can use a variety of InfluxDB templates from many different sources including [Community Templates](https://github.com/influxdata/community-templates/) or self-built custom templates. @@ -38,13 +95,20 @@ As templates are updated over time, stacks allow template users to gracefully apply updates without creating duplicate resources. ### Apply template updates across multiple InfluxDB instances + In many cases, users have more than one instance of InfluxDB running and apply the same template to each separate instance. By using stacks, you can make changes to a stack on one instance, [export the stack as a template](/v2.0/influxdb-templates/create/#export-a-stack) and then apply the changes to your other InfluxDB instances. -## Manage InfluxDB Stacks +### Develop templates + +InfluxDB stacks aid in developing and maintaining InfluxDB templates. +Stacks let you modify and update template manifests and apply those changes in +any stack that uses the template. + +## Manage InfluxDB stacks {{< children type="anchored-list" >}} diff --git a/static/img/gitops-workflow.png b/static/img/gitops-workflow.png new file mode 100644 index 0000000000000000000000000000000000000000..5f5d5aa7eedf8fd92e26aaa8cb9ec5980850b85d GIT binary patch literal 181057 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 ScHwgm`B0KmlP#Avd;5RQ{P`CE literal 0 HcmV?d00001 From b0f7f81d6480e71ab95958c8471eced919405551 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Tue, 25 Aug 2020 17:21:51 -0700 Subject: [PATCH 004/119] Update _index.md --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 1a89e4b6c..52e7c95c5 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -1,7 +1,7 @@ --- title: InfluxDB stacks description: > - InfluxDB stacks are templates that let you apply changes to distributed instances of InfluxDB OSS or InfluxDB Cloud. + InfluxDB stacks are stateful templates that let you apply changes to distributed instances of InfluxDB OSS or InfluxDB Cloud. Stacks recognize when a resource already exists, and only apply new resources to an instance. menu: v2_0: From 10836b29423b3d382413b97898281d2bff8aca56 Mon Sep 17 00:00:00 2001 From: Kelly Date: Fri, 28 Aug 2020 13:59:14 -0700 Subject: [PATCH 005/119] edits f Russ --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 52e7c95c5..9081e95e8 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -22,7 +22,7 @@ pre-defined resources, including buckets, dashboards, tasks, checks, labels, and {{% note %}} **Key differences between stacks and templates**: -- A template is a file outside of InfluxDB. Once a template is applied to InfluxDB, it becomes a stack. +- A template is a file outside of InfluxDB. When you apply an InfluxDB template, a stack is automatically created to manage the template state. - Stacks only add a resource to an instance if the resource doesn't exist. Templates add all resources even if a resource already exists, which creates duplicate resources. {{% /note %}} From 05f40d760e076ef45c1eac0db4e86cd4e833bf99 Mon Sep 17 00:00:00 2001 From: Kelly Date: Fri, 28 Aug 2020 14:08:25 -0700 Subject: [PATCH 006/119] edits from Russ --- content/v2.0/influxdb-templates/stacks/_index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 9081e95e8..8337b09ed 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -22,9 +22,9 @@ pre-defined resources, including buckets, dashboards, tasks, checks, labels, and {{% note %}} **Key differences between stacks and templates**: -- A template is a file outside of InfluxDB. When you apply an InfluxDB template, a stack is automatically created to manage the template state. -- Stacks only add a resource to an instance if the resource doesn't exist. -Templates add all resources even if a resource already exists, which creates duplicate resources. +- A template is a file outside of InfluxDB. When you apply a template, a stack is automatically created to manage the applied template resources. +- Stacks add, modify or delete resources in an instance. +- Templates do not recognize resources in an instance. All resources in the template are added, creating duplicate resources if a resource already exists. {{% /note %}} ## Review ideal use cases for InfluxDB stacks From d52789a0f92b06a8f0d551bd4953b923b2c6d161 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Mon, 31 Aug 2020 10:49:11 -0700 Subject: [PATCH 007/119] Update _index.md --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 8337b09ed..639addf0c 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -2,7 +2,7 @@ title: InfluxDB stacks description: > InfluxDB stacks are stateful templates that let you apply changes to distributed instances of InfluxDB OSS or InfluxDB Cloud. - Stacks recognize when a resource already exists, and only apply new resources to an instance. + When you apply a stack, it adds, updates, or deletes resources in an instance. menu: v2_0: parent: InfluxDB templates From 816f5e95583260c61b96c1c9a01b4365ac15ebd8 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Mon, 31 Aug 2020 10:51:44 -0700 Subject: [PATCH 008/119] Update _index.md --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 639addf0c..688fb3ead 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -54,7 +54,7 @@ Use our sample [`influxDB-assets` repository](https://github.com/russorat/influx 1. Clone the [`influxDB-assets` repository](https://github.com/russorat/influxdb-assets). For more information, see [GitHub docs for cloning a repository](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository). -2. In the cloned or duplicated repository, update resources to suit your needs, for example, +2. In the cloned repository, update resources to suit your needs, for example, [clone dashboards](/v2.0/visualize-data/dashboards/create-dashboard/#clone-a-dashboard), [update tasks](/v2.0/process-data/manage-tasks/update-task/), or [update Telegraf configurations](/v2.0/telegraf-configs/update/). 3. In your integrated development environment (IDE), update the `install.sh` script as needed. From fceb34f4d21a3618dd6014b6a2293baca58ea346 Mon Sep 17 00:00:00 2001 From: Russ Savage Date: Mon, 31 Aug 2020 15:53:41 -0700 Subject: [PATCH 009/119] feat(stacks): updating gitops documentation --- content/v2.0/influxdb-templates/_index.md | 22 +-- .../v2.0/influxdb-templates/stacks/_index.md | 146 +++++++++++++----- 2 files changed, 116 insertions(+), 52 deletions(-) diff --git a/content/v2.0/influxdb-templates/_index.md b/content/v2.0/influxdb-templates/_index.md index 80740a12c..5393dabd6 100644 --- a/content/v2.0/influxdb-templates/_index.md +++ b/content/v2.0/influxdb-templates/_index.md @@ -1,30 +1,30 @@ --- title: InfluxDB templates description: > - InfluxDB templates are prepackaged InfluxDB configurations that contain everything + InfluxDB templates are preconfigured InfluxDB resources and can contain everything from dashboards and Telegraf configurations to notifications and alerts. menu: v2_0 weight: 9 v2.0/tags: [templates] --- -InfluxDB templates are prepackaged InfluxDB configurations that contain everything +InfluxDB templates are preconfigured InfluxDB resources and can contain everything from dashboards and Telegraf configurations to notifications and alerts. -Use InfluxDB templates to quickly set up a fresh instance of InfluxDB, back up your -dashboard configuration, or share your configuration with the InfluxData community. +Use InfluxDB templates to quickly get set up monitoring a specific technology, set +up a fresh instance of InfluxDB, back up your InfluxDB resources, or share your work +with the InfluxData community. **InfluxDB templates do the following:** -- Reduce setup time -- Facilitate secure, portable, source-controlled InfluxDB platform states. +- Reduce setup time by giving you resources that are already configured for your use-case. +- Facilitate secure, portable, and source-controlled InfluxDB resource states. - Simplify sharing and using pre-built InfluxDB solutions. {{< youtube 2JjW4Rym9XE >}} ## Template manifests -A template consists of a single file known as a **manifest** that defines the -InfluxDB state and associated [resources](#template-resources). -Template manifests support the following formats: +A template consists of one or more files known as **manifests** that defines the +InfluxDB [resources](#template-resources). Template manifests support the following formats: - [YAML](https://yaml.org/) - [JSON](https://www.json.org/) @@ -38,7 +38,7 @@ Template manifests are compatible with The `metadata.name` field in manifests uniquely identifies each resource in the template. `metadata.name` values must be [DNS-1123](https://tools.ietf.org/html/rfc1123) compliant. If resources in the template depend on other InfluxDB resources, all dependencies -must be included in the template. +should be included in the template, otherwise, the resources may not be usable. _See [Create an InfluxDB template](/v2.0/influxdb-templates/create/) for information about generating template manifests._ @@ -57,7 +57,7 @@ Include the following **resources** in a template: - Telegraf configurations ## Stacks -**InfluxDB stacks** are stateful InfluxDB templates. +**InfluxDB stacks** are artifacts that can be used to manage InfluxDB templates. When you apply a template, InfluxDB associates resources in the template with a stack. Use stacks to add, update, or remove templated resources over time. diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 688fb3ead..11ec6c5c8 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -1,8 +1,7 @@ --- title: InfluxDB stacks description: > - InfluxDB stacks are stateful templates that let you apply changes to distributed instances of InfluxDB OSS or InfluxDB Cloud. - When you apply a stack, it adds, updates, or deletes resources in an instance. + InfluxDB stacks are are artifacts that can be used to manage InfluxDB templates. Use stacks to add, update, or remove templated resources over time. menu: v2_0: parent: InfluxDB templates @@ -11,9 +10,8 @@ related: - /v2.0/reference/cli/influx/pkg/stack/ --- -**InfluxDB stacks** are stateful [templates](/v2.0/influxdb-templates) that let you apply changes -to distributed instances of InfluxDB OSS or InfluxDB Cloud. Stacks (like templates) are groups of -pre-defined resources, including buckets, dashboards, tasks, checks, labels, and Telegraf configurations. +**InfluxDB stacks** are artifacts that can be used to manage [InfluxDB templates](/v2.0/influxdb-templates). +When you apply a template, InfluxDB associates resources in the template with a stack. Use stacks to add, update, or remove templated resources over time. - [Review ideal use cases for InfluxDB stacks](#review-ideal-use-cases-for-influxdb-stacks), like automating InfluxDB deployments with GitOps and stacks. @@ -22,9 +20,9 @@ pre-defined resources, including buckets, dashboards, tasks, checks, labels, and {{% note %}} **Key differences between stacks and templates**: -- A template is a file outside of InfluxDB. When you apply a template, a stack is automatically created to manage the applied template resources. +- A template describes a set of resources in a text file outside of InfluxDB. When you apply a template, a stack is automatically created to manage the applied template resources. - Stacks add, modify or delete resources in an instance. -- Templates do not recognize resources in an instance. All resources in the template are added, creating duplicate resources if a resource already exists. +- Templates do not recognize resources already in an instance. All resources in the template are added, creating duplicate resources if a resource already exists. {{% /note %}} ## Review ideal use cases for InfluxDB stacks @@ -39,52 +37,118 @@ Use stacks to save time in the following cases: ### Automate deployments with GitOps and stacks GitOps is popular way to configure and automate deployments. Use InfluxDB stacks in a GitOps workflow -to automatically update distributed instances of InfluxDB OSS or InfluxDB Cloud. +to automatically update distributed instances of InfluxDB OSS or InfluxDB Cloud. For a complete example, check out the blog on [Building a GitOps Workflow with InfluxDB Templates](). #### Set up a GitHub repository to back your InfluxDB instance -Use our sample [`influxDB-assets` repository](https://github.com/russorat/influxdb-assets) to get started. +Start by determining how you want to organize the stacks (and my proxy, the resources) in your Github repository. +Depending on how you use InfluxDB, you might want to organize resources under folders for specific teams or functions. + +Regardless of the heiarchy, we recommend that all resources that would be updated as part of the same stack live in the same folder. For example, if you are monitoring [Redis](), you might have a Telegraf configration, a few dashboards, a label, and some checks, all defined in the same folder in your repository, but in multiple files. They could all be connected by a stack named `redis`. When there is a change you want to make to one or more of those resources, it's easy to find them. {{% note %}} - The sample repository **contains** buckets, dashboards, tasks, checks, labels, Telegraf configurations, - and infrastructure scripts. It **does not contain** organizations, users, or tokens; these are set up - in your InfluxDB instance and do not change very often. It also **does not contain** hard-coded IDs, - which lets you spin up and run the resources against your local InfluxDB OSS instance or on InfluxDB Cloud. + Since stacks manage the entire lifecycle of a resource, including deletion, be extremely careful when using the same resource in multiple stacks, as deleting a stack could delete the resource another stack is depending on. This usually occurs when dealing with buckets. Since your buckets most likely contain data that might be used by many different templates, we would recommend keeping buckets separate from the other stacks. {{% /note %}} -1. Clone the [`influxDB-assets` repository](https://github.com/russorat/influxdb-assets). - For more information, see [GitHub docs for cloning a repository](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository). -2. In the cloned repository, update resources to suit your needs, for example, - [clone dashboards](/v2.0/visualize-data/dashboards/create-dashboard/#clone-a-dashboard), [update tasks](/v2.0/process-data/manage-tasks/update-task/), or - [update Telegraf configurations](/v2.0/telegraf-configs/update/). -3. In your integrated development environment (IDE), update the `install.sh` script as needed. - For example, set your `CONFIG_PROFILE` to check for a specific configuration profile. -4. Start an instance of InfluxDB, and then in your IDE, run `./install.sh`. - The install script finds your instance (`CONFIG_PROFILE.url`) and sets one up if the instance doesn't exist, - and then creates the stacks with the specified resources. This script creates separate stacks for buckets, dashboards, tasks, and Telegraf configurations; - however, you can create a stack with any combination of resources. - A message confirms your stacks were set up successfully and provides a link to your instance, for example `http://localhost:9999`. +#### Populate your GitHub repository with the existing resources in your instance -5. Click the link to open your InfluxDB instance and sign in. Your stacks should be applied to your instance. -6. To start ingesting data into your instance, in your IDE, run `./start_telegraf.sh` script. - The script runs your Telegraf configurations and connects to your instance. You should see data coming into your instance. -7. Open the `.github/workflows` directory, and make changes to `main.yml` as needed. This file uses a [GitHub Action](https://github.com/features/actions) to pull in some secrets - set in the GitHub project, grab the latest nightly version of InfluxDB, unzip the build, go to the `GITHUB_WORKSPACE`, and then - deploy the changes to your instance. Note the final line in this script `./install.sh prod` passes in a the `prod` configuration variable, - which grabs the INFLUX_TOKEN, INFLUX_ORG, and INFLUX_URL to install everything into the Cloud instance. -8. Click **Actions** in the repository to see all the tasks in the `deploy-to-cloud` workflow. +You can skip this section if you are starting from scratch. Most likely, you already have some resources that you would like to use in your InfluxDB instance. You will need to export these resources and group them into the approriate stacks. - Optionally, you can set up another continuous integration platform, such as [Circle CI](https://circleci.com/). +You can use the [`influx export`]() command from the CLI to quickly export groups of resources, or all resources. It's up to you if you want to keep all your resources in a single file or have files for each one. You can always split or combine them later. -#### Make a change in your repository +Your folder structure might look something like this when you are done: -Once you've set up your GitHub repository to back your InfluxDB instance, follow the steps below -to make a change to your new repository and automatically deploy the change to your InfluxDB instances. +```sh +influxdb-assets/ +├── buckets/ +│ ├── telegraf_bucket.yml +├── redis/ +│ ├── redis_overview_dashboard.yml +│ ├── redis_label.yml +│ ├── redis_cpu_check.yml +│ └── redis_mem_check.yml +├── mysql/ +│ ├── mysql_assets.yml +└── README.md -1. In your integrated development environment (IDE), open the repository, make a change locally, and then test against your InfluxDB instance. -2. Commit your change. For more information, see [GitHub docs about commits](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/committing-and-reviewing-changes-to-your-project#about-commits). -3. Create a pull request. For more information, see [GitHub docs for creating a pull request](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request). -4. Merge your pull request. For more information, see [GitHub docs for merging a pull request](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/merging-a-pull-request). Your change is automatically deployed to your InfluxDB instance. +``` + {{% note %}} + When exporting a resource in InfluxDB, InfluxDB will automatically create a `meta.name` for that resource. These names should be unique inside you InfluxDB instance, and a good naming convention can help ensure there are no colisions. Changing the `meta.name` of the InfluxDB resource will cause the stack to orphan the resource with the previous name and create a new resource with the updated name. + {{% /note %}} + +#### Automate the creation of a stack for each folder + +Each folder in your Github repository will likely become its own stack, and you'll want to automate the process to apply your changes to your InfluxDB instance. You can do that using some shell scripts and the Influx CLI. Here is an example shell script that will create a `redis` stack, and automatically apply those changes to your instance. + +```sh +echo "Checking for existing redis stack..." +REDIS_STACK_ID=$(influx stacks --stack-name redis --json | jq -r '.[0].ID') +if [ "$REDIS_STACK_ID" == "null" ]; then + echo "No stack found. Initializing our stack..." + REDIS_STACK_ID=$(influx stacks init -n redis --json | jq -r '.ID') +fi + +# Setting the base path +BASE_PATH="$(pwd)" + +echo "Applying our redis stack..." +cat $BASE_PATH/redis/*.yml | \ +influx apply --force true --stack-id $REDIS_STACK_ID -q +``` + + {{% note %}} + The `--json` flag in the InfluxDB CLI is very useful when scripting against the CLI, as it allows you to grab important information easily using [`jq`](https://stedolan.github.io/jq/manual/v1.6/). + {{% /note %}} + +You can do this for each of the stacks you are maintaining. Each time you make a change to one of the resources in the stack, you can re-run this script and your changes will be applied to the resources in your InfluxDB instance. There's no need to check for changes before re-applying a stack, since re-applying the same resources doesn't change anything. + +For a complete example, check out the blog on [Building a GitOps Workflow with InfluxDB Templates](). + +#### Automating deployment using Github Actions or CircleCI + +Once you have a script to apply changes being made to your local instance, you can start to automate the deployment to other environments as needed. The InfluxDB CLI has the ability to maintain multiple [configuration profiles]() that makes it easy to issue commands against other InfluxDB instances. To apply the same script to a different InfluxDB instance, just change your active configuration profile using the `influx config set` command. You can also set the desired profile dynamically using the `-c, --active-config` flag. + + {{% note %}} + Be careful anytime you are running automation scripts against shared environments. It might be useful to manually run the steps in your script first before setting up automation. + {{% /note %}} + +As long as your deployment automation software allows you to run a custom script, you can set it up to run the same script you've built locally, but against another environment. Here is an example of using a custom Github Action to do this: + +```yml +name: deploy-influxdb-resources + +on: + push: + branches: [ master ] + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + ref: ${{ github.ref }} + - name: Deploys repo to cloud + env: + # These secrets can be configured in the Github repo to connect to + # your InfluxDB instance. + INFLUX_TOKEN: ${{ secrets.INFLUX_TOKEN }} + INFLUX_ORG: ${{ secrets.INFLUX_ORG }} + INFLUX_URL: ${{ secrets.INFLUX_URL }} + GITHUB_REPO: ${{ github.repository }} + GITHUB_BRANCH: ${{ github.ref }} + run: | + cd /tmp + wget https://dl.influxdata.com/platform/nightlies/influx_nightly_linux_amd64.tar.gz + tar xvfz influx_nightly_linux_amd64.tar.gz + sudo cp influx_nightly_linux_amd64/influx /usr/local/bin/ + cd $GITHUB_WORKSPACE + # This runs the script to set up your stacks + chmod +x ./setup.sh + ./setup.sh prod +``` + +Check out the complete [Github Actions documentation](https://github.com/features/actions) for more information about using these in your project. ### Apply updates from source-controlled templates From dfebc55fe8b8874021b61f61c1d07518102cab7a Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 3 Sep 2020 15:55:46 -0600 Subject: [PATCH 010/119] added -r option to influx query command, resolves #1363 --- content/influxdb/v2.0/reference/cli/influx/query/_index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/influxdb/v2.0/reference/cli/influx/query/_index.md b/content/influxdb/v2.0/reference/cli/influx/query/_index.md index b0c009b0f..a4aa3096e 100644 --- a/content/influxdb/v2.0/reference/cli/influx/query/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/query/_index.md @@ -28,5 +28,6 @@ influx query [query literal] [flags] | | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| `-r` | `--raw` | Output raw query results (annotated CSV) | | | | | `--skip-verify` | Skip TLS certificate verification | | | | `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | From 7202b5aee8e1dca3838d7dbef1bafc01f8b475aa Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 3 Sep 2020 16:10:15 -0600 Subject: [PATCH 011/119] added --active-config flag to CLI commands, resolves #1326 --- .../v2.0/reference/cli/influx/apply/_index.md | 3 +- .../v2.0/reference/cli/influx/auth/active.md | 21 +++++++------- .../v2.0/reference/cli/influx/auth/create.md | 1 + .../v2.0/reference/cli/influx/auth/delete.md | 21 +++++++------- .../reference/cli/influx/auth/inactive.md | 21 +++++++------- .../v2.0/reference/cli/influx/auth/list.md | 29 ++++++++++--------- .../reference/cli/influx/backup/_index.md | 17 ++++++----- .../reference/cli/influx/bucket/_index.md | 15 +++++----- .../reference/cli/influx/bucket/create.md | 29 ++++++++++--------- .../reference/cli/influx/bucket/delete.md | 27 ++++++++--------- .../v2.0/reference/cli/influx/bucket/list.md | 27 ++++++++--------- .../reference/cli/influx/bucket/update.md | 27 ++++++++--------- .../reference/cli/influx/dashboards/_index.md | 25 ++++++++-------- .../reference/cli/influx/delete/_index.md | 29 ++++++++++--------- .../reference/cli/influx/export/_index.md | 1 + .../v2.0/reference/cli/influx/export/all.md | 23 ++++++++------- .../v2.0/reference/cli/influx/export/stack.md | 21 +++++++------- .../v2.0/reference/cli/influx/org/create.md | 23 ++++++++------- .../v2.0/reference/cli/influx/org/delete.md | 21 +++++++------- .../v2.0/reference/cli/influx/org/list.md | 23 ++++++++------- .../v2.0/reference/cli/influx/org/update.md | 25 ++++++++-------- .../v2.0/reference/cli/influx/query/_index.md | 23 ++++++++------- .../v2.0/reference/cli/influx/repl/_index.md | 19 ++++++------ .../reference/cli/influx/secret/delete.md | 25 ++++++++-------- .../v2.0/reference/cli/influx/secret/list.md | 23 ++++++++------- .../reference/cli/influx/secret/update.md | 27 ++++++++--------- .../v2.0/reference/cli/influx/setup/_index.md | 27 ++++++++--------- .../reference/cli/influx/stacks/_index.md | 27 ++++++++--------- .../v2.0/reference/cli/influx/stacks/init.md | 1 + .../reference/cli/influx/stacks/remove.md | 25 ++++++++-------- .../reference/cli/influx/stacks/update.md | 1 + .../v2.0/reference/cli/influx/task/create.md | 25 ++++++++-------- .../v2.0/reference/cli/influx/task/delete.md | 21 +++++++------- .../v2.0/reference/cli/influx/task/list.md | 29 ++++++++++--------- .../reference/cli/influx/task/log/list.md | 23 ++++++++------- .../reference/cli/influx/task/run/list.md | 29 ++++++++++--------- .../reference/cli/influx/task/run/retry.md | 19 ++++++------ .../v2.0/reference/cli/influx/task/update.md | 25 ++++++++-------- .../reference/cli/influx/telegrafs/_index.md | 23 ++++++++------- .../reference/cli/influx/telegrafs/create.md | 23 ++++++++------- .../v2.0/reference/cli/influx/telegrafs/rm.md | 15 +++++----- .../reference/cli/influx/telegrafs/update.md | 23 ++++++++------- .../reference/cli/influx/template/_index.md | 2 +- .../v2.0/reference/cli/influx/user/create.md | 27 ++++++++--------- .../v2.0/reference/cli/influx/user/delete.md | 21 +++++++------- .../v2.0/reference/cli/influx/user/list.md | 23 ++++++++------- .../reference/cli/influx/user/password.md | 19 ++++++------ .../v2.0/reference/cli/influx/user/update.md | 23 ++++++++------- .../v2.0/reference/cli/influx/write/_index.md | 5 ++-- .../v2.0/reference/cli/influx/write/dryrun.md | 1 + 50 files changed, 526 insertions(+), 477 deletions(-) diff --git a/content/influxdb/v2.0/reference/cli/influx/apply/_index.md b/content/influxdb/v2.0/reference/cli/influx/apply/_index.md index 22002fc0c..f19cc0032 100644 --- a/content/influxdb/v2.0/reference/cli/influx/apply/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/apply/_index.md @@ -23,8 +23,9 @@ influx apply [flags] ## Flags | Flag | | Description | Input Type | {{< cli/mapped >}} | |:---- |:--- |:----------------------------- |:---------- |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-c` | `--disable-color` | Disable color in output | | | +| | `--disable-color` | Disable color in output | | | | | `--disable-table-borders` | Disable table borders | | | | `-e` | `--encoding` | Encoding of the input stream | string | | | | `--env-ref` | Environment references to provide with the template (format: `--env-ref=REF_KEY=REF_VALUE`) | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/active.md b/content/influxdb/v2.0/reference/cli/influx/auth/active.md index eb648b8dd..b83547c79 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/active.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/active.md @@ -16,13 +16,14 @@ influx auth active [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `active` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** Authorization ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `active` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** Authorization ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/create.md b/content/influxdb/v2.0/reference/cli/influx/auth/create.md index 1f6c6f389..2f45aee29 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/create.md @@ -18,6 +18,7 @@ influx auth create [flags] ## Flags | Flag | | Description | Input type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `create` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/delete.md b/content/influxdb/v2.0/reference/cli/influx/auth/delete.md index 78eec1f72..0a680d6aa 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/delete.md @@ -16,13 +16,14 @@ influx auth delete [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `delete` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** Authorization ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `delete` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** Authorization ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/inactive.md b/content/influxdb/v2.0/reference/cli/influx/auth/inactive.md index 5f5b3c90d..e864039e3 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/inactive.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/inactive.md @@ -16,13 +16,14 @@ influx auth inactive [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `inactive` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** Authorization ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `inactive` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** Authorization ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/list.md b/content/influxdb/v2.0/reference/cli/influx/auth/list.md index 07d8c065d..98c525efa 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/list.md @@ -21,17 +21,18 @@ influx auth list [flags] `list`, `ls`, `find` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `list` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | Authorization ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-o` | `--org` | Organization name | string | | -| | `--org-id` | Organization ID | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | -| `-u` | `--user` | Username | string | | -| | `--user-id` | User ID | string | | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | Authorization ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-o` | `--org` | Organization name | string | | +| | `--org-id` | Organization ID | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| `-u` | `--user` | Username | string | | +| | `--user-id` | User ID | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/backup/_index.md b/content/influxdb/v2.0/reference/cli/influx/backup/_index.md index d0a34fbf9..2b11b2dfb 100644 --- a/content/influxdb/v2.0/reference/cli/influx/backup/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/backup/_index.md @@ -19,11 +19,12 @@ influx backup [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `backup` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-p` | `--path` | Directory path to write backup files to | string | `INFLUX_PATH` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `backup` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-p` | `--path` | Directory path to write backup files to | string | `INFLUX_PATH` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/_index.md b/content/influxdb/v2.0/reference/cli/influx/bucket/_index.md index bb57f9121..3e564f8db 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/_index.md @@ -26,10 +26,11 @@ influx bucket [command] | [update](/influxdb/v2.0/reference/cli/influx/bucket/update) | Update bucket | ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:---------- |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `bucket` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:---------- |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `bucket` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/create.md b/content/influxdb/v2.0/reference/cli/influx/bucket/create.md index 6a46dbff0..7083285f2 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/create.md @@ -18,20 +18,21 @@ influx bucket create [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-d` | `--description` | Bucket description | string | | -| `-h` | `--help` | Help for the `create` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Bucket name | string | `INFLUX_BUCKET_NAME` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| `-r` | `--retention` | Duration bucket will retain data (0 is infinite, default is 0) | duration | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-d` | `--description` | Bucket description | string | | +| `-h` | `--help` | Help for the `create` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Bucket name | string | `INFLUX_BUCKET_NAME` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| `-r` | `--retention` | Duration bucket will retain data (0 is infinite, default is 0) | duration | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | {{% note %}} Valid `--retention` units are nanoseconds (`ns`), microseconds (`us` or `µs`), diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/delete.md b/content/influxdb/v2.0/reference/cli/influx/bucket/delete.md index 6c8d17526..6078502d9 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/delete.md @@ -20,16 +20,17 @@ influx bucket delete [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `delete` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | Bucket ID _(required if no `--name`)_ | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Bucket name _(requires `--org` or `org-id`)_ | string | | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `delete` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | Bucket ID _(required if no `--name`)_ | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Bucket name _(requires `--org` or `org-id`)_ | string | | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/list.md b/content/influxdb/v2.0/reference/cli/influx/bucket/list.md index 1dbca6cbc..11fd66ae5 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/list.md @@ -22,16 +22,17 @@ influx bucket list [flags] `list`, `ls`, `find` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `list` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | Bucket ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Bucket name | string | `INFLUX_BUCKET_NAME` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | Bucket ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Bucket name | string | `INFLUX_BUCKET_NAME` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/update.md b/content/influxdb/v2.0/reference/cli/influx/bucket/update.md index 9208ad12d..e20b0d09e 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/update.md @@ -18,19 +18,20 @@ influx bucket update [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-d` | `--description` | Bucket description | string | | -| `-h` | `--help` | Help for the `update` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** Bucket ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | New bucket name | string | `INFLUX_BUCKET_NAME` | -| `-r` | `--retention` | New duration bucket will retain data | duration | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-d` | `--description` | Bucket description | string | | +| `-h` | `--help` | Help for the `update` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** Bucket ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | New bucket name | string | `INFLUX_BUCKET_NAME` | +| `-r` | `--retention` | New duration bucket will retain data | duration | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | {{% note %}} Valid `--retention` units are nanoseconds (`ns`), microseconds (`us` or `µs`), diff --git a/content/influxdb/v2.0/reference/cli/influx/dashboards/_index.md b/content/influxdb/v2.0/reference/cli/influx/dashboards/_index.md index 4064e1a86..42af166b7 100644 --- a/content/influxdb/v2.0/reference/cli/influx/dashboards/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/dashboards/_index.md @@ -18,18 +18,19 @@ influx dashboards [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `dashboards` command | | | -| | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `$INFLUX_HOST` | -| `-i` | `--id` | Dashboard ID to retrieve | string | | -| | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `dashboards` command | | | +| | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `$INFLUX_HOST` | +| `-i` | `--id` | Dashboard ID to retrieve | string | | +| | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | ## Examples ```sh diff --git a/content/influxdb/v2.0/reference/cli/influx/delete/_index.md b/content/influxdb/v2.0/reference/cli/influx/delete/_index.md index d6dc11d49..21e7c9568 100644 --- a/content/influxdb/v2.0/reference/cli/influx/delete/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/delete/_index.md @@ -24,17 +24,18 @@ timestamps between the specified `--start` and `--stop` times in the specified b {{% /warn %}} ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| `-b` | `--bucket` | Name of bucket to remove data from | string | `INFLUX_BUCKET_NAME` | -| | `--bucket-id` | Bucket ID | string | `INFLUX_BUCKET_ID` | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `delete` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| `-p` | `--predicate` | InfluxQL-like predicate string (see [Delete predicate](/influxdb/v2.0/reference/syntax/delete-predicate)) | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| | `--start` | Start time in RFC3339 format (i.e. `2009-01-02T23:00:00Z`) | string | | -| | `--stop` | Stop time in RFC3339 format (i.e. `2009-01-02T23:00:00Z`) | string | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| `-b` | `--bucket` | Name of bucket to remove data from | string | `INFLUX_BUCKET_NAME` | +| | `--bucket-id` | Bucket ID | string | `INFLUX_BUCKET_ID` | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `delete` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| `-p` | `--predicate` | InfluxQL-like predicate string (see [Delete predicate](/influxdb/v2.0/reference/syntax/delete-predicate)) | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| | `--start` | Start time in RFC3339 format (i.e. `2009-01-02T23:00:00Z`) | string | | +| | `--stop` | Stop time in RFC3339 format (i.e. `2009-01-02T23:00:00Z`) | string | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/export/_index.md b/content/influxdb/v2.0/reference/cli/influx/export/_index.md index dfe6bd881..182718992 100644 --- a/content/influxdb/v2.0/reference/cli/influx/export/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/export/_index.md @@ -31,6 +31,7 @@ influx export [command] | Flag | | Description | Input Type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:---------- |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--buckets` | Comma-separated list of bucket IDs | string | | | | `--checks` | Comma-separated list of check IDs | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | diff --git a/content/influxdb/v2.0/reference/cli/influx/export/all.md b/content/influxdb/v2.0/reference/cli/influx/export/all.md index 207fd7db1..688144ae4 100644 --- a/content/influxdb/v2.0/reference/cli/influx/export/all.md +++ b/content/influxdb/v2.0/reference/cli/influx/export/all.md @@ -23,17 +23,18 @@ influx export all [flags] ``` ## Flags -| Flag | | Description | Input Type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:---------- |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-f` | `--file` | Template output file. Defaults to stdout. Use `.yml` or `.json` file extensions. | string | | -| | `--filter` | Specify resources to export by labelName or resourceKind (format: `--filter=labelName=example`) | list of strings | | -| `-h` | `--help` | Help for the `export all` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-o` | `--org` | Organization name that owns the resources | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID that owns the resources | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input Type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:---------- |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-f` | `--file` | Template output file. Defaults to stdout. Use `.yml` or `.json` file extensions. | string | | +| | `--filter` | Specify resources to export by labelName or resourceKind (format: `--filter=labelName=example`) | list of strings | | +| `-h` | `--help` | Help for the `export all` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-o` | `--org` | Organization name that owns the resources | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID that owns the resources | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | ## Examples diff --git a/content/influxdb/v2.0/reference/cli/influx/export/stack.md b/content/influxdb/v2.0/reference/cli/influx/export/stack.md index e78ca3cca..d1cefa421 100644 --- a/content/influxdb/v2.0/reference/cli/influx/export/stack.md +++ b/content/influxdb/v2.0/reference/cli/influx/export/stack.md @@ -19,16 +19,17 @@ influx export stack [flags] ``` ## Flags -| Flag | | Description | Input Type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:---------- |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-f` | `--file` | Template output file. Defaults to stdout. Use `.yml` or `.json` file extensions. | string | | -| `-h` | `--help` | Help for the `export stack` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-o` | `--org` | Organization name that owns the resources | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID that owns the resources | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input Type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:---------- |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-f` | `--file` | Template output file. Defaults to stdout. Use `.yml` or `.json` file extensions. | string | | +| `-h` | `--help` | Help for the `export stack` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-o` | `--org` | Organization name that owns the resources | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID that owns the resources | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | ## Examples ```sh diff --git a/content/influxdb/v2.0/reference/cli/influx/org/create.md b/content/influxdb/v2.0/reference/cli/influx/org/create.md index fdf375e99..56d349f69 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/create.md @@ -16,14 +16,15 @@ influx org create [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-d` | `--description` | Description of the organization | | | -| `-h` | `--help` | Help for the `create` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Organization name | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-d` | `--description` | Description of the organization | | | +| `-h` | `--help` | Help for the `create` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Organization name | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/delete.md b/content/influxdb/v2.0/reference/cli/influx/org/delete.md index 43b93c66d..286794a11 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/delete.md @@ -16,13 +16,14 @@ influx org delete [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `delete` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** Organization ID | string | `INFLUX_ORG_ID` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `delete` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** Organization ID | string | `INFLUX_ORG_ID` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/list.md b/content/influxdb/v2.0/reference/cli/influx/org/list.md index 3d48365e2..d0a53650e 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/list.md @@ -21,14 +21,15 @@ influx org list [flags] `list`, `ls`, `find` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `list` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | Organization ID | string | `INFLUX_ORG` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Organization name | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | Organization ID | string | `INFLUX_ORG` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Organization name | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/update.md b/content/influxdb/v2.0/reference/cli/influx/org/update.md index 3a503b15b..0714618bd 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/update.md @@ -16,15 +16,16 @@ influx org update [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-d` | `--description` | Description for the organization | string | `INFLUX_ORG_DESCRIPTION` | -| `-h` | `--help` | Help for the `update` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** Organization ID | string | `INFLUX_ORG_ID` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Organization name | string | `INFLUX_ORG` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-d` | `--description` | Description for the organization | string | `INFLUX_ORG_DESCRIPTION` | +| `-h` | `--help` | Help for the `update` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** Organization ID | string | `INFLUX_ORG_ID` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Organization name | string | `INFLUX_ORG` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/query/_index.md b/content/influxdb/v2.0/reference/cli/influx/query/_index.md index a4aa3096e..0673c2c08 100644 --- a/content/influxdb/v2.0/reference/cli/influx/query/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/query/_index.md @@ -20,14 +20,15 @@ influx query [query literal] [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-f` | `--file` | Path to Flux script file | string | | -| `-h` | `--help` | Help for the `query` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| `-r` | `--raw` | Output raw query results (annotated CSV) | | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-f` | `--file` | Path to Flux script file | string | | +| `-h` | `--help` | Help for the `query` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| `-r` | `--raw` | Output raw query results (annotated CSV) | | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/repl/_index.md b/content/influxdb/v2.0/reference/cli/influx/repl/_index.md index 0a33ca466..a9b59ec40 100644 --- a/content/influxdb/v2.0/reference/cli/influx/repl/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/repl/_index.md @@ -28,12 +28,13 @@ Use **ctrl + d** to exit the REPL. To use the Flux REPL, you must first authenticate with a [token](/influxdb/v2.0/security/tokens/view-tokens/). ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `repl` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `repl` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/secret/delete.md b/content/influxdb/v2.0/reference/cli/influx/secret/delete.md index ae22fb608..6aafe65e0 100644 --- a/content/influxdb/v2.0/reference/cli/influx/secret/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/secret/delete.md @@ -17,15 +17,16 @@ influx secret delete [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `delete` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-k` | `--key` | **(Required)** Secret key | string | | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `delete` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-k` | `--key` | **(Required)** Secret key | string | | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/secret/list.md b/content/influxdb/v2.0/reference/cli/influx/secret/list.md index f88d14008..420751b63 100644 --- a/content/influxdb/v2.0/reference/cli/influx/secret/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/secret/list.md @@ -20,14 +20,15 @@ influx secret list [flags] `list`, `ls`, `find` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `list` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/secret/update.md b/content/influxdb/v2.0/reference/cli/influx/secret/update.md index e4d89f8f3..4e6fcadcc 100644 --- a/content/influxdb/v2.0/reference/cli/influx/secret/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/secret/update.md @@ -26,16 +26,17 @@ influx secret update [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `update` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-k` | `--key` | **(Required)** Secret key | string | | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | -| `-v` | `--value` | Secret value | string | | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `update` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-k` | `--key` | **(Required)** Secret key | string | | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| `-v` | `--value` | Secret value | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/setup/_index.md b/content/influxdb/v2.0/reference/cli/influx/setup/_index.md index c24543539..619faadc8 100644 --- a/content/influxdb/v2.0/reference/cli/influx/setup/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/setup/_index.md @@ -20,19 +20,20 @@ influx setup [flags] ``` ## Flags -| Flag | | Description | Data type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:---------:|:------------------ | -| `-b` | `--bucket` | Primary bucket name | string | | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-f` | `--force` | Skip confirmation prompt | | | -| `-h` | `--help` | Help for the `setup` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-o` | `--org` | Primary organization name | string | | -| `-p` | `--password` | Password for primary user | string | | -| `-r` | `--retention` | Duration bucket will retain data (0 is infinite, default is 0) | duration | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Token for admin user (auto-generated by default) | string | `INFLUX_TOKEN` | -| `-u` | `--username` | Primary username | string | | +| Flag | | Description | Data type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:---------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| `-b` | `--bucket` | Primary bucket name | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-f` | `--force` | Skip confirmation prompt | | | +| `-h` | `--help` | Help for the `setup` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-o` | `--org` | Primary organization name | string | | +| `-p` | `--password` | Password for primary user | string | | +| `-r` | `--retention` | Duration bucket will retain data (0 is infinite, default is 0) | duration | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Token for admin user (auto-generated by default) | string | `INFLUX_TOKEN` | +| `-u` | `--username` | Primary username | string | | {{% note %}} Valid `--retention` units are nanoseconds (`ns`), microseconds (`us` or `µs`), diff --git a/content/influxdb/v2.0/reference/cli/influx/stacks/_index.md b/content/influxdb/v2.0/reference/cli/influx/stacks/_index.md index 4c3f7aa0c..5fadf0569 100644 --- a/content/influxdb/v2.0/reference/cli/influx/stacks/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/stacks/_index.md @@ -29,16 +29,17 @@ influx stacks [command] | [remove](/influxdb/v2.0/reference/cli/influx/stacks/remove/) | Remove a stack | ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `stacks` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| | `--stack-id` | Stack IDs to filter by | list of strings | | -| | `--stack-name` | Stack names to filter by | list of strings | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `stacks` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| | `--stack-id` | Stack IDs to filter by | list of strings | | +| | `--stack-name` | Stack names to filter by | list of strings | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/stacks/init.md b/content/influxdb/v2.0/reference/cli/influx/stacks/init.md index ae45145ae..a39b31ab2 100644 --- a/content/influxdb/v2.0/reference/cli/influx/stacks/init.md +++ b/content/influxdb/v2.0/reference/cli/influx/stacks/init.md @@ -21,6 +21,7 @@ influx stacks init [flags] ## Flags | Flag | | Description | Input type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `init` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | diff --git a/content/influxdb/v2.0/reference/cli/influx/stacks/remove.md b/content/influxdb/v2.0/reference/cli/influx/stacks/remove.md index 6069b465a..e487f2355 100644 --- a/content/influxdb/v2.0/reference/cli/influx/stacks/remove.md +++ b/content/influxdb/v2.0/reference/cli/influx/stacks/remove.md @@ -22,15 +22,16 @@ influx stacks remove [flags] `remove`, `rm`, `uninstall` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `remove` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| | `--stack-id` | Stack IDs to remove | list of strings | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `remove` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| | `--stack-id` | Stack IDs to remove | list of strings | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/stacks/update.md b/content/influxdb/v2.0/reference/cli/influx/stacks/update.md index 71d61b717..db0e0b3af 100644 --- a/content/influxdb/v2.0/reference/cli/influx/stacks/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/stacks/update.md @@ -20,6 +20,7 @@ influx stacks update [flags] | Flag | | Description | Input type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:----------: |:------------------ | | | `--addResource` | Associate an existing resource with a stack | string | | +| `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-f` | `--export-file` | Destination for exported template | string | | | `-h` | `--help` | Help for the `update` command | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/create.md b/content/influxdb/v2.0/reference/cli/influx/task/create.md index 731c6280b..f8f193ea1 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/create.md @@ -16,15 +16,16 @@ influx task create [query literal] [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------:|:--------------------- | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-f` | `--file` | Path to Flux script file | string | | -| `-h` | `--help` | Help for the `create` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------:|:--------------------- | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-f` | `--file` | Path to Flux script file | string | | +| `-h` | `--help` | Help for the `create` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/delete.md b/content/influxdb/v2.0/reference/cli/influx/task/delete.md index 4c27ae601..44625825a 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/delete.md @@ -16,13 +16,14 @@ influx task delete [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `delete` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** Task ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `delete` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** Task ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/list.md b/content/influxdb/v2.0/reference/cli/influx/task/list.md index 0fc18e229..fbe694282 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/list.md @@ -21,17 +21,18 @@ influx task list [flags] `list`, `ls`, `find` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `list` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | Task ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--limit` | Number of tasks to find (default `100`) | integer | | -| `-o` | `--org` | Task organization name | string | `INFLUX_ORG` | -| | `--org-id` | Task organization ID | string | `INFLUX_ORG_ID` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | -| `-n` | `--user-id` | Task owner ID | string | | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | Task ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--limit` | Number of tasks to find (default `100`) | integer | | +| `-o` | `--org` | Task organization name | string | `INFLUX_ORG` | +| | `--org-id` | Task organization ID | string | `INFLUX_ORG_ID` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| `-n` | `--user-id` | Task owner ID | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/log/list.md b/content/influxdb/v2.0/reference/cli/influx/task/log/list.md index c3367d851..16d663d9b 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/log/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/log/list.md @@ -21,14 +21,15 @@ influx task log list [flags] `list`, `ls`, `find` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `list` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--run-id` | Run ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| | `--task-id` | **(Required)** Task ID | string | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--run-id` | Run ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| | `--task-id` | **(Required)** Task ID | string | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/run/list.md b/content/influxdb/v2.0/reference/cli/influx/task/run/list.md index f42db63b9..085f20cfb 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/run/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/run/list.md @@ -21,17 +21,18 @@ influx task run list [flags] `list`, `ls`, `find` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--after` | After-time for filtering | string | | -| | `--before` | Before-time for filtering | string | | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `list` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--limit` | Limit the number of results | integer | | -| | `--run-id` | Run ID | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| | `--task-id` | **(Required)** Task ID | string | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--after` | After-time for filtering | string | | +| | `--before` | Before-time for filtering | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--limit` | Limit the number of results | integer | | +| | `--run-id` | Run ID | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| | `--task-id` | **(Required)** Task ID | string | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/run/retry.md b/content/influxdb/v2.0/reference/cli/influx/task/run/retry.md index 300b3ef92..97c2f4900 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/run/retry.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/run/retry.md @@ -16,12 +16,13 @@ influx task run retry [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `retry` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-r` | `--run-id` | **(Required)** Run ID | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-i` | `--task-id` | **(Required)** Task ID | string | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `retry` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-r` | `--run-id` | **(Required)** Run ID | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-i` | `--task-id` | **(Required)** Task ID | string | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/update.md b/content/influxdb/v2.0/reference/cli/influx/task/update.md index f1b3b76f2..3f3a71a82 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/update.md @@ -16,15 +16,16 @@ influx task update [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-f` | `--file` | Path to Flux script file | string | | -| `-h` | `--help` | Help for the `update` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** Task ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| | `--status` | Update task status | string | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-f` | `--file` | Path to Flux script file | string | | +| `-h` | `--help` | Help for the `update` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** Task ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| | `--status` | Update task status | string | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/telegrafs/_index.md b/content/influxdb/v2.0/reference/cli/influx/telegrafs/_index.md index da4e0df2e..eb6994f1d 100644 --- a/content/influxdb/v2.0/reference/cli/influx/telegrafs/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/telegrafs/_index.md @@ -21,22 +21,23 @@ influx telegrafs [command] ``` ## Subcommands -| Subcommand | Description | -|:---------- |:----------- | +| Subcommand | Description | +|:---------- |:----------- | | [create](/influxdb/v2.0/reference/cli/influx/telegrafs/create) | Create a Telegraf configuration | | [rm](/influxdb/v2.0/reference/cli/influx/telegrafs/rm) | Remove a Telegraf configuration | | [update](/influxdb/v2.0/reference/cli/influx/telegrafs/update) | Update a Telegraf configuration | ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `telegrafs` command | | | -| | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | -| `-i` | `--id` | Telegraf configuration ID to retrieve | string | | -| | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `telegrafs` command | | | +| | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | +| `-i` | `--id` | Telegraf configuration ID to retrieve | string | | +| | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | ## Examples ```sh diff --git a/content/influxdb/v2.0/reference/cli/influx/telegrafs/create.md b/content/influxdb/v2.0/reference/cli/influx/telegrafs/create.md index 092587b08..4b50cdc80 100644 --- a/content/influxdb/v2.0/reference/cli/influx/telegrafs/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/telegrafs/create.md @@ -19,17 +19,18 @@ influx telegrafs create [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-d` | `--description` | Telegraf configuration description | string | | -| `-f` | `--file` | Path to Telegraf configuration | string | | -| `-h` | `--help` | Help for the `create` command | | | -| | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | -| | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Telegraf configuration name | string | | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-d` | `--description` | Telegraf configuration description | string | | +| `-f` | `--file` | Path to Telegraf configuration | string | | +| `-h` | `--help` | Help for the `create` command | | | +| | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | +| | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Telegraf configuration name | string | | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | ## Examples ```sh diff --git a/content/influxdb/v2.0/reference/cli/influx/telegrafs/rm.md b/content/influxdb/v2.0/reference/cli/influx/telegrafs/rm.md index 4f195eb3d..1dfd62e57 100644 --- a/content/influxdb/v2.0/reference/cli/influx/telegrafs/rm.md +++ b/content/influxdb/v2.0/reference/cli/influx/telegrafs/rm.md @@ -20,13 +20,14 @@ influx telegrafs rm [flags] `rm`, `remove` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `rm` command | | | -| | `--hide-headers` | Hide the table headers | | `$INFLUX_HIDE_HEADERS` | -| `-i` | `--id` | Telegraf configuration ID to remove | strings | | -| | `--json` | Output data as json | | `$INFLUX_OUTPUT_JSON` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `rm` command | | | +| | `--hide-headers` | Hide the table headers | | `$INFLUX_HIDE_HEADERS` | +| `-i` | `--id` | Telegraf configuration ID to remove | strings | | +| | `--json` | Output data as json | | `$INFLUX_OUTPUT_JSON` | ## Examples ```sh diff --git a/content/influxdb/v2.0/reference/cli/influx/telegrafs/update.md b/content/influxdb/v2.0/reference/cli/influx/telegrafs/update.md index 256f959e4..fe119940b 100644 --- a/content/influxdb/v2.0/reference/cli/influx/telegrafs/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/telegrafs/update.md @@ -19,17 +19,18 @@ influx telegrafs update [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-d` | `--description` | Telegraf configuration description | string | | -| `-f` | `--file` | Path to Telegraf configuration | string | | -| `-h` | `--help` | Help for the `update` command | | | -| | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | -| | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Telegraf configuration name | string | | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-d` | `--description` | Telegraf configuration description | string | | +| `-f` | `--file` | Path to Telegraf configuration | string | | +| `-h` | `--help` | Help for the `update` command | | | +| | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | +| | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Telegraf configuration name | string | | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | ## Examples ```sh diff --git a/content/influxdb/v2.0/reference/cli/influx/template/_index.md b/content/influxdb/v2.0/reference/cli/influx/template/_index.md index defa7edf8..6dc3a9c7a 100644 --- a/content/influxdb/v2.0/reference/cli/influx/template/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/template/_index.md @@ -27,7 +27,7 @@ influx template [command] ## Flags | Flag | | Description | Input Type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:---------- |:------------------ | -| `-c` | `--disable-color` | Disable color in output | | | +| | `--disable-color` | Disable color in output | | | | | `--disable-table-borders` | Disable table borders | | | | `-e` | `--encoding` | Encoding of the input stream | string | | | `-f` | `--file` | Path to template file (supports HTTP(S) URLs or file paths) | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/create.md b/content/influxdb/v2.0/reference/cli/influx/user/create.md index 5bc328fef..2617ed7cb 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/create.md @@ -16,16 +16,17 @@ influx user create [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `create` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | **(Required)** Username | string | `INFLUX_NAME` | -| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | -| `-p` | `--password` | User password | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `create` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | **(Required)** Username | string | `INFLUX_NAME` | +| `-o` | `--org` | Organization name | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | +| `-p` | `--password` | User password | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/delete.md b/content/influxdb/v2.0/reference/cli/influx/user/delete.md index 869d2d1bd..302787694 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/delete.md @@ -16,13 +16,14 @@ influx user delete [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `delete` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** User ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `delete` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** User ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/list.md b/content/influxdb/v2.0/reference/cli/influx/user/list.md index 26b1022f8..a6eafd875 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/list.md @@ -21,14 +21,15 @@ influx user list [flags] `list`, `ls`, `find` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `list` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | User ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Username | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | User ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Username | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/password.md b/content/influxdb/v2.0/reference/cli/influx/user/password.md index d9ea8576d..ad5cd7d81 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/password.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/password.md @@ -18,12 +18,13 @@ influx user password [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `password` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | User ID | string | | -| `-n` | `--name` | Username | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `password` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | User ID | string | | +| `-n` | `--name` | Username | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/update.md b/content/influxdb/v2.0/reference/cli/influx/user/update.md index 83961f15a..1c189581e 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/update.md @@ -17,14 +17,15 @@ influx user update [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-h` | `--help` | Help for the `update` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | -| `-i` | `--id` | **(Required)** User ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Username | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-h` | `--help` | Help for the `update` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| `-i` | `--id` | **(Required)** User ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Username | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/write/_index.md b/content/influxdb/v2.0/reference/cli/influx/write/_index.md index c0d519d5b..b0cbe2a1c 100644 --- a/content/influxdb/v2.0/reference/cli/influx/write/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/write/_index.md @@ -25,13 +25,14 @@ influx write [command] ``` ## Subcommands -| Subcommand | Description | -|:---------- |:----------- | +| Subcommand | Description | +|:---------- |:----------- | | [dryrun](/influxdb/v2.0/reference/cli/influx/write/dryrun) | Write to stdout instead of InfluxDB | ## Flags | Flag | | Description | Input type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | | `-b` | `--bucket` | Bucket name | string | `INFLUX_BUCKET_NAME` | | | `--bucket-id` | Bucket ID | string | `INFLUX_BUCKET_ID` | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | diff --git a/content/influxdb/v2.0/reference/cli/influx/write/dryrun.md b/content/influxdb/v2.0/reference/cli/influx/write/dryrun.md index 8fabbc721..a862c9903 100644 --- a/content/influxdb/v2.0/reference/cli/influx/write/dryrun.md +++ b/content/influxdb/v2.0/reference/cli/influx/write/dryrun.md @@ -26,6 +26,7 @@ influx write dryrun [flags] ## Flags | Flag | | Description | Input type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:----------:|:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | | `-b` | `--bucket` | Bucket name | string | `INFLUX_BUCKET_NAME` | | | `--bucket-id` | Bucket ID | string | `INFLUX_BUCKET_ID` | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | From 95c5206225575bc0966e4ed94aca43316509f15c Mon Sep 17 00:00:00 2001 From: Russ Savage Date: Thu, 3 Sep 2020 16:27:31 -0700 Subject: [PATCH 012/119] Update content/v2.0/influxdb-templates/stacks/_index.md --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 11ec6c5c8..d80b80bf5 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -1,7 +1,7 @@ --- title: InfluxDB stacks description: > - InfluxDB stacks are are artifacts that can be used to manage InfluxDB templates. Use stacks to add, update, or remove templated resources over time. + InfluxDB stacks are artifacts that can be used to manage InfluxDB templates. Use stacks to add, update, or remove templated resources over time. menu: v2_0: parent: InfluxDB templates From c6c570f7ed5392f4d8d5511da6e0e1b177b2d9e2 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:27:26 -0700 Subject: [PATCH 013/119] Update content/v2.0/influxdb-templates/stacks/_index.md Co-authored-by: Russ Savage --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index d80b80bf5..a86bbfc01 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -11,7 +11,7 @@ related: --- **InfluxDB stacks** are artifacts that can be used to manage [InfluxDB templates](/v2.0/influxdb-templates). -When you apply a template, InfluxDB associates resources in the template with a stack. Use stacks to add, update, or remove templated resources over time. +When you apply a template, InfluxDB associates resources in the template with a stack. Use stacks to add, update, or remove InfluxDB templates over time. - [Review ideal use cases for InfluxDB stacks](#review-ideal-use-cases-for-influxdb-stacks), like automating InfluxDB deployments with GitOps and stacks. From 4d45fb508419bd1e18b629c54687a1a77a3ee9dd Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:27:56 -0700 Subject: [PATCH 014/119] Update content/v2.0/influxdb-templates/stacks/_index.md Co-authored-by: Russ Savage --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index a86bbfc01..9a61775d4 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -100,7 +100,7 @@ influx apply --force true --stack-id $REDIS_STACK_ID -q The `--json` flag in the InfluxDB CLI is very useful when scripting against the CLI, as it allows you to grab important information easily using [`jq`](https://stedolan.github.io/jq/manual/v1.6/). {{% /note %}} -You can do this for each of the stacks you are maintaining. Each time you make a change to one of the resources in the stack, you can re-run this script and your changes will be applied to the resources in your InfluxDB instance. There's no need to check for changes before re-applying a stack, since re-applying the same resources doesn't change anything. +You can do this for each of the stacks you are maintaining. Each time you make a change to one of the resources in the stack, you can re-run this script and your changes will be applied to the resources in your InfluxDB instance. Re-applying a stack with an updated resource won't add, delete, or duplicate resources. For a complete example, check out the blog on [Building a GitOps Workflow with InfluxDB Templates](). From 2db77822dc8c71cc0b1236a6600809de7c77cedd Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:28:05 -0700 Subject: [PATCH 015/119] Update content/v2.0/influxdb-templates/stacks/_index.md Co-authored-by: Russ Savage --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 9a61775d4..b2dd28df5 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -104,7 +104,7 @@ You can do this for each of the stacks you are maintaining. Each time you make a For a complete example, check out the blog on [Building a GitOps Workflow with InfluxDB Templates](). -#### Automating deployment using Github Actions or CircleCI +#### Automate deployment using Github Actions or CircleCI Once you have a script to apply changes being made to your local instance, you can start to automate the deployment to other environments as needed. The InfluxDB CLI has the ability to maintain multiple [configuration profiles]() that makes it easy to issue commands against other InfluxDB instances. To apply the same script to a different InfluxDB instance, just change your active configuration profile using the `influx config set` command. You can also set the desired profile dynamically using the `-c, --active-config` flag. From bf3a4fa462a4625852968132ab2437129a93b581 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:28:20 -0700 Subject: [PATCH 016/119] Update content/v2.0/influxdb-templates/stacks/_index.md Co-authored-by: Russ Savage --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index b2dd28df5..1307a0b7e 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -97,7 +97,7 @@ influx apply --force true --stack-id $REDIS_STACK_ID -q ``` {{% note %}} - The `--json` flag in the InfluxDB CLI is very useful when scripting against the CLI, as it allows you to grab important information easily using [`jq`](https://stedolan.github.io/jq/manual/v1.6/). + The `--json` flag in the InfluxDB CLI is very useful when scripting against the CLI. This flag lets you grab important information easily using [`jq`](https://stedolan.github.io/jq/manual/v1.6/). {{% /note %}} You can do this for each of the stacks you are maintaining. Each time you make a change to one of the resources in the stack, you can re-run this script and your changes will be applied to the resources in your InfluxDB instance. Re-applying a stack with an updated resource won't add, delete, or duplicate resources. From 7c9a0a6e4a2c93d7dedc5010683e5bd092faf9a4 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:28:41 -0700 Subject: [PATCH 017/119] Update content/v2.0/influxdb-templates/stacks/_index.md Co-authored-by: Russ Savage --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 1307a0b7e..354b5db4c 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -47,7 +47,7 @@ Depending on how you use InfluxDB, you might want to organize resources under fo Regardless of the heiarchy, we recommend that all resources that would be updated as part of the same stack live in the same folder. For example, if you are monitoring [Redis](), you might have a Telegraf configration, a few dashboards, a label, and some checks, all defined in the same folder in your repository, but in multiple files. They could all be connected by a stack named `redis`. When there is a change you want to make to one or more of those resources, it's easy to find them. {{% note %}} - Since stacks manage the entire lifecycle of a resource, including deletion, be extremely careful when using the same resource in multiple stacks, as deleting a stack could delete the resource another stack is depending on. This usually occurs when dealing with buckets. Since your buckets most likely contain data that might be used by many different templates, we would recommend keeping buckets separate from the other stacks. + Because stacks manage the entire lifecycle of a resource, including deletion, be extremely careful when using the same resource in multiple stacks, as deleting a stack could delete the resource another stack is depending on. This usually occurs when dealing with buckets. Since your buckets most likely contain data that might be used by many different templates, we would recommend keeping buckets separate from the other stacks. {{% /note %}} #### Populate your GitHub repository with the existing resources in your instance From da92279b18047dbc64c29d256c2ea3ad3e7cdfdf Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:28:52 -0700 Subject: [PATCH 018/119] Update content/v2.0/influxdb-templates/stacks/_index.md Co-authored-by: Russ Savage --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 354b5db4c..50d7d61ac 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -44,7 +44,7 @@ to automatically update distributed instances of InfluxDB OSS or InfluxDB Cloud. Start by determining how you want to organize the stacks (and my proxy, the resources) in your Github repository. Depending on how you use InfluxDB, you might want to organize resources under folders for specific teams or functions. -Regardless of the heiarchy, we recommend that all resources that would be updated as part of the same stack live in the same folder. For example, if you are monitoring [Redis](), you might have a Telegraf configration, a few dashboards, a label, and some checks, all defined in the same folder in your repository, but in multiple files. They could all be connected by a stack named `redis`. When there is a change you want to make to one or more of those resources, it's easy to find them. +Regardless of the hierarchy, we recommend that all resources that would be updated as part of the same stack live in the same folder. For example, if you are monitoring [Redis](), you might have a Telegraf configration, a few dashboards, a label, and some checks, all defined in the same folder in your repository, but in multiple files. They could all be connected by a stack named `redis`. When there is a change you want to make to one or more of those resources, it's easy to find them. {{% note %}} Because stacks manage the entire lifecycle of a resource, including deletion, be extremely careful when using the same resource in multiple stacks, as deleting a stack could delete the resource another stack is depending on. This usually occurs when dealing with buckets. Since your buckets most likely contain data that might be used by many different templates, we would recommend keeping buckets separate from the other stacks. From 79f73e41aa086e07ce816c2a2e5e413fc4460d83 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:29:03 -0700 Subject: [PATCH 019/119] Update content/v2.0/influxdb-templates/stacks/_index.md Co-authored-by: Russ Savage --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 50d7d61ac..dc3e5d56f 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -22,7 +22,7 @@ When you apply a template, InfluxDB associates resources in the template with a - A template describes a set of resources in a text file outside of InfluxDB. When you apply a template, a stack is automatically created to manage the applied template resources. - Stacks add, modify or delete resources in an instance. -- Templates do not recognize resources already in an instance. All resources in the template are added, creating duplicate resources if a resource already exists. +- Templates do not recognize resources in an instance. All resources in the template are added, creating duplicate resources if a resource already exists. {{% /note %}} ## Review ideal use cases for InfluxDB stacks From c45613981e0be0c930780f51aba11b5dfc9b233a Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:29:17 -0700 Subject: [PATCH 020/119] Update content/v2.0/influxdb-templates/stacks/_index.md Co-authored-by: Russ Savage --- content/v2.0/influxdb-templates/stacks/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index dc3e5d56f..2fe19ac9c 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -20,7 +20,7 @@ When you apply a template, InfluxDB associates resources in the template with a {{% note %}} **Key differences between stacks and templates**: -- A template describes a set of resources in a text file outside of InfluxDB. When you apply a template, a stack is automatically created to manage the applied template resources. +- A template defines a set of resources in a text file outside of InfluxDB. When you apply a template, a stack is automatically created to manage the applied template resources. - Stacks add, modify or delete resources in an instance. - Templates do not recognize resources in an instance. All resources in the template are added, creating duplicate resources if a resource already exists. {{% /note %}} From 138a0a43a72faee207626376437059e2b3abfc28 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:33:43 -0700 Subject: [PATCH 021/119] edit --- content/v2.0/influxdb-templates/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/v2.0/influxdb-templates/_index.md b/content/v2.0/influxdb-templates/_index.md index 5393dabd6..c6f725703 100644 --- a/content/v2.0/influxdb-templates/_index.md +++ b/content/v2.0/influxdb-templates/_index.md @@ -57,7 +57,7 @@ Include the following **resources** in a template: - Telegraf configurations ## Stacks -**InfluxDB stacks** are artifacts that can be used to manage InfluxDB templates. +Use **InfluxDB stacks** to manage InfluxDB templates. When you apply a template, InfluxDB associates resources in the template with a stack. Use stacks to add, update, or remove templated resources over time. From 842eb5e4a3acc483de24a27bb31b892f4e017f00 Mon Sep 17 00:00:00 2001 From: kelseiv <47797004+kelseiv@users.noreply.github.com> Date: Thu, 3 Sep 2020 17:58:08 -0700 Subject: [PATCH 022/119] edits --- .../v2.0/influxdb-templates/stacks/_index.md | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/content/v2.0/influxdb-templates/stacks/_index.md b/content/v2.0/influxdb-templates/stacks/_index.md index 2fe19ac9c..eba5a44f3 100644 --- a/content/v2.0/influxdb-templates/stacks/_index.md +++ b/content/v2.0/influxdb-templates/stacks/_index.md @@ -1,7 +1,7 @@ --- title: InfluxDB stacks description: > - InfluxDB stacks are artifacts that can be used to manage InfluxDB templates. Use stacks to add, update, or remove templated resources over time. + Use an InfluxDB stack to manage your InfluxDB templates—add, update, or remove templates over time. menu: v2_0: parent: InfluxDB templates @@ -10,8 +10,8 @@ related: - /v2.0/reference/cli/influx/pkg/stack/ --- -**InfluxDB stacks** are artifacts that can be used to manage [InfluxDB templates](/v2.0/influxdb-templates). -When you apply a template, InfluxDB associates resources in the template with a stack. Use stacks to add, update, or remove InfluxDB templates over time. +Use **InfluxDB stacks** to manage [InfluxDB templates](/v2.0/influxdb-templates). +When you apply a template, InfluxDB associates resources in the template with a stack. Use the stack to add, update, or remove InfluxDB templates over time. - [Review ideal use cases for InfluxDB stacks](#review-ideal-use-cases-for-influxdb-stacks), like automating InfluxDB deployments with GitOps and stacks. @@ -20,7 +20,7 @@ When you apply a template, InfluxDB associates resources in the template with a {{% note %}} **Key differences between stacks and templates**: -- A template defines a set of resources in a text file outside of InfluxDB. When you apply a template, a stack is automatically created to manage the applied template resources. +- A template defines a set of resources in a text file outside of InfluxDB. When you apply a template, a stack is automatically created to manage the applied template. - Stacks add, modify or delete resources in an instance. - Templates do not recognize resources in an instance. All resources in the template are added, creating duplicate resources if a resource already exists. {{% /note %}} @@ -41,20 +41,17 @@ to automatically update distributed instances of InfluxDB OSS or InfluxDB Cloud. #### Set up a GitHub repository to back your InfluxDB instance -Start by determining how you want to organize the stacks (and my proxy, the resources) in your Github repository. -Depending on how you use InfluxDB, you might want to organize resources under folders for specific teams or functions. +Determine how you want to organize the resources in your stacks within your Github repository. For example, organize resources under folders for specific teams or functions. -Regardless of the hierarchy, we recommend that all resources that would be updated as part of the same stack live in the same folder. For example, if you are monitoring [Redis](), you might have a Telegraf configration, a few dashboards, a label, and some checks, all defined in the same folder in your repository, but in multiple files. They could all be connected by a stack named `redis`. When there is a change you want to make to one or more of those resources, it's easy to find them. +We recommend storing all resources for one stack in the same folder. For example, if you monitor Redis, create a `redis` stack and put your Redis monitoring resources (a Telegraf configuration, four dashboards, a label, and two alert checks) into one Redis folder, each resource in a separate file. Then, when you need to update a Redis resource, it's easy to find and make changes in one location. {{% note %}} - Because stacks manage the entire lifecycle of a resource, including deletion, be extremely careful when using the same resource in multiple stacks, as deleting a stack could delete the resource another stack is depending on. This usually occurs when dealing with buckets. Since your buckets most likely contain data that might be used by many different templates, we would recommend keeping buckets separate from the other stacks. + Typically, we **do not recommend** using the same resource in multiple stacks. If your organization uses the same resource in multiple stacks, before you delete a stack, verify the stack does not include resources that another stack depends on. Stacks with buckets often contain data used by many different templates. Because of this, we recommend keeping buckets separate from the other stacks. {{% /note %}} #### Populate your GitHub repository with the existing resources in your instance -You can skip this section if you are starting from scratch. Most likely, you already have some resources that you would like to use in your InfluxDB instance. You will need to export these resources and group them into the approriate stacks. - -You can use the [`influx export`]() command from the CLI to quickly export groups of resources, or all resources. It's up to you if you want to keep all your resources in a single file or have files for each one. You can always split or combine them later. +Skip this section if you are starting from scratch or don’t have existing resources you want to add to your stack. If you do have resources you'd like to use, run the `influx export` command to quickly export resources. Keep all your resources in a single file or have files for each one. You can always split or combine them later. Your folder structure might look something like this when you are done: From f6a75a66680e0834e1ced0867db585ccd4ec7cf0 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 4 Sep 2020 11:38:40 -0600 Subject: [PATCH 023/119] uppdated js to not change influxdb 1.x urls, added keep url tags to telegraf, chronograf, and kapacitor codeblocks --- assets/js/influxdb-url.js | 31 ++++++++++++------- .../administration/creating-connections.md | 1 + .../administration/managing-influxdb-users.md | 1 + .../v1.6/guides/live_leaderboard.md | 2 ++ .../monitoring-influxenterprise-clusters.md | 3 ++ .../administration/creating-connections.md | 1 + .../administration/managing-influxdb-users.md | 1 + .../v1.7/guides/live_leaderboard.md | 2 ++ .../monitoring-influxenterprise-clusters.md | 3 ++ .../administration/creating-connections.md | 1 + .../administration/managing-influxdb-users.md | 1 + .../v1.8/guides/live_leaderboard.md | 2 ++ .../monitoring-influxenterprise-clusters.md | 2 ++ .../v1.8/administration/anti-entropy-api.md | 2 +- .../v2.0/query-data/execute-queries.md | 15 +++------ .../v1.4/administration/configuration.md | 1 + .../kapacitor/v1.4/administration/security.md | 7 +++++ .../kapacitor/v1.4/guides/live_leaderboard.md | 2 ++ .../v1.4/introduction/getting-started.md | 4 +++ .../v1.4/introduction/install-docker.md | 1 + content/kapacitor/v1.4/working/api.md | 2 ++ .../v1.5/administration/configuration.md | 1 + .../kapacitor/v1.5/administration/security.md | 7 +++++ .../kapacitor/v1.5/guides/live_leaderboard.md | 2 ++ .../v1.5/introduction/getting-started.md | 5 ++- .../v1.5/introduction/install-docker.md | 1 + content/kapacitor/v1.5/working/api.md | 2 ++ .../v1.10/administration/configuration.md | 3 +- .../v1.11/administration/configuration.md | 3 +- .../v1.12/administration/configuration.md | 3 +- .../v1.13/administration/configuration.md | 5 ++- .../v1.14/administration/configuration.md | 5 ++- .../v1.15/administration/configuration.md | 3 ++ .../v1.9/administration/configuration.md | 1 + data/influxdb_urls.yml | 2 +- data/versions.yaml | 1 - .../partials/footer/influxdb-url-modal.html | 6 ++-- 37 files changed, 101 insertions(+), 34 deletions(-) delete mode 100644 data/versions.yaml diff --git a/assets/js/influxdb-url.js b/assets/js/influxdb-url.js index 176093314..1449f1537 100644 --- a/assets/js/influxdb-url.js +++ b/assets/js/influxdb-url.js @@ -1,7 +1,8 @@ -var defaultUrl = "http://localhost:9999" +var defaultUrl = "http://localhost:8086" var placeholderCloudUrl = "https://cloud2.influxdata.com" var defaultCloudUrl = "https://us-west-2-1.aws.cloud2.influxdata.com" var elementSelector = ".article--content pre:not(.preserve)" +var isInfluxDBv1 = /influxdb\/v1/.test(window.location.href) // Retrieve the selected URL from the influxdb_url session cookie function getUrl() { @@ -25,23 +26,29 @@ function getPrevUrl() { } // Iterate through code blocks and update InfluxDB urls +// Ignore URLs in InfluxDB 1.x docs function updateUrls(currentUrl, newUrl) { - if (typeof currentUrl != newUrl) { - $(elementSelector).each(function() { - $(this).html($(this).html().replace(currentUrl, newUrl)); - }); + if (!isInfluxDBv1) { + if (typeof currentUrl != newUrl) { + $(elementSelector).each(function() { + $(this).html($(this).html().replace(currentUrl, newUrl)); + }); + } } } // Append the URL selector button to each codeblock with an InfluxDB URL +// Ignore codeblocks on InfluxDB v1.x pages function appendUrlSelector(currentUrl, selectorText) { - $(elementSelector).each(function() { - var code = $(this).html() - if (code.includes(currentUrl)) { - $(this).after("") - $('.select-url').fadeIn(400) - } - }); + if (!isInfluxDBv1) { + $(elementSelector).each(function() { + var code = $(this).html() + if (code.includes(currentUrl)) { + $(this).after("") + $('.select-url').fadeIn(400) + } + }); + } } // Toggle the URL selector modal window diff --git a/content/chronograf/v1.6/administration/creating-connections.md b/content/chronograf/v1.6/administration/creating-connections.md index bf5c5a4f3..b4accb242 100644 --- a/content/chronograf/v1.6/administration/creating-connections.md +++ b/content/chronograf/v1.6/administration/creating-connections.md @@ -51,6 +51,7 @@ An `.src` files contains the details for a single InfluxDB connection. Create a new file named `example.src` (the filename is arbitrary) and place it at Chronograf's `resource-path`. All `.src` files should contain the following: +{{< keep-url >}} ```json { "id": "10000", diff --git a/content/chronograf/v1.6/administration/managing-influxdb-users.md b/content/chronograf/v1.6/administration/managing-influxdb-users.md index b0bc1f55a..12443012f 100644 --- a/content/chronograf/v1.6/administration/managing-influxdb-users.md +++ b/content/chronograf/v1.6/administration/managing-influxdb-users.md @@ -65,6 +65,7 @@ Run the `curl` command below to create an admin user, replacing: * `chronothan` with your own username * `supersecret` with your own password (note that the password requires single quotes) +{{< keep-url >}} ``` ~# curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER chronothan WITH PASSWORD 'supersecret' WITH ALL PRIVILEGES" ``` diff --git a/content/chronograf/v1.6/guides/live_leaderboard.md b/content/chronograf/v1.6/guides/live_leaderboard.md index d5b31e098..30e49e2fe 100644 --- a/content/chronograf/v1.6/guides/live_leaderboard.md +++ b/content/chronograf/v1.6/guides/live_leaderboard.md @@ -187,6 +187,7 @@ max Since we are writing data back to InfluxDB create a database `game` for our results. +{{< keep-url >}} ``` curl -G 'http://localhost:8086/query?' --data-urlencode 'q=CREATE DATABASE game' ``` @@ -274,6 +275,7 @@ Hit the endpoint several times to see that the scores are updating once a second Now, let's check InfluxDB to see our historical data. +{{< keep-url >}} ```bash curl \ -G 'http://localhost:8086/query?db=game' \ diff --git a/content/chronograf/v1.6/guides/monitoring-influxenterprise-clusters.md b/content/chronograf/v1.6/guides/monitoring-influxenterprise-clusters.md index 4a928523e..5ecca204d 100644 --- a/content/chronograf/v1.6/guides/monitoring-influxenterprise-clusters.md +++ b/content/chronograf/v1.6/guides/monitoring-influxenterprise-clusters.md @@ -85,6 +85,7 @@ Because you enabled authentication, you must perform this step before moving on Run the command below to create an admin user, replacing `chronothan` and `supersecret` with your own username and password. Note that the password requires single quotes. +{{< keep-url >}} ``` ~# curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER chronothan WITH PASSWORD 'supersecret' WITH ALL PRIVILEGES" ``` @@ -173,6 +174,8 @@ Repeat steps one through four for each data node in your cluster. Run the following command on your InfluxDB OSS instance to see if your Telegraf instances are successfully collecting and writing data. Replace the `chronothan` and `supersecret` values with your actual username and password. + +{{< keep-url >}} ``` ~# curl -G "http://localhost:8086/query?db=telegraf&u=chronothan&p=supersecret&pretty=true" --data-urlencode "q=SHOW TAG VALUES FROM cpu WITH KEY=host" ``` diff --git a/content/chronograf/v1.7/administration/creating-connections.md b/content/chronograf/v1.7/administration/creating-connections.md index 2c3780423..b50cdaf1e 100644 --- a/content/chronograf/v1.7/administration/creating-connections.md +++ b/content/chronograf/v1.7/administration/creating-connections.md @@ -85,6 +85,7 @@ An `.src` files contains the details for a single InfluxDB connection. Create a new file named `example.src` (the filename is arbitrary) and place it at Chronograf's `resource-path`. All `.src` files should contain the following: +{{< keep-url >}} ```json { "id": "10000", diff --git a/content/chronograf/v1.7/administration/managing-influxdb-users.md b/content/chronograf/v1.7/administration/managing-influxdb-users.md index 660230a73..d78b23b6f 100644 --- a/content/chronograf/v1.7/administration/managing-influxdb-users.md +++ b/content/chronograf/v1.7/administration/managing-influxdb-users.md @@ -64,6 +64,7 @@ Run the `curl` command below to create an admin user, replacing: * `chronothan` with your own username * `supersecret` with your own password (note that the password requires single quotes) +{{< keep-url >}} ``` ~# curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER chronothan WITH PASSWORD 'supersecret' WITH ALL PRIVILEGES" ``` diff --git a/content/chronograf/v1.7/guides/live_leaderboard.md b/content/chronograf/v1.7/guides/live_leaderboard.md index fea4ba8f6..9c32dfa75 100644 --- a/content/chronograf/v1.7/guides/live_leaderboard.md +++ b/content/chronograf/v1.7/guides/live_leaderboard.md @@ -187,6 +187,7 @@ max Since we are writing data back to InfluxDB create a database `game` for our results. +{{< keep-url >}} ``` curl -G 'http://localhost:8086/query?' --data-urlencode 'q=CREATE DATABASE game' ``` @@ -274,6 +275,7 @@ Hit the endpoint several times to see that the scores are updating once a second Now, let's check InfluxDB to see our historical data. +{{< keep-url >}} ```bash curl \ -G 'http://localhost:8086/query?db=game' \ diff --git a/content/chronograf/v1.7/guides/monitoring-influxenterprise-clusters.md b/content/chronograf/v1.7/guides/monitoring-influxenterprise-clusters.md index e2c243583..852276864 100644 --- a/content/chronograf/v1.7/guides/monitoring-influxenterprise-clusters.md +++ b/content/chronograf/v1.7/guides/monitoring-influxenterprise-clusters.md @@ -85,6 +85,7 @@ Because you enabled authentication, you must perform this step before moving on Run the command below to create an admin user, replacing `chronothan` and `supersecret` with your own username and password. Note that the password requires single quotes. +{{< keep-url >}} ``` ~# curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER chronothan WITH PASSWORD 'supersecret' WITH ALL PRIVILEGES" ``` @@ -173,6 +174,8 @@ Repeat steps one through four for each data node in your cluster. Run the following command on your InfluxDB OSS instance to see if your Telegraf instances are successfully collecting and writing data. Replace the `chronothan` and `supersecret` values with your actual username and password. + +{{< keep-url >}} ``` ~# curl -G "http://localhost:8086/query?db=telegraf&u=chronothan&p=supersecret&pretty=true" --data-urlencode "q=SHOW TAG VALUES FROM cpu WITH KEY=host" ``` diff --git a/content/chronograf/v1.8/administration/creating-connections.md b/content/chronograf/v1.8/administration/creating-connections.md index fbd67a098..818a4effb 100644 --- a/content/chronograf/v1.8/administration/creating-connections.md +++ b/content/chronograf/v1.8/administration/creating-connections.md @@ -85,6 +85,7 @@ An `.src` files contains the details for a single InfluxDB connection. Create a new file named `example.src` (the filename is arbitrary) and place it at Chronograf's `resource-path`. All `.src` files should contain the following: +{{< keep-url >}} ```json { "id": "10000", diff --git a/content/chronograf/v1.8/administration/managing-influxdb-users.md b/content/chronograf/v1.8/administration/managing-influxdb-users.md index f78c017a2..873b611d7 100644 --- a/content/chronograf/v1.8/administration/managing-influxdb-users.md +++ b/content/chronograf/v1.8/administration/managing-influxdb-users.md @@ -66,6 +66,7 @@ Run the `curl` command below to create an admin user, replacing: * `chronothan` with your own username * `supersecret` with your own password (note that the password requires single quotes) +{{< keep-url >}} ``` ~# curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER chronothan WITH PASSWORD 'supersecret' WITH ALL PRIVILEGES" ``` diff --git a/content/chronograf/v1.8/guides/live_leaderboard.md b/content/chronograf/v1.8/guides/live_leaderboard.md index 78e1dacbc..fea349c3b 100644 --- a/content/chronograf/v1.8/guides/live_leaderboard.md +++ b/content/chronograf/v1.8/guides/live_leaderboard.md @@ -187,6 +187,7 @@ max Since we are writing data back to InfluxDB create a database `game` for our results. +{{< keep-url >}} ``` curl -G 'http://localhost:8086/query?' --data-urlencode 'q=CREATE DATABASE game' ``` @@ -274,6 +275,7 @@ Hit the endpoint several times to see that the scores are updating once a second Now, let's check InfluxDB to see our historical data. +{{< keep-url >}} ```bash curl \ -G 'http://localhost:8086/query?db=game' \ diff --git a/content/chronograf/v1.8/guides/monitoring-influxenterprise-clusters.md b/content/chronograf/v1.8/guides/monitoring-influxenterprise-clusters.md index 185e8bf9e..dbc86ef5d 100644 --- a/content/chronograf/v1.8/guides/monitoring-influxenterprise-clusters.md +++ b/content/chronograf/v1.8/guides/monitoring-influxenterprise-clusters.md @@ -85,6 +85,7 @@ Because you enabled authentication, you must perform this step before moving on Run the command below to create an admin user, replacing `chronothan` and `supersecret` with your own username and password. Note that the password requires single quotes. +{{< keep-url >}} ``` ~# curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER chronothan WITH PASSWORD 'supersecret' WITH ALL PRIVILEGES" ``` @@ -199,6 +200,7 @@ $ influx Replace the `chronothan` and `supersecret` values with your actual username and password. +{{< keep-url >}} ``` ~# curl -G "http://localhost:8086/query?db=telegraf&u=chronothan&p=supersecret&pretty=true" --data-urlencode "q=SHOW TAG VALUES FROM cpu WITH KEY=host" ``` diff --git a/content/enterprise_influxdb/v1.8/administration/anti-entropy-api.md b/content/enterprise_influxdb/v1.8/administration/anti-entropy-api.md index 7a885299d..9945805dd 100644 --- a/content/enterprise_influxdb/v1.8/administration/anti-entropy-api.md +++ b/content/enterprise_influxdb/v1.8/administration/anti-entropy-api.md @@ -17,7 +17,7 @@ Use the [Anti-Entropy service](/enterprise_influxdb/v1.8/administration/anti-ent The base URL is: ```text -http://localhost:8086/shard-repair` +http://localhost:8086/shard-repair ``` ## GET `/status` diff --git a/content/influxdb/v2.0/query-data/execute-queries.md b/content/influxdb/v2.0/query-data/execute-queries.md index 2988edc51..39295ff78 100644 --- a/content/influxdb/v2.0/query-data/execute-queries.md +++ b/content/influxdb/v2.0/query-data/execute-queries.md @@ -14,7 +14,7 @@ There are multiple ways to execute queries with InfluxDB. This guide covers the different options: - [Data Explorer](#data-explorer) -- [Influx REPL](#influx-repl) +- [Flux REPL](#flux-repl) - [Influx query command](#influx-query-command) - [InfluxDB API](#influxdb-api) @@ -23,18 +23,13 @@ Queries can be built, executed, and visualized in InfluxDB UI's Data Explorer. ![Data Explorer with Flux](/img/influxdb/2-0-data-explorer.png) -## Influx REPL +## Flux REPL The [Flux REPL](/influxdb/v2.0/tools/repl/) starts an interactive Read-Eval-Print Loop (REPL) where you can write and execute Flux queries. - - - - - -{{% note %}} -`ctrl-d` will close the REPL. -{{% /note %}} +```sh +./flux repl +``` ## Influx query command You can pass queries to the [`influx query` command](/influxdb/v2.0/reference/cli/influx/query) diff --git a/content/kapacitor/v1.4/administration/configuration.md b/content/kapacitor/v1.4/administration/configuration.md index a47bdba71..fa3aa4267 100644 --- a/content/kapacitor/v1.4/administration/configuration.md +++ b/content/kapacitor/v1.4/administration/configuration.md @@ -298,6 +298,7 @@ but one InfluxDB table array configuration must be flagged as the `default`. **Example 8 – An InfluxDB Connection grouping** +{{< keep-url >}} ```toml ... [[influxdb]] diff --git a/content/kapacitor/v1.4/administration/security.md b/content/kapacitor/v1.4/administration/security.md index ea1a71e5d..500e62b00 100644 --- a/content/kapacitor/v1.4/administration/security.md +++ b/content/kapacitor/v1.4/administration/security.md @@ -60,6 +60,7 @@ When testing with a **self-signed certificate** it is also important to switch o certificate verification with the property `insecure-skip-verify`. Failure to do so will result in x509 certificate errors as follows: +{{< keep-url >}} ``` ts=2018-02-19T13:26:11.437+01:00 lvl=error msg="failed to connect to InfluxDB, retrying..." service=influxdb cluster=localhost err="Get https://localhost:8086/ping: x509: certificate is valid for lenovo-TP02, not localhost" ``` @@ -71,6 +72,8 @@ ts=2018-02-19T13:26:11.437+01:00 lvl=error msg="failed to connect to InfluxDB, r In the configuration file these values are set according to the following example. **Example 1 – TLS Configuration Properties for InfluxDB – kapacitor.conf** + +{{< keep-url >}} ```toml [[influxdb]] # Connect to an InfluxDB cluster @@ -106,6 +109,8 @@ Note that when a CA file contains the certificate and key together the property As environment variables these properties can be set as follows: **Example 2 – TLS Configuration Properties for InfluxDB – ENVARS** + +{{< keep-url >}} ``` KAPACITOR_INFLUXDB_0_URLS_0="https://localhost:8086" KAPACITOR_INFLUXDB_0_SSL_CERT="/etc/ssl/influxdb-selfsigned.crt" @@ -129,6 +134,7 @@ This results in the following file: **Example 3 – The InfluxDB part of the Kapacitor configuration** +{{< keep-url >}} ```json { "elements": [ @@ -223,6 +229,7 @@ file, as environment variables or over the HTTP API. **Example 4 – InfluxDB Authentication Parameters – kapacitor.conf** +{{< keep-url >}} ```toml [[influxdb]] # Connect to an InfluxDB cluster diff --git a/content/kapacitor/v1.4/guides/live_leaderboard.md b/content/kapacitor/v1.4/guides/live_leaderboard.md index ef045c6d3..11a8b3564 100644 --- a/content/kapacitor/v1.4/guides/live_leaderboard.md +++ b/content/kapacitor/v1.4/guides/live_leaderboard.md @@ -188,6 +188,7 @@ max Since we are writing data back to InfluxDB create a database `game` for our results. +{{< keep-url >}} ``` curl -G 'http://localhost:8086/query?' --data-urlencode 'q=CREATE DATABASE game' ``` @@ -275,6 +276,7 @@ Hit the endpoint several times to see that the scores are updating once a second Now, let's check InfluxDB to see our historical data. +{{< keep-url >}} ```bash curl \ -G 'http://localhost:8086/query?db=game' \ diff --git a/content/kapacitor/v1.4/introduction/getting-started.md b/content/kapacitor/v1.4/introduction/getting-started.md index 3d8eebc59..b3d8d22dd 100644 --- a/content/kapacitor/v1.4/introduction/getting-started.md +++ b/content/kapacitor/v1.4/introduction/getting-started.md @@ -114,6 +114,8 @@ The Telegraf configuration file can be found at its default location: `/etc/tele * `[[inputs.cpu]]` - declares how to collect the system cpu metrics to be sent to InfluxDB. *Example - relevant sections of `/etc/telegraf/telegraf.conf`* + +{{< keep-url >}} ``` [agent] ## Default data collection interval for all inputs @@ -191,6 +193,7 @@ InfluxDB and Telegraf are now running and listening on localhost. Wait about a This can be achieved with the following query: +{{< keep-url >}} ```bash $ curl -G 'http://localhost:8086/query?db=telegraf' --data-urlencode 'q=SELECT mean(usage_idle) FROM cpu' ``` @@ -376,6 +379,7 @@ Telegraf will log errors if it cannot communicate to InfluxDB. InfluxDB will log an error about `connection refused` if it cannot send data to Kapacitor. Run the query `SHOW SUBSCRIPTIONS` to find the endpoint that InfluxDB is using to send data to Kapacitor. +{{< keep-url >}} ``` $ curl -G 'http://localhost:8086/query?db=telegraf' --data-urlencode 'q=SHOW SUBSCRIPTIONS' diff --git a/content/kapacitor/v1.4/introduction/install-docker.md b/content/kapacitor/v1.4/introduction/install-docker.md index c546b1612..7ab74466a 100644 --- a/content/kapacitor/v1.4/introduction/install-docker.md +++ b/content/kapacitor/v1.4/introduction/install-docker.md @@ -127,6 +127,7 @@ At this point there should be running on the host machine: InfluxDB, Telegraf an The running configuration can be further inspected by using the `influx` command line client directly from the InfluxDB Container. +{{< keep-url >}} ``` $ docker exec -it tik_influxdb_1 influx --precision rfc3339 Connected to http://localhost:8086 version 1.3.3 diff --git a/content/kapacitor/v1.4/working/api.md b/content/kapacitor/v1.4/working/api.md index 847eac676..c6d2b234f 100644 --- a/content/kapacitor/v1.4/working/api.md +++ b/content/kapacitor/v1.4/working/api.md @@ -1860,6 +1860,7 @@ Retrieve all the configuration sections which can be overridden. GET /kapacitor/v1/config ``` +{{< keep-url >}} ```json { "link" : {"rel": "self", "href": "/kapacitor/v1/config"}, @@ -1986,6 +1987,7 @@ Retrieve only the InfluxDB section. GET /kapacitor/v1/config/influxdb ``` +{{< keep-url >}} ```json { "link" : {"rel": "self", "href": "/kapacitor/v1/config/influxdb"}, diff --git a/content/kapacitor/v1.5/administration/configuration.md b/content/kapacitor/v1.5/administration/configuration.md index af48de4d2..a38310775 100644 --- a/content/kapacitor/v1.5/administration/configuration.md +++ b/content/kapacitor/v1.5/administration/configuration.md @@ -340,6 +340,7 @@ To use Kapacitor with an InfluxDB instance that requires authentication, it must authenticate using an InfluxDB user with **read and write** permissions. {{% /note %}} +{{< keep-url >}} ```toml ... [[influxdb]] diff --git a/content/kapacitor/v1.5/administration/security.md b/content/kapacitor/v1.5/administration/security.md index fc6884d65..d2971c932 100644 --- a/content/kapacitor/v1.5/administration/security.md +++ b/content/kapacitor/v1.5/administration/security.md @@ -59,6 +59,7 @@ When testing with a **self-signed certificate** it is also important to switch o certificate verification with the property `insecure-skip-verify`. Failure to do so will result in x509 certificate errors as follows: +{{< keep-url >}} ``` ts=2018-02-19T13:26:11.437+01:00 lvl=error msg="failed to connect to InfluxDB, retrying..." service=influxdb cluster=localhost err="Get https://localhost:8086/ping: x509: certificate is valid for lenovo-TP02, not localhost" ``` @@ -70,6 +71,8 @@ ts=2018-02-19T13:26:11.437+01:00 lvl=error msg="failed to connect to InfluxDB, r In the configuration file these values are set according to the following example. **Example 1 – TLS Configuration Properties for InfluxDB – kapacitor.conf** + +{{< keep-url >}} ```toml [[influxdb]] # Connect to an InfluxDB cluster @@ -105,6 +108,8 @@ Note that when a CA file contains the certificate and key together the property As environment variables these properties can be set as follows: **Example 2 – TLS Configuration Properties for InfluxDB – ENVARS** + +{{< keep-url >}} ``` KAPACITOR_INFLUXDB_0_URLS_0="https://localhost:8086" KAPACITOR_INFLUXDB_0_SSL_CERT="/etc/ssl/influxdb-selfsigned.crt" @@ -128,6 +133,7 @@ This results in the following file: **Example 3 – The InfluxDB part of the Kapacitor configuration** +{{< keep-url >}} ```json { "elements": [ @@ -222,6 +228,7 @@ file, as environment variables or over the HTTP API. **Example 4 – InfluxDB Authentication Parameters – kapacitor.conf** +{{< keep-url >}} ```toml [[influxdb]] # Connect to an InfluxDB cluster diff --git a/content/kapacitor/v1.5/guides/live_leaderboard.md b/content/kapacitor/v1.5/guides/live_leaderboard.md index 82b17c8c5..c2dc04956 100644 --- a/content/kapacitor/v1.5/guides/live_leaderboard.md +++ b/content/kapacitor/v1.5/guides/live_leaderboard.md @@ -190,6 +190,7 @@ max Since we are writing data back to InfluxDB create a database `game` for our results. +{{< keep-url >}} ``` curl -G 'http://localhost:8086/query?' --data-urlencode 'q=CREATE DATABASE game' ``` @@ -277,6 +278,7 @@ Hit the endpoint several times to see that the scores are updating once a second Now, let's check InfluxDB to see our historical data. +{{< keep-url >}} ```bash curl \ -G 'http://localhost:8086/query?db=game' \ diff --git a/content/kapacitor/v1.5/introduction/getting-started.md b/content/kapacitor/v1.5/introduction/getting-started.md index f1868fab9..bc7b055e3 100644 --- a/content/kapacitor/v1.5/introduction/getting-started.md +++ b/content/kapacitor/v1.5/introduction/getting-started.md @@ -46,6 +46,7 @@ To get started, do the following: 2. In the Telegraf configuration file (`/etc/telegraf/telegraf.conf`), configure `[[outputs.influxd]]` to specify how to connect to InfluxDB and the destination database. + {{< keep-url >}} ```sh [[outputs.influxdb]] ## InfluxDB url is required and must be in the following form: http/udp "://" host [ ":" port] @@ -67,6 +68,7 @@ To get started, do the following: 4. After a minute, run the following command to use the InfluxDB API to query for the Telegraf data: + {{< keep-url >}} ```bash $ curl -G 'http://localhost:8086/query?db=telegraf' --data-urlencode 'q=SELECT mean(usage_idle) FROM cpu' ``` @@ -276,8 +278,9 @@ Complete the following steps to ensure log files and communication channels aren InfluxDB logs an error about `connection refused` if it cannot send data to Kapacitor. Run the query `SHOW SUBSCRIPTIONS` against InfluxDB to find the endpoint that InfluxDB is using to send data to Kapacitor. - In the following example, InfluxDB must be running on localhost:8086: + In the following example, InfluxDB must be running on `localhost:8086`: + {{< keep-url >}} ``` $ curl -G 'http://localhost:8086/query?db=telegraf' --data-urlencode 'q=SHOW SUBSCRIPTIONS' diff --git a/content/kapacitor/v1.5/introduction/install-docker.md b/content/kapacitor/v1.5/introduction/install-docker.md index 938b5ad0e..e5a7fa00a 100644 --- a/content/kapacitor/v1.5/introduction/install-docker.md +++ b/content/kapacitor/v1.5/introduction/install-docker.md @@ -126,6 +126,7 @@ At this point there should be running on the host machine: InfluxDB, Telegraf an The running configuration can be further inspected by using the `influx` command line client directly from the InfluxDB Container. +{{< keep-url >}} ``` $ docker exec -it tik_influxdb_1 influx --precision rfc3339 Connected to http://localhost:8086 version 1.3.3 diff --git a/content/kapacitor/v1.5/working/api.md b/content/kapacitor/v1.5/working/api.md index 78b7cf43e..3a344449f 100644 --- a/content/kapacitor/v1.5/working/api.md +++ b/content/kapacitor/v1.5/working/api.md @@ -1864,6 +1864,7 @@ Retrieve all the configuration sections which can be overridden. GET /kapacitor/v1/config ``` +{{< keep-url >}} ```json { "link" : {"rel": "self", "href": "/kapacitor/v1/config"}, @@ -1990,6 +1991,7 @@ Retrieve only the InfluxDB section. GET /kapacitor/v1/config/influxdb ``` +{{< keep-url >}} ```json { "link" : {"rel": "self", "href": "/kapacitor/v1/config/influxdb"}, diff --git a/content/telegraf/v1.10/administration/configuration.md b/content/telegraf/v1.10/administration/configuration.md index b21738497..c13bdacca 100644 --- a/content/telegraf/v1.10/administration/configuration.md +++ b/content/telegraf/v1.10/administration/configuration.md @@ -73,7 +73,7 @@ Each plugin will sleep for a random time within jitter before collecting. This can be used to avoid many plugins querying things like sysfs at the same time, which can have a measurable effect on the system. * **flush_interval**: Default data flushing interval for all outputs. -You should not set this below `interval`. +You should not set this below `interval`. Maximum `flush_interval` will be `flush_interval` + `flush_jitter` * **flush_jitter**: Jitter the flush interval by a random amount. This is primarily to avoid @@ -322,6 +322,7 @@ Additional inputs (or outputs) of the same type can be specified by defining the #### Output configuration examples: +{{< keep-url >}} ```toml [[outputs.influxdb]] urls = [ "http://localhost:8086" ] diff --git a/content/telegraf/v1.11/administration/configuration.md b/content/telegraf/v1.11/administration/configuration.md index b0edb4df7..bd46d240f 100644 --- a/content/telegraf/v1.11/administration/configuration.md +++ b/content/telegraf/v1.11/administration/configuration.md @@ -73,7 +73,7 @@ Each plugin will sleep for a random time within jitter before collecting. This can be used to avoid many plugins querying things like sysfs at the same time, which can have a measurable effect on the system. * **flush_interval**: Default data flushing interval for all outputs. -You should not set this below `interval`. +You should not set this below `interval`. Maximum `flush_interval` will be `flush_interval` + `flush_jitter` * **flush_jitter**: Jitter the flush interval by a random amount. This is primarily to avoid @@ -322,6 +322,7 @@ Additional inputs (or outputs) of the same type can be specified by defining the #### Output configuration examples: +{{< keep-url >}} ```toml [[outputs.influxdb]] urls = [ "http://localhost:8086" ] diff --git a/content/telegraf/v1.12/administration/configuration.md b/content/telegraf/v1.12/administration/configuration.md index de90faf06..dfb89e3e8 100644 --- a/content/telegraf/v1.12/administration/configuration.md +++ b/content/telegraf/v1.12/administration/configuration.md @@ -73,7 +73,7 @@ Each plugin will sleep for a random time within jitter before collecting. This can be used to avoid many plugins querying things like sysfs at the same time, which can have a measurable effect on the system. * **flush_interval**: Default data flushing interval for all outputs. -You should not set this below `interval`. +You should not set this below `interval`. Maximum `flush_interval` will be `flush_interval` + `flush_jitter` * **flush_jitter**: Jitter the flush interval by a random amount. This is primarily to avoid @@ -322,6 +322,7 @@ Additional inputs (or outputs) of the same type can be specified by defining the #### Output configuration examples: +{{< keep-url >}} ```toml [[outputs.influxdb]] urls = [ "http://localhost:8086" ] diff --git a/content/telegraf/v1.13/administration/configuration.md b/content/telegraf/v1.13/administration/configuration.md index 636aaa1f2..ef907d69a 100644 --- a/content/telegraf/v1.13/administration/configuration.md +++ b/content/telegraf/v1.13/administration/configuration.md @@ -41,7 +41,7 @@ configuration files. ## Set environment variables Add environment variables anywhere in the configuration file by prepending them with `$`. -For strings, variables must be in quotes (for example, `"$STR_VAR"`). +For strings, variables must be in quotes (for example, `"$STR_VAR"`). For numbers and Booleans, variables must be unquoted (for example, `$INT_VAR`, `$BOOL_VAR`). You can also set environment variables using the Linux `export` command: `export password=mypassword` @@ -52,6 +52,7 @@ You can also set environment variables using the Linux `export` command: `export In the Telegraf environment variables file (`/etc/default/telegraf`): +{{< keep-url >}} ```sh USER="alice" INFLUX_URL="http://localhost:8086" @@ -75,6 +76,7 @@ In the Telegraf configuration file (`/etc/telegraf.conf`): The environment variables above add the following configuration settings to Telegraf: +{{< keep-url >}} ```sh [global_tags] user = "alice" @@ -361,6 +363,7 @@ Additional inputs (or outputs) of the same type can be specified by defining the #### Output configuration examples: +{{< keep-url >}} ```toml [[outputs.influxdb]] urls = [ "http://localhost:8086" ] diff --git a/content/telegraf/v1.14/administration/configuration.md b/content/telegraf/v1.14/administration/configuration.md index 73843bbf2..139a3a147 100644 --- a/content/telegraf/v1.14/administration/configuration.md +++ b/content/telegraf/v1.14/administration/configuration.md @@ -42,7 +42,7 @@ configuration files. ## Set environment variables Add environment variables anywhere in the configuration file by prepending them with `$`. -For strings, variables must be in quotes (for example, `"$STR_VAR"`). +For strings, variables must be in quotes (for example, `"$STR_VAR"`). For numbers and Booleans, variables must be unquoted (for example, `$INT_VAR`, `$BOOL_VAR`). You can also set environment variables using the Linux `export` command: `export password=mypassword` @@ -53,6 +53,7 @@ You can also set environment variables using the Linux `export` command: `export In the Telegraf environment variables file (`/etc/default/telegraf`): +{{< keep-url >}} ```sh USER="alice" INFLUX_URL="http://localhost:8086" @@ -76,6 +77,7 @@ In the Telegraf configuration file (`/etc/telegraf.conf`): The environment variables above add the following configuration settings to Telegraf: +{{< keep-url >}} ```sh [global_tags] user = "alice" @@ -361,6 +363,7 @@ Additional inputs (or outputs) of the same type can be specified by defining the #### Output configuration examples: +{{< keep-url >}} ```toml [[outputs.influxdb]] urls = [ "http://localhost:8086" ] diff --git a/content/telegraf/v1.15/administration/configuration.md b/content/telegraf/v1.15/administration/configuration.md index e814dcdb4..522ddf433 100644 --- a/content/telegraf/v1.15/administration/configuration.md +++ b/content/telegraf/v1.15/administration/configuration.md @@ -53,6 +53,7 @@ You can also set environment variables using the Linux `export` command: `export In the Telegraf environment variables file (`/etc/default/telegraf`): +{{< keep-url >}} ```sh USER="alice" INFLUX_URL="http://localhost:8086" @@ -76,6 +77,7 @@ In the Telegraf configuration file (`/etc/telegraf.conf`): The environment variables above add the following configuration settings to Telegraf: +{{< keep-url >}} ```sh [global_tags] user = "alice" @@ -362,6 +364,7 @@ Additional inputs (or outputs) of the same type can be specified by defining the #### Output configuration examples: +{{< keep-url >}} ```toml [[outputs.influxdb]] urls = [ "http://localhost:8086" ] diff --git a/content/telegraf/v1.9/administration/configuration.md b/content/telegraf/v1.9/administration/configuration.md index ce3c6836c..8f72df62f 100644 --- a/content/telegraf/v1.9/administration/configuration.md +++ b/content/telegraf/v1.9/administration/configuration.md @@ -322,6 +322,7 @@ Additional inputs (or outputs) of the same type can be specified by defining the #### Output configuration examples: +{{< keep-url >}} ```toml [[outputs.influxdb]] urls = [ "http://localhost:8086" ] diff --git a/data/influxdb_urls.yml b/data/influxdb_urls.yml index c98acdd9c..eb8978ea2 100644 --- a/data/influxdb_urls.yml +++ b/data/influxdb_urls.yml @@ -1,5 +1,5 @@ oss: - product: InfluxDB OSS + product: InfluxDB v2 OSS providers: - name: Default regions: diff --git a/data/versions.yaml b/data/versions.yaml deleted file mode 100644 index 0c28bd5ba..000000000 --- a/data/versions.yaml +++ /dev/null @@ -1 +0,0 @@ -stable_version: v2.0 diff --git a/layouts/partials/footer/influxdb-url-modal.html b/layouts/partials/footer/influxdb-url-modal.html index e66466b5c..9526e128b 100644 --- a/layouts/partials/footer/influxdb-url-modal.html +++ b/layouts/partials/footer/influxdb-url-modal.html @@ -1,4 +1,4 @@ -{{ $currentVersion := (index (findRE "[^/]+.*?" .RelPermalink) 0) .RelPermalink | default "v2.0" }} +{{ $latestInfluxDBVersion := index (last 1 $.Site.Data.products.influxdb.versions) 0 }} From e130607357d398e33a5154165db112ea233c5d3b Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 4 Sep 2020 11:45:18 -0600 Subject: [PATCH 024/119] updated default ports in influxdb v2 docs, resolves #1392 --- content/influxdb/v2.0/get-started.md | 24 +++++++++---------- .../templates/infrastructure/aws.md | 2 +- .../influxdb/v2.0/organizations/view-orgs.md | 2 +- .../v2.0/query-data/execute-queries.md | 4 ++-- content/influxdb/v2.0/query-data/flux/sql.md | 2 +- content/influxdb/v2.0/reference/api/_index.md | 4 ++-- .../v2.0/reference/api/client-libraries/go.md | 4 ++-- .../reference/api/client-libraries/python.md | 6 ++--- .../influxdb/v2.0/reference/api/postman.md | 2 +- .../v2.0/reference/cli/influx/_index.md | 2 +- .../v2.0/reference/cli/influx/apply/_index.md | 2 +- .../v2.0/reference/cli/influx/auth/active.md | 2 +- .../v2.0/reference/cli/influx/auth/create.md | 2 +- .../v2.0/reference/cli/influx/auth/delete.md | 2 +- .../reference/cli/influx/auth/inactive.md | 2 +- .../v2.0/reference/cli/influx/auth/list.md | 2 +- .../reference/cli/influx/backup/_index.md | 2 +- .../reference/cli/influx/bucket/_index.md | 2 +- .../reference/cli/influx/bucket/create.md | 2 +- .../reference/cli/influx/bucket/delete.md | 2 +- .../v2.0/reference/cli/influx/bucket/list.md | 2 +- .../reference/cli/influx/bucket/update.md | 2 +- .../reference/cli/influx/config/create.md | 4 ++-- .../reference/cli/influx/dashboards/_index.md | 2 +- .../reference/cli/influx/delete/_index.md | 2 +- .../reference/cli/influx/export/_index.md | 2 +- .../v2.0/reference/cli/influx/export/all.md | 2 +- .../v2.0/reference/cli/influx/export/stack.md | 2 +- .../v2.0/reference/cli/influx/org/create.md | 2 +- .../v2.0/reference/cli/influx/org/delete.md | 2 +- .../v2.0/reference/cli/influx/org/list.md | 2 +- .../reference/cli/influx/org/members/add.md | 2 +- .../reference/cli/influx/org/members/list.md | 2 +- .../cli/influx/org/members/remove.md | 2 +- .../v2.0/reference/cli/influx/org/update.md | 2 +- .../v2.0/reference/cli/influx/ping/_index.md | 2 +- .../v2.0/reference/cli/influx/query/_index.md | 2 +- .../v2.0/reference/cli/influx/repl/_index.md | 2 +- .../reference/cli/influx/secret/delete.md | 2 +- .../v2.0/reference/cli/influx/secret/list.md | 2 +- .../reference/cli/influx/secret/update.md | 2 +- .../v2.0/reference/cli/influx/setup/_index.md | 2 +- .../reference/cli/influx/stacks/_index.md | 2 +- .../v2.0/reference/cli/influx/stacks/init.md | 2 +- .../reference/cli/influx/stacks/remove.md | 2 +- .../reference/cli/influx/stacks/update.md | 2 +- .../v2.0/reference/cli/influx/task/create.md | 2 +- .../v2.0/reference/cli/influx/task/delete.md | 2 +- .../v2.0/reference/cli/influx/task/list.md | 2 +- .../reference/cli/influx/task/log/list.md | 2 +- .../reference/cli/influx/task/run/list.md | 2 +- .../reference/cli/influx/task/run/retry.md | 2 +- .../v2.0/reference/cli/influx/task/update.md | 2 +- .../v2.0/reference/cli/influx/user/create.md | 2 +- .../v2.0/reference/cli/influx/user/delete.md | 2 +- .../v2.0/reference/cli/influx/user/list.md | 2 +- .../reference/cli/influx/user/password.md | 2 +- .../v2.0/reference/cli/influx/user/update.md | 2 +- .../v2.0/reference/cli/influx/write/_index.md | 2 +- .../v2.0/reference/cli/influx/write/dryrun.md | 2 +- .../influxdb/v2.0/reference/config-options.md | 12 +++++----- .../flux/language/lexical-elements.md | 2 +- .../flux/stdlib/experimental/csv/from.md | 2 +- .../flux/stdlib/experimental/http/get.md | 4 ++-- .../stdlib/experimental/prometheus/scrape.md | 2 +- .../v2.0/reference/flux/stdlib/http/post.md | 2 +- content/influxdb/v2.0/reference/glossary.md | 2 +- content/influxdb/v2.0/reference/urls.md | 2 +- content/influxdb/v2.0/security/enable-tls.md | 6 ++--- .../security/secrets/manage-secrets/add.md | 2 +- .../security/secrets/manage-secrets/delete.md | 2 +- .../security/secrets/manage-secrets/update.md | 2 +- .../security/secrets/manage-secrets/view.md | 2 +- .../influxdb/v2.0/telegraf-configs/_index.md | 2 +- content/influxdb/v2.0/tools/repl.md | 2 +- .../v2.0/visualize-data/dashboards/_index.md | 2 +- .../visualize-data/other-tools/grafana.md | 2 +- content/influxdb/v2.0/write-data/_index.md | 2 +- .../best-practices/optimize-writes.md | 4 ++-- .../v2.0/write-data/developer-tools/api.md | 4 ++-- .../manage-scrapers/create-a-scraper.md | 2 +- .../v2.0/write-data/no-code/third-party.md | 2 +- .../no-code/use-telegraf/auto-config.md | 4 ++-- .../no-code/use-telegraf/manual-config.md | 2 +- data/influxdb_urls.yml | 4 ++-- 85 files changed, 114 insertions(+), 114 deletions(-) diff --git a/content/influxdb/v2.0/get-started.md b/content/influxdb/v2.0/get-started.md index 052be1845..7c3a74e79 100644 --- a/content/influxdb/v2.0/get-started.md +++ b/content/influxdb/v2.0/get-started.md @@ -84,7 +84,7 @@ Currently, we do **not support** using an existing InfluxDB Cloud 2.0 account to {{% cloud %}} All InfluxDB 2.0 documentation applies to {{< cloud-name "short" >}} unless otherwise specified. -References to the InfluxDB user interface (UI) or localhost:9999 refer to your +References to the InfluxDB user interface (UI) or localhost:8086 refer to your {{< cloud-name >}} UI. {{% /cloud %}} @@ -149,7 +149,7 @@ In a terminal, run the following command: ```sh # Set up a configuration profile influx config create -n default \ - -u http://localhost:9999 \ + -u http://localhost:8086 \ -o example-org \ -t mySuP3rS3cr3tT0keN \ -a @@ -209,7 +209,7 @@ In a terminal, run the following command: ```sh # Set up a configuration profile influx config create -n default \ - -u http://localhost:9999 \ + -u http://localhost:8086 \ -o example-org \ -t mySuP3rS3cr3tT0keN \ -a @@ -291,7 +291,7 @@ If you rename the binaries, all references to `influx` and `influxd` in this doc #### Networking ports -By default, InfluxDB uses TCP port `9999` for client-server communication over +By default, InfluxDB uses TCP port `8086` for client-server communication over the [InfluxDB HTTP API](/influxdb/v2.0/reference/api/). ### Start InfluxDB @@ -374,7 +374,7 @@ If you rename the binaries, all references to `influx` and `influxd` in this doc #### Networking ports -By default, InfluxDB uses TCP port `9999` for client-server communication over +By default, InfluxDB uses TCP port `8086` for client-server communication over the [InfluxDB HTTP API](/influxdb/v2.0/reference/api/). ### Start InfluxDB @@ -415,11 +415,11 @@ influxd --reporting-disabled ### Download and run InfluxDB v2.0 beta Use `docker run` to download and run the InfluxDB v2.0 beta Docker image. -Expose port `9999`, which InfluxDB uses for client-server communication over +Expose port `8086`, which InfluxDB uses for client-server communication over the [InfluxDB HTTP API](/influxdb/v2.0/reference/api/). ```sh -docker run --name influxdb -p 9999:9999 quay.io/influxdb/influxdb:2.0.0-beta +docker run --name influxdb -p 8086:8086 quay.io/influxdb/influxdb:2.0.0-beta ``` _To run InfluxDB in [detached mode](https://docs.docker.com/engine/reference/run/#detached-vs-foreground), include the `-d` flag in the `docker run` command._ @@ -434,7 +434,7 @@ To opt-out of sending telemetry data back to InfluxData, include the `--reporting-disabled` flag when starting the InfluxDB container. ```bash -docker run -p 9999:9999 quay.io/influxdb/influxdb:2.0.0-beta --reporting-disabled +docker run -p 8086:8086 quay.io/influxdb/influxdb:2.0.0-beta --reporting-disabled ``` {{% /note %}} @@ -495,10 +495,10 @@ The instructions below use Minikube, but the steps should be similar in any Kube You should see an IP address after `Endpoints` in the command's output. -6. Forward port 9999 from inside the cluster to localhost: +6. Forward port 8086 from inside the cluster to localhost: ```sh - kubectl port-forward -n influxdb service/influxdb 9999:9999 + kubectl port-forward -n influxdb service/influxdb 8086:8086 ``` {{% /tab-content %}} @@ -523,7 +523,7 @@ the `influx` command line interface (CLI). {{% tab-content %}} ### Set up InfluxDB through the UI -1. With InfluxDB running, visit [localhost:9999](http://localhost:9999). +1. With InfluxDB running, visit [localhost:8086](http://localhost:8086). 2. Click **Get Started** #### Set up your initial user @@ -546,7 +546,7 @@ If you set up InfluxDB through the UI and want to use the [`influx` CLI](/influx ```sh # Set up a configuration profile influx config create -n default \ - -u http://localhost:9999 \ + -u http://localhost:8086 \ -o example-org \ -t mySuP3rS3cr3tT0keN \ -a diff --git a/content/influxdb/v2.0/monitor-alert/templates/infrastructure/aws.md b/content/influxdb/v2.0/monitor-alert/templates/infrastructure/aws.md index 4b8b7618d..552295a21 100644 --- a/content/influxdb/v2.0/monitor-alert/templates/infrastructure/aws.md +++ b/content/influxdb/v2.0/monitor-alert/templates/infrastructure/aws.md @@ -35,7 +35,7 @@ The AWS CloudWatch Monitoring template includes the following: ```sh ## k8s [[outputs.influxdb_v2]] - urls = ["http://influxdb.monitoring:9999"] + urls = ["http://influxdb.monitoring:8086"] organization = "InfluxData" bucket = "kubernetes" token = "secret-token" diff --git a/content/influxdb/v2.0/organizations/view-orgs.md b/content/influxdb/v2.0/organizations/view-orgs.md index 2c973a316..9bfb32aa0 100644 --- a/content/influxdb/v2.0/organizations/view-orgs.md +++ b/content/influxdb/v2.0/organizations/view-orgs.md @@ -45,7 +45,7 @@ After logging in to the InfluxDB UI, your organization ID appears in the URL.
-http://localhost:9999/orgs/03a2bbf46249a000/...
+http://localhost:8086/orgs/03a2bbf46249a000/...
 
diff --git a/content/influxdb/v2.0/query-data/execute-queries.md b/content/influxdb/v2.0/query-data/execute-queries.md index 39295ff78..33981510c 100644 --- a/content/influxdb/v2.0/query-data/execute-queries.md +++ b/content/influxdb/v2.0/query-data/execute-queries.md @@ -80,7 +80,7 @@ Below is an example `curl` command that queries InfluxDB: {{% code-tab-content %}} ```bash -curl http://localhost:9999/api/v2/query?org=my-org -XPOST -sS \ +curl http://localhost:8086/api/v2/query?org=my-org -XPOST -sS \ -H 'Authorization: Token YOURAUTHTOKEN' \ -H 'Accept: application/csv' \ -H 'Content-type: application/vnd.flux' \ @@ -93,7 +93,7 @@ curl http://localhost:9999/api/v2/query?org=my-org -XPOST -sS \ {{% code-tab-content %}} ```bash -curl http://localhost:9999/api/v2/query?org=my-org -XPOST -sS \ +curl http://localhost:8086/api/v2/query?org=my-org -XPOST -sS \ -H 'Authorization: Token YOURAUTHTOKEN' \ -H 'Accept: application/csv' \ -H 'Content-type: application/vnd.flux' \ diff --git a/content/influxdb/v2.0/query-data/flux/sql.md b/content/influxdb/v2.0/query-data/flux/sql.md index 21a45b055..7be1d5e90 100644 --- a/content/influxdb/v2.0/query-data/flux/sql.md +++ b/content/influxdb/v2.0/query-data/flux/sql.md @@ -204,7 +204,7 @@ to store your database credentials as secrets. {{% /tabs %}} {{% tab-content %}} ```sh -curl -X PATCH http://localhost:9999/api/v2/orgs//secrets \ +curl -X PATCH http://localhost:8086/api/v2/orgs//secrets \ -H 'Authorization: Token YOURAUTHTOKEN' \ -H 'Content-type: application/json' \ -d '{ diff --git a/content/influxdb/v2.0/reference/api/_index.md b/content/influxdb/v2.0/reference/api/_index.md index a27d78a0b..fa424e71a 100644 --- a/content/influxdb/v2.0/reference/api/_index.md +++ b/content/influxdb/v2.0/reference/api/_index.md @@ -17,7 +17,7 @@ Include your authentication token as an `Authorization` header in each request. ```sh curl --request POST \ - --url http://localhost:9999/api/v2/write?org=my-org&bucket=example-bucket \ + --url http://localhost:8086/api/v2/write?org=my-org&bucket=example-bucket \ --header 'Authorization: Token YOURAUTHTOKEN' ``` @@ -28,7 +28,7 @@ curl --request POST \ InfluxDB API documentation is built into the `influxd` service and represents the API specific to the current version of InfluxDB. To view the API documentation locally, [start InfluxDB](/influxdb/v2.0/get-started/#start-influxdb) -and visit the `/docs` endpoint in a browser ([localhost:9999/docs](http://localhost:9999/docs)). +and visit the `/docs` endpoint in a browser ([localhost:8086/docs](http://localhost:8086/docs)). ## InfluxDB client libraries InfluxDB client libraries are language-specific packages that integrate with the InfluxDB v2 API. diff --git a/content/influxdb/v2.0/reference/api/client-libraries/go.md b/content/influxdb/v2.0/reference/api/client-libraries/go.md index 93d95659d..18821e2e2 100644 --- a/content/influxdb/v2.0/reference/api/client-libraries/go.md +++ b/content/influxdb/v2.0/reference/api/client-libraries/go.md @@ -57,7 +57,7 @@ Use the Go library to write and query data from InfluxDB. org := "example-org" token := "example-token" // Store the URL of your InfluxDB instance - url := "http://localhost:9999" + url := "http://localhost:8086" ``` 3. Create the the InfluxDB Go client and pass in the `url` and `token` parameters. @@ -103,7 +103,7 @@ Use the Go library to write data to InfluxDB. org := "example-org" token := "example-token" // Store the URL of your InfluxDB instance - url := "http://localhost:9999" + url := "http://localhost:8086" // Create new client with default option for server url authenticate by token client := influxdb2.NewClient(url, token) // User blocking write client for writes to desired bucket diff --git a/content/influxdb/v2.0/reference/api/client-libraries/python.md b/content/influxdb/v2.0/reference/api/client-libraries/python.md index 37de701f8..36a9b8508 100644 --- a/content/influxdb/v2.0/reference/api/client-libraries/python.md +++ b/content/influxdb/v2.0/reference/api/client-libraries/python.md @@ -27,7 +27,7 @@ If just getting started, see [Get started with InfluxDB](/influxdb/v2.0/get-star ``` 2. Ensure that InfluxDB is running. - If running InfluxDB locally, visit http://localhost:9999. + If running InfluxDB locally, visit http://localhost:8086. (If using InfluxDB Cloud, visit the URL of your InfluxDB Cloud UI. For example: https://us-west-2-1.aws.cloud2.influxdata.com.) @@ -49,7 +49,7 @@ We are going to write some data in [line protocol](/influxdb/v2.0/reference/synt org = "" token = "" # Store the URL of your InfluxDB instance - url="http://localhost:9999" + url="http://localhost:8086" ``` 3. Instantiate the client. The `InfluxDBClient` object takes three named parameters: `url`, `org`, and `token`. Pass in the named parameters. @@ -86,7 +86,7 @@ bucket = "" org = "" token = "" # Store the URL of your InfluxDB instance -url="http://localhost:9999" +url="http://localhost:8086" client = influxdb_client.InfluxDBClient( url=url, diff --git a/content/influxdb/v2.0/reference/api/postman.md b/content/influxdb/v2.0/reference/api/postman.md index be5184667..f4727a7ef 100644 --- a/content/influxdb/v2.0/reference/api/postman.md +++ b/content/influxdb/v2.0/reference/api/postman.md @@ -36,5 +36,5 @@ Use the **Authorization** tab in Postman to include the credentials required whe 5. Ensure that the **Add to** option is set to **Header**. To test the authentication, enter the `/health` endpoint of a local or Cloud instance of InfluxDB into the address bar -(for example, http://localhost:9999/api/v2/health or https://us-west-2-1.aws.cloud2.influxdata.com/api/v2/health) +(for example, http://localhost:8086/api/v2/health or https://us-west-2-1.aws.cloud2.influxdata.com/api/v2/health) and then click **Send**. diff --git a/content/influxdb/v2.0/reference/cli/influx/_index.md b/content/influxdb/v2.0/reference/cli/influx/_index.md index ba32594e0..9ea85ccea 100644 --- a/content/influxdb/v2.0/reference/cli/influx/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/_index.md @@ -32,7 +32,7 @@ influx [command] ```sh # Set up a configuration profile influx config create -n default \ - -u http://localhost:9999 \ + -u http://localhost:8086 \ -o example-org \ -t mySuP3rS3cr3tT0keN \ -a diff --git a/content/influxdb/v2.0/reference/cli/influx/apply/_index.md b/content/influxdb/v2.0/reference/cli/influx/apply/_index.md index f19cc0032..e95e683a6 100644 --- a/content/influxdb/v2.0/reference/cli/influx/apply/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/apply/_index.md @@ -33,7 +33,7 @@ influx apply [flags] | | `--filter` | Resources to skip when applying the template (filter by `kind` or `resource`) | string | | | | `--force` | Ignore warnings about destructive changes | | | | `-h` | `--help` | Help for the `apply` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | Organization name that owns the bucket | string | `INFLUX_ORG` | | | `--org-id` | Organization ID that owns the bucket | string | `INFLUX_ORG_ID` | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/active.md b/content/influxdb/v2.0/reference/cli/influx/auth/active.md index b83547c79..94f10b500 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/active.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/active.md @@ -22,7 +22,7 @@ influx auth active [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `active` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** Authorization ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/create.md b/content/influxdb/v2.0/reference/cli/influx/auth/create.md index 2f45aee29..820e1aeb1 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/create.md @@ -22,7 +22,7 @@ influx auth create [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `create` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | **(Required)** Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/delete.md b/content/influxdb/v2.0/reference/cli/influx/auth/delete.md index 0a680d6aa..ad5ec36cc 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/delete.md @@ -22,7 +22,7 @@ influx auth delete [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `delete` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** Authorization ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/inactive.md b/content/influxdb/v2.0/reference/cli/influx/auth/inactive.md index e864039e3..406979419 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/inactive.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/inactive.md @@ -22,7 +22,7 @@ influx auth inactive [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `inactive` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** Authorization ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/auth/list.md b/content/influxdb/v2.0/reference/cli/influx/auth/list.md index 98c525efa..22ca90286 100644 --- a/content/influxdb/v2.0/reference/cli/influx/auth/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/auth/list.md @@ -27,7 +27,7 @@ influx auth list [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | Authorization ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | Organization name | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/backup/_index.md b/content/influxdb/v2.0/reference/cli/influx/backup/_index.md index 2b11b2dfb..f03daec5f 100644 --- a/content/influxdb/v2.0/reference/cli/influx/backup/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/backup/_index.md @@ -24,7 +24,7 @@ influx backup [flags] | `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `backup` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-p` | `--path` | Directory path to write backup files to | string | `INFLUX_PATH` | | | `--skip-verify` | Skip TLS certificate verification | | | | `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/_index.md b/content/influxdb/v2.0/reference/cli/influx/bucket/_index.md index 3e564f8db..17034f8ee 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/_index.md @@ -31,6 +31,6 @@ influx bucket [command] | `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `bucket` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--skip-verify` | Skip TLS certificate verification | | | | `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/create.md b/content/influxdb/v2.0/reference/cli/influx/bucket/create.md index 7083285f2..17c09afd1 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/create.md @@ -25,7 +25,7 @@ influx bucket create [flags] | `-d` | `--description` | Bucket description | string | | | `-h` | `--help` | Help for the `create` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Bucket name | string | `INFLUX_BUCKET_NAME` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/delete.md b/content/influxdb/v2.0/reference/cli/influx/bucket/delete.md index 6078502d9..00cc7839d 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/delete.md @@ -26,7 +26,7 @@ influx bucket delete [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `delete` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | Bucket ID _(required if no `--name`)_ | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Bucket name _(requires `--org` or `org-id`)_ | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/list.md b/content/influxdb/v2.0/reference/cli/influx/bucket/list.md index 11fd66ae5..953b2f2a4 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/list.md @@ -28,7 +28,7 @@ influx bucket list [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | Bucket ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Bucket name | string | `INFLUX_BUCKET_NAME` | diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/update.md b/content/influxdb/v2.0/reference/cli/influx/bucket/update.md index e20b0d09e..5aeadb91e 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/update.md @@ -25,7 +25,7 @@ influx bucket update [flags] | `-d` | `--description` | Bucket description | string | | | `-h` | `--help` | Help for the `update` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** Bucket ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | New bucket name | string | `INFLUX_BUCKET_NAME` | diff --git a/content/influxdb/v2.0/reference/cli/influx/config/create.md b/content/influxdb/v2.0/reference/cli/influx/config/create.md index 03232204a..128926178 100644 --- a/content/influxdb/v2.0/reference/cli/influx/config/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/config/create.md @@ -33,14 +33,14 @@ influx config create [flags] # Create a connection configuration and set it active influx config create --active \ -n config-name \ - -u http://localhost:9999 \ + -u http://localhost:8086 \ -t mySuP3rS3cr3tT0keN \ -o example-org # Create a connection configuration without setting it active influx config create \ -n config-name \ - -u http://localhost:9999 \ + -u http://localhost:8086 \ -t mySuP3rS3cr3tT0keN \ -o example-org ``` diff --git a/content/influxdb/v2.0/reference/cli/influx/dashboards/_index.md b/content/influxdb/v2.0/reference/cli/influx/dashboards/_index.md index 42af166b7..44a05b7d5 100644 --- a/content/influxdb/v2.0/reference/cli/influx/dashboards/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/dashboards/_index.md @@ -24,7 +24,7 @@ influx dashboards [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `dashboards` command | | | | | `--hide-headers` | Hide table headers | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `$INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `$INFLUX_HOST` | | `-i` | `--id` | Dashboard ID to retrieve | string | | | | `--json` | Output data as JSON | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/delete/_index.md b/content/influxdb/v2.0/reference/cli/influx/delete/_index.md index 21e7c9568..8d5ebed0d 100644 --- a/content/influxdb/v2.0/reference/cli/influx/delete/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/delete/_index.md @@ -31,7 +31,7 @@ timestamps between the specified `--start` and `--stop` times in the specified b | | `--bucket-id` | Bucket ID | string | `INFLUX_BUCKET_ID` | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `delete` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | | `-p` | `--predicate` | InfluxQL-like predicate string (see [Delete predicate](/influxdb/v2.0/reference/syntax/delete-predicate)) | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/export/_index.md b/content/influxdb/v2.0/reference/cli/influx/export/_index.md index 182718992..30d74e2b6 100644 --- a/content/influxdb/v2.0/reference/cli/influx/export/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/export/_index.md @@ -39,7 +39,7 @@ influx export [command] | | `--endpoints` | Comma-separated list of notification endpoint IDs | string | | | `-f` | `--file` | Template output file. Defaults to stdout. Use `.yml` or `.json` file extensions. | string | | | `-h` | `--help` | Help for the `export` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--labels` | Comma-separated list of label IDs | string | | | | `--resource-type` | Resource type associated with all IDs via stdin | string | | | | `--rules` | Comma-separated list of notification rule IDs | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/export/all.md b/content/influxdb/v2.0/reference/cli/influx/export/all.md index 688144ae4..ae68cfaa5 100644 --- a/content/influxdb/v2.0/reference/cli/influx/export/all.md +++ b/content/influxdb/v2.0/reference/cli/influx/export/all.md @@ -30,7 +30,7 @@ influx export all [flags] | `-f` | `--file` | Template output file. Defaults to stdout. Use `.yml` or `.json` file extensions. | string | | | | `--filter` | Specify resources to export by labelName or resourceKind (format: `--filter=labelName=example`) | list of strings | | | `-h` | `--help` | Help for the `export all` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name that owns the resources | string | `INFLUX_ORG` | | | `--org-id` | Organization ID that owns the resources | string | `INFLUX_ORG_ID` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/export/stack.md b/content/influxdb/v2.0/reference/cli/influx/export/stack.md index d1cefa421..32e531368 100644 --- a/content/influxdb/v2.0/reference/cli/influx/export/stack.md +++ b/content/influxdb/v2.0/reference/cli/influx/export/stack.md @@ -25,7 +25,7 @@ influx export stack [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-f` | `--file` | Template output file. Defaults to stdout. Use `.yml` or `.json` file extensions. | string | | | `-h` | `--help` | Help for the `export stack` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name that owns the resources | string | `INFLUX_ORG` | | | `--org-id` | Organization ID that owns the resources | string | `INFLUX_ORG_ID` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/create.md b/content/influxdb/v2.0/reference/cli/influx/org/create.md index 56d349f69..bd7f4dea6 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/create.md @@ -23,7 +23,7 @@ influx org create [flags] | `-d` | `--description` | Description of the organization | | | | `-h` | `--help` | Help for the `create` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Organization name | string | | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/delete.md b/content/influxdb/v2.0/reference/cli/influx/org/delete.md index 286794a11..87e434a00 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/delete.md @@ -22,7 +22,7 @@ influx org delete [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `delete` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** Organization ID | string | `INFLUX_ORG_ID` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/list.md b/content/influxdb/v2.0/reference/cli/influx/org/list.md index d0a53650e..39563f65e 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/list.md @@ -27,7 +27,7 @@ influx org list [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | Organization ID | string | `INFLUX_ORG` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Organization name | string | `INFLUX_ORG_ID` | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/members/add.md b/content/influxdb/v2.0/reference/cli/influx/org/members/add.md index 9fd403c67..04b60b620 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/members/add.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/members/add.md @@ -19,7 +19,7 @@ influx org members add [flags] | Flag | | Description | Input type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:----------: |:------------------ | | `-h` | `--help` | Help for the `add` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | Organization ID | string | `INFLUX_ORG_ID` | | `-m` | `--member` | Member ID | string | | | `-n` | `--name` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/members/list.md b/content/influxdb/v2.0/reference/cli/influx/org/members/list.md index 4014a888a..9376b38ff 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/members/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/members/list.md @@ -20,7 +20,7 @@ influx org members list [flags] |:---- |:--- |:----------- |:----------: |:------------------ | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | Organization ID | string | `INFLUX_ORG_ID` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/members/remove.md b/content/influxdb/v2.0/reference/cli/influx/org/members/remove.md index d8f13d95c..68c20e1f7 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/members/remove.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/members/remove.md @@ -19,7 +19,7 @@ influx org members remove [flags] | Flag | | Description | Input type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:----------: |:------------------ | | `-h` | `--help` | Help for the `remove` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | Organization ID | string | `INFLUX_ORG_ID` | | `-o` | `--member` | Member ID | string | | | `-n` | `--name` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/org/update.md b/content/influxdb/v2.0/reference/cli/influx/org/update.md index 0714618bd..aff1e8e3a 100644 --- a/content/influxdb/v2.0/reference/cli/influx/org/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/org/update.md @@ -23,7 +23,7 @@ influx org update [flags] | `-d` | `--description` | Description for the organization | string | `INFLUX_ORG_DESCRIPTION` | | `-h` | `--help` | Help for the `update` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** Organization ID | string | `INFLUX_ORG_ID` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/ping/_index.md b/content/influxdb/v2.0/reference/cli/influx/ping/_index.md index 7971189e8..a11fc7c7c 100644 --- a/content/influxdb/v2.0/reference/cli/influx/ping/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/ping/_index.md @@ -24,5 +24,5 @@ influx ping [flags] | Flag | | Description | Input type | {{< cli/mapped >}} | |:---- |:--- |:----------- |:---------- |:----------------- | | `-h` | `--help` | Help for the `ping` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/query/_index.md b/content/influxdb/v2.0/reference/cli/influx/query/_index.md index 0673c2c08..117f0d52b 100644 --- a/content/influxdb/v2.0/reference/cli/influx/query/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/query/_index.md @@ -26,7 +26,7 @@ influx query [query literal] [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-f` | `--file` | Path to Flux script file | string | | | `-h` | `--help` | Help for the `query` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | | `-r` | `--raw` | Output raw query results (annotated CSV) | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/repl/_index.md b/content/influxdb/v2.0/reference/cli/influx/repl/_index.md index a9b59ec40..3209e0205 100644 --- a/content/influxdb/v2.0/reference/cli/influx/repl/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/repl/_index.md @@ -33,7 +33,7 @@ To use the Flux REPL, you must first authenticate with a [token](/influxdb/v2.0/ | `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `repl` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/secret/delete.md b/content/influxdb/v2.0/reference/cli/influx/secret/delete.md index 6aafe65e0..dca687e35 100644 --- a/content/influxdb/v2.0/reference/cli/influx/secret/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/secret/delete.md @@ -23,7 +23,7 @@ influx secret delete [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `delete` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-k` | `--key` | **(Required)** Secret key | string | | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/secret/list.md b/content/influxdb/v2.0/reference/cli/influx/secret/list.md index 420751b63..100975b76 100644 --- a/content/influxdb/v2.0/reference/cli/influx/secret/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/secret/list.md @@ -26,7 +26,7 @@ influx secret list [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | diff --git a/content/influxdb/v2.0/reference/cli/influx/secret/update.md b/content/influxdb/v2.0/reference/cli/influx/secret/update.md index 4e6fcadcc..83993ba04 100644 --- a/content/influxdb/v2.0/reference/cli/influx/secret/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/secret/update.md @@ -32,7 +32,7 @@ influx secret update [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `update` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-k` | `--key` | **(Required)** Secret key | string | | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/setup/_index.md b/content/influxdb/v2.0/reference/cli/influx/setup/_index.md index 619faadc8..61739707c 100644 --- a/content/influxdb/v2.0/reference/cli/influx/setup/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/setup/_index.md @@ -27,7 +27,7 @@ influx setup [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-f` | `--force` | Skip confirmation prompt | | | | `-h` | `--help` | Help for the `setup` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Primary organization name | string | | | `-p` | `--password` | Password for primary user | string | | | `-r` | `--retention` | Duration bucket will retain data (0 is infinite, default is 0) | duration | | diff --git a/content/influxdb/v2.0/reference/cli/influx/stacks/_index.md b/content/influxdb/v2.0/reference/cli/influx/stacks/_index.md index 5fadf0569..a0ff925e1 100644 --- a/content/influxdb/v2.0/reference/cli/influx/stacks/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/stacks/_index.md @@ -35,7 +35,7 @@ influx stacks [command] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `stacks` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | diff --git a/content/influxdb/v2.0/reference/cli/influx/stacks/init.md b/content/influxdb/v2.0/reference/cli/influx/stacks/init.md index a39b31ab2..d7830bc8a 100644 --- a/content/influxdb/v2.0/reference/cli/influx/stacks/init.md +++ b/content/influxdb/v2.0/reference/cli/influx/stacks/init.md @@ -25,7 +25,7 @@ influx stacks init [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `init` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | diff --git a/content/influxdb/v2.0/reference/cli/influx/stacks/remove.md b/content/influxdb/v2.0/reference/cli/influx/stacks/remove.md index e487f2355..bfea802b4 100644 --- a/content/influxdb/v2.0/reference/cli/influx/stacks/remove.md +++ b/content/influxdb/v2.0/reference/cli/influx/stacks/remove.md @@ -28,7 +28,7 @@ influx stacks remove [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `remove` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | diff --git a/content/influxdb/v2.0/reference/cli/influx/stacks/update.md b/content/influxdb/v2.0/reference/cli/influx/stacks/update.md index db0e0b3af..113f12816 100644 --- a/content/influxdb/v2.0/reference/cli/influx/stacks/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/stacks/update.md @@ -25,7 +25,7 @@ influx stacks update [flags] | `-f` | `--export-file` | Destination for exported template | string | | | `-h` | `--help` | Help for the `update` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--stack-id` | The stack ID to update | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/create.md b/content/influxdb/v2.0/reference/cli/influx/task/create.md index f8f193ea1..1169ecb5e 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/create.md @@ -23,7 +23,7 @@ influx task create [query literal] [flags] | `-f` | `--file` | Path to Flux script file | string | | | `-h` | `--help` | Help for the `create` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/delete.md b/content/influxdb/v2.0/reference/cli/influx/task/delete.md index 44625825a..c4e55b0a9 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/delete.md @@ -22,7 +22,7 @@ influx task delete [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `delete` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** Task ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/list.md b/content/influxdb/v2.0/reference/cli/influx/task/list.md index fbe694282..3e288e0db 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/list.md @@ -27,7 +27,7 @@ influx task list [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | Task ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--limit` | Number of tasks to find (default `100`) | integer | | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/log/list.md b/content/influxdb/v2.0/reference/cli/influx/task/log/list.md index 16d663d9b..c09c8ca59 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/log/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/log/list.md @@ -27,7 +27,7 @@ influx task log list [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--run-id` | Run ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/run/list.md b/content/influxdb/v2.0/reference/cli/influx/task/run/list.md index 085f20cfb..e5038df10 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/run/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/run/list.md @@ -29,7 +29,7 @@ influx task run list [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--limit` | Limit the number of results | integer | | | | `--run-id` | Run ID | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/run/retry.md b/content/influxdb/v2.0/reference/cli/influx/task/run/retry.md index 97c2f4900..7fc227446 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/run/retry.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/run/retry.md @@ -21,7 +21,7 @@ influx task run retry [flags] | `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `retry` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-r` | `--run-id` | **(Required)** Run ID | string | | | | `--skip-verify` | Skip TLS certificate verification | | | | `-i` | `--task-id` | **(Required)** Task ID | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/update.md b/content/influxdb/v2.0/reference/cli/influx/task/update.md index 3f3a71a82..057959f2f 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/update.md @@ -23,7 +23,7 @@ influx task update [flags] | `-f` | `--file` | Path to Flux script file | string | | | `-h` | `--help` | Help for the `update` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** Task ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/create.md b/content/influxdb/v2.0/reference/cli/influx/user/create.md index 2617ed7cb..58aeb7816 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/create.md @@ -22,7 +22,7 @@ influx user create [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `create` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | **(Required)** Username | string | `INFLUX_NAME` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/delete.md b/content/influxdb/v2.0/reference/cli/influx/user/delete.md index 302787694..8fc5c556c 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/delete.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/delete.md @@ -22,7 +22,7 @@ influx user delete [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `delete` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** User ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/list.md b/content/influxdb/v2.0/reference/cli/influx/user/list.md index a6eafd875..b94ca14c3 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/list.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/list.md @@ -27,7 +27,7 @@ influx user list [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `list` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | User ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Username | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/password.md b/content/influxdb/v2.0/reference/cli/influx/user/password.md index ad5cd7d81..e86f21e12 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/password.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/password.md @@ -23,7 +23,7 @@ influx user password [flags] | `-c` | `--active-config` | CLI configuration to use for command | string | | | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `password` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | User ID | string | | | `-n` | `--name` | Username | string | | | | `--skip-verify` | Skip TLS certificate verification | | | diff --git a/content/influxdb/v2.0/reference/cli/influx/user/update.md b/content/influxdb/v2.0/reference/cli/influx/user/update.md index 1c189581e..c6e776013 100644 --- a/content/influxdb/v2.0/reference/cli/influx/user/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/user/update.md @@ -23,7 +23,7 @@ influx user update [flags] | | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | | `-h` | `--help` | Help for the `update` command | | | | | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-i` | `--id` | **(Required)** User ID | string | | | | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | | `-n` | `--name` | Username | string | | diff --git a/content/influxdb/v2.0/reference/cli/influx/write/_index.md b/content/influxdb/v2.0/reference/cli/influx/write/_index.md index b0cbe2a1c..b5b88ca00 100644 --- a/content/influxdb/v2.0/reference/cli/influx/write/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/write/_index.md @@ -42,7 +42,7 @@ influx write [command] | | `--format` | Input format (`lp` or `csv`, default `lp`) | string | | | | `--header` | Prepend header line to CSV input data | string | | | `-h` | `--help` | Help for the `dryrun` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | | `-p` | `--precision` | Precision of the timestamps (default `ns`) | string | `INFLUX_PRECISION` | diff --git a/content/influxdb/v2.0/reference/cli/influx/write/dryrun.md b/content/influxdb/v2.0/reference/cli/influx/write/dryrun.md index a862c9903..e821267ed 100644 --- a/content/influxdb/v2.0/reference/cli/influx/write/dryrun.md +++ b/content/influxdb/v2.0/reference/cli/influx/write/dryrun.md @@ -36,7 +36,7 @@ influx write dryrun [flags] | | `--format` | Input format (`lp` or `csv`, default `lp`) | string | | | | `--header` | Prepend header line to CSV input data | string | | | `-h` | `--help` | Help for the `dryrun` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:9999`) | string | `INFLUX_HOST` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name | string | `INFLUX_ORG` | | | `--org-id` | Organization ID | string | `INFLUX_ORG_ID` | | `-p` | `--precision` | Precision of the timestamps (default `ns`) | string | `INFLUX_PRECISION` | diff --git a/content/influxdb/v2.0/reference/config-options.md b/content/influxdb/v2.0/reference/config-options.md index 5564be157..bd1264496 100644 --- a/content/influxdb/v2.0/reference/config-options.md +++ b/content/influxdb/v2.0/reference/config-options.md @@ -322,7 +322,7 @@ engine-path = "/users/user/.influxdbv2/engine" Define the bind address for the InfluxDB HTTP API. Customize the URL and port for the InfluxDB API and UI. -**Default:** `:9999` +**Default:** `:8086` | influxd flag | Environment variable | Configuration key | |:------------ |:-------------------- |:----------------- | @@ -330,12 +330,12 @@ Customize the URL and port for the InfluxDB API and UI. ###### influxd flag ```sh -influxd --http-bind-address=:9999 +influxd --http-bind-address=:8086 ``` ###### Environment variable ```sh -export INFLUXD_HTTP_BIND_ADDRESS=:9999 +export INFLUXD_HTTP_BIND_ADDRESS=:8086 ``` ###### Configuration file @@ -347,18 +347,18 @@ export INFLUXD_HTTP_BIND_ADDRESS=:9999 {{% /code-tabs %}} {{% code-tab-content %}} ```yml -http-bind-address: ":9999" +http-bind-address: ":8086" ``` {{% /code-tab-content %}} {{% code-tab-content %}} ```toml -http-bind-address = ":9999" +http-bind-address = ":8086" ``` {{% /code-tab-content %}} {{% code-tab-content %}} ```json { - "http-bind-address": ":9999" + "http-bind-address": ":8086" } ``` {{% /code-tab-content %}} diff --git a/content/influxdb/v2.0/reference/flux/language/lexical-elements.md b/content/influxdb/v2.0/reference/flux/language/lexical-elements.md index 913d7b58b..c2b419c28 100644 --- a/content/influxdb/v2.0/reference/flux/language/lexical-elements.md +++ b/content/influxdb/v2.0/reference/flux/language/lexical-elements.md @@ -364,7 +364,7 @@ regexp_escape_char = `\` (`/` | `\`) ```js /.*/ -/http:\/\/localhost:9999/ +/http:\/\/localhost:8086/ /^\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e(ZZ)?$/ /^日本語(ZZ)?$/ // the above two lines are equivalent /\\xZZ/ // this becomes the literal pattern "\xZZ" diff --git a/content/influxdb/v2.0/reference/flux/stdlib/experimental/csv/from.md b/content/influxdb/v2.0/reference/flux/stdlib/experimental/csv/from.md index 094f8c867..fcc21589a 100644 --- a/content/influxdb/v2.0/reference/flux/stdlib/experimental/csv/from.md +++ b/content/influxdb/v2.0/reference/flux/stdlib/experimental/csv/from.md @@ -22,7 +22,7 @@ _**Function type:** Input_ ```js import "experimental/csv" -csv.from(url: "http://localhost:9999/") +csv.from(url: "http://localhost:8086/") ``` ## Parameters diff --git a/content/influxdb/v2.0/reference/flux/stdlib/experimental/http/get.md b/content/influxdb/v2.0/reference/flux/stdlib/experimental/http/get.md index 459fb2eae..b9ef31b1c 100644 --- a/content/influxdb/v2.0/reference/flux/stdlib/experimental/http/get.md +++ b/content/influxdb/v2.0/reference/flux/stdlib/experimental/http/get.md @@ -19,7 +19,7 @@ _**Function type:** Miscellaneous_ import "experimental/http" http.get( - url: "http://localhost:9999/", + url: "http://localhost:8086/", headers: {x:"a", y:"b", z:"c"}, timeout: 30s ) @@ -76,7 +76,7 @@ import "csv" token = secrets.get(key: "READONLY_TOKEN") response = http.get( - url: "http://localhost:9999/health", + url: "http://localhost:8086/health", headers: {Authorization: "Token ${token}"} ) diff --git a/content/influxdb/v2.0/reference/flux/stdlib/experimental/prometheus/scrape.md b/content/influxdb/v2.0/reference/flux/stdlib/experimental/prometheus/scrape.md index 92808c41a..2a4f977d8 100644 --- a/content/influxdb/v2.0/reference/flux/stdlib/experimental/prometheus/scrape.md +++ b/content/influxdb/v2.0/reference/flux/stdlib/experimental/prometheus/scrape.md @@ -22,7 +22,7 @@ _**Function type:** Input_ import "experimental/prometheus" prometheus.scrape( - url: "http://localhost:9999/metrics" + url: "http://localhost:8086/metrics" ) ``` diff --git a/content/influxdb/v2.0/reference/flux/stdlib/http/post.md b/content/influxdb/v2.0/reference/flux/stdlib/http/post.md index f3bf39800..1aafe5d77 100644 --- a/content/influxdb/v2.0/reference/flux/stdlib/http/post.md +++ b/content/influxdb/v2.0/reference/flux/stdlib/http/post.md @@ -21,7 +21,7 @@ _**Function type:** Output_ import "http" http.post( - url: "http://localhost:9999/", + url: "http://localhost:8086/", headers: {x:"a", y:"b", z:"c"}, data: bytes(v: "body") ) diff --git a/content/influxdb/v2.0/reference/glossary.md b/content/influxdb/v2.0/reference/glossary.md index d24e772fd..33e8ad62e 100644 --- a/content/influxdb/v2.0/reference/glossary.md +++ b/content/influxdb/v2.0/reference/glossary.md @@ -962,7 +962,7 @@ string values are annotated with the `string` datatype. ### TCP -InfluxDB uses Transmission Control Protocol (TCP) port 9999 for client-server communication over the InfluxDB HTTP API. +InfluxDB uses Transmission Control Protocol (TCP) port 8086 for client-server communication over the InfluxDB HTTP API. diff --git a/content/influxdb/v2.0/reference/urls.md b/content/influxdb/v2.0/reference/urls.md index b72f26676..58bb6602b 100644 --- a/content/influxdb/v2.0/reference/urls.md +++ b/content/influxdb/v2.0/reference/urls.md @@ -27,7 +27,7 @@ For InfluxDB OSS, the default URL is the following: {{< keep-url >}} ``` -http://localhost:9999/ +http://localhost:8086/ ``` ### Customize your InfluxDB OSS URL diff --git a/content/influxdb/v2.0/security/enable-tls.md b/content/influxdb/v2.0/security/enable-tls.md index d745801ca..4f7d0c942 100644 --- a/content/influxdb/v2.0/security/enable-tls.md +++ b/content/influxdb/v2.0/security/enable-tls.md @@ -104,13 +104,13 @@ InfluxDB supports three types of TLS certificates: Ensure you can connect over HTTPS by running ``` - curl -v https://localhost:9999/api/v2/ping + curl -v https://localhost:8086/api/v2/ping ``` If using a self-signed certificate, use the `-k` flag to skip certificate verification: ``` - curl -vk https://localhost:9999/api/v2/ping + curl -vk https://localhost:8086/api/v2/ping ``` With this command, you should see output confirming a succussful TLS handshake. @@ -136,7 +136,7 @@ update the following `influxdb_v2` output settings in your Telegraf configuratio ## ## Multiple URLs can be specified for a single cluster, only ONE of the ## urls will be written to each interval. - urls = ["https://127.0.0.1:9999"] + urls = ["https://127.0.0.1:8086"] [...] diff --git a/content/influxdb/v2.0/security/secrets/manage-secrets/add.md b/content/influxdb/v2.0/security/secrets/manage-secrets/add.md index 9c7916817..7a38c6707 100644 --- a/content/influxdb/v2.0/security/secrets/manage-secrets/add.md +++ b/content/influxdb/v2.0/security/secrets/manage-secrets/add.md @@ -43,7 +43,7 @@ add a new secret to your organization. ```sh -curl -XPATCH http://localhost:9999/api/v2/orgs//secrets \ +curl -XPATCH http://localhost:8086/api/v2/orgs//secrets \ -H 'Authorization: Token YOURAUTHTOKEN' \ -H 'Content-type: application/json' \ --data '{ diff --git a/content/influxdb/v2.0/security/secrets/manage-secrets/delete.md b/content/influxdb/v2.0/security/secrets/manage-secrets/delete.md index 76a585903..31f41e3a1 100644 --- a/content/influxdb/v2.0/security/secrets/manage-secrets/delete.md +++ b/content/influxdb/v2.0/security/secrets/manage-secrets/delete.md @@ -35,7 +35,7 @@ to delete one or more secrets. ```bash -curl -XGET http://localhost:9999/api/v2/orgs//secrets/delete \ +curl -XGET http://localhost:8086/api/v2/orgs//secrets/delete \ --H 'Authorization: Token YOURAUTHTOKEN' --data '{ "secrets": [ diff --git a/content/influxdb/v2.0/security/secrets/manage-secrets/update.md b/content/influxdb/v2.0/security/secrets/manage-secrets/update.md index 8f330a9c6..a06ec87d8 100644 --- a/content/influxdb/v2.0/security/secrets/manage-secrets/update.md +++ b/content/influxdb/v2.0/security/secrets/manage-secrets/update.md @@ -43,7 +43,7 @@ to update a secret in your organization. ```sh -curl -XPATCH http://localhost:9999/api/v2/orgs//secrets \ +curl -XPATCH http://localhost:8086/api/v2/orgs//secrets \ -H 'Authorization: Token YOURAUTHTOKEN' \ -H 'Content-type: application/json' \ --data '{ diff --git a/content/influxdb/v2.0/security/secrets/manage-secrets/view.md b/content/influxdb/v2.0/security/secrets/manage-secrets/view.md index 69276c650..a3565afe7 100644 --- a/content/influxdb/v2.0/security/secrets/manage-secrets/view.md +++ b/content/influxdb/v2.0/security/secrets/manage-secrets/view.md @@ -29,6 +29,6 @@ to view your organization's secrets keys. ```sh -curl -XGET http://localhost:9999/api/v2/orgs//secrets \ +curl -XGET http://localhost:8086/api/v2/orgs//secrets \ -H 'Authorization: Token YOURAUTHTOKEN' ``` diff --git a/content/influxdb/v2.0/telegraf-configs/_index.md b/content/influxdb/v2.0/telegraf-configs/_index.md index 9a8ea878e..21e4af28a 100644 --- a/content/influxdb/v2.0/telegraf-configs/_index.md +++ b/content/influxdb/v2.0/telegraf-configs/_index.md @@ -23,7 +23,7 @@ the configuration from an InfluxDB HTTP(S) endpoint. InfluxDB Telegraf configuration. For example: ```sh - telegraf --config http://localhost:9999/api/v2/telegrafs/ + telegraf --config http://localhost:8086/api/v2/telegrafs/ ``` {{% note %}} diff --git a/content/influxdb/v2.0/tools/repl.md b/content/influxdb/v2.0/tools/repl.md index 3c40ff1c3..7fc4df543 100644 --- a/content/influxdb/v2.0/tools/repl.md +++ b/content/influxdb/v2.0/tools/repl.md @@ -30,7 +30,7 @@ to the [`from()` function](/influxdb/v2.0/reference/flux/stdlib/built-in/inputs/ ```js from(bucket: "example-bucket", - host: "http://localhost:9999", + host: "http://localhost:8086", org: "example-org", token: "My5uP3rS3cRetT0k3n" ) diff --git a/content/influxdb/v2.0/visualize-data/dashboards/_index.md b/content/influxdb/v2.0/visualize-data/dashboards/_index.md index 80c993fbc..5b9130da9 100644 --- a/content/influxdb/v2.0/visualize-data/dashboards/_index.md +++ b/content/influxdb/v2.0/visualize-data/dashboards/_index.md @@ -23,7 +23,7 @@ Use the InfluxDB UI or `influx` CLI to view your dashboard ID. When viewing a dashboard in the InfluxDB UI, your dashboard ID appears in the URL.
-http://localhost:9999/orgs/03a2bbf46249a000/dashboards/04b6b15034cc000/...
+http://localhost:8086/orgs/03a2bbf46249a000/dashboards/04b6b15034cc000/...
 
### Dashboard ID in the CLI diff --git a/content/influxdb/v2.0/visualize-data/other-tools/grafana.md b/content/influxdb/v2.0/visualize-data/other-tools/grafana.md index ac5e4387e..81f743e22 100644 --- a/content/influxdb/v2.0/visualize-data/other-tools/grafana.md +++ b/content/influxdb/v2.0/visualize-data/other-tools/grafana.md @@ -51,7 +51,7 @@ configure your InfluxDB connection: - **URL**: Your [InfluxDB URL](/influxdb/v2.0/reference/urls/) **with the `/api/v2` path**. ```sh - http://localhost:9999/api/v2 + http://localhost:8086/api/v2 ``` - **Organization**: Your InfluxDB [organization name **or** ID](/influxdb/v2.0/organizations/view-orgs/). diff --git a/content/influxdb/v2.0/write-data/_index.md b/content/influxdb/v2.0/write-data/_index.md index 2c5dd50ad..b0501cccc 100644 --- a/content/influxdb/v2.0/write-data/_index.md +++ b/content/influxdb/v2.0/write-data/_index.md @@ -152,7 +152,7 @@ Click **Quick Start**. InfluxDB creates and configures a new [scraper](/influxdb/v2.0/write-data/no-code/scrape-data/). The target URL points to the `/metrics` HTTP endpoint of your local InfluxDB instance -(for example, `http://localhost:9999/metrics`), which outputs internal InfluxDB +(for example, `http://localhost:8086/metrics`), which outputs internal InfluxDB metrics in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). The scraper stores the scraped metrics in the bucket created during the [initial setup process](/influxdb/v2.0/get-started/#set-up-influxdb). diff --git a/content/influxdb/v2.0/write-data/best-practices/optimize-writes.md b/content/influxdb/v2.0/write-data/best-practices/optimize-writes.md index b7df11ac3..062fe47b3 100644 --- a/content/influxdb/v2.0/write-data/best-practices/optimize-writes.md +++ b/content/influxdb/v2.0/write-data/best-practices/optimize-writes.md @@ -74,7 +74,7 @@ In the `influxdb_v2` output plugin configuration in your `telegraf.conf`, set th ```toml [[outputs.influxdb_v2]] - urls = ["http://localhost:9999"] + urls = ["http://localhost:8086"] # ... content_encoding = "gzip" ``` @@ -94,7 +94,7 @@ When using the InfluxDB API `/write` endpoint to write data, set the `Content-En header to `gzip` to compress the request data. ```sh -curl -XPOST "http://localhost:9999/api/v2/write?org=YOUR_ORG&bucket=YOUR_BUCKET&precision=s" \ +curl -XPOST "http://localhost:8086/api/v2/write?org=YOUR_ORG&bucket=YOUR_BUCKET&precision=s" \ --header "Authorization: Token YOURAUTHTOKEN" \ --header "Content-Encoding: gzip" \ --data-raw "mem,host=host1 used_percent=23.43234543 1556896326" diff --git a/content/influxdb/v2.0/write-data/developer-tools/api.md b/content/influxdb/v2.0/write-data/developer-tools/api.md index 5c0c2f5f7..64122ebb7 100644 --- a/content/influxdb/v2.0/write-data/developer-tools/api.md +++ b/content/influxdb/v2.0/write-data/developer-tools/api.md @@ -36,7 +36,7 @@ Compressing write requests reduces network bandwidth, but increases server-side {{% /code-tabs %}} {{% code-tab-content %}} ```sh -curl -XPOST "http://localhost:9999/api/v2/write?org=YOUR_ORG&bucket=YOUR_BUCKET&precision=s" \ +curl -XPOST "http://localhost:8086/api/v2/write?org=YOUR_ORG&bucket=YOUR_BUCKET&precision=s" \ --header "Authorization: Token YOURAUTHTOKEN" \ --data-raw " mem,host=host1 used_percent=23.43234543 1556896326 @@ -48,7 +48,7 @@ mem,host=host2 used_percent=27.18294630 1556896336 {{% /code-tab-content %}} {{% code-tab-content %}} ```bash -curl -XPOST "http://localhost:9999/api/v2/write?org=YOUR_ORG&bucket=YOUR_BUCKET&precision=s" \ +curl -XPOST "http://localhost:8086/api/v2/write?org=YOUR_ORG&bucket=YOUR_BUCKET&precision=s" \ --header "Authorization: Token YOURAUTHTOKEN" \ --header "Content-Encoding: gzip" \ --data-raw " diff --git a/content/influxdb/v2.0/write-data/no-code/scrape-data/manage-scrapers/create-a-scraper.md b/content/influxdb/v2.0/write-data/no-code/scrape-data/manage-scrapers/create-a-scraper.md index 81110e502..433f33049 100644 --- a/content/influxdb/v2.0/write-data/no-code/scrape-data/manage-scrapers/create-a-scraper.md +++ b/content/influxdb/v2.0/write-data/no-code/scrape-data/manage-scrapers/create-a-scraper.md @@ -23,7 +23,7 @@ Create a new scraper in the InfluxDB user interface (UI). 4. Enter a **Name** for the scraper. 5. Select a **Bucket** to store the scraped data. 6. Enter the **Target URL** to scrape. - The default URL value is `http://localhost:9999/metrics`, + The default URL value is `http://localhost:8086/metrics`, which provides InfluxDB-specific metrics in the [Prometheus data format](https://prometheus.io/docs/instrumenting/exposition_formats/). 7. Click **Create**. diff --git a/content/influxdb/v2.0/write-data/no-code/third-party.md b/content/influxdb/v2.0/write-data/no-code/third-party.md index dbf568e25..fbffd9157 100644 --- a/content/influxdb/v2.0/write-data/no-code/third-party.md +++ b/content/influxdb/v2.0/write-data/no-code/third-party.md @@ -70,7 +70,7 @@ To configure Apache JMeter, complete the following steps in InfluxDB and JMeter. ``` - **influxdbUrl**: _(include the bucket and org you created in InfluxDB)_ ``` - http://localhost:9999/api/v2/write?org=my-org&bucket=jmeter + http://localhost:8086/api/v2/write?org=my-org&bucket=jmeter ``` - **application**: `InfluxDB2` - **influxdbToken**: _your InfluxDB authentication token_ diff --git a/content/influxdb/v2.0/write-data/no-code/use-telegraf/auto-config.md b/content/influxdb/v2.0/write-data/no-code/use-telegraf/auto-config.md index cabeb0151..f7b05f8f2 100644 --- a/content/influxdb/v2.0/write-data/no-code/use-telegraf/auto-config.md +++ b/content/influxdb/v2.0/write-data/no-code/use-telegraf/auto-config.md @@ -32,7 +32,7 @@ for using Telegraf with InfluxDB v2.0._ ## Create a Telegraf configuration -1. Open the InfluxDB UI _(default: [localhost:9999](http://localhost:9999))_. +1. Open the InfluxDB UI _(default: [localhost:8086](http://localhost:8086))_. 2. In the navigation menu on the left, select **Data** (**Load Data**) > **Telegraf**. {{< nav-icon "load data" >}} @@ -140,7 +140,7 @@ For the exact command, see the Telegraf configuration **Setup Instructions** in {{% /note %}} ```sh -telegraf -config http://localhost:9999/api/v2/telegrafs/0xoX00oOx0xoX00o +telegraf -config http://localhost:8086/api/v2/telegrafs/0xoX00oOx0xoX00o ``` ## Manage Telegraf configurations diff --git a/content/influxdb/v2.0/write-data/no-code/use-telegraf/manual-config.md b/content/influxdb/v2.0/write-data/no-code/use-telegraf/manual-config.md index 1e43f0909..5fb2a0bc1 100644 --- a/content/influxdb/v2.0/write-data/no-code/use-telegraf/manual-config.md +++ b/content/influxdb/v2.0/write-data/no-code/use-telegraf/manual-config.md @@ -129,7 +129,7 @@ The example below illustrates an `influxdb_v2` configuration. # ... [[outputs.influxdb_v2]] - urls = ["http://localhost:9999"] + urls = ["http://localhost:8086"] token = "$INFLUX_TOKEN" organization = "example-org" bucket = "example-bucket" diff --git a/data/influxdb_urls.yml b/data/influxdb_urls.yml index eb8978ea2..3d62337c2 100644 --- a/data/influxdb_urls.yml +++ b/data/influxdb_urls.yml @@ -3,8 +3,8 @@ oss: providers: - name: Default regions: - - name: localhost:9999 - url: http://localhost:9999 + - name: localhost:8086 + url: http://localhost:8086 - name: Custom url: http://example.com:8080 From 7dde55ff0835f9e334a300489b80e263c58cc382 Mon Sep 17 00:00:00 2001 From: Kelly Date: Fri, 4 Sep 2020 11:04:55 -0700 Subject: [PATCH 025/119] add spaces after 9999 ports to highlight --- CONTRIBUTING.md | 8 ++++---- data/telegraf_plugins.yml | 2 +- layouts/shortcodes/cli/influxd-flags.md | 2 +- static/downloads/air-sensor-data.rb | 4 ++-- static/downloads/influxdb-k8-minikube.yaml | 6 +++--- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 177a4a422..93c3bfbb3 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -649,7 +649,7 @@ When a user selects an InfluxDB product and region, example URLs in code blocks throughout the documentation are updated to match their product and region. InfluxDB URLs are configured in `/data/influxdb_urls.yml`. -By default, the InfluxDB URL replaced inside of code blocks is `http://localhost:9999`. +By default, the InfluxDB URL replaced inside of code blocks is `http://localhost:9999`. Use this URL in all code examples that should be updated with a selected provider and region. For example: @@ -657,14 +657,14 @@ For example: ~~~ ```sh # This URL will get updated -http://localhost:9999 +http://localhost:9999 # This URL will NOT get updated http://example.com ``` ~~~ -If the user selects the **US West (Oregon)** region, all occurrences of `http://localhost:9999` +If the user selects the **US West (Oregon)** region, all occurrences of `http://localhost:9999` in code blocks will get updated to `https://us-west-2-1.aws.cloud2.influxdata.com`. ### Exempt URLs from getting updated @@ -675,7 +675,7 @@ just before the code block. {{< keep-url >}} ``` // This URL won't get updated -http://localhost:9999 +http://localhost:9999 ``` ~~~ diff --git a/data/telegraf_plugins.yml b/data/telegraf_plugins.yml index f7dcb6075..25d83d561 100644 --- a/data/telegraf_plugins.yml +++ b/data/telegraf_plugins.yml @@ -613,7 +613,7 @@ input: ```toml [[inputs.prometheus]] ## An array of urls to scrape metrics from. - urls = ["http://localhost:9999/metrics"] + urls = ["http://localhost:9999/metrics"] ``` introduced: 1.8.0 diff --git a/layouts/shortcodes/cli/influxd-flags.md b/layouts/shortcodes/cli/influxd-flags.md index af210a1a9..4f7152843 100644 --- a/layouts/shortcodes/cli/influxd-flags.md +++ b/layouts/shortcodes/cli/influxd-flags.md @@ -5,7 +5,7 @@ | | `--e2e-testing` | Add /debug/flush endpoint to clear stores; used for end-to-end tests (default `false`) | | `INFLUXD_E2E_TESTING` | | | `--engine-path` | Path to persistent engine files (default `~/.influxdbv2/engine`) | string | `INFLUXD_ENGINE_PATH` | | `-h` | `--help` | Help for the `influxd` command | | | -| | `--http-bind-address` | Bind address for the REST HTTP API (default `:9999`) | string | `INFLUXD_HTTP_BIND_ADDRESS` | +| | `--http-bind-address` | Bind address for the REST HTTP API (default `:9999`) | string | `INFLUXD_HTTP_BIND_ADDRESS` | | | `--log-level` | Supported log levels are debug, info, and error (default `info`) | string | `INFLUXD_LOG_LEVEL` | | | `--new-meta-store` | Enables the new meta store | | `INFLUXD_NEW_META_STORE` | | | `--new-meta-store-read-only` | Toggle read-only mode for the new meta store and duplicate reads between old and new store (default `true`) | | `INFLUXD_NEW_META_STORE_READ_ONLY` | diff --git a/static/downloads/air-sensor-data.rb b/static/downloads/air-sensor-data.rb index 70fd9136f..caaa44083 100755 --- a/static/downloads/air-sensor-data.rb +++ b/static/downloads/air-sensor-data.rb @@ -8,7 +8,7 @@ require "uri" options = { protocol: "http", host: "localhost", - port: "9999", + port: "9999", interval: 5 } @@ -31,7 +31,7 @@ OptionParser.new do |opt| options[:host] = host end - opt.on("-p","--port port","Your InfluxDB port. Defaults to '9999'") do |port| + opt.on("-p","--port port","Your InfluxDB port. Defaults to '9999'") do |port| options[:port] = port end diff --git a/static/downloads/influxdb-k8-minikube.yaml b/static/downloads/influxdb-k8-minikube.yaml index 42f1c2698..4c5444eb9 100644 --- a/static/downloads/influxdb-k8-minikube.yaml +++ b/static/downloads/influxdb-k8-minikube.yaml @@ -26,7 +26,7 @@ spec: - image: quay.io/influxdb/influxdb:2.0.0-beta name: influxdb ports: - - containerPort: 9999 + - containerPort: 9999 name: influxdb volumeMounts: - mountPath: /root/.influxdbv2 @@ -50,8 +50,8 @@ metadata: spec: ports: - name: influxdb - port: 9999 - targetPort: 9999 + port: 9999 + targetPort: 9999 selector: app: influxdb type: ClusterIP From c5aba47c097993be0bf500b214821f8103b85712 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 4 Sep 2020 12:26:51 -0600 Subject: [PATCH 026/119] updated more default ports --- CONTRIBUTING.md | 8 ++++---- data/telegraf_plugins.yml | 2 +- layouts/shortcodes/cli/influxd-flags.md | 2 +- static/downloads/air-sensor-data.rb | 4 ++-- static/downloads/influxdb-k8-minikube.yaml | 6 +++--- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 177a4a422..eb5112fc9 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -649,7 +649,7 @@ When a user selects an InfluxDB product and region, example URLs in code blocks throughout the documentation are updated to match their product and region. InfluxDB URLs are configured in `/data/influxdb_urls.yml`. -By default, the InfluxDB URL replaced inside of code blocks is `http://localhost:9999`. +By default, the InfluxDB URL replaced inside of code blocks is `http://localhost:8086`. Use this URL in all code examples that should be updated with a selected provider and region. For example: @@ -657,14 +657,14 @@ For example: ~~~ ```sh # This URL will get updated -http://localhost:9999 +http://localhost:8086 # This URL will NOT get updated http://example.com ``` ~~~ -If the user selects the **US West (Oregon)** region, all occurrences of `http://localhost:9999` +If the user selects the **US West (Oregon)** region, all occurrences of `http://localhost:8086` in code blocks will get updated to `https://us-west-2-1.aws.cloud2.influxdata.com`. ### Exempt URLs from getting updated @@ -675,7 +675,7 @@ just before the code block. {{< keep-url >}} ``` // This URL won't get updated -http://localhost:9999 +http://localhost:8086 ``` ~~~ diff --git a/data/telegraf_plugins.yml b/data/telegraf_plugins.yml index f7dcb6075..1c07cf383 100644 --- a/data/telegraf_plugins.yml +++ b/data/telegraf_plugins.yml @@ -613,7 +613,7 @@ input: ```toml [[inputs.prometheus]] ## An array of urls to scrape metrics from. - urls = ["http://localhost:9999/metrics"] + urls = ["http://localhost:8086/metrics"] ``` introduced: 1.8.0 diff --git a/layouts/shortcodes/cli/influxd-flags.md b/layouts/shortcodes/cli/influxd-flags.md index af210a1a9..9c52efb51 100644 --- a/layouts/shortcodes/cli/influxd-flags.md +++ b/layouts/shortcodes/cli/influxd-flags.md @@ -5,7 +5,7 @@ | | `--e2e-testing` | Add /debug/flush endpoint to clear stores; used for end-to-end tests (default `false`) | | `INFLUXD_E2E_TESTING` | | | `--engine-path` | Path to persistent engine files (default `~/.influxdbv2/engine`) | string | `INFLUXD_ENGINE_PATH` | | `-h` | `--help` | Help for the `influxd` command | | | -| | `--http-bind-address` | Bind address for the REST HTTP API (default `:9999`) | string | `INFLUXD_HTTP_BIND_ADDRESS` | +| | `--http-bind-address` | Bind address for the REST HTTP API (default `:8086`) | string | `INFLUXD_HTTP_BIND_ADDRESS` | | | `--log-level` | Supported log levels are debug, info, and error (default `info`) | string | `INFLUXD_LOG_LEVEL` | | | `--new-meta-store` | Enables the new meta store | | `INFLUXD_NEW_META_STORE` | | | `--new-meta-store-read-only` | Toggle read-only mode for the new meta store and duplicate reads between old and new store (default `true`) | | `INFLUXD_NEW_META_STORE_READ_ONLY` | diff --git a/static/downloads/air-sensor-data.rb b/static/downloads/air-sensor-data.rb index 70fd9136f..13fced823 100755 --- a/static/downloads/air-sensor-data.rb +++ b/static/downloads/air-sensor-data.rb @@ -8,7 +8,7 @@ require "uri" options = { protocol: "http", host: "localhost", - port: "9999", + port: "8086", interval: 5 } @@ -31,7 +31,7 @@ OptionParser.new do |opt| options[:host] = host end - opt.on("-p","--port port","Your InfluxDB port. Defaults to '9999'") do |port| + opt.on("-p","--port port","Your InfluxDB port. Defaults to '8086'") do |port| options[:port] = port end diff --git a/static/downloads/influxdb-k8-minikube.yaml b/static/downloads/influxdb-k8-minikube.yaml index 42f1c2698..91d51f601 100644 --- a/static/downloads/influxdb-k8-minikube.yaml +++ b/static/downloads/influxdb-k8-minikube.yaml @@ -26,7 +26,7 @@ spec: - image: quay.io/influxdb/influxdb:2.0.0-beta name: influxdb ports: - - containerPort: 9999 + - containerPort: 8086 name: influxdb volumeMounts: - mountPath: /root/.influxdbv2 @@ -50,8 +50,8 @@ metadata: spec: ports: - name: influxdb - port: 9999 - targetPort: 9999 + port: 8086 + targetPort: 8086 selector: app: influxdb type: ClusterIP From 463b8021b05f9aa55b08365be79f0f73b72bf8a0 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Tue, 8 Sep 2020 10:32:50 -0600 Subject: [PATCH 027/119] removed v2 from influxdb url modal per PR feedback --- layouts/partials/footer/influxdb-url-modal.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/layouts/partials/footer/influxdb-url-modal.html b/layouts/partials/footer/influxdb-url-modal.html index 9526e128b..0b9c7532c 100644 --- a/layouts/partials/footer/influxdb-url-modal.html +++ b/layouts/partials/footer/influxdb-url-modal.html @@ -6,7 +6,7 @@