From 42203a333652b19cdee468fbd64e19f417e46697 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 12 Dec 2025 16:08:58 -0700 Subject: [PATCH 1/3] feat: telegraf-ui scaffolding --- PLATFORM_REFERENCE.md | 2 +- .../article/blocks/_special-state.scss | 9 +++++ content/telegraf/controller/_index.md | 13 +++++++ content/telegraf/controller/agents/_index.md | 13 +++++++ content/telegraf/controller/configs/_index.md | 12 +++++++ content/telegraf/controller/install.md | 17 +++++++++ content/telegraf/controller/labels/_index.md | 12 +++++++ .../controller/telegraf-enterprise.md | 22 ++++++++++++ data/products.yml | 13 +++++++ layouts/partials/article/special-state.html | 36 +++++++++++-------- layouts/partials/sidebar.html | 4 +-- layouts/partials/topnav/product-selector.html | 11 ++++-- 12 files changed, 145 insertions(+), 19 deletions(-) create mode 100644 content/telegraf/controller/_index.md create mode 100644 content/telegraf/controller/agents/_index.md create mode 100644 content/telegraf/controller/configs/_index.md create mode 100644 content/telegraf/controller/install.md create mode 100644 content/telegraf/controller/labels/_index.md create mode 100644 content/telegraf/controller/telegraf-enterprise.md diff --git a/PLATFORM_REFERENCE.md b/PLATFORM_REFERENCE.md index a0fc31afed..5cec041131 100644 --- a/PLATFORM_REFERENCE.md +++ b/PLATFORM_REFERENCE.md @@ -52,7 +52,7 @@ InfluxDB 3 Explorer: - Documentation: https://docs.influxdata.com/influxdb3/explorer/ Telegraf: - - Documentation: https://docs.influxdata.com/telegraf/v1.36/ + - Documentation: https://docs.influxdata.com/telegraf/v1.37/ Chronograf: - Documentation: https://docs.influxdata.com/chronograf/v1.10/ diff --git a/assets/styles/layouts/article/blocks/_special-state.scss b/assets/styles/layouts/article/blocks/_special-state.scss index 0717952cdd..d17a3d36c8 100644 --- a/assets/styles/layouts/article/blocks/_special-state.scss +++ b/assets/styles/layouts/article/blocks/_special-state.scss @@ -15,6 +15,15 @@ p {margin-bottom: 1rem;} + .btn { + border-radius: $radius * 2; + @include gradient($grad-burningDusk); + + &:after { + background: linear-gradient(45deg, #a8085a, #7b14d6); + } + } + .expand-wrapper { border: none; margin: .5rem 0 1.5rem; diff --git a/content/telegraf/controller/_index.md b/content/telegraf/controller/_index.md new file mode 100644 index 0000000000..d295d66996 --- /dev/null +++ b/content/telegraf/controller/_index.md @@ -0,0 +1,13 @@ +--- +title: Telegraf Controller documentation +description: > + Documentation for Telegraf Controller, the application for managing Telegraf + deployments at scale. Create and manage Telegraf configurations, monitor + the health of your agents, and more. +menu: + telegraf_controller: + name: Telegraf Controller +weight: 1 +--- + + diff --git a/content/telegraf/controller/agents/_index.md b/content/telegraf/controller/agents/_index.md new file mode 100644 index 0000000000..d4b889bd1a --- /dev/null +++ b/content/telegraf/controller/agents/_index.md @@ -0,0 +1,13 @@ +--- +title: Manage Telegraf agents +seotitle: Manage Telegraf agents with Telegraf Controller +description: > + Use Telegraf Controller to create, monitor, and delete Telegraf agents from + Telegraf Controller. +menu: + telegraf_controller: + name: Manage agents +weight: 4 +cascade: + draft: true +--- \ No newline at end of file diff --git a/content/telegraf/controller/configs/_index.md b/content/telegraf/controller/configs/_index.md new file mode 100644 index 0000000000..42b67c0063 --- /dev/null +++ b/content/telegraf/controller/configs/_index.md @@ -0,0 +1,12 @@ +--- +title: Manage Telegraf configurations +seotitle: Manage Telegraf configurations with Telegraf Controller +description: > + Use Telegraf Controller to create, update, and delete Telegraf configurations. +menu: + telegraf_controller: + name: Manage configurations +weight: 3 +cascade: + draft: true +--- \ No newline at end of file diff --git a/content/telegraf/controller/install.md b/content/telegraf/controller/install.md new file mode 100644 index 0000000000..92375dfdde --- /dev/null +++ b/content/telegraf/controller/install.md @@ -0,0 +1,17 @@ +--- +title: Install Telegraf Controller +description: > + Download and install Telegraf Controller on Linux, macOS, and Windows operating systems. +menu: + telegraf_controller: + name: Install Telegraf Controller +weight: 2 +draft: true +--- + + \ No newline at end of file diff --git a/content/telegraf/controller/labels/_index.md b/content/telegraf/controller/labels/_index.md new file mode 100644 index 0000000000..74c5b283d8 --- /dev/null +++ b/content/telegraf/controller/labels/_index.md @@ -0,0 +1,12 @@ +--- +title: Manage Telegraf Controller labels +description: > + Use labels to customize and organize Telegraf configurations + and agents in Telegraf Controller. +menu: + telegraf_controller: + name: Manage labels +weight: 5 +cascade: + draft: true +--- \ No newline at end of file diff --git a/content/telegraf/controller/telegraf-enterprise.md b/content/telegraf/controller/telegraf-enterprise.md new file mode 100644 index 0000000000..318cdf5835 --- /dev/null +++ b/content/telegraf/controller/telegraf-enterprise.md @@ -0,0 +1,22 @@ +--- +title: Telegraf Enterprise +description: > + Telegraf Enterprise is a premium, enterprise-grade offering that combines the + Telegraf Controller, a web application for management Telegraf deployments, + with an Enterprise Support Contract for Telegraf. It is designed for + organizations running Telegraf at scale who require centralized configuration + management, operational visibility, governance, and expert support from + InfluxData. +menu: + telegraf_controller: + name: Telegraf Enterprise +weight: 10 +draft: true +--- + + \ No newline at end of file diff --git a/data/products.yml b/data/products.yml index b9d9c1042e..9bf84ccbbb 100644 --- a/data/products.yml +++ b/data/products.yml @@ -252,6 +252,19 @@ telegraf: - How do I use Telegraf for MQTT? ai_input_placeholder: "Ask questions about Telegraf and InfluxDB" +telegraf_controller: + name: Telegraf Controller + namespace: telegraf + menu_category: other + versions: [v1] + latest: 0.0 + latest_patch: 0.0.0 + # ai_sample_questions: + # - How do I configure Telegraf for InfluxDB 3? + # - How do I write a custom Telegraf plugin? + # - How do I use Telegraf for MQTT? + # ai_input_placeholder: "Ask questions about Telegraf and InfluxDB" + chronograf: name: Chronograf namespace: chronograf diff --git a/layouts/partials/article/special-state.html b/layouts/partials/article/special-state.html index 3661c392f5..4aed2decb8 100644 --- a/layouts/partials/article/special-state.html +++ b/layouts/partials/article/special-state.html @@ -2,26 +2,34 @@ {{ $productPathData := split .RelPermalink "/" }} {{ $product := index $productPathData 1 }} {{ $version := index $productPathData 2 }} -{{ $productKey := cond (eq $product "influxdb3") (print "influxdb3_" (replaceRE "-" "_" $version)) $product }} +{{ $isInfluxDB3 := eq $product "influxdb3" }} +{{ $isTelegrafController := and (eq $product "telegraf") (eq $version "controller") }} +{{ .Store.Set "productKey" $product }} +{{ if $isInfluxDB3 }} + {{ .Store.Set "productKey" (print "influxdb3_" (replaceRE "-" "_" $version)) }} +{{ else if $isTelegrafController }} + {{ .Store.Set "productKey" "telegraf_controller" }} +{{ end }} +{{ $productKey := .Store.Get "productKey" }} {{ $productData := index $.Site.Data.products $productKey }} {{ $displayName := $productData.name }} -{{ $earlyAccessList := slice "" }} +{{ $productPathWhitelist := slice "telegraf/controller" }} -{{ if in $earlyAccessList (print $product "/" $version )}} +{{ if in $productPathWhitelist (print $product "/" $version )}}
-

