跳至正文

日常运维 ​

健康、就绪和输出 ​

sh
sudo netflowscout status --component all \
  --config /etc/netflowscout/netflowscout.json \
  --endpoint-dir /etc/netflowscout/endpoints --require-ready

主服务的 loopback HTTP 接口用途不同:

接口含义
/healthz主进程和队列的存活检查
/readyz加上分析器、协议路由和采集心跳检查
/status版本、插件、规则、队列、业务和各输出状态
/metricsPrometheus 计数和延迟直方图
/business最近业务窗口的有界 Top N

统一端点覆盖还需 status --component all 的所选端点范围。远端失败独立报告为 delivery failing,不应因此循环重启健康的主进程。

应关注的信号 ​

  • 内核丢包、桥接缓冲/客户端拒绝、分析输出队列丢弃:发生在 WAL 前,可能遗漏业务。
  • 迟到输入、分组/去重/状态预算溢出:规则计算可能缺失,不能据此判定健康。
  • 各 sink 待确认、失败、下次重试及 FIFO 首条事件时间:区分投递故障与业务空闲。
  • Wasm trap/超时、实例重建、代际及 RSS:旧连接排空和插件故障都影响资源。

计数器通常随进程重启清零;对比时记录 PID、构建摘要和采样时间。Top N 的 p95/p99 是直方图桶上界,不是精确分位数。

重载与重启 ​

sh
sudo systemctl reload netflowscout.service
sudo systemctl reload netflowscout-analyzer.service
sudo systemctl restart netflowscout-discovery@app.service
journalctl -u netflowscout.service -u netflowscout-analyzer.service --since '10 min ago'

第一条重载规则,第二条重载兼容插件,第三条重新读取端点策略。主配置、schema、敏感性或 ABI 变化需要完整 check 和协调重启。规则失败保留旧引擎;插件新连接切换,旧连接继续原代际。

容量与磁盘 ​

queue.max_bytes 是事件正文及记账的逻辑上限,不等于 WAL 物理大小。规则检查点有独立预算;压缩还需临时空间。为 WAL、压缩和文件保留留出余量,默认配置建议至少预留 2 GiB,再加输出文件保留量。

队列满拒绝新事件,已提交事件不驱逐。不要多个进程共写同一个 WAL 或输出文件。备份/迁移应停止写入并保留完整目录,不能只复制正在追加的某个片段。WAL 损坏或恢复失败时先保留原文件,收集诊断,不要直接删除。

诊断交付 ​

sh
sudo netflowscout diagnose --config /etc/netflowscout/netflowscout.json \
  --endpoint-config /etc/netflowscout/endpoints/billing.json --out /tmp/nfs-diagnostics.tar.gz
netflowscout version
netflowscout support

诊断归档为独占创建的 0600 文件,包含状态、计数、摘要和目标元数据,不收集环境值、PCAP、原始正文或规则源文。提交问题时附故障时间、输入来源、受影响服务和可去敏复现步骤。