From 9e845cecd2ff5e6e1691aebfc1efb8f1eadc52bc Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Thu, 5 Feb 2026 10:27:15 -0700 Subject: [PATCH] chore(controller): add eula and eula acceptance to telegraf controller (#6759) * chore(controller): add eula and eula acceptance to telegraf controller docs * Apply suggestions from code review Co-authored-by: Jason Stirnaman --------- Co-authored-by: Jason Stirnaman --- content/telegraf/controller/install/_index.md | 89 ++++++++++++-- content/telegraf/controller/reference/eula.md | 111 ++++++++++++++++++ layouts/partials/header/title.html | 2 + 3 files changed, 195 insertions(+), 7 deletions(-) create mode 100644 content/telegraf/controller/reference/eula.md diff --git a/content/telegraf/controller/install/_index.md b/content/telegraf/controller/install/_index.md index 16d4a9c68..f284a26ca 100644 --- a/content/telegraf/controller/install/_index.md +++ b/content/telegraf/controller/install/_index.md @@ -14,6 +14,7 @@ agents. It provides a user-friendly interface for managing Telegraf configurations, monitoring agents, and organizing plugins. - [System Requirements](#system-requirements) +- [Review the EULA](#review-the-eula) - [Download and install {{% product-name %}}](#download-and-install-telegraf-controller) - [Set up your database](#set-up-your-database) - [Configure {{% product-name %}}](#configure-telegraf-controller) @@ -26,6 +27,50 @@ configurations, monitoring agents, and organizing plugins. - **Database**: SQLite (default), PostgreSQL, or PostgreSQL-compatible - **Ports**: 8888 (web interface), 8000 (heartbeat service) + +## Review the EULA + +Review the [InfluxData End User Software License Agreement (EULA)](/telegraf/controller/reference/eula/) +for {{% product-name %}} before downloading and installing. + +{{% product-name %}} requires that you accept the EULA before the server can +start. When you first run {{% product-name %}} in interactive mode (default), it +prompts you to accept the EULA. +Once accepted on a host machine, the EULA does not need to be accepted again +unless the EULA is updated or the {{% product-name %}} local data directory is +removed. + +### Accept in interactive mode + +Run the executable in a terminal and follow the prompt. + +```bash +telegraf_controller +``` + +Enter `v` to view the full text of the {{% product-name %}} EULA. +Enter `accept` to accept the EULA and proceed. + +### Accept non-interactively + +Use the `--eula-accept` command option or set the `TELEGRAF_CONTROLLER_EULA` +environment variable to `accept`. +This is required for non-interactive runs such as systemd, LaunchDaemons, +or CI—for example: + +```bash +telegraf_controller --eula-accept --no-interactive +``` + +```bash +TELEGRAF_CONTROLLER_EULA=accept telegraf_controller --no-interactive +``` + +```powershell +$env:TELEGRAF_CONTROLLER_EULA="accept" +./telegraf_controller.exe --no-interactive +``` + ## Download and install {{% product-name %}} 1. **Download the {{% product-name %}} executable.** @@ -86,6 +131,10 @@ run it in place. You can also run {{% product-name %}} as a service. #### Install the executable as a systemd service {note="Optional"} +> [!Note] +> If this is the first run on the host, accept the EULA in a TTY or set +> `TELEGRAF_CONTROLLER_EULA=accept` in the service environment. + 1. Create a {{% product-name %}} service file: ```bash @@ -167,6 +216,10 @@ export PATH="/usr/local/bin:$PATH" #### Install as a LaunchDaemon {note="Optional"} +> [!Note] +> If this is the first run on the host, accept the EULA in a TTY or set +> `TELEGRAF_CONTROLLER_EULA=accept` in the service environment. + 1. Create a plist file: ```bash @@ -233,6 +286,10 @@ run: Use NSSM (Non-Sucking Service Manager) to run {{% product-name %}} as a Windows service. +> [!Note] +> If this is the first run on the host, accept the EULA in a TTY or set +> `TELEGRAF_CONTROLLER_EULA=accept` in the service environment. + 1. [Download NSSM](https://nssm.cc/download) 2. In **Command Prompt or PowerShell**, install the {{% product-name %}} service: @@ -300,13 +357,15 @@ Use the following command line options to configure {{% product-name %}}. ### Configuration options -| Command Flag | Environment Variable | Description | Default | -| :--------------- | :------------------- | :--------------------------- | :------------------- | -| --port | PORT | Web interface and API port | `8888` | -| --heartbeat-port | HEARTBEAT_PORT | Agent heartbeat service port | `8000` | -| --database | DATABASE | Database connection string | Auto-detected SQLite | -| --ssl-cert | SSL_CERT | SSL certificate file path | None | -| --ssl-key | SSL_KEY | SSL private key file path | None | +| Command Flag | Environment Variable | Description | Default | +| :--------------- | :----------------------- | :---------------------------- | :------------------- | +| --port | PORT | Web interface and API port | `8888` | +| --heartbeat-port | HEARTBEAT_PORT | Agent heartbeat service port | `8000` | +| --database | DATABASE | Database connection string | Auto-detected SQLite | +| --ssl-cert | SSL_CERT | SSL certificate file path | None | +| --ssl-key | SSL_KEY | SSL private key file path | None | +| --no-interactive | | Skip prompts and use defaults | None | +| --eula-accept | TELEGRAF_CONTROLLER_EULA | Accept EULA non-interactively | None | #### Examples @@ -342,6 +401,11 @@ telegraf_controller \ telegraf_controller \ --ssl-cert="/path/to/cert.pem" \ --ssl-key="/path/to/key.pem" + +# Accept the EULA non-interactively +telegraf_controller \ + --no-interactive \ + --eula-accept ``` @@ -365,6 +429,11 @@ telegraf_controller \ ./telegraf_controller.exe ` --ssl-cert="C:\path\to\cert.pem" ` --ssl-key="C:\path\to\key.pem" + +# Accept the EULA non-interactively +./telegraf_controller.exe ` + --no-interactive ` + --eula-accept ``` @@ -399,6 +468,9 @@ DATABASE=/path/to/custom/database.db SSL_CERT=/path/to/cert.pem SSL_KEY=/path/to/key.pem +# Accept the EULA +TELEGRAF_CONTROLLER_EULA=accept + telegraf_controller ``` @@ -422,6 +494,9 @@ $env:DATABASE=C:\path\to\custom\database.db $env:SSL_CERT=C:\path\to\cert.pem $env:SSL_KEY=C:\path\to\key.pem +# Accept the EULA +$env:TELEGRAF_CONTROLLER_EULA=accept + ./telegraf_controller.exe ``` diff --git a/content/telegraf/controller/reference/eula.md b/content/telegraf/controller/reference/eula.md new file mode 100644 index 000000000..9bce0333c --- /dev/null +++ b/content/telegraf/controller/reference/eula.md @@ -0,0 +1,111 @@ +--- +title: InfluxData End User Software License Agreement (EULA) +seotitle: InfluxData EULA for Telegraf Controller +list_title: Telegraf Controller EULA +description: > + Architectural overview of the {{% product-name %}} application. +menu: + telegraf_controller: + name: EULA + parent: Reference +weight: 110 +metadata: ['Updated January 1, 2026'] +--- + +**(Telegraf Controller)** + +**IMPORTANT - READ BEFORE COPYING, INSTALLING OR USING.** + +THIS AGREEMENT is a legal agreement between you and InfluxData Inc., a Delaware, +USA corporation (“InfluxData”). + +Do not use, load or run software from this site or any associated materials +(collectively, the "**Software**") until you have carefully read the following +terms and conditions. By loading or using the Software, you agree to the terms +of this Agreement. If you do not wish to so agree, do not install or use the +Software. + +LICENSE. Subject to the terms and conditions of this Agreement, InfluxData +hereby grants you the following non-exclusive, non-transferable, worldwide, +revocable, perpetual licenses, without right to sub-license, solely for your or +your employer’s internal purposes: (a) to reproduce a reasonable number of +copies of the Software; (b) to distribute such copies to and install them on +computing infrastructure owned by your or your employer or under your or their +control; (c) to run the Software on such infrastructure, and (d) to permit +employees and service providers of your employer to use the Software on such +infrastructure. + +- You may not copy, modify, rent, sell, distribute or transfer all or any part + of the Software except as provided in this Agreement, and you agree to prevent + unauthorized copying of the Software. +- You may not reverse engineer, decompile, or disassemble the Software, except + to the extent permitted by applicable law or as expressly required by + InfluxData’s licensors. +- The Software may contain the software or other property of third party + suppliers, some of which may be identified in, and licensed in accordance + with, any enclosed “license.txt” file or other text or file referenced in the + Software documentation. + +OWNERSHIP OF SOFTWARE AND COPYRIGHTS. Title to all copies of the Software +remains with InfluxData or its suppliers. The Software is copyrighted and +protected by the laws of the United States and other countries, and +international treaty provisions. You may not remove any copyright notices from +the Software. InfluxData may make changes to the Software, or to items +referenced therein, at any time without notice, but is not obligated to support +or update the Software. Except as otherwise expressly provided, InfluxData +grants no express or implied right under InfluxData patents, copyrights, +trademarks, or other InfluxData intellectual property rights. You may transfer +the Software only if the recipient agrees to be fully bound by these terms and +if you retain no copies of the Software. + +**EXCLUSION OF OTHER WARRANTIES. THE SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY +EXPRESS OR IMPLIED WARRANTY OF ANY KIND INCLUDING WARRANTIES OF MERCHANTABILITY, +NONINFRINGEMENT, OR FITNESS FOR A PARTICULAR PURPOSE. InfluxData does not +warrant or assume responsibility for the accuracy or completeness of any +information, text, graphics, links or other items contained within the +Software.** + +**LIMITATION OF LIABILITY. IN NO EVENT WILL INFLUXDATA OR ITS SUPPLIERS BE +LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, LOST PROFITS, +BUSINESS INTERRUPTION, OR LOST INFORMATION) ARISING OUT OF THE USE OF OR +INABILITY TO USE THE SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. SOME JURISDICTIONS PROHIBIT EXCLUSION OR LIMITATION OF LIABILITY FOR +IMPLIED WARRANTIES OR CONSEQUENTIAL OR INCIDENTAL DAMAGES, SO THE ABOVE +LIMITATION MAY NOT APPLY TO YOU. YOU MAY ALSO HAVE OTHER LEGAL RIGHTS THAT VARY +FROM JURISDICTION TO JURISDICTION.** + +TERMINATION OF THIS AGREEMENT. Without limiting InfluxData’s other remedies, +InfluxData may terminate this Agreement at any time if you violate its terms. +Upon any termination, you will immediately destroy the Software or return all +copies of the Software to InfluxData. + +APPLICABLE LAWS. Claims arising under this Agreement will be governed by the +laws of Delaware, USA, excluding its principles of conflict of laws and the +United Nations Convention on Contracts for the Sale of Goods. You agree to +jurisdiction and venue in the courts of the State of Delaware for all disputes +and litigation arising under or relating to this Agreement. You may not export +the Software in violation of applicable export laws and regulations. InfluxData +is not obligated under any other agreements unless they are in writing and +signed by an authorized representative of InfluxData. + +U.S. GOVERNMENT CONTRACT PROVISIONS. No Government procurement regulation or +contract clauses or provision will be considered a part of any transaction +between the parties under this Agreement unless its inclusion is required by +statute, or mutually agreed upon in writing by the parties in connection with a +specific transaction. The technical data and computer software covered by this +license is a “Commercial Item,” as that term is defined by the FAR 2.101 +(48 C.F.R. 2.101) and is “commercial computer software” and “commercial computer +software documentation” as specified under FAR 12.212 (48 C.F.R. 12.212) or +DFARS 227.7202 (48 C.F.R. 227.7202), as applicable. This commercial computer +software and related documentation is provided to end users for use by and on +behalf of the U.S. Government, with only those rights as are granted to all +other end users under the terms and conditions in this Agreement. Use for or on +behalf of the U.S. Government is permitted only if the party acquiring or using +this Software is properly authorized by an appropriate U.S. Government +official. This use by or for the U.S. Government clause is in lieu of, and +supersedes, any other FAR, DFARS, or other provision that addresses Government +rights in the computer Software or documentation covered by this license. All +copyright licenses granted to the U.S. Government are coextensive with the +technical data and computer Software licenses granted in this Agreement. The +U.S. Government will only have the right to reproduce, distribute, perform, +display, and prepare derivative works as needed to implement those rights. diff --git a/layouts/partials/header/title.html b/layouts/partials/header/title.html index e8d6fe4a6..329c4a37c 100644 --- a/layouts/partials/header/title.html +++ b/layouts/partials/header/title.html @@ -38,6 +38,8 @@ {{ $scratch.Set "siteTitle" (print (index .Site.Data.products $product).name " Documentation") }} {{ else if and (eq $product "enterprise_influxdb") (in $currentVersion "v1")}} {{ $scratch.Set "siteTitle" "InfluxDB Enterprise v1 Documentation" }} +{{ else if and (eq $product "telegraf") (eq $currentVersion "controller")}} + {{ $scratch.Set "siteTitle" "Telegraf Controller Documentation" }} {{ else }} {{ with (index .Site.Data.products $product).altname }} {{ $scratch.Set "siteTitle" (print . " Documentation") }}