{{ $displayName }} is Generally Available

+

{{ $displayName }} is in Private Alpha

- {{ $displayName }} is generally available and is ready for production use. - We welcome and encourage your input about your experience with Explorer and - invite you to join our public channels for updates and to - share feedback. + {{ $displayName }} is in private alpha. If you are interested in being a + part of the private alpha program, please sign up:

-

- The {{ $displayName}} documentation is a work in progress, and we are actively +

Sign Up for the Alpha

+

+ While in alpha, {{ $displayName }} is not meant for production use. + The {{ $displayName}} documentation is a work in progress, and we are actively working to improve it. If you have any questions or suggestions, please - submit an issue. - We welcome any and all contributions. + submit an issue. + We welcome any and all contributions.

@@ -30,9 +38,9 @@

{{ $displayName }} is Generally Available

diff --git a/layouts/partials/sidebar.html b/layouts/partials/sidebar.html index 0dd150396b..90151f6920 100644 --- a/layouts/partials/sidebar.html +++ b/layouts/partials/sidebar.html @@ -92,8 +92,8 @@

Flux

{{ end }} - {{ $platformWhitelist := `telegraf|chronograf|kapacitor|enterprise_influxdb|influxdb_1` }} - {{ if gt (len (findRE $platformWhitelist $menuKey)) 0 }} + {{ $platformWhitelist := (slice "telegraf_v1" "chronograf_v1" "kapacitor_v1" "enterprise_influxdb_v1" "influxdb_v1") }} + {{ if (in $platformWhitelist $menuKey) }}

InfluxData Platform

