Merge remote-tracking branch 'origin/master' into docs-v2-pr6622
# Conflicts: # .claude/skills/hugo-template-dev/SKILL.mdclaude/api-code-samples-plan-MEkQO
commit
a864f2e28d
|
|
@ -0,0 +1,329 @@
|
|||
---
|
||||
name: cypress-e2e-testing
|
||||
description: Run, validate, and analyze Cypress E2E tests for the InfluxData documentation site. Covers Hugo server management, test execution modes, and failure analysis.
|
||||
author: InfluxData
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# Cypress E2E Testing Skill
|
||||
|
||||
## Purpose
|
||||
|
||||
This skill guides agents through running Cypress end-to-end tests for the documentation site, including understanding when Hugo starts automatically vs. manually, interpreting test results, and debugging failures.
|
||||
|
||||
For comprehensive testing documentation, see **[DOCS-TESTING.md](../../../DOCS-TESTING.md)**.
|
||||
|
||||
## Key Insight: Hugo Server Management
|
||||
|
||||
**The test runner (`run-e2e-specs.js`) automatically manages Hugo.**
|
||||
|
||||
- **Port 1315** is used for testing (not 1313)
|
||||
- If port 1315 is free → starts Hugo automatically
|
||||
- If port 1315 is in use → checks if it's a working Hugo server and reuses it
|
||||
- Hugo logs written to `/tmp/hugo_server.log`
|
||||
|
||||
**You do NOT need to start Hugo separately** unless you want to keep it running between test runs for faster iteration.
|
||||
|
||||
## Quick Reference
|
||||
|
||||
| Task | Command |
|
||||
| ------------------------------- | ------------------------------------------------------------------------------------------------------- |
|
||||
| Test content file | `node cypress/support/run-e2e-specs.js content/path/to/file.md` |
|
||||
| Test with specific spec | `node cypress/support/run-e2e-specs.js --spec "cypress/e2e/content/spec.cy.js" content/path/to/file.md` |
|
||||
| Functionality test (no content) | `node cypress/support/run-e2e-specs.js --spec "cypress/e2e/page-context.cy.js" --no-mapping` |
|
||||
| Test shortcode examples | `yarn test:shortcode-examples` |
|
||||
|
||||
## Prerequisites
|
||||
|
||||
```bash
|
||||
# Install dependencies (required)
|
||||
yarn install
|
||||
|
||||
# Verify Cypress is available
|
||||
yarn cypress --version
|
||||
```
|
||||
|
||||
### API Reference Tests: Additional Prerequisites
|
||||
|
||||
**API reference pages require generation before testing.** The pages don't exist until you run:
|
||||
|
||||
```bash
|
||||
# Generate API documentation content from OpenAPI specs
|
||||
yarn build:api-docs
|
||||
```
|
||||
|
||||
This step:
|
||||
|
||||
- Processes OpenAPI specs in `api-docs/` directories
|
||||
- Generates Hugo content pages in `content/*/api/`
|
||||
- Creates operation pages, tag pages, and index pages
|
||||
|
||||
**Without this step**, all API reference tests will fail with 404 errors.
|
||||
|
||||
**Quick check** - verify API content exists:
|
||||
|
||||
```bash
|
||||
# Should list generated API content directories
|
||||
ls content/influxdb3/core/api/
|
||||
|
||||
# If "No such file or directory", run: yarn build:api-docs
|
||||
```
|
||||
|
||||
### Markdown Validation Tests: Additional Prerequisites
|
||||
|
||||
**Markdown validation tests require generated markdown files.** Run:
|
||||
|
||||
```bash
|
||||
# Build Hugo site first (generates HTML in public/)
|
||||
npx hugo --quiet
|
||||
|
||||
# Generate LLM-friendly markdown from HTML
|
||||
yarn build:md
|
||||
```
|
||||
|
||||
This creates `.md` files in the `public/` directory that the markdown validation tests check.
|
||||
|
||||
**Without this step**, markdown validation tests will fail with missing file errors.
|
||||
|
||||
## Test Execution Modes
|
||||
|
||||
### Mode 1: Content-Specific Tests (Default)
|
||||
|
||||
Tests specific content files by mapping them to URLs.
|
||||
|
||||
```bash
|
||||
# Single file
|
||||
node cypress/support/run-e2e-specs.js content/influxdb3/core/_index.md
|
||||
|
||||
# Multiple files
|
||||
node cypress/support/run-e2e-specs.js content/influxdb3/core/_index.md content/influxdb3/enterprise/_index.md
|
||||
|
||||
# With specific test spec
|
||||
node cypress/support/run-e2e-specs.js \
|
||||
--spec "cypress/e2e/content/api-reference.cy.js" \
|
||||
content/influxdb3/core/reference/api/_index.md
|
||||
```
|
||||
|
||||
**What happens:**
|
||||
|
||||
1. Maps content files to URLs (e.g., `content/influxdb3/core/_index.md` → `/influxdb3/core/`)
|
||||
2. Starts Hugo on port 1315 (if not running)
|
||||
3. Runs Cypress tests against mapped URLs
|
||||
4. Stops Hugo when done
|
||||
|
||||
### Mode 2: Functionality Tests (`--no-mapping`)
|
||||
|
||||
Tests UI functionality without requiring content file paths.
|
||||
|
||||
```bash
|
||||
# Run functionality test
|
||||
node cypress/support/run-e2e-specs.js \
|
||||
--spec "cypress/e2e/page-context.cy.js" \
|
||||
--no-mapping
|
||||
```
|
||||
|
||||
**Use when:** Testing JavaScript components, theme switching, navigation, or other UI behavior not tied to specific content.
|
||||
|
||||
### Mode 3: Reusing an Existing Hugo Server
|
||||
|
||||
For faster iteration during development:
|
||||
|
||||
```bash
|
||||
# Terminal 1: Start Hugo manually on port 1315
|
||||
npx hugo server --port 1315 --environment testing --noHTTPCache
|
||||
|
||||
# Terminal 2: Run tests (will detect and reuse existing server)
|
||||
node cypress/support/run-e2e-specs.js \
|
||||
--spec "cypress/e2e/content/api-reference.cy.js" \
|
||||
content/influxdb3/core/reference/api/_index.md
|
||||
```
|
||||
|
||||
## Available Test Specs
|
||||
|
||||
| Spec File | Purpose |
|
||||
| ------------------------------------------------------- | --------------------------------------------- |
|
||||
| `cypress/e2e/content/api-reference.cy.js` | API reference pages (RapiDoc, layouts, links) |
|
||||
| `cypress/e2e/content/index.cy.js` | General content validation |
|
||||
| `cypress/e2e/content/markdown-content-validation.cy.js` | LLM markdown generation |
|
||||
| `cypress/e2e/page-context.cy.js` | Page context and navigation |
|
||||
|
||||
## Understanding Test Output
|
||||
|
||||
### Success Output
|
||||
|
||||
```
|
||||
✅ e2e tests completed successfully
|
||||
📊 Detailed Test Results:
|
||||
• Total Tests: 25
|
||||
• Tests Passed: 25
|
||||
• Tests Failed: 0
|
||||
```
|
||||
|
||||
### Failure Output
|
||||
|
||||
```
|
||||
ℹ️ Note: 3 test(s) failed.
|
||||
📊 Detailed Test Results:
|
||||
• Total Tests: 25
|
||||
• Tests Passed: 22
|
||||
• Tests Failed: 3
|
||||
|
||||
📋 Failed Spec Files:
|
||||
• cypress/e2e/content/api-reference.cy.js
|
||||
- Failures: 3
|
||||
- Failed Tests:
|
||||
* has API info
|
||||
Error: Expected to find element '.article--description'
|
||||
```
|
||||
|
||||
### Common Failure Patterns
|
||||
|
||||
| Error | Likely Cause | Solution |
|
||||
| ----------------------------------- | ----------------------------------- | -------------------------------- |
|
||||
| All API tests fail with 404 | API content not generated | Run `yarn build:api-docs` first |
|
||||
| `Expected to find element 'X'` | Selector changed or element removed | Update test or fix template |
|
||||
| `Timed out waiting for element` | Page load issue or JS error | Check Hugo logs, browser console |
|
||||
| `cy.request() failed` | Broken link or 404 | Fix the link in content |
|
||||
| `Hugo server died during execution` | Build error or memory issue | Check `/tmp/hugo_server.log` |
|
||||
|
||||
## Debugging Failures
|
||||
|
||||
### Step 1: Check Hugo Logs
|
||||
|
||||
```bash
|
||||
cat /tmp/hugo_server.log | tail -50
|
||||
```
|
||||
|
||||
Look for:
|
||||
|
||||
- Template errors (`error calling partial`)
|
||||
- Build failures
|
||||
- Missing data files
|
||||
|
||||
### Step 2: Run Test in Interactive Mode
|
||||
|
||||
```bash
|
||||
# Start Hugo manually
|
||||
npx hugo server --port 1315 --environment testing
|
||||
|
||||
# In another terminal, open Cypress interactively
|
||||
yarn cypress open
|
||||
```
|
||||
|
||||
### Step 3: Inspect the Page
|
||||
|
||||
Visit `http://localhost:1315/path/to/page/` in a browser and:
|
||||
|
||||
- Open DevTools Console for JavaScript errors
|
||||
- Inspect elements to verify selectors
|
||||
- Check Network tab for failed requests
|
||||
|
||||
### Step 4: Run Single Test with Verbose Output
|
||||
|
||||
```bash
|
||||
DEBUG=cypress:* node cypress/support/run-e2e-specs.js \
|
||||
--spec "cypress/e2e/content/api-reference.cy.js" \
|
||||
content/influxdb3/core/reference/api/_index.md
|
||||
```
|
||||
|
||||
## Test Configuration
|
||||
|
||||
The test runner uses these settings:
|
||||
|
||||
```javascript
|
||||
{
|
||||
browser: 'chrome',
|
||||
baseUrl: 'http://localhost:1315',
|
||||
video: false, // Disabled in CI
|
||||
defaultCommandTimeout: 10000, // 15000 in CI
|
||||
pageLoadTimeout: 30000, // 45000 in CI
|
||||
}
|
||||
```
|
||||
|
||||
## Writing New Tests
|
||||
|
||||
### Basic Test Structure
|
||||
|
||||
```javascript
|
||||
describe('Feature Name', () => {
|
||||
beforeEach(() => {
|
||||
cy.visit('/path/to/page/');
|
||||
});
|
||||
|
||||
it('validates expected behavior', () => {
|
||||
cy.get('.selector').should('exist');
|
||||
cy.get('.selector').should('be.visible');
|
||||
cy.get('.selector').contains('Expected text');
|
||||
});
|
||||
});
|
||||
```
|
||||
|
||||
### Testing Components
|
||||
|
||||
```javascript
|
||||
describe('Component Name', () => {
|
||||
it('initializes correctly', () => {
|
||||
cy.visit('/path/with/component/');
|
||||
|
||||
// Wait for component initialization
|
||||
cy.get('[data-component="my-component"]', { timeout: 5000 })
|
||||
.should('be.visible');
|
||||
|
||||
// Verify component rendered expected elements
|
||||
cy.get('[data-component="my-component"] .child-element')
|
||||
.should('have.length.at.least', 1);
|
||||
});
|
||||
});
|
||||
```
|
||||
|
||||
### Testing Links
|
||||
|
||||
```javascript
|
||||
it('contains valid internal links', () => {
|
||||
cy.get('body').then(($body) => {
|
||||
if ($body.find('a[href^="/"]').length === 0) {
|
||||
cy.log('No internal links found');
|
||||
return;
|
||||
}
|
||||
|
||||
cy.get('a[href^="/"]').each(($a) => {
|
||||
cy.request($a.attr('href')).its('status').should('eq', 200);
|
||||
});
|
||||
});
|
||||
});
|
||||
```
|
||||
|
||||
## CI/CD Considerations
|
||||
|
||||
In CI environments:
|
||||
|
||||
- Video recording is disabled to save resources
|
||||
- Timeouts are increased (15s command, 45s page load)
|
||||
- Memory management is enabled
|
||||
- Only 1 test kept in memory at a time
|
||||
|
||||
## Related Files
|
||||
|
||||
- **Test runner**: `cypress/support/run-e2e-specs.js`
|
||||
- **Hugo server helper**: `cypress/support/hugo-server.js`
|
||||
- **URL mapper**: `cypress/support/map-files-to-urls.js`
|
||||
- **Config**: `cypress.config.js`
|
||||
- **Comprehensive docs**: `DOCS-TESTING.md`
|
||||
|
||||
## Checklist for Test Validation
|
||||
|
||||
Before concluding test analysis:
|
||||
|
||||
- [ ] For API tests: Verify `yarn build:api-docs` was run (check `ls content/*/api/`)
|
||||
- [ ] All tests passed, or failures are understood
|
||||
- [ ] Hugo logs checked for build errors
|
||||
- [ ] Failed selectors verified against current templates
|
||||
- [ ] Broken links identified and reported
|
||||
- [ ] JavaScript console errors investigated (if relevant)
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **hugo-template-dev** - For Hugo template syntax, data access patterns, and runtime testing
|
||||
- **docs-cli-workflow** - For creating/editing documentation content with CLI tools
|
||||
- **ts-component-dev** (agent) - TypeScript component behavior and interactivity
|
||||
- **hugo-ui-dev** (agent) - Hugo templates and SASS/CSS styling
|
||||
|
|
@ -83,12 +83,12 @@ Which do you prefer?
|
|||
```
|
||||
I can use the docs CLI to find the source files for this page:
|
||||
|
||||
npx docs edit <url>
|
||||
docs edit <url-or-path>
|
||||
|
||||
**Why**: [1-2 sentences explaining the benefit]
|
||||
|
||||
Options:
|
||||
1. **Use CLI** - I'll find and open the relevant files
|
||||
1. **Use CLI** - I'll find and list the relevant files (non-blocking)
|
||||
2. **I know the file** - Tell me the path and I'll edit directly
|
||||
|
||||
Which do you prefer?
|
||||
|
|
@ -122,12 +122,49 @@ No additional guidance needed—the CLI manages product selection, file generati
|
|||
# Create new documentation from a draft
|
||||
npx docs create <draft-path> --products <product-key>
|
||||
|
||||
# Create and open files in editor (non-blocking)
|
||||
npx docs create <draft-path> --products <product-key> --open
|
||||
|
||||
# Create and open, wait for editor (blocking)
|
||||
npx docs create <draft-path> --products <product-key> --open --wait
|
||||
|
||||
# Create at specific URL location
|
||||
npx docs create --url <url> --from-draft <draft-path>
|
||||
|
||||
# Find and open files for an existing page
|
||||
npx docs edit <url>
|
||||
npx docs edit --list <url> # List files without opening
|
||||
# Find and list files for an existing page (non-blocking, agent-friendly)
|
||||
docs edit <url-or-path>
|
||||
docs edit <url-or-path> --list # List files without opening editor
|
||||
|
||||
# Interactive editing (blocks until editor closes)
|
||||
docs edit <url-or-path> --wait
|
||||
|
||||
# Use specific editor
|
||||
docs edit <url-or-path> --editor nano
|
||||
|
||||
# Examples (both full URL and path work)
|
||||
docs edit https://docs.influxdata.com/influxdb3/core/admin/databases/
|
||||
docs edit /influxdb3/core/admin/databases/
|
||||
```
|
||||
|
||||
**Editor Selection** (checked in order):
|
||||
|
||||
1. `--editor` flag
|
||||
2. `DOCS_EDITOR` environment variable
|
||||
3. `VISUAL` environment variable
|
||||
4. `EDITOR` environment variable
|
||||
5. System default
|
||||
|
||||
**Important for AI Agents**:
|
||||
|
||||
- Both `docs edit` and `docs create --open` commands are non-blocking by default (launch editor in background and exit immediately)
|
||||
- This prevents agents from hanging while waiting for user editing
|
||||
- Use `--wait` only when you need to block until editing is complete
|
||||
- For `docs create`, omit `--open` to skip editor entirely (files are created and CLI exits)
|
||||
|
||||
For full CLI documentation, run `npx docs --help`.
|
||||
|
||||
## Related Skills
|
||||
|
||||
- **hugo-template-dev** - For Hugo template syntax, data access patterns, and runtime testing
|
||||
- **cypress-e2e-testing** - For running and debugging Cypress E2E tests
|
||||
- **ts-component-dev** (agent) - TypeScript component behavior and interactivity
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
name: hugo-template-dev
|
||||
description: Hugo template development skill for InfluxData docs-v2. Enforces proper build and runtime testing to catch template errors that build-only validation misses.
|
||||
author: InfluxData
|
||||
version: "1.0"
|
||||
version: "1.1"
|
||||
---
|
||||
|
||||
# Hugo Template Development Skill
|
||||
|
|
@ -23,9 +23,10 @@ Template errors like accessing undefined fields, nil values, or incorrect type a
|
|||
|
||||
After modifying files in `layouts/`, `layouts/partials/`, or `layouts/shortcodes/`:
|
||||
|
||||
**Step 1: Start Hugo server and capture output**
|
||||
|
||||
```bash
|
||||
# Step 1: Start Hugo server and capture output
|
||||
npx hugo server --port 1314 2>&1 | head -50
|
||||
npx hugo server --port 1315 2>&1 | head -50
|
||||
```
|
||||
|
||||
**Success criteria:**
|
||||
|
|
@ -33,20 +34,37 @@ npx hugo server --port 1314 2>&1 | head -50
|
|||
- No `error calling partial` messages
|
||||
- No `can't evaluate field` errors
|
||||
- No `template: ... failed` messages
|
||||
- Server shows "Web Server is available at <http://localhost:1314/>"
|
||||
- Server shows "Web Server is available at <http://localhost:1315/>"
|
||||
|
||||
**If errors appear:** Fix the template and repeat Step 1 before proceeding.
|
||||
|
||||
**Step 2: Verify the page renders**
|
||||
|
||||
```bash
|
||||
# Step 2: Verify the page renders (only after Step 1 passes)
|
||||
curl -s -o /dev/null -w "%{http_code}" http://localhost:1314/PATH/TO/PAGE/
|
||||
curl -s -o /dev/null -w "%{http_code}" http://localhost:1315/PATH/TO/PAGE/
|
||||
```
|
||||
|
||||
**Expected:** HTTP 200 status code
|
||||
|
||||
**Step 3: Browser testing (if MCP browser tools available)**
|
||||
|
||||
If `mcp__claude-in-chrome__*` tools are available, use them for visual inspection:
|
||||
|
||||
```
|
||||
# Navigate and screenshot
|
||||
mcp__claude-in-chrome__navigate({ url: "http://localhost:1315/PATH/", tabId: ... })
|
||||
mcp__claude-in-chrome__computer({ action: "screenshot", tabId: ... })
|
||||
|
||||
# Check for JavaScript errors
|
||||
mcp__claude-in-chrome__read_console_messages({ tabId: ..., onlyErrors: true })
|
||||
```
|
||||
|
||||
This catches runtime JavaScript errors that template changes may introduce.
|
||||
|
||||
**Step 4: Stop the test server**
|
||||
|
||||
```bash
|
||||
# Step 3: Stop the test server
|
||||
pkill -f "hugo server --port 1314"
|
||||
pkill -f "hugo server --port 1315"
|
||||
```
|
||||
|
||||
### Quick Test Command
|
||||
|
|
@ -54,7 +72,7 @@ pkill -f "hugo server --port 1314"
|
|||
Use this one-liner to test and get immediate feedback:
|
||||
|
||||
```bash
|
||||
timeout 15 npx hugo server --port 1314 2>&1 | grep -E "(error|Error|ERROR|fail|FAIL)" | head -20; pkill -f "hugo server --port 1314" 2>/dev/null
|
||||
timeout 15 npx hugo server --port 1315 2>&1 | grep -E "(error|Error|ERROR|fail|FAIL)" | head -20; pkill -f "hugo server --port 1315" 2>/dev/null
|
||||
```
|
||||
|
||||
If output is empty, no errors were detected.
|
||||
|
|
@ -363,15 +381,14 @@ When creating a new interactive feature:
|
|||
4. [ ] Register in `main.js` componentRegistry
|
||||
5. [ ] Add `data-component` attribute to HTML element
|
||||
6. [ ] Pass data via `data-*` attributes (not inline JS)
|
||||
7. [ ] Write Cypress tests for the component
|
||||
8. [ ] **NO inline `<script>` tags in templates**
|
||||
7. [ ] **NO inline `<script>` tags in templates**
|
||||
|
||||
## Debugging Templates
|
||||
|
||||
### Enable Verbose Mode
|
||||
|
||||
```bash
|
||||
npx hugo server --port 1314 --verbose 2>&1 | head -100
|
||||
npx hugo server --port 1315 --verbose 2>&1 | head -100
|
||||
```
|
||||
|
||||
### Print Variables for Debugging
|
||||
|
|
@ -400,8 +417,8 @@ pre-commit:
|
|||
hugo-template-test:
|
||||
glob: "layouts/**/*.html"
|
||||
run: |
|
||||
timeout 20 npx hugo server --port 1314 2>&1 | grep -E "error|Error" && exit 1 || exit 0
|
||||
pkill -f "hugo server --port 1314" 2>/dev/null
|
||||
timeout 20 npx hugo server --port 1315 2>&1 | grep -E "error|Error" && exit 1 || exit 0
|
||||
pkill -f "hugo server --port 1315" 2>/dev/null
|
||||
```
|
||||
|
||||
### GitHub Actions Workflow
|
||||
|
|
@ -409,133 +426,20 @@ pre-commit:
|
|||
```yaml
|
||||
- name: Test Hugo templates
|
||||
run: |
|
||||
npx hugo server --port 1314 &
|
||||
npx hugo server --port 1315 &
|
||||
sleep 10
|
||||
curl -f http://localhost:1314/ || exit 1
|
||||
curl -f http://localhost:1315/ || exit 1
|
||||
pkill -f hugo
|
||||
```
|
||||
|
||||
### Cypress E2E Tests for UI Features
|
||||
|
||||
After template changes that affect UI functionality, run Cypress tests to verify:
|
||||
|
||||
**Run a specific test file against a content page:**
|
||||
|
||||
```bash
|
||||
node cypress/support/run-e2e-specs.js \
|
||||
--spec "cypress/e2e/content/api-reference.cy.js" \
|
||||
content/influxdb3/core/reference/api/_index.md
|
||||
```
|
||||
|
||||
**Run tests against a URL (for deployed or running server):**
|
||||
|
||||
```bash
|
||||
node cypress/support/run-e2e-specs.js \
|
||||
--spec "cypress/e2e/content/api-reference.cy.js" \
|
||||
http://localhost:<port>/influxdb3/core/reference/api/
|
||||
```
|
||||
|
||||
**Example Cypress test structure for API reference:**
|
||||
|
||||
```javascript
|
||||
// cypress/e2e/content/api-reference.cy.js
|
||||
describe('API Reference Documentation', () => {
|
||||
beforeEach(() => {
|
||||
cy.visit('/influxdb3/core/reference/api/');
|
||||
});
|
||||
|
||||
it('displays 3-column layout with sidebar, content, and TOC', () => {
|
||||
cy.get('.sidebar').should('be.visible');
|
||||
cy.get('.api-content').should('be.visible');
|
||||
cy.get('.api-toc').should('be.visible');
|
||||
});
|
||||
|
||||
it('switches tabs correctly', () => {
|
||||
cy.get('.tabs a').contains('Authentication').click();
|
||||
cy.get('.tab-content').contains('Bearer Token').should('be.visible');
|
||||
});
|
||||
|
||||
it('displays API navigation in sidebar', () => {
|
||||
cy.get('.api-nav').should('be.visible');
|
||||
cy.get('.api-nav').contains('API v3');
|
||||
});
|
||||
|
||||
it('TOC updates highlight on scroll', () => {
|
||||
cy.get('.api-toc-nav a').first().click();
|
||||
cy.get('.api-toc-nav a.is-active').should('exist');
|
||||
});
|
||||
});
|
||||
```
|
||||
|
||||
**Check for JavaScript console errors (common pattern for feature development):**
|
||||
|
||||
```javascript
|
||||
// cypress/e2e/content/my-component.cy.js
|
||||
describe('My Component', () => {
|
||||
it('should not throw JavaScript console errors', () => {
|
||||
cy.visit('/path/to/page/');
|
||||
|
||||
// Wait for component to initialize
|
||||
cy.get('[data-component="my-component"]', { timeout: 5000 })
|
||||
.should('be.visible');
|
||||
|
||||
cy.window().then((win) => {
|
||||
const logs = [];
|
||||
const originalError = win.console.error;
|
||||
|
||||
// Intercept console.error calls
|
||||
win.console.error = (...args) => {
|
||||
logs.push(args.join(' '));
|
||||
originalError.apply(win.console, args);
|
||||
};
|
||||
|
||||
// Allow time for async operations
|
||||
cy.wait(2000);
|
||||
|
||||
cy.then(() => {
|
||||
// Filter for relevant errors (customize for your component)
|
||||
const relevantErrors = logs.filter(
|
||||
(log) =>
|
||||
log.includes('my-component') ||
|
||||
log.includes('Failed to parse') ||
|
||||
log.includes('is not a function')
|
||||
);
|
||||
expect(relevantErrors).to.have.length(0);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
```
|
||||
|
||||
This pattern is especially useful for catching:
|
||||
|
||||
- TypeScript/JavaScript runtime errors in components
|
||||
- JSON parsing failures from `data-*` attributes
|
||||
- Undefined function calls from missing imports
|
||||
- Template data binding issues that only manifest at runtime
|
||||
|
||||
**Integrate Cypress into development workflow:**
|
||||
|
||||
1. Create test file in `cypress/e2e/content/` for your feature
|
||||
2. Run tests after template changes to verify UI behavior
|
||||
3. Include test execution in PR checklist
|
||||
|
||||
**Quick Cypress commands:**
|
||||
|
||||
| Purpose | Command |
|
||||
| ---------------------- | ------------------------------------------------------------------------------------------- |
|
||||
| Run specific spec | `node cypress/support/run-e2e-specs.js --spec "path/to/spec.cy.js" content/path/to/page.md` |
|
||||
| Run all E2E tests | `yarn test:e2e` |
|
||||
| Run shortcode examples | `yarn test:shortcode-examples` |
|
||||
|
||||
## Quick Reference
|
||||
|
||||
| Action | Command |
|
||||
| ------------------------- | -------------------------------------------------------------------- |
|
||||
| Test templates (runtime) | `npx hugo server --port 1314 2>&1 \| head -50` |
|
||||
| Test templates (runtime) | `npx hugo server --port 1315 2>&1 \| head -50` |
|
||||
| Build only (insufficient) | `npx hugo --quiet` |
|
||||
| Check specific page | `curl -s -o /dev/null -w "%{http_code}" http://localhost:1314/path/` |
|
||||
| Stop test server | `pkill -f "hugo server --port 1314"` |
|
||||
| Check specific page | `curl -s -o /dev/null -w "%{http_code}" http://localhost:1315/path/` |
|
||||
| Stop test server | `pkill -f "hugo server --port 1315"` |
|
||||
| Debug data access | `<pre>{{ printf "%#v" $var }}</pre>` |
|
||||
|
||||
## Remember
|
||||
|
|
@ -546,10 +450,9 @@ This pattern is especially useful for catching:
|
|||
4. **Use `isset` and `index`** for safe data access
|
||||
5. **Hyphenated keys require `index` function** - dot notation fails
|
||||
|
||||
## Related Agents
|
||||
## Related Skills
|
||||
|
||||
This skill focuses on Hugo template development practices. For specialized tasks, use:
|
||||
|
||||
- **hugo-ui-dev** - Hugo templates and SASS/CSS styling
|
||||
- **ts-component-dev** - TypeScript component behavior and interactivity
|
||||
- **ui-testing** - Cypress E2E testing for UI components
|
||||
- **cypress-e2e-testing** - For E2E testing of UI components and pages
|
||||
- **docs-cli-workflow** - For creating/editing documentation content
|
||||
- **ts-component-dev** (agent) - TypeScript component behavior and interactivity
|
||||
- **ui-testing** (agent) - Cypress E2E testing for UI components
|
||||
|
|
|
|||
|
|
@ -1,11 +1,12 @@
|
|||
# InfluxData Documentation Repository (docs-v2)
|
||||
|
||||
> **For GitHub Copilot and other AI coding agents**
|
||||
>
|
||||
>
|
||||
> This is the primary instruction file for GitHub Copilot working with the InfluxData documentation site.
|
||||
> For detailed information on specific topics, refer to the specialized instruction files in `.github/instructions/`.
|
||||
>
|
||||
>
|
||||
> **Other instruction resources**:
|
||||
>
|
||||
> - [AGENTS.md](../AGENTS.md) - For general AI assistants (Claude, ChatGPT, etc.) with detailed workflow examples
|
||||
> - [CLAUDE.md](../CLAUDE.md) - For Claude with MCP
|
||||
> - [.github/agents/](agents/) - Custom specialist agents for specific tasks
|
||||
|
|
@ -13,13 +14,107 @@
|
|||
|
||||
## Quick Reference
|
||||
|
||||
| Task | Command | Time | Details |
|
||||
|------|---------|------|---------|
|
||||
| Install | `CYPRESS_INSTALL_BINARY=0 yarn install` | ~4s | Skip Cypress for CI |
|
||||
| Build | `npx hugo --quiet` | ~75s | NEVER CANCEL |
|
||||
| Dev Server | `npx hugo server` | ~92s | Port 1313 |
|
||||
| Test All | `yarn test:codeblocks:all` | 15-45m | NEVER CANCEL |
|
||||
| Lint | `yarn lint` | ~1m | Pre-commit checks |
|
||||
| Task | Command | Time | Details |
|
||||
| ---------------- | ----------------------------------------------------- | ------- | -------------------------- |
|
||||
| Install | `CYPRESS_INSTALL_BINARY=0 yarn install` | \~4s | Skip Cypress for CI |
|
||||
| Build | `npx hugo --quiet` | \~75s | NEVER CANCEL |
|
||||
| Dev Server | `npx hugo server` | \~92s | Port 1313 |
|
||||
| Create Docs | `docs create <draft> --products <keys>` | varies | AI-assisted scaffolding |
|
||||
| Create & Open | `docs create <draft> --products <keys> --open` | instant | Non-blocking (background) |
|
||||
| Create & Wait | `docs create <draft> --products <keys> --open --wait` | varies | Blocking (interactive) |
|
||||
| Edit Docs | `docs edit <url>` | instant | Non-blocking (background) |
|
||||
| Edit Docs (wait) | `docs edit <url> --wait` | varies | Blocking (interactive) |
|
||||
| List Files | `docs edit <url> --list` | instant | Show files without opening |
|
||||
| Test All | `yarn test:codeblocks:all` | 15-45m | NEVER CANCEL |
|
||||
| Lint | `yarn lint` | \~1m | Pre-commit checks |
|
||||
|
||||
## CLI Tools
|
||||
|
||||
### docs create - Create Documentation Files
|
||||
|
||||
Scaffolds new documentation pages with AI-assisted analysis. **Optionally opens created files in editor.**
|
||||
|
||||
**Examples:**
|
||||
|
||||
```bash
|
||||
# Create from draft (no editor)
|
||||
docs create drafts/new-feature.md --products influxdb3_core
|
||||
|
||||
# Create and open files (non-blocking, exits immediately)
|
||||
docs create drafts/new-feature.md --products influxdb3_core --open
|
||||
|
||||
# Create and open, wait for editor (blocking, interactive)
|
||||
docs create drafts/new-feature.md --products influxdb3_core --open --wait
|
||||
|
||||
# Use specific editor
|
||||
docs create drafts/new-feature.md --products influxdb3_core --open --editor nano
|
||||
|
||||
# Create at specific URL location
|
||||
docs create --url /influxdb3/core/admin/new/ --from-draft drafts/feature.md
|
||||
```
|
||||
|
||||
**Options:**
|
||||
|
||||
- `--open` - Open created files in editor after creation (non-blocking by default)
|
||||
- `--wait` - Wait for editor to close (use with `--open`)
|
||||
- `--editor <cmd>` - Specify editor command (use with `--open`)
|
||||
- `--products <keys>` - Comma-separated product keys (required)
|
||||
- `--dry-run` - Show what would be created without creating files
|
||||
- `--yes` - Skip confirmation prompt
|
||||
|
||||
### docs edit - Edit Documentation Files
|
||||
|
||||
Opens documentation files in your editor. **Non-blocking by default** (agent-friendly).
|
||||
|
||||
**Examples:**
|
||||
|
||||
```bash
|
||||
# Quick edit (exits immediately, editor in background)
|
||||
docs edit https://docs.influxdata.com/influxdb3/core/admin/databases/
|
||||
docs edit /influxdb3/core/admin/databases/
|
||||
|
||||
# Interactive edit (waits for editor to close)
|
||||
docs edit /influxdb3/core/admin/databases/ --wait
|
||||
|
||||
# List files without opening
|
||||
docs edit /influxdb3/core/admin/databases/ --list
|
||||
|
||||
# Use specific editor
|
||||
docs edit /influxdb3/core/admin/databases/ --editor nano
|
||||
```
|
||||
|
||||
**Options:**
|
||||
|
||||
- `--list` - List files without opening editor
|
||||
- `--wait` - Wait for editor to close (blocking mode)
|
||||
- `--editor <cmd>` - Specify editor command
|
||||
|
||||
### Editor Configuration
|
||||
|
||||
Both `docs create --open` and `docs edit` use the same editor resolution:
|
||||
|
||||
**Priority order:**
|
||||
|
||||
1. `--editor` flag
|
||||
2. `DOCS_EDITOR` environment variable
|
||||
3. `VISUAL` environment variable
|
||||
4. `EDITOR` environment variable
|
||||
5. System default (vim, nano, etc.)
|
||||
|
||||
**Examples:**
|
||||
|
||||
```bash
|
||||
export EDITOR=vim # For all CLI tools
|
||||
export DOCS_EDITOR=nano # Specifically for docs CLI
|
||||
export DOCS_EDITOR="code --wait" # VS Code with wait flag
|
||||
```
|
||||
|
||||
**Important for AI Agents:**
|
||||
|
||||
- Both commands are **non-blocking by default** (exit immediately)
|
||||
- This prevents agents and automation from hanging
|
||||
- Use `--wait` flag only when you need blocking behavior
|
||||
- For `docs create`, omit `--open` to skip editor entirely
|
||||
|
||||
## Working Effectively
|
||||
|
||||
|
|
@ -31,7 +126,7 @@ Be a critical thinking partner, provide honest feedback, and identify potential
|
|||
|
||||
1. Install dependencies (see Quick Reference table above)
|
||||
2. Build the static site
|
||||
3. Start development server at http://localhost:1313/
|
||||
3. Start development server at <http://localhost:1313/>
|
||||
4. Alternative: Use `docker compose up local-dev` if local setup fails
|
||||
|
||||
### Testing
|
||||
|
|
@ -39,6 +134,7 @@ Be a critical thinking partner, provide honest feedback, and identify potential
|
|||
For comprehensive testing procedures, see **[DOCS-TESTING.md](../DOCS-TESTING.md)**.
|
||||
|
||||
**Quick reference** (NEVER CANCEL long-running tests):
|
||||
|
||||
- **Code blocks**: `yarn test:codeblocks:all` (15-45 minutes)
|
||||
- **Links**: `yarn test:links` (1-5 minutes, requires link-checker binary)
|
||||
- **Style**: `docker compose run -T vale content/**/*.md` (30-60 seconds)
|
||||
|
|
@ -79,7 +175,7 @@ yarn test:links content/example.md
|
|||
- **Config**: `/config/_default/`, `package.json`, `compose.yaml`, `lefthook.yml`
|
||||
- **Testing**: `cypress.config.js`, `pytest.ini`, `.vale.ini`
|
||||
- **Assets**: `/assets/` (JS, CSS), `/layouts/` (templates), `/data/` (YAML/JSON)
|
||||
- **Build output**: `/public/` (~529MB, gitignored)
|
||||
- **Build output**: `/public/` (\~529MB, gitignored)
|
||||
|
||||
## Technology Stack
|
||||
|
||||
|
|
@ -91,7 +187,9 @@ yarn test:links content/example.md
|
|||
## Common Issues
|
||||
|
||||
### Network Restrictions
|
||||
|
||||
Commands that may fail in restricted environments:
|
||||
|
||||
- Docker builds (external repos)
|
||||
- `docker compose up local-dev` (Alpine packages)
|
||||
- Cypress installation (use `CYPRESS_INSTALL_BINARY=0`)
|
||||
|
|
@ -116,7 +214,7 @@ npx hugo --quiet
|
|||
|
||||
- **Product versions**: `/data/products.yml`
|
||||
- **Query languages**: SQL, InfluxQL, Flux (per product version)
|
||||
- **Site**: https://docs.influxdata.com
|
||||
- **Site**: <https://docs.influxdata.com>
|
||||
|
||||
### Writing Style
|
||||
|
||||
|
|
@ -125,7 +223,7 @@ Follow these conventions when creating or editing documentation:
|
|||
- **Style guide**: Google Developer Documentation Style Guide
|
||||
- **Voice**: Active voice, present tense, second person for instructions
|
||||
- **Line breaks**: Use semantic line feeds (one sentence per line) for better diffs
|
||||
- **Formatting**:
|
||||
- **Formatting**:
|
||||
- Headings: Use h2-h6 only (h1 auto-generated from frontmatter `title`)
|
||||
- Code blocks: Format within 80 characters where possible
|
||||
- CLI examples: Use long options (`--option` not `-o`)
|
||||
|
|
@ -136,6 +234,7 @@ Follow these conventions when creating or editing documentation:
|
|||
### Common Shortcodes
|
||||
|
||||
**Callouts** (use GitHub-style alerts):
|
||||
|
||||
```markdown
|
||||
> [!Note]
|
||||
> [!Warning]
|
||||
|
|
@ -145,17 +244,19 @@ Follow these conventions when creating or editing documentation:
|
|||
```
|
||||
|
||||
**Required elements**:
|
||||
|
||||
```markdown
|
||||
{{< req >}}
|
||||
{{< req type="key" >}}
|
||||
```
|
||||
|
||||
**Code placeholders**:
|
||||
~~~markdown
|
||||
|
||||
````markdown
|
||||
```sh { placeholders="DATABASE_NAME|API_TOKEN" }
|
||||
curl -X POST https://cloud2.influxdata.com/api/v2/write?bucket=DATABASE_NAME
|
||||
```
|
||||
~~~
|
||||
````
|
||||
|
||||
For complete shortcode reference, see [DOCS-SHORTCODES.md](../DOCS-SHORTCODES.md).
|
||||
|
||||
|
|
@ -172,7 +273,7 @@ Examples:
|
|||
- docs(core): update configuration examples
|
||||
```
|
||||
|
||||
**Types**: `fix`, `feat`, `style`, `refactor`, `test`, `chore`, `docs`
|
||||
**Types**: `fix`, `feat`, `style`, `refactor`, `test`, `chore`, `docs`\
|
||||
**Scopes**: `enterprise`, `influxdb3`, `core`, `cloud`, `telegraf`, product/component names
|
||||
|
||||
Skip pre-commit hooks (if needed): `git commit --no-verify`
|
||||
|
|
@ -180,6 +281,7 @@ Skip pre-commit hooks (if needed): `git commit --no-verify`
|
|||
### Writing Documentation
|
||||
|
||||
For detailed guidelines, see:
|
||||
|
||||
- **Workflow**: [DOCS-CONTRIBUTING.md](../DOCS-CONTRIBUTING.md) - Contribution guidelines and workflow
|
||||
- **Shortcodes**: [DOCS-SHORTCODES.md](../DOCS-SHORTCODES.md) - Complete shortcode reference
|
||||
- **Examples**: [content/example.md](../content/example.md) - Working examples for testing
|
||||
|
|
@ -204,6 +306,7 @@ weight: # Sort order: 1-99 (top), 101-199 (level 2), 201-299 (level 3) (req
|
|||
```
|
||||
|
||||
**Shared content** (avoid duplication):
|
||||
|
||||
```yaml
|
||||
---
|
||||
title: Page Title
|
||||
|
|
@ -217,6 +320,7 @@ source: /shared/influxdb3-admin/topic-name.md # Points to shared content
|
|||
```
|
||||
|
||||
Shared content files in `/content/shared/`:
|
||||
|
||||
- Don't include frontmatter (defined in referring files)
|
||||
- Can use `{{% show-in %}}` and `{{% hide-in %}}` for product-specific content
|
||||
- Can use the `version` keyword for version-specific paths
|
||||
|
|
@ -247,14 +351,14 @@ Hello, world!
|
|||
|
||||
## Troubleshooting
|
||||
|
||||
| Issue | Solution |
|
||||
|-------|----------|
|
||||
| Pytest collected 0 items | Use `python` not `py` for language identifier |
|
||||
| Hugo build errors | Check `/config/_default/` |
|
||||
| Docker build fails | Expected in restricted networks - use local Hugo |
|
||||
| Cypress install fails | Use `CYPRESS_INSTALL_BINARY=0 yarn install` |
|
||||
| Link validation slow | Test specific files: `yarn test:links content/file.md` |
|
||||
| Vale errors | Check `.ci/vale/styles/config/vocabularies` |
|
||||
| Issue | Solution |
|
||||
| ------------------------ | ------------------------------------------------------ |
|
||||
| Pytest collected 0 items | Use `python` not `py` for language identifier |
|
||||
| Hugo build errors | Check `/config/_default/` |
|
||||
| Docker build fails | Expected in restricted networks - use local Hugo |
|
||||
| Cypress install fails | Use `CYPRESS_INSTALL_BINARY=0 yarn install` |
|
||||
| Link validation slow | Test specific files: `yarn test:links content/file.md` |
|
||||
| Vale errors | Check `.ci/vale/styles/config/vocabularies` |
|
||||
|
||||
## Specialized Instructions
|
||||
|
||||
|
|
@ -262,29 +366,29 @@ Hello, world!
|
|||
|
||||
These instructions are automatically loaded by GitHub Copilot based on the files you're working with:
|
||||
|
||||
| Pattern | File | Description |
|
||||
|---------|------|-------------|
|
||||
| `content/**/*.md` | [content.instructions.md](instructions/content.instructions.md) | Content file guidelines, frontmatter, shortcodes |
|
||||
| `layouts/**/*.html` | [layouts.instructions.md](instructions/layouts.instructions.md) | Shortcode implementation patterns and testing |
|
||||
| `api-docs/**/*.yml` | [api-docs.instructions.md](instructions/api-docs.instructions.md) | OpenAPI spec workflow |
|
||||
| `assets/js/**/*.{js,ts}` | [assets.instructions.md](instructions/assets.instructions.md) | TypeScript/JavaScript and CSS development |
|
||||
| Pattern | File | Description |
|
||||
| ------------------------ | ----------------------------------------------------------------- | ------------------------------------------------ |
|
||||
| `content/**/*.md` | [content.instructions.md](instructions/content.instructions.md) | Content file guidelines, frontmatter, shortcodes |
|
||||
| `layouts/**/*.html` | [layouts.instructions.md](instructions/layouts.instructions.md) | Shortcode implementation patterns and testing |
|
||||
| `api-docs/**/*.yml` | [api-docs.instructions.md](instructions/api-docs.instructions.md) | OpenAPI spec workflow |
|
||||
| `assets/js/**/*.{js,ts}` | [assets.instructions.md](instructions/assets.instructions.md) | TypeScript/JavaScript and CSS development |
|
||||
|
||||
### Custom Specialist Agents
|
||||
|
||||
Use these agents for specialized tasks:
|
||||
|
||||
| Agent | File | Use When |
|
||||
|-------|------|----------|
|
||||
| Agent | File | Use When |
|
||||
| ------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------------- |
|
||||
| **TypeScript & Hugo Dev** | [typescript-hugo-agent.md](agents/typescript-hugo-agent.md) | TypeScript migration, Hugo asset pipeline, component architecture |
|
||||
|
||||
### General Documentation
|
||||
|
||||
| Topic | File | Description |
|
||||
|-------|------|-------------|
|
||||
| **Testing** | [DOCS-TESTING.md](../DOCS-TESTING.md) | Comprehensive testing procedures |
|
||||
| Topic | File | Description |
|
||||
| ---------------- | ----------------------------------------------- | ----------------------------------------- |
|
||||
| **Testing** | [DOCS-TESTING.md](../DOCS-TESTING.md) | Comprehensive testing procedures |
|
||||
| **Contributing** | [DOCS-CONTRIBUTING.md](../DOCS-CONTRIBUTING.md) | Full contribution workflow and guidelines |
|
||||
| **Frontmatter** | [DOCS-FRONTMATTER.md](../DOCS-FRONTMATTER.md) | Complete page metadata reference |
|
||||
| **Shortcodes** | [DOCS-SHORTCODES.md](../DOCS-SHORTCODES.md) | Complete shortcode reference |
|
||||
| **Frontmatter** | [DOCS-FRONTMATTER.md](../DOCS-FRONTMATTER.md) | Complete page metadata reference |
|
||||
| **Shortcodes** | [DOCS-SHORTCODES.md](../DOCS-SHORTCODES.md) | Complete shortcode reference |
|
||||
|
||||
## Important Notes
|
||||
|
||||
|
|
|
|||
|
|
@ -8,9 +8,47 @@ applyTo: "content/**/*.md"
|
|||
**Shortcodes reference**: [DOCS-SHORTCODES.md](../../DOCS-SHORTCODES.md)
|
||||
**Working examples**: [content/example.md](../../content/example.md)
|
||||
|
||||
## CLI Tools for Content Workflow
|
||||
|
||||
### Creating New Content
|
||||
|
||||
Use `docs create` for AI-assisted scaffolding:
|
||||
|
||||
```bash
|
||||
# Create from draft
|
||||
docs create drafts/feature.md --products influxdb3_core
|
||||
|
||||
# Create and open files in editor (non-blocking)
|
||||
docs create drafts/feature.md --products influxdb3_core --open
|
||||
|
||||
# Create and open, wait for editor (blocking)
|
||||
docs create drafts/feature.md --products influxdb3_core --open --wait
|
||||
```
|
||||
|
||||
### Editing Existing Content
|
||||
|
||||
Use `docs edit` to quickly find and open content files:
|
||||
|
||||
```bash
|
||||
# Find and list files (no editor)
|
||||
docs edit /influxdb3/core/admin/databases/ --list
|
||||
|
||||
# Open in editor (non-blocking, exits immediately)
|
||||
docs edit /influxdb3/core/admin/databases/
|
||||
|
||||
# Open and wait for editor (blocking, interactive)
|
||||
docs edit /influxdb3/core/admin/databases/ --wait
|
||||
|
||||
# Use specific editor
|
||||
docs edit /influxdb3/core/admin/databases/ --editor nano
|
||||
```
|
||||
|
||||
**Note:** Both commands are non-blocking by default (agent-friendly). Use `--wait` for interactive editing sessions.
|
||||
|
||||
## Required for All Content Files
|
||||
|
||||
Every content file needs:
|
||||
|
||||
```yaml
|
||||
title: # Page h1 heading
|
||||
description: # SEO meta description
|
||||
|
|
@ -30,6 +68,7 @@ weight: # Sort order (1-99, 101-199, 201-299...)
|
|||
## Most Common Shortcodes
|
||||
|
||||
**Callouts**:
|
||||
|
||||
```markdown
|
||||
> [!Note]
|
||||
> [!Warning]
|
||||
|
|
@ -39,21 +78,25 @@ weight: # Sort order (1-99, 101-199, 201-299...)
|
|||
```
|
||||
|
||||
**Required elements**:
|
||||
|
||||
```markdown
|
||||
{{< req >}}
|
||||
{{< req type="key" >}}
|
||||
```
|
||||
|
||||
**Code placeholders**:
|
||||
~~~markdown
|
||||
|
||||
````markdown
|
||||
```sh { placeholders="DATABASE_NAME|API_TOKEN" }
|
||||
curl -X POST https://cloud2.influxdata.com/api/v2/write?bucket=DATABASE_NAME
|
||||
```
|
||||
~~~
|
||||
````
|
||||
|
||||
Replace the following:
|
||||
|
||||
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}: your database name
|
||||
```
|
||||
|
||||
````
|
||||
|
||||
**Tabbed content**:
|
||||
```markdown
|
||||
|
|
@ -69,6 +112,6 @@ Content for tab 1
|
|||
Content for tab 2
|
||||
{{% /tab-content %}}
|
||||
{{< /tabs-wrapper >}}
|
||||
```
|
||||
````
|
||||
|
||||
For complete shortcodes reference, see [DOCS-SHORTCODES.md](../../DOCS-SHORTCODES.md).
|
||||
|
|
|
|||
|
|
@ -57,6 +57,7 @@ tmp
|
|||
# User context files for AI assistant tools
|
||||
.context/*
|
||||
!.context/README.md
|
||||
.task.md
|
||||
|
||||
# External repos
|
||||
.ext/*
|
||||
|
|
|
|||
59
README.md
59
README.md
|
|
@ -23,8 +23,24 @@ This repository includes a `docs` CLI tool for common documentation workflows:
|
|||
# Create new documentation from a draft
|
||||
npx docs create drafts/new-feature.md --products influxdb3_core
|
||||
|
||||
# Edit existing documentation from a URL
|
||||
# Create and open files in editor (non-blocking)
|
||||
npx docs create drafts/new-feature.md --products influxdb3_core --open
|
||||
|
||||
# Create and open, wait for editor (blocking)
|
||||
npx docs create drafts/new-feature.md --products influxdb3_core --open --wait
|
||||
|
||||
# Edit existing documentation (supports full URLs or paths)
|
||||
npx docs edit https://docs.influxdata.com/influxdb3/core/admin/
|
||||
npx docs edit /influxdb3/core/admin/
|
||||
|
||||
# Edit and wait for editor to close (blocking)
|
||||
npx docs edit /influxdb3/core/admin/ --wait
|
||||
|
||||
# List files without opening
|
||||
npx docs edit /influxdb3/core/admin/ --list
|
||||
|
||||
# Use a specific editor
|
||||
npx docs edit /influxdb3/core/admin/ --editor nano
|
||||
|
||||
# Add placeholder syntax to code blocks
|
||||
npx docs placeholders content/influxdb3/core/admin/upgrade.md
|
||||
|
|
@ -35,6 +51,47 @@ npx docs --help
|
|||
|
||||
The `docs` command is automatically configured when you run `yarn install`.
|
||||
|
||||
### Editor Configuration
|
||||
|
||||
The `docs edit` and `docs create --open` commands open documentation files in your preferred editor. By default, they launch the editor in the background and exit immediately (agent-friendly). Use the `--wait` flag for interactive editing sessions.
|
||||
|
||||
**Setting Your Editor:**
|
||||
|
||||
The CLI selects an editor in this priority order:
|
||||
|
||||
1. `--editor` flag
|
||||
2. `DOCS_EDITOR` environment variable
|
||||
3. `VISUAL` environment variable
|
||||
4. `EDITOR` environment variable
|
||||
5. System default (vim, nano, etc.)
|
||||
|
||||
**Examples:**
|
||||
|
||||
```sh
|
||||
# Set editor for all commands
|
||||
export EDITOR=vim
|
||||
|
||||
# Set editor specifically for docs CLI
|
||||
export DOCS_EDITOR=nano
|
||||
|
||||
# Use VS Code with built-in wait flag
|
||||
export DOCS_EDITOR="code --wait"
|
||||
```
|
||||
|
||||
**For Automated Workflows:**
|
||||
|
||||
The default non-blocking behavior prevents AI agents and automation scripts from hanging:
|
||||
|
||||
```sh
|
||||
# In a script or CI pipeline
|
||||
docs edit /some/url # Returns immediately
|
||||
echo "Editor launched" # This runs right away
|
||||
|
||||
# If you need to wait (interactive editing)
|
||||
docs edit /some/url --wait # Blocks until editor closes
|
||||
echo "Editor closed" # This waits for editor to close
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
Comprehensive reference documentation for contributors:
|
||||
|
|
|
|||
|
|
@ -10,6 +10,16 @@ aliases:
|
|||
- /chronograf/v1/about_the_project/release-notes-changelog/
|
||||
---
|
||||
|
||||
## v1.10.9 {date="2026-01-07"}
|
||||
|
||||
### Features
|
||||
|
||||
- Add support for InfluxDB v3
|
||||
|
||||
### Maintenance updates
|
||||
|
||||
- Upgrade Go to 1.25.3.
|
||||
|
||||
## v1.10.8 {date="2025-08-15"}
|
||||
|
||||
### Bug Fixes
|
||||
|
|
|
|||
|
|
@ -13,6 +13,8 @@ related:
|
|||
- /influxdb/cloud/query-data/get-started/
|
||||
- /influxdb/cloud/query-data/influxql/
|
||||
- /flux/v0/get-started/, Get started with Flux
|
||||
aliases:
|
||||
- /influxdb/cloud/visualize-data/grafana/
|
||||
alt_links:
|
||||
v1: /influxdb/v1/tools/grafana/
|
||||
enterprise_v1: /enterprise_influxdb/v1/tools/grafana/
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ weight: 120
|
|||
influxdb/v2/tags: [grafana]
|
||||
aliases:
|
||||
- /influxdb/v2/visualize-data/other-tools/grafana/
|
||||
- /influxdb/v2/visualize-data/grafana/
|
||||
related:
|
||||
- https://grafana.com/docs/, Grafana documentation
|
||||
- /influxdb/v2/query-data/get-started/
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ list_code_example: |
|
|||
--header "Authorization: Bearer MANAGEMENT_TOKEN"
|
||||
```
|
||||
related:
|
||||
- /influxdb3/cloud-dedicated/admin/databases/undelete/
|
||||
- /influxdb3/cloud-dedicated/reference/cli/influxctl/database/delete/
|
||||
- /influxdb3/cloud-dedicated/reference/api/
|
||||
---
|
||||
|
|
@ -47,6 +48,13 @@ to delete a database from your {{< product-name omit=" Clustered" >}} cluster.
|
|||
> that granted access to the deleted database will also grant access to the new
|
||||
> database.
|
||||
|
||||
> [!Note]
|
||||
> #### Deleted databases may be able to be restored
|
||||
>
|
||||
> Deleted databases may be able to be [restored](/influxdb3/cloud-dedicated/admin/databases/undelete/)
|
||||
> within approximately 7 days of deletion, depending on when cleanup jobs run.
|
||||
> After the cleanup job runs, the database and its data are permanently removed.
|
||||
|
||||
{{< tabs-wrapper >}}
|
||||
{{% tabs %}}
|
||||
[Admin UI](#)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
title: Undelete a database
|
||||
description: >
|
||||
Use the [`influxctl database undelete` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete/)
|
||||
Use the Admin UI or the [`influxctl database undelete` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete/)
|
||||
to restore a previously deleted database in your {{< product-name omit=" Cluster" >}} cluster.
|
||||
menu:
|
||||
influxdb3_cloud_dedicated:
|
||||
|
|
@ -17,7 +17,7 @@ related:
|
|||
- /influxdb3/cloud-dedicated/admin/tokens/database/create/
|
||||
---
|
||||
|
||||
Use the [`influxctl database undelete` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete/)
|
||||
Use the Admin UI or the [`influxctl` CLI](/influxdb3/cloud-dedicated/reference/cli/influxctl/)
|
||||
to restore a previously deleted database in your {{< product-name omit=" Cluster" >}} cluster.
|
||||
|
||||
> [!Important]
|
||||
|
|
@ -37,7 +37,29 @@ table limits, and column limits as when it was deleted.
|
|||
> After this grace period, all Parquet files associated with the deleted database
|
||||
> are permanently removed and the database cannot be undeleted.
|
||||
|
||||
## Undelete a database using the influxctl CLI
|
||||
{{< tabs-wrapper >}}
|
||||
{{% tabs %}}
|
||||
[Admin UI](#admin-ui)
|
||||
[influxctl](#influxctl)
|
||||
{{% /tabs %}}
|
||||
{{% tab-content %}}
|
||||
{{< admin-ui-access >}}
|
||||
|
||||
In the database list, find the deleted database you want to restore.
|
||||
Deleted databases are shown with a "Deleted" status indicator.
|
||||
You can sort on column headers or use the **Search** field to find a specific database.
|
||||
|
||||
1. In the options menu (three vertical dots to the right of the database), click **Restore Database**. The **Restore Database** dialog displays.
|
||||
2. In the **Restore Database** dialog, review the database name and deletion date.
|
||||
3. Click the **Restore Database** button to restore the database.
|
||||
{{% /tab-content %}}
|
||||
{{% tab-content %}}
|
||||
|
||||
1. If you haven't already, [download and install the `influxctl` CLI](/influxdb3/cloud-dedicated/reference/cli/influxctl/#download-and-install-influxctl).
|
||||
2. Use the [`influxctl database undelete` command](/influxdb3/cloud-dedicated/reference/cli/influxctl/database/undelete/)
|
||||
to restore a deleted database. Provide the following:
|
||||
|
||||
- The name of the deleted database to restore
|
||||
|
||||
{{% code-placeholders "DATABASE_NAME" %}}
|
||||
```sh
|
||||
|
|
@ -49,6 +71,8 @@ Replace the following:
|
|||
|
||||
- {{% code-placeholder-key %}}`DATABASE_NAME`{{% /code-placeholder-key %}}:
|
||||
Name of the deleted database to restore
|
||||
{{% /tab-content %}}
|
||||
{{< /tabs-wrapper >}}
|
||||
|
||||
## Recreate tokens for the database
|
||||
|
||||
|
|
|
|||
|
|
@ -61,6 +61,33 @@ directory. This new directory contains artifacts associated with the specified r
|
|||
|
||||
---
|
||||
|
||||
## 20251218-1946608 {date="2025-12-18"}
|
||||
|
||||
### Quickstart
|
||||
|
||||
```yaml
|
||||
spec:
|
||||
package:
|
||||
image: us-docker.pkg.dev/influxdb2-artifacts/clustered/influxdb:20251218-1946608
|
||||
```
|
||||
|
||||
#### Release artifacts
|
||||
- [app-instance-schema.json](/downloads/clustered-release-artifacts/20251218-1946608/app-instance-schema.json)
|
||||
- [example-customer.yml](/downloads/clustered-release-artifacts/20251218-1946608/example-customer.yml)
|
||||
- [InfluxDB Clustered README EULA July 2024.txt](/downloads/clustered-release-artifacts/InfluxDB%20Clustered%20README%20EULA%20July%202024.txt)
|
||||
|
||||
### Highlights
|
||||
|
||||
- The garbage collector has been fixed to support customers who specify the S3 bucket in `spec.package.spec.objectStore.s3.endpoint` (for example, `"https://$BUCKET.$REGION.amazonaws.com"`) and an additional prefix in `spec.package.spec.objectStore.bucket`; if you previously disabled `INFLUXDB_IOX_CREATE_CATALOG_BACKUP_DATA_SNAPSHOT_FILES` and `INFLUXDB_IOX_DELETE_USING_CATALOG_BACKUP_DATA_SNAPSHOT_FILES` to work around the bug, you can remove those overrides now.
|
||||
- Add support for both 'postgres' and 'postgresql' URI schemes in catalog DSN parsing.
|
||||
- Add support to the Management API for:
|
||||
- Renaming databases
|
||||
- Undeleting databases
|
||||
- Renaming tables
|
||||
- Deleting tables
|
||||
- Undeleting tables
|
||||
- Dependency updates and miscellaneous security fixes.
|
||||
|
||||
## 20250925-1878107 {date="2025-09-25"}
|
||||
|
||||
### Quickstart
|
||||
|
|
|
|||
|
|
@ -227,6 +227,12 @@ influxdb3 serve \
|
|||
--mode query,process
|
||||
```
|
||||
|
||||
> [!Important]
|
||||
> When using `process` mode, you must also specify `--plugin-dir` to configure
|
||||
> the Python plugin environment. Without this flag, starting a node with `process`
|
||||
> mode will fail with an error. See the [plugin-dir configuration option](/influxdb3/enterprise/reference/config-options/#plugin-dir)
|
||||
> for more information.
|
||||
|
||||
## Cluster configuration examples
|
||||
|
||||
- [High availability cluster](#high-availability-cluster)
|
||||
|
|
|
|||
|
|
@ -249,6 +249,7 @@ influxdb3 serve \
|
|||
--data-dir ~/.influxdb3 \
|
||||
--node-id my-host-01 \
|
||||
--cluster-id my-cluster-01 \
|
||||
--plugin-dir ~/.influxdb3/plugins \
|
||||
--mode ingest,query,process
|
||||
```
|
||||
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ When you install via DEB or RPM on a `systemd`-enabled system, {{< product-name
|
|||
|
||||
The provided unit file assumes the following filesystem layout:
|
||||
|
||||
* `/etc/influxdb3`: directory for {{< product-name >}} configuration (`0755` permissions with `influxdb3:influxdb3` ownership by default)
|
||||
* `/etc/influxdb3`: directory for {{< product-name >}} configuration (`0755` permissions with `root:influxdb3` ownership by default)
|
||||
* `/etc/influxdb3/influxdb3-{{< product-key >}}.conf`: TOML configuration file
|
||||
* `/usr/bin/influxdb3`: {{< product-name >}} binary
|
||||
* `/usr/lib/influxdb3/python`: directory containing the embedded interpreter used by the {{< product-name >}} processing engine
|
||||
|
|
|
|||
|
|
@ -832,7 +832,92 @@ Sets the endpoint of an S3-compatible, HTTP/2-enabled object store cache.
|
|||
|
||||
#### log-filter
|
||||
|
||||
Sets the filter directive for logs.
|
||||
Sets the filter directive for logs. Use this option to control the verbosity of
|
||||
server logs globally or for specific components.
|
||||
|
||||
##### Log levels
|
||||
|
||||
The following log levels are available (from least to most verbose):
|
||||
|
||||
| Level | Description |
|
||||
| :------ | :---------------------------------------------------------------------------------------------------- |
|
||||
| `error` | Only errors |
|
||||
| `warn` | Warnings and errors |
|
||||
| `info` | Informational messages, warnings, and errors _(default)_ |
|
||||
| `debug` | Debug information for troubleshooting, plus all above levels |
|
||||
| `trace` | Very detailed tracing information, plus all above levels (produces high log volume) |
|
||||
|
||||
##### Basic usage
|
||||
|
||||
To set the log level globally, pass one of the log levels:
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
influxdb3 serve --log-filter debug
|
||||
```
|
||||
|
||||
##### Targeted filtering
|
||||
|
||||
Globally enabling `debug` or `trace` produces a high volume of log output.
|
||||
For more targeted debugging, you can set different log levels for specific
|
||||
components using the format `<global_level>,<component>=<level>`.
|
||||
|
||||
###### Debug write buffer operations
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
influxdb3 serve --log-filter info,influxdb3_write_buffer=debug
|
||||
```
|
||||
|
||||
###### Trace WAL operations
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
influxdb3 serve --log-filter info,influxdb3_wal=trace
|
||||
```
|
||||
|
||||
###### Multiple targeted filters
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
influxdb3 serve --log-filter info,influxdb3_write_buffer=debug,influxdb3_wal=debug
|
||||
```
|
||||
|
||||
{{% show-in "enterprise" %}}
|
||||
|
||||
###### Debug Enterprise storage engine operations
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
influxdb3 serve --log-filter info,influxdb3_pacha_tree=debug
|
||||
```
|
||||
|
||||
{{% /show-in %}}
|
||||
|
||||
##### Common component names
|
||||
|
||||
The following are common component names you can use for targeted filtering:
|
||||
|
||||
| Component | Description |
|
||||
| :------------------------------------ | :------------------------------------------------------- |
|
||||
| `influxdb3_write_buffer` | Write buffer operations |
|
||||
| `influxdb3_wal` | Write-ahead log operations |
|
||||
| `influxdb3_catalog` | Catalog and schema operations |
|
||||
| `influxdb3_cache` | Caching operations |
|
||||
{{% show-in "enterprise" %}}`influxdb3_pacha_tree` | Enterprise storage engine operations |
|
||||
`influxdb3_enterprise` | Enterprise-specific features |
|
||||
{{% /show-in %}}
|
||||
|
||||
> [!Note]
|
||||
> Targeted filtering requires knowledge of the codebase component names.
|
||||
> The component names correspond to Rust package names in the InfluxDB 3 source
|
||||
> code. Use `debug` or `trace` sparingly on specific components to avoid
|
||||
> excessive log output.
|
||||
|
||||
| influxdb3 serve option | Environment variable |
|
||||
| :--------------------- | :------------------- |
|
||||
|
|
|
|||
|
|
@ -319,17 +319,22 @@ Provide your bucket name and credentials to access the S3 object store.
|
|||
|
||||
{{% show-in "enterprise" %}}
|
||||
```bash
|
||||
# S3 object store (default is the us-east-1 region)
|
||||
# S3 object store
|
||||
# Specify the object store type and associated options
|
||||
influxdb3 serve \
|
||||
--node-id host01 \
|
||||
--cluster-id cluster01 \
|
||||
--object-store s3 \
|
||||
--bucket OBJECT_STORE_BUCKET \
|
||||
--aws-access-key AWS_ACCESS_KEY_ID \
|
||||
--aws-default-region AWS_REGION \
|
||||
--aws-access-key-id AWS_ACCESS_KEY_ID \
|
||||
--aws-secret-access-key AWS_SECRET_ACCESS_KEY
|
||||
```
|
||||
|
||||
> [!Note]
|
||||
> If not specified, `--aws-default-region` defaults to `us-east-1`.
|
||||
> Specify a different region if your bucket is in another AWS region to avoid redirect errors.
|
||||
|
||||
```bash
|
||||
# Minio or other open source object store
|
||||
# (using the AWS S3 API with additional parameters)
|
||||
|
|
@ -347,16 +352,21 @@ influxdb3 serve \
|
|||
{{% /show-in %}}
|
||||
{{% show-in "core" %}}
|
||||
```bash
|
||||
# S3 object store (default is the us-east-1 region)
|
||||
# S3 object store
|
||||
# Specify the object store type and associated options
|
||||
influxdb3 serve \
|
||||
--node-id host01 \
|
||||
--object-store s3 \
|
||||
--bucket OBJECT_STORE_BUCKET \
|
||||
--aws-access-key AWS_ACCESS_KEY_ID \
|
||||
--aws-default-region AWS_REGION \
|
||||
--aws-access-key-id AWS_ACCESS_KEY_ID \
|
||||
--aws-secret-access-key AWS_SECRET_ACCESS_KEY
|
||||
```
|
||||
|
||||
> [!Note]
|
||||
> If not specified, `--aws-default-region` defaults to `us-east-1`.
|
||||
> Specify a different region if your bucket is in another AWS region to avoid redirect errors.
|
||||
|
||||
```bash
|
||||
# Minio or other open source object store
|
||||
# (using the AWS S3 API with additional parameters)
|
||||
|
|
|
|||
|
|
@ -6,7 +6,8 @@ Learn how to avoid unexpected results and recover from errors when writing to
|
|||
- [Review HTTP status codes](#review-http-status-codes)
|
||||
- [Troubleshoot failures](#troubleshoot-failures)
|
||||
- [Troubleshoot rejected points](#troubleshoot-rejected-points)
|
||||
{{% show-in "core,enterprise" %}}- [Troubleshoot write performance issues](#troubleshoot-write-performance-issues){{% /show-in %}}
|
||||
{{% show-in "core,enterprise" %}}- [Troubleshoot write performance issues](#troubleshoot-write-performance-issues)
|
||||
- [Use debug logs for troubleshooting](#use-debug-logs-for-troubleshooting){{% /show-in %}}
|
||||
|
||||
## Handle write responses
|
||||
|
||||
|
|
@ -105,4 +106,28 @@ influxdb3 serve \
|
|||
Replace {{% code-placeholder-key %}}`PERCENTAGE`{{% /code-placeholder-key %}} with the percentage
|
||||
of available memory to allocate (for example, `35%` for write-heavy workloads).
|
||||
|
||||
### Use debug logs for troubleshooting
|
||||
|
||||
For deeper investigation of write issues, enable debug logging for specific
|
||||
components. Debug logs provide detailed information about write buffer
|
||||
operations and WAL activity.
|
||||
|
||||
To enable debug logs for write operations, restart {{% product-name %}} with
|
||||
targeted log filters:
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
influxdb3 serve --log-filter info,influxdb3_write_buffer=debug
|
||||
```
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
influxdb3 serve --log-filter info,influxdb3_wal=debug
|
||||
```
|
||||
|
||||
For more information about log levels and targeted filtering, see
|
||||
[log-filter configuration](/influxdb3/version/reference/config-options/#log-filter).
|
||||
|
||||
{{% /show-in %}}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
title: Telegraf Controller reference documentation
|
||||
description: >
|
||||
Reference documentation for Telegraf Controller, the application that
|
||||
centralizes configuration management and provides information about the health
|
||||
of Telegraf agent deployments.
|
||||
menu:
|
||||
telegraf_controller:
|
||||
name: Reference
|
||||
weight: 20
|
||||
---
|
||||
|
||||
Use the reference docs to look up Telegraf Controller configuration options,
|
||||
APIs, and operational details.
|
||||
|
||||
{{< children hlevel="h2" >}}
|
||||
|
|
@ -0,0 +1,268 @@
|
|||
---
|
||||
title: Telegraf Controller architecture
|
||||
description: >
|
||||
Architectural overview of the {{% product-name %}} application.
|
||||
menu:
|
||||
telegraf_controller:
|
||||
name: Architectural overview
|
||||
parent: Reference
|
||||
weight: 105
|
||||
---
|
||||
|
||||
{{% product-name %}} is a standalone application that provides centralized
|
||||
management for Telegraf agents. It runs as a single binary that starts two
|
||||
separate servers: a web interface/API server and a dedicated high-performance
|
||||
heartbeat server for agent monitoring.
|
||||
|
||||
## Runtime Architecture
|
||||
|
||||
### Application Components
|
||||
|
||||
When you run the Telegraf Controller binary, it starts four main subsystems:
|
||||
|
||||
- **Web Server**: Serves the management interface (default port: `8888`)
|
||||
- **API Server**: Handles configuration management and administrative requests
|
||||
(served on the same port as the web server)
|
||||
- **Heartbeat Server**: Dedicated high-performance server for agent heartbeats
|
||||
(default port: `8000`)
|
||||
- **Background Scheduler**: Monitors agent health every 60 seconds
|
||||
|
||||
### Process Model
|
||||
|
||||
- **telegraf_controller** _(single process, multiple servers)_
|
||||
- **Main HTTP Server** _(port `8888`)_
|
||||
- Web UI (`/`)
|
||||
- API Endpoints (`/api/*`)
|
||||
- **Heartbeat Server** (port `8000`)
|
||||
- POST /heartbeat _(high-performance endpoint)_
|
||||
- **Database Connection**
|
||||
- SQLite or PostgreSQL
|
||||
- **Background Tasks**
|
||||
- Agent Status Monitor (60s interval)
|
||||
|
||||
The dual-server architecture separates high-frequency heartbeat traffic from
|
||||
regular management operations, ensuring that the web interface remains
|
||||
responsive even under heavy agent load.
|
||||
|
||||
## Configuration
|
||||
|
||||
{{% product-name %}} configuration is controlled through command options and
|
||||
environment variables.
|
||||
|
||||
| Command Option | Environment Variable | Description |
|
||||
| :----------------- | :------------------- | :--------------------------------------------------------------------------------------------------------------- |
|
||||
| `--port` | `PORT` | API server port (default is `8888`) |
|
||||
| `--heartbeat-port` | `HEARTBEAT_PORT` | Heartbeat service port (default: `8000`) |
|
||||
| `--database` | `DATABASE` | Database filepath or URL (default is [SQLite path](/telegraf/controller/install/#default-sqlite-data-locations)) |
|
||||
| `--ssl-cert` | `SSL_CERT` | Path to SSL certificate |
|
||||
| `--ssl-key` | `SSL_KEY` | Path to SSL private key |
|
||||
|
||||
To use environment variables, create a `.env` file in the same directory as the
|
||||
binary or export these environment variables in your terminal session.
|
||||
|
||||
### Database Selection
|
||||
|
||||
{{% product-name %}} automatically selects the database type based on the
|
||||
`DATABASE` string:
|
||||
|
||||
- **SQLite** (default): Best for development and small deployments with less
|
||||
than 1000 agents. Database file created automatically.
|
||||
- **PostgreSQL**: Required for large deployments. Must be provisioned separately.
|
||||
|
||||
Example PostgreSQL configuration:
|
||||
|
||||
```bash
|
||||
DATABASE="postgresql://user:password@localhost:5432/telegraf_controller"
|
||||
```
|
||||
|
||||
## Data Flow
|
||||
|
||||
### Agent registration and heartbeats
|
||||
|
||||
{{< diagram >}}
|
||||
flowchart LR
|
||||
T["Telegraf Agents<br/>(POST heartbeats)"] --> H["Port 8000<br/>Heartbeat Server"]
|
||||
H --Direct Write--> D[("Database")]
|
||||
W["Web UI/API<br/>"] --> A["Port 8888<br/>API Server"] --View Agents (Read-Only)--> D
|
||||
R["Rust Scheduler<br/>(Agent status updates)"] --> D
|
||||
|
||||
{{< /diagram >}}
|
||||
|
||||
1. **Agents send heartbeats**:
|
||||
|
||||
Telegraf agents with the heartbeat output plugin send `POST` requests to the
|
||||
dedicated heartbeat server (port `8000` by default).
|
||||
|
||||
2. **Heartbeat server processes the heartbeat**:
|
||||
|
||||
The heartbeat server is a high-performance Rust-based HTTP server that:
|
||||
|
||||
- Receives the `POST` request at `/agents/heartbeat`
|
||||
- Validates the heartbeat payload
|
||||
- Extracts agent information (ID, hostname, IP address, status, etc.)
|
||||
- Uniquely identifies each agent using the `instance_id` in the heartbeat
|
||||
payload.
|
||||
|
||||
3. **Heartbeat server writes directly to the database**:
|
||||
|
||||
The heartbeat server uses a Rust NAPI module that:
|
||||
|
||||
- Bypasses the application ORM (Object-Relational Mapping) layer entirely
|
||||
- Uses `sqlx` (Rust SQL library) to write directly to the database
|
||||
- Implements batch processing to efficiently process multiple heartbeats
|
||||
- Provides much higher throughput than going through the API layer
|
||||
|
||||
The Rust module performs these operations:
|
||||
|
||||
- Creates a new agent if it does not already exist
|
||||
- Adds or updates the `last_seen` timestamp
|
||||
- Adds or updates the agent status to the status reported in the heartbeat
|
||||
- Updates other agent metadata (hostname, IP, etc.)
|
||||
|
||||
4. **API layer reads agent data**:
|
||||
|
||||
The API layer has read-only access for agent data and performs the following
|
||||
actions:
|
||||
|
||||
- `GET /api/agents` - List agents
|
||||
- `GET /api/agents/summary` - Agent status summary
|
||||
|
||||
The API never writes to the agents table. Only the heartbeat server does.
|
||||
|
||||
5. **The Web UI displays updated agent data**:
|
||||
|
||||
The web interface polls the API endpoints to display:
|
||||
|
||||
- Real-time agent status
|
||||
- Last seen timestamps
|
||||
- Agent health metrics
|
||||
|
||||
6. **The background scheduler evaluates agent statuses**:
|
||||
|
||||
Every 60 seconds, a Rust-based scheduler (also part of the NAPI module):
|
||||
|
||||
- Scans all agents in the database
|
||||
- Checks `last_seen` timestamps against the agent's assigned reporting rule
|
||||
- Updates agent statuses:
|
||||
- ok → not_reporting (if heartbeat missed beyond threshold)
|
||||
- not_reporting → ok (if heartbeat resumes)
|
||||
- Auto-deletes agents that have exceeded the auto-delete threshold
|
||||
(if enabled for the reporting rule)
|
||||
|
||||
### Configuration distribution
|
||||
|
||||
1. **An agent requests a configuration**:
|
||||
|
||||
Telegraf agents request their configuration from the main API server
|
||||
(port `8888`):
|
||||
|
||||
```bash
|
||||
telegraf --config "http://localhost:8888/api/configs/{config-id}/toml?location=datacenter1&env=prod"
|
||||
```
|
||||
|
||||
The agent makes a `GET` request with:
|
||||
|
||||
- **Config ID**: Unique identifier for the configuration template
|
||||
- **Query Parameters**: Variables for parameter substitution
|
||||
- **Accept Header**: Can specify `text/x-toml` or `application/octet-stream`
|
||||
for download
|
||||
|
||||
2. **The API server receives request**:
|
||||
|
||||
The API server on port `8888` handles the request at
|
||||
`/api/configs/{id}/toml` and does the following:
|
||||
|
||||
- Validates the configuration ID
|
||||
- Extracts all query parameters for substitution
|
||||
- Checks the `Accept` header to determine response format
|
||||
|
||||
3. **The application retrieves the configuration from the database**:
|
||||
|
||||
{{% product-name %}} fetches configuration data from the database:
|
||||
|
||||
- **Configuration TOML**: The raw configuration with parameter placeholders
|
||||
- **Configuration name**: Used for filename if downloading
|
||||
- **Updated timestamp**: For the `Last-Modified` header
|
||||
|
||||
4. **{{% product-name %}} substitutes parameters**:
|
||||
|
||||
{{% product-name %}} processes the TOML template and replaces parameters
|
||||
with parameter values specified in the `GET` request.
|
||||
|
||||
5. **{{% product-name %}} sets response headers**:
|
||||
|
||||
- Content-Type
|
||||
- Last-Modified
|
||||
|
||||
Telegraf uses the `Last-Modified` header to determine if a configuration
|
||||
has been updated and, if so, download and use the updated configuration.
|
||||
|
||||
6. **{{% product-name %}} delivers the response**:
|
||||
|
||||
Based on the `Accept` header:
|
||||
|
||||
{{< tabs-wrapper >}}
|
||||
{{% tabs "medium" %}}
|
||||
[text/x-toml (TOML)](#)
|
||||
[application/octet-stream (Download)](#)
|
||||
{{% /tabs %}}
|
||||
{{% tab-content %}}
|
||||
<!------------------------------- BEGIN TOML ------------------------------>
|
||||
|
||||
```
|
||||
HTTP/1.1 200 OK
|
||||
Content-Type: text/x-toml; charset=utf-8
|
||||
Last-Modified: Mon, 05 Jan 2025 07:28:00 GMT
|
||||
|
||||
[agent]
|
||||
hostname = "server-01"
|
||||
environment = "prod"
|
||||
...
|
||||
```
|
||||
|
||||
<!-------------------------------- END TOML ------------------------------->
|
||||
{{% /tab-content %}}
|
||||
{{% tab-content %}}
|
||||
<!----------------------------- BEGIN DOWNLOAD ---------------------------->
|
||||
|
||||
```
|
||||
HTTP/1.1 200 OK
|
||||
Content-Type: application/octet-stream
|
||||
Content-Disposition: attachment; filename="config_name.toml"
|
||||
Last-Modified: Mon, 05 Jan 2025 07:28:00 GMT
|
||||
|
||||
[agent]
|
||||
hostname = "server-01"
|
||||
...
|
||||
```
|
||||
|
||||
<!------------------------------ END DOWNLOAD ----------------------------->
|
||||
{{% /tab-content %}}
|
||||
{{< /tabs-wrapper >}}
|
||||
|
||||
7. _(Optional)_ **Telegraf regularly checks the configuration for updates**:
|
||||
|
||||
Telegraf agents can regularly check {{% product-name %}} for configuration
|
||||
updates and automatically load updates when detected. When starting a
|
||||
Telegraf agent, include the `--config-url-watch-interval` option with the
|
||||
interval that you want the agent to use to check for updates—for example:
|
||||
|
||||
```bash
|
||||
telegraf \
|
||||
--config http://localhost:8888/api/configs/xxxxxx/toml \
|
||||
--config-url-watch-interval 1h
|
||||
```
|
||||
|
||||
## Reporting Rules
|
||||
|
||||
{{% product-name %}} uses reporting rules to determine when agents should be
|
||||
marked as not reporting:
|
||||
|
||||
- **Default Rule**: Created automatically on first run
|
||||
- **Heartbeat Interval**: Expected frequency of agent heartbeats (default: 60s)
|
||||
- **Threshold Multiplier**: How many intervals to wait before marking not_reporting (default: 3x)
|
||||
|
||||
Access reporting rules via:
|
||||
|
||||
- **Web UI**: Reporting Rules
|
||||
- **API**: `GET /api/reporting-rules`
|
||||
|
|
@ -10,7 +10,7 @@ introduced: "v1.5.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/basicstats/README.md, Basic Statistics Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/basicstats/README.md, Basic Statistics Plugin Source
|
||||
---
|
||||
|
||||
# Basic Statistics Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.18.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/derivative/README.md, Derivative Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/derivative/README.md, Derivative Plugin Source
|
||||
---
|
||||
|
||||
# Derivative Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.11.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/final/README.md, Final Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/final/README.md, Final Plugin Source
|
||||
---
|
||||
|
||||
# Final Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.4.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/histogram/README.md, Histogram Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/histogram/README.md, Histogram Plugin Source
|
||||
---
|
||||
|
||||
# Histogram Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.13.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/merge/README.md, Merge Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/merge/README.md, Merge Plugin Source
|
||||
---
|
||||
|
||||
# Merge Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.1.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/minmax/README.md, Minimum-Maximum Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/minmax/README.md, Minimum-Maximum Plugin Source
|
||||
---
|
||||
|
||||
# Minimum-Maximum Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.18.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/quantile/README.md, Quantile Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/quantile/README.md, Quantile Plugin Source
|
||||
---
|
||||
|
||||
# Quantile Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.21.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/starlark/README.md, Starlark Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/starlark/README.md, Starlark Plugin Source
|
||||
---
|
||||
|
||||
# Starlark Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.8.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/aggregators/valuecounter/README.md, Value Counter Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/aggregators/valuecounter/README.md, Value Counter Plugin Source
|
||||
---
|
||||
|
||||
# Value Counter Aggregator Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.8.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/activemq/README.md, ActiveMQ Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/activemq/README.md, ActiveMQ Plugin Source
|
||||
---
|
||||
|
||||
# ActiveMQ Input Plugin
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ removal: v1.40.0
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/aerospike/README.md, Aerospike Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/aerospike/README.md, Aerospike Plugin Source
|
||||
---
|
||||
|
||||
# Aerospike Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.19.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/aliyuncms/README.md, Alibaba Cloud Monitor Service (Aliyun) Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/aliyuncms/README.md, Alibaba Cloud Monitor Service (Aliyun) Plugin Source
|
||||
---
|
||||
|
||||
# Alibaba Cloud Monitor Service (Aliyun) Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.20.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/amd_rocm_smi/README.md, AMD ROCm System Management Interface (SMI) Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/amd_rocm_smi/README.md, AMD ROCm System Management Interface (SMI) Plugin Source
|
||||
---
|
||||
|
||||
# AMD ROCm System Management Interface (SMI) Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.3.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/amqp_consumer/README.md, AMQP Consumer Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/amqp_consumer/README.md, AMQP Consumer Plugin Source
|
||||
---
|
||||
|
||||
# AMQP Consumer Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.8.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/apache/README.md, Apache Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/apache/README.md, Apache Plugin Source
|
||||
---
|
||||
|
||||
# Apache Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.12.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/apcupsd/README.md, APC UPSD Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/apcupsd/README.md, APC UPSD Plugin Source
|
||||
---
|
||||
|
||||
# APC UPSD Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.7.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/aurora/README.md, Apache Aurora Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/aurora/README.md, Apache Aurora Plugin Source
|
||||
---
|
||||
|
||||
# Apache Aurora Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.25.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/azure_monitor/README.md, Azure Monitor Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/azure_monitor/README.md, Azure Monitor Plugin Source
|
||||
---
|
||||
|
||||
# Azure Monitor Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.13.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/azure_storage_queue/README.md, Azure Queue Storage Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/azure_storage_queue/README.md, Azure Queue Storage Plugin Source
|
||||
---
|
||||
|
||||
# Azure Queue Storage Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.2.0"
|
|||
os_support: "linux"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/bcache/README.md, Bcache Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/bcache/README.md, Bcache Plugin Source
|
||||
---
|
||||
|
||||
# Bcache Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.8.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/beanstalkd/README.md, Beanstalkd Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/beanstalkd/README.md, Beanstalkd Plugin Source
|
||||
---
|
||||
|
||||
# Beanstalkd Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.18.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/beat/README.md, Beat Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/beat/README.md, Beat Plugin Source
|
||||
---
|
||||
|
||||
# Beat Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.11.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/bind/README.md, BIND 9 Nameserver Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/bind/README.md, BIND 9 Nameserver Plugin Source
|
||||
---
|
||||
|
||||
# BIND 9 Nameserver Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.5.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/bond/README.md, Bond Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/bond/README.md, Bond Plugin Source
|
||||
---
|
||||
|
||||
# Bond Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.7.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/burrow/README.md, Burrow Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/burrow/README.md, Burrow Plugin Source
|
||||
---
|
||||
|
||||
# Burrow Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.13.1"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/ceph/README.md, Ceph Storage Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/ceph/README.md, Ceph Storage Plugin Source
|
||||
---
|
||||
|
||||
# Ceph Storage Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.0.0"
|
|||
os_support: "linux"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/cgroup/README.md, Control Group Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/cgroup/README.md, Control Group Plugin Source
|
||||
---
|
||||
|
||||
# Control Group Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.13.1"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/chrony/README.md, chrony Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/chrony/README.md, chrony Plugin Source
|
||||
---
|
||||
|
||||
# chrony Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.11.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/cisco_telemetry_mdt/README.md, Cisco Model-Driven Telemetry (MDT) Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/cisco_telemetry_mdt/README.md, Cisco Model-Driven Telemetry (MDT) Plugin Source
|
||||
---
|
||||
|
||||
# Cisco Model-Driven Telemetry (MDT) Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.14.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/clickhouse/README.md, ClickHouse Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/clickhouse/README.md, ClickHouse Plugin Source
|
||||
---
|
||||
|
||||
# ClickHouse Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.10.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/cloud_pubsub/README.md, Google Cloud PubSub Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/cloud_pubsub/README.md, Google Cloud PubSub Plugin Source
|
||||
---
|
||||
|
||||
# Google Cloud PubSub Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.10.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/cloud_pubsub_push/README.md, Google Cloud PubSub Push Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/cloud_pubsub_push/README.md, Google Cloud PubSub Push Plugin Source
|
||||
---
|
||||
|
||||
# Google Cloud PubSub Push Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.12.1"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/cloudwatch/README.md, Amazon CloudWatch Statistics Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/cloudwatch/README.md, Amazon CloudWatch Statistics Plugin Source
|
||||
---
|
||||
|
||||
# Amazon CloudWatch Statistics Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.24.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/cloudwatch_metric_streams/README.md, Amazon CloudWatch Metric Streams Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/cloudwatch_metric_streams/README.md, Amazon CloudWatch Metric Streams Plugin Source
|
||||
---
|
||||
|
||||
# Amazon CloudWatch Metric Streams Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.0.0"
|
|||
os_support: "linux"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/conntrack/README.md, Netfilter Conntrack Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/conntrack/README.md, Netfilter Conntrack Plugin Source
|
||||
---
|
||||
|
||||
# Netfilter Conntrack Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.0.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/consul/README.md, Hashicorp Consul Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/consul/README.md, Hashicorp Consul Plugin Source
|
||||
---
|
||||
|
||||
# Hashicorp Consul Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.22.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/consul_agent/README.md, Hashicorp Consul Agent Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/consul_agent/README.md, Hashicorp Consul Agent Plugin Source
|
||||
---
|
||||
|
||||
# Hashicorp Consul Agent Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.12.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/couchbase/README.md, Couchbase Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/couchbase/README.md, Couchbase Plugin Source
|
||||
---
|
||||
|
||||
# Couchbase Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.10.3"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/couchdb/README.md, Apache CouchDB Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/couchdb/README.md, Apache CouchDB Plugin Source
|
||||
---
|
||||
|
||||
# Apache CouchDB Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.1.5"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/cpu/README.md, CPU Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/cpu/README.md, CPU Plugin Source
|
||||
---
|
||||
|
||||
# CPU Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.18.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/csgo/README.md, Counter-Strike Global Offensive (CSGO) Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/csgo/README.md, Counter-Strike Global Offensive (CSGO) Plugin Source
|
||||
---
|
||||
|
||||
# Counter-Strike: Global Offensive (CSGO) Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.27.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/ctrlx_datalayer/README.md, Bosch Rexroth ctrlX Data Layer Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/ctrlx_datalayer/README.md, Bosch Rexroth ctrlX Data Layer Plugin Source
|
||||
---
|
||||
|
||||
# Bosch Rexroth ctrlX Data Layer Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.5.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/dcos/README.md, Mesosphere Distributed Cloud OS Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/dcos/README.md, Mesosphere Distributed Cloud OS Plugin Source
|
||||
---
|
||||
|
||||
# Mesosphere Distributed Cloud OS Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.18.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/directory_monitor/README.md, Directory Monitor Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/directory_monitor/README.md, Directory Monitor Plugin Source
|
||||
---
|
||||
|
||||
# Directory Monitor Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.1.1"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/disk/README.md, Disk Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/disk/README.md, Disk Plugin Source
|
||||
---
|
||||
|
||||
# Disk Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.10.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/diskio/README.md, DiskIO Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/diskio/README.md, DiskIO Plugin Source
|
||||
---
|
||||
|
||||
# DiskIO Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.10.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/disque/README.md, Disque Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/disque/README.md, Disque Plugin Source
|
||||
---
|
||||
|
||||
# Disque Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.3.0"
|
|||
os_support: "linux"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/dmcache/README.md, Device Mapper Cache Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/dmcache/README.md, Device Mapper Cache Plugin Source
|
||||
---
|
||||
|
||||
# Device Mapper Cache Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.4.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/dns_query/README.md, DNS Query Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/dns_query/README.md, DNS Query Plugin Source
|
||||
---
|
||||
|
||||
# DNS Query Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.1.9"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/docker/README.md, Docker Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/docker/README.md, Docker Plugin Source
|
||||
---
|
||||
|
||||
# Docker Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.12.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/docker_log/README.md, Docker Log Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/docker_log/README.md, Docker Log Plugin Source
|
||||
---
|
||||
|
||||
# Docker Log Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.10.3"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/dovecot/README.md, Dovecot Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/dovecot/README.md, Dovecot Plugin Source
|
||||
---
|
||||
|
||||
# Dovecot Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.19.0"
|
|||
os_support: "linux"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/dpdk/README.md, Data Plane Development Kit (DPDK) Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/dpdk/README.md, Data Plane Development Kit (DPDK) Plugin Source
|
||||
---
|
||||
|
||||
# Data Plane Development Kit (DPDK) Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.11.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/ecs/README.md, Amazon Elastic Container Service Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/ecs/README.md, Amazon Elastic Container Service Plugin Source
|
||||
---
|
||||
|
||||
# Amazon Elastic Container Service Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.1.5"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/elasticsearch/README.md, Elasticsearch Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/elasticsearch/README.md, Elasticsearch Plugin Source
|
||||
---
|
||||
|
||||
# Elasticsearch Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.20.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/elasticsearch_query/README.md, Elasticsearch Query Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/elasticsearch_query/README.md, Elasticsearch Query Plugin Source
|
||||
---
|
||||
|
||||
# Elasticsearch Query Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.13.0"
|
|||
os_support: "linux"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/ethtool/README.md, Ethtool Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/ethtool/README.md, Ethtool Plugin Source
|
||||
---
|
||||
|
||||
# Ethtool Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.14.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/eventhub_consumer/README.md, Azure Event Hub Consumer Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/eventhub_consumer/README.md, Azure Event Hub Consumer Plugin Source
|
||||
---
|
||||
|
||||
# Azure Event Hub Consumer Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.1.5"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/exec/README.md, Exec Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/exec/README.md, Exec Plugin Source
|
||||
---
|
||||
|
||||
# Exec Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.14.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/execd/README.md, Execd Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/execd/README.md, Execd Plugin Source
|
||||
---
|
||||
|
||||
# Execd Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.4.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/fail2ban/README.md, Fail2ban Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/fail2ban/README.md, Fail2ban Plugin Source
|
||||
---
|
||||
|
||||
# Fail2ban Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.7.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/fibaro/README.md, Fibaro Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/fibaro/README.md, Fibaro Plugin Source
|
||||
---
|
||||
|
||||
# Fibaro Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.8.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/file/README.md, File Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/file/README.md, File Plugin Source
|
||||
---
|
||||
|
||||
# File Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.8.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/filecount/README.md, Filecount Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/filecount/README.md, Filecount Plugin Source
|
||||
---
|
||||
|
||||
# Filecount Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.13.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/filestat/README.md, File statistics Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/filestat/README.md, File statistics Plugin Source
|
||||
---
|
||||
|
||||
# File statistics Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.12.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/fireboard/README.md, Fireboard Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/fireboard/README.md, Fireboard Plugin Source
|
||||
---
|
||||
|
||||
# Fireboard Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.34.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/firehose/README.md, AWS Data Firehose Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/firehose/README.md, AWS Data Firehose Plugin Source
|
||||
---
|
||||
|
||||
# AWS Data Firehose Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.4.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/fluentd/README.md, Fluentd Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/fluentd/README.md, Fluentd Plugin Source
|
||||
---
|
||||
|
||||
# Fluentd Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.35.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/fritzbox/README.md, Fritzbox Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/fritzbox/README.md, Fritzbox Plugin Source
|
||||
---
|
||||
|
||||
# Fritzbox Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.11.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/github/README.md, GitHub Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/github/README.md, GitHub Plugin Source
|
||||
---
|
||||
|
||||
# GitHub Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.15.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/gnmi/README.md, gNMI (gRPC Network Management Interface) Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/gnmi/README.md, gNMI (gRPC Network Management Interface) Plugin Source
|
||||
---
|
||||
|
||||
# gNMI (gRPC Network Management Interface) Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.25.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/google_cloud_storage/README.md, Google Cloud Storage Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/google_cloud_storage/README.md, Google Cloud Storage Plugin Source
|
||||
---
|
||||
|
||||
# Google Cloud Storage Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.0.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/graylog/README.md, GrayLog Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/graylog/README.md, GrayLog Plugin Source
|
||||
---
|
||||
|
||||
# GrayLog Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.1.5"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/haproxy/README.md, HAProxy Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/haproxy/README.md, HAProxy Plugin Source
|
||||
---
|
||||
|
||||
# HAProxy Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.0.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/hddtemp/README.md, HDDtemp Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/hddtemp/README.md, HDDtemp Plugin Source
|
||||
---
|
||||
|
||||
# HDDtemp Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.6.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/http/README.md, HTTP Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/http/README.md, HTTP Plugin Source
|
||||
---
|
||||
|
||||
# HTTP Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.9.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/http_listener_v2/README.md, HTTP Listener v2 Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/http_listener_v2/README.md, HTTP Listener v2 Plugin Source
|
||||
---
|
||||
|
||||
# HTTP Listener v2 Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v0.12.1"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/http_response/README.md, HTTP Response Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/http_response/README.md, HTTP Response Plugin Source
|
||||
---
|
||||
|
||||
# HTTP Response Input Plugin
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ introduced: "v1.34.0"
|
|||
os_support: "freebsd, linux, macos, solaris, windows"
|
||||
related:
|
||||
- /telegraf/v1/configure_plugins/
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.0/plugins/inputs/huebridge/README.md, HueBridge Plugin Source
|
||||
- https://github.com/influxdata/telegraf/tree/v1.37.1/plugins/inputs/huebridge/README.md, HueBridge Plugin Source
|
||||
---
|
||||
|
||||
# HueBridge Input Plugin
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue