|
11 | 11 | ############################################################################### |
12 | 12 | # OUTPUT PLUGINS # |
13 | 13 | ############################################################################### |
14 | | -# Define the main metric output file, excluding aggregated stats and |
15 | | -# Performance Playbook (estat) data. |
16 | | -[[outputs.file]] |
17 | | - files = ["/var/log/telegraf/metrics.json"] |
18 | | - rotation_max_size = "50MB" |
19 | | - rotation_max_archives = 9 |
20 | | - data_format = "json" |
21 | | - namedrop = ["*estat_*", "agg_*", "zfs", "zpool*", "zcache*", "docker*"] |
22 | | - |
23 | | -# Define output file for ZFS related metrics |
24 | | -[[outputs.file]] |
25 | | - files = ["/var/log/telegraf/metrics_zfs.json"] |
26 | | - rotation_max_size = "30MB" |
27 | | - rotation_max_archives = 5 |
28 | | - data_format = "json" |
29 | | - namepass = ["zpool*", "zcache*", "zfs"] |
30 | | - |
31 | | -# Define output file for Performance Playbook (estat) metrics |
32 | | -[[outputs.file]] |
33 | | - files = ["/var/log/telegraf/metrics_estat.json"] |
34 | | - rotation_max_size = "30MB" |
35 | | - rotation_max_archives = 5 |
36 | | - data_format = "json" |
37 | | - namepass = ["*estat_*"] |
38 | | - |
39 | | -# Define output file for aggregate statistics |
40 | | -[[outputs.file]] |
41 | | - files = ["/var/log/telegraf/metric_aggregates.json"] |
42 | | - rotation_max_size = "30MB" |
43 | | - rotation_max_archives = 5 |
44 | | - data_format = "json" |
45 | | - namepass = ["agg_*"] |
46 | | - |
47 | | -# InfluxDB output is managed via /etc/telegraf/telegraf.outputs.influxdb (written by |
48 | | -# delphix-influxdb-init) and the /etc/telegraf/INFLUXDB_ENABLED flag. |
| 14 | +# All metrics are ingested into InfluxDB. The output stanza is written by |
| 15 | +# delphix-influxdb-init to /etc/telegraf/telegraf.outputs.influxdb and |
| 16 | +# appended here by delphix-telegraf-service when InfluxDB is enabled. |
49 | 17 | # Use 'perf_influxdb enable|disable' to toggle and restart Telegraf. |
50 | 18 |
|
51 | 19 | ############################################################################### |
|
64 | 32 | [[inputs.disk]] |
65 | 33 | mount_points = ["/","/domain0"] |
66 | 34 |
|
67 | | -# Get disk I/O stats |
| 35 | +# Get disk I/O stats, excluding ZFS zvol devices (zd*) which are internal |
| 36 | +# ZFS block devices not useful for performance diagnostics. |
68 | 37 | [[inputs.diskio]] |
69 | | - |
70 | | -# Track stats for the current metric files |
71 | | -[[inputs.filestat]] |
72 | | - files = ["/var/log/telegraf/metrics.json", |
73 | | - "/var/log/telegraf/metrics_estat.json", |
74 | | - "/var/log/telegraf/metrics_zfs.json", |
75 | | - "/var/log/telegraf/metric_aggregates.json"] |
| 38 | + tagdrop = {name = ["zd*"]} |
76 | 39 |
|
77 | 40 | # Get Memory stats |
78 | 41 | [[inputs.mem]] |
|
81 | 44 | [[inputs.net]] |
82 | 45 | fieldpass = ["tcp*","bytes*","packets*","err*","drop*"] |
83 | 46 |
|
| 47 | +# Per-connection TCP stats (bytes, RTT, window sizes) via connstat. |
| 48 | +# Mirrors the TCP_STATS collected by the mgmt stack into analytics_datapoint. |
| 49 | +[[inputs.execd]] |
| 50 | + command = ["/etc/telegraf/connstat-stats.sh"] |
| 51 | + name_override = "tcp_stats" |
| 52 | + signal = "none" |
| 53 | + restart_delay = "30s" |
| 54 | + data_format = "csv" |
| 55 | + csv_delimiter = "," |
| 56 | + csv_trim_space = true |
| 57 | + csv_column_names = ["laddr", "lport", "raddr", "rport", "inbytes", "outbytes", "retranssegs", "suna", "unsent", "swnd", "cwnd", "rwnd", "rtt"] |
| 58 | + csv_column_types = ["string", "int", "string", "int", "int", "int", "int", "int", "int", "int", "int", "int", "int"] |
| 59 | + csv_tag_columns = ["laddr", "lport", "raddr", "rport"] |
| 60 | + |
84 | 61 | # Track CPU and Memory for the "delphix-mgmt" service (and children). |
85 | 62 | [[inputs.procstat]] |
86 | 63 | systemd_unit = "delphix-mgmt.service" |
|
0 commit comments