{{ partial "sidebar/nested-menu" (dict "page" $currentPage "menu" $platformMenu) . }} {{ end }} diff --git a/layouts/partials/topnav/product-selector.html b/layouts/partials/topnav/product-selector.html index 0a9e29fb92..0c9ffdc139 100644 --- a/layouts/partials/topnav/product-selector.html +++ b/layouts/partials/topnav/product-selector.html @@ -23,12 +23,13 @@ {{ $influxdb3CloudDedicated := dict "influxdb3/cloud-dedicated" (slice $.Site.Data.products.influxdb3_cloud_dedicated.name "cloud-dedicated") }} {{ $influxdb3Clustered := dict "influxdb3/clustered" (slice $.Site.Data.products.influxdb3_clustered.name "clustered") }} {{ $telegraf := dict "telegraf/v1" (slice "Telegraf" "telegraf") }} +{{ $telegrafController := dict "telegraf/controller" (slice "Telegraf Controller" "telegraf_controller") }} {{ $chronograf := dict "chronograf/v1" (slice "Chronograf" "chronograf") }} {{ $kapacitor := dict "kapacitor/v1" (slice "Kapacitor" "kapacitor") }} {{ $flux := dict "flux/v0" (slice "Flux" "flux") }} {{ $enterpriseInfluxdb := dict "enterprise_influxdb/v1" (slice "InfluxDB Enterprise" "enterprise_v1") }} -{{ $productInfo := merge $influxdbOSSv1 $influxdbOSSv2 $influxdbCloud $influxdb3Core $influxdb3Enterprise $influxdb3CloudServerless $influxdb3CloudDedicated $influxdb3Clustered $telegraf $chronograf $kapacitor $influxdb3Explorer $flux $enterpriseInfluxdb }} +{{ $productInfo := merge $influxdbOSSv1 $influxdbOSSv2 $influxdbCloud $influxdb3Core $influxdb3Enterprise $influxdb3CloudServerless $influxdb3CloudDedicated $influxdb3Clustered $telegraf $telegrafController $chronograf $kapacitor $influxdb3Explorer $flux $enterpriseInfluxdb }} {{ define "productLink" }} {{ $defaultAltProductPage := $.context.GetPage ((replaceRE .pageRoot .productPath $.context.Page.RelPermalink) | replaceRE `\/$` "") }} @@ -79,9 +80,15 @@
-

Other products

+

Telegraf

  • {{ template "productLink" (merge (dict "productPath" "telegraf/v1") $templateDefaults) }}
  • +
  • {{ template "productLink" (merge (dict "productPath" "telegraf/controller" "state" "alpha") $templateDefaults) }}
  • +
+
+
+

Other products

+
  • {{ template "productLink" (merge (dict "productPath" "chronograf/v1") $templateDefaults) }}
  • {{ template "productLink" (merge (dict "productPath" "kapacitor/v1") $templateDefaults) }}
From 2348d8db291f1cf4865d6fcace368ea498eeeeb1 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Fri, 12 Dec 2025 16:19:50 -0700 Subject: [PATCH 2/3] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- content/telegraf/controller/telegraf-enterprise.md | 2 +- layouts/partials/article/special-state.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/content/telegraf/controller/telegraf-enterprise.md b/content/telegraf/controller/telegraf-enterprise.md index 318cdf5835..84d88512fb 100644 --- a/content/telegraf/controller/telegraf-enterprise.md +++ b/content/telegraf/controller/telegraf-enterprise.md @@ -2,7 +2,7 @@ title: Telegraf Enterprise description: > Telegraf Enterprise is a premium, enterprise-grade offering that combines the - Telegraf Controller, a web application for management Telegraf deployments, + Telegraf Controller, a web application for managing Telegraf deployments, with an Enterprise Support Contract for Telegraf. It is designed for organizations running Telegraf at scale who require centralized configuration management, operational visibility, governance, and expert support from diff --git a/layouts/partials/article/special-state.html b/layouts/partials/article/special-state.html index 4aed2decb8..fea71cd192 100644 --- a/layouts/partials/article/special-state.html +++ b/layouts/partials/article/special-state.html @@ -24,7 +24,7 @@

{{ $displayName }} is in Private Alph part of the private alpha program, please sign up:

Sign Up for the Alpha

-

+

While in alpha, {{ $displayName }} is not meant for production use. The {{ $displayName}} documentation is a work in progress, and we are actively working to improve it. If you have any questions or suggestions, please From 6312d5a1df28a162a141043557340738d9ef0a42 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Mon, 15 Dec 2025 14:10:39 -0700 Subject: [PATCH 3/3] Apply suggestions from code review Co-authored-by: Jason Stirnaman --- content/telegraf/controller/agents/_index.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/content/telegraf/controller/agents/_index.md b/content/telegraf/controller/agents/_index.md index d4b889bd1a..539de8ccd6 100644 --- a/content/telegraf/controller/agents/_index.md +++ b/content/telegraf/controller/agents/_index.md @@ -2,8 +2,7 @@ title: Manage Telegraf agents seotitle: Manage Telegraf agents with Telegraf Controller description: > - Use Telegraf Controller to create, monitor, and delete Telegraf agents from - Telegraf Controller. + Use Telegraf Controller to create, monitor, and delete Telegraf agents. menu: telegraf_controller: name: Manage agents