Prometheus Node_exporter 之 Network Netstat TCP Linux MIPs
Network Netstat TCP Linux MIPs
1. TCP Aborts / Tiemouts
type: Graph
Unit: short
Label: Connections
TCPAbortOnClose - 由于用户关闭中止的连接数
metrics:
irate(node_netstat_TcpExt_TCPAbortOnClose{instance=~"$node:$port",job=~"$job"}[5m])
TCPAbortOnData - 由于意外数据而中止的连接数
metrics:
irate(node_netstat_TcpExt_TCPAbortOnData{instance=~"$node:$port",job=~"$job"}[5m])
TCPAbortOnLinger - 关闭后,在徘徊状态中止的连接数
metrics:
irate(node_netstat_TcpExt_TCPAbortOnLinger{instance=~"$node:$port",job=~"$job"}[5m])
TCPAbortOnMemory - 连接到 socket 之前中止的连接数
metrics:
irate(node_netstat_TcpExt_TCPAbortOnMemory{instance=~"$node:$port",job=~"$job"}[5m])
TCPAbortOnTimeout - 由于超时中止的连接数
metrics:
irate(node_netstat_TcpExt_TCPAbortOnTimeout{instance=~"$node:$port",job=~"$job"}[5m])
TCPAbortFailed - 由于内存不足,连接中止但未发送RST的连接数
metrics:
irate(node_netstat_TcpExt_TCPAbortFailed{instance=~"$node:$port",job=~"$job"}[5m])
TCPTimeouts - 其他 TCP 连接超时的连接数
metrics:
irate(node_netstat_TcpExt_TCPTimeouts{instance=~"$node:$port",job=~"$job"}[5m])
2. TCP Delayed ACK
type: Graph
Unit: short
Label: Counter
DelayedACKLocked - 由于 socket 锁定 延时ACK 进一步延迟的数量
metrics:
irate(node_netstat_TcpExt_DelayedACKLocked{instance=~"$node:$port",job=~"$job"}[5m])
DelayedACKLost - 快速回复 ACK 模式被激活的数量
metrics:
irate(node_netstat_TcpExt_DelayedACKLost{instance=~"$node:$port",job=~"$job"}[5m])
DelayedACKs - 发送延迟 AC K的数量
metrics:
irate(node_netstat_TcpExt_DelayedACKs{instance=~"$node:$port",job=~"$job"}[5m])
3. TCP SynCookie / Challenge
type: Graph
Unit: short
Label: Counter out (-) / in (+)
SyncookiesFailed - 接收的无效的 SYN cookies 的数量
metrics:
irate(node_netstat_TcpExt_SyncookiesFailed{instance=~"$node:$port",job=~"$job"}[5m])
SyncookiesRecv - 接收的 SYN cookies 的数量
metrics:
irate(node_netstat_TcpExt_SyncookiesRecv{instance=~"$node:$port",job=~"$job"}[5m])
SyncookiesSent - 发送的 SYN cookies 的数量
metrics:
irate(node_netstat_TcpExt_SyncookiesSent{instance=~"$node:$port",job=~"$job"}[5m])
SynChallenge - 发送的 SYNChallenge 数量
metrics:
irate(node_netstat_TcpExt_TCPSYNChallenge{instance=~"$node:$port",job=~"$job"}[5m])
TCPChallengeACK - 发送的 Challenge ACK 数量
metrics:
irate(node_netstat_TcpExt_TCPChallengeACK{instance=~"$node:$port",job=~"$job"}[5m])
4. TCP LOSS
type: Graph
Unit: short
Label: Counter
TCPLossFailures - 处于 Loss 状态下的 TCP 包数量
metrics:
irate(node_netstat_TcpExt_TCPLossFailures{instance=~"$node:$port",job=~"$job"}[5m])
TCPLossProbeRecovery - 恢复的 TCP 丢失探测定时器的数量
metrics:
irate(node_netstat_TcpExt_TCPLossProbeRecovery{instance=~"$node:$port",job=~"$job"}[5m])
TCPLossProbes - 发送的 TCP 丢失探测定时器的数量
metrics:
irate(node_netstat_TcpExt_TCPLossProbes{instance=~"$node:$port",job=~"$job"}[5m])
TCPLossUndo - 在部分确认后,拥塞窗口没有缓慢启动而恢复的数量
metrics:
irate(node_netstat_TcpExt_TCPLossUndo{instance=~"$node:$port",job=~"$job"}[5m])
TCPLostRetransmit - TCP 包丢失重传的数量
metrics:
irate(node_netstat_TcpExt_TCPLostRetransmit{instance=~"$node:$port",job=~"$job"}[5m])
5. TCP DROPS
type: Graph
Unit: short
Label: Counter
ListenDrops - 监听队列连接丢弃数
metrics:
irate(node_netstat_TcpExt_ListenDrops{instance=~"$node:$port",job=~"$job"}[5m])
LockDroppedIcmps - 因 socket 锁定而丢弃的 ICMP 数据包数量
metrics:
irate(node_netstat_TcpExt_LockDroppedIcmps{instance=~"$node:$port",job=~"$job"}[5m])
TCPDeferAcceptDrop - 在 SYN_RECV 状态下由 socket 接收的丢弃的 ACK 帧
metrics:
irate(node_netstat_TcpExt_TCPDeferAcceptDrop{instance=~"$node:$port",job=~"$job"}[5m])
TCPBacklogDrop - 由于 socket 接收队列已满,丢弃的TCP数据包数量
metrics:
irate(node_netstat_TcpExt_TCPBacklogDrop{instance=~"$node:$port",job=~"$job"}[5m])
OutOfWindowIcmps - 由于 out-of-window 丢弃的 ICMP 包数量
metrics:
irate(node_netstat_TcpExt_OutOfWindowIcmps{instance=~"$node:$port",job=~"$job"}[5m])
TCPMinTTLDrop - 在 minTTL 条件下丢弃的 TCP数据包的数量
metrics:
irate(node_netstat_TcpExt_TCPMinTTLDrop{instance=~"$node:$port",job=~"$job"}[5m])
6. TCP Retrans
type: Graph
Unit: short
Label: Counter
TCPForwardRetrans - 使用 F-RTO 重新传输丢失的数据包的数量
metrics:
irate(node_netstat_TcpExt_TCPForwardRetrans{instance=~"$node:$port",job=~"$job"}[5m])
TCPSlowStartRetrans - 在慢启动后重传丢失的数据包数量
metrics:
irate(node_netstat_TcpExt_TCPSlowStartRetrans{instance=~"$node:$port",job=~"$job"}[5m])
TCPSynRetrans - SYN-SYN/ACK重传以分解 SYN 中的重传,快速/超时重传
metrics:
irate(node_netstat_TcpExt_TCPSynRetrans{instance=~"$node:$port",job=~"$job"}[5m])
TCPSpuriousRTOs - TCP 虚假 RTOs 数量
metrics:
irate(node_netstat_TcpExt_TCPSpuriousRTOs{instance=~"$node:$port",job=~"$job"}[5m])
TCPSpuriousRtxHostQueues - Times detected that the fast clone is not yet freed in tcp_transmit_skb()
metrics:
irate(node_netstat_TcpExt_TCPSpuriousRtxHostQueues{instance=~"$node:$port",job=~"$job"}[5m])
TCPFullUndo - 重传 undoRetransmits that undid the CWND reduction
metrics:
irate(node_netstat_TcpExt_TCPFullUndo{instance=~"$node:$port",job=~"$job"}[5m])
TCPRetransFail - tcp_retransmit_skb() 调用失败的数量
metrics:
irate(node_netstat_TcpExt_TCPRetransFail{instance=~"$node:$port",job=~"$job"}[5m])
TCPPartialUndo - 使用 Hoe heuristic 部分恢复拥塞窗口
metrics:
irate(node_netstat_TcpExt_TCPPartialUndo{instance=~"$node:$port",job=~"$job"}[5m])
7. TCP Pruned
type: Graph
Unit: short
Label: Counter
PruneCalled - 由于 socket 缓冲区溢出而从接收队列中删除的数据包数量
metrics:
irate(node_netstat_TcpExt_PruneCalled{instance=~"$node:$port",job=~"$job"}[5m])
RcvPruned - 从接收队列中删除的数据包数量
metrics:
irate(node_netstat_TcpExt_RcvPruned{instance=~"$node:$port",job=~"$job"}[5m])
OfoPruned - 由于 socket 缓冲区溢出,从无序队列中删除的数据包数量
metrics:
irate(node_netstat_TcpExt_OfoPruned{instance=~"$node:$port",job=~"$job"}[5m])
8. TCP Direct Copy
type: Graph
Unit: short
Label: Counter
TCPDirectCopyFromBacklog - 接收的来自 accept queue 的数据包
metrics:
irate(node_netstat_TcpExt_TCPDirectCopyFromBacklog{instance=~"$node:$port",job=~"$job"}[5m])
TCPDirectCopyFromPrequeue - 接收的来自 TCP prequeue 的数据包
metrics:
irate(node_netstat_TcpExt_TCPDirectCopyFromPrequeue{instance=~"$node:$port",job=~"$job"}[5m])
9. TCP TimeWait
type: Graph
Unit: short
Label: Counter
TW - 在快速计时器中完成 TIME_WAITTCP 套接字
metrics:
irate(node_netstat_TcpExt_TW{instance=~"$node:$port",job=~"$job"}[5m])
TWKilled - 在慢速计时器中完成 TIME_WAITTCP 套接字
metrics:
irate(node_netstat_TcpExt_TWKilled{instance=~"$node:$port",job=~"$job"}[5m])
TWRecycled - 按时间戳回收的 TIME_WAIT 套接字
metrics:
irate(node_netstat_TcpExt_TWRecycled{instance=~"$node:$port",job=~"$job"}[5m])
TCPTimeWaitOverflow - 发生 TIME_WAIT 溢出的数量
metrics:
irate(node_netstat_TcpExt_TCPTimeWaitOverflow{instance=~"$node:$port",job=~"$job"}[5m])
10. TCP PAWS
type: Graph
Unit: short
Label: Counter
PAWSActive - 由于 TCP 时间戳PAWS而拒绝激活的连接数
metrics:
irate(node_netstat_TcpExt_PAWSActive{instance=~"$node:$port",job=~"$job"}[5m])
PAWSEstab - 由于 TCP 时间戳PAWS而拒绝建立连接的数据包数量
metrics:
irate(node_netstat_TcpExt_PAWSEstab{instance=~"$node:$port",job=~"$job"}[5m])
PAWSPassive - 由于 TCP 时间戳PAWS而被拒绝的被动连接数
metrics:
irate(node_netstat_TcpExt_PAWSPassive{instance=~"$node:$port",job=~"$job"}[5m])
11. TCP SACK
type: Graph
Unit: short
Label: Counter
TCPSackRecovery - 使用 Sack 恢复丢失的包
metrics:
irate(node_netstat_TcpExt_TCPSackRecovery{instance=~"$node:$port",job=~"$job"}[5m])
TCPSackRecoveryFail - 使用 Sack 恢复丢失的包失败
metrics:
irate(node_netstat_TcpExt_TCPSackRecoveryFail{instance=~"$node:$port",job=~"$job"}[5m])
TCPSackShiftFallback
metrics:
irate(node_netstat_TcpExt_TCPSackShiftFallback{instance=~"$node:$port",job=~"$job"}[5m])
TCPSackShifted
metrics:
irate(node_netstat_TcpExt_TCPSackShifted{instance=~"$node:$port",job=~"$job"}[5m])
TCPSackDiscard
metrics:
irate(node_netstat_TcpExt_TCPSACKDiscard{instance=~"$node:$port",job=~"$job"}[5m])
TCPSackFailures
metrics:
irate(node_netstat_TcpExt_TCPSackFailures{instance=~"$node:$port",job=~"$job"}[5m])
TCPSackMerged
metrics:
irate(node_netstat_TcpExt_TCPSackMerged{instance=~"$node:$port",job=~"$job"}[5m])
TCPSACKReneging
metrics:
irate(node_netstat_TcpExt_TCPSACKReneging{instance=~"$node:$port",job=~"$job"}[5m])
TCPSACKReorder
metrics:
irate(node_netstat_TcpExt_TCPSACKReorder{instance=~"$node:$port",job=~"$job"}[5m])
12. TCP DSACK
type: Graph
Unit: short
Label: Counter
TCPDSACKIgnoredOld - 在重新传输时丢弃具有重复 SACK 的数据包
metrics:
irate(node_netstat_TcpExt_TCPDSACKIgnoredOld{instance=~"$node:$port",job=~"$job"}[5m])
TCPDSACKOfoRecv - 接收到无序的 DSACK 数据包
metrics:
irate(node_netstat_TcpExt_TCPDSACKOfoRecv{instance=~"$node:$port",job=~"$job"}[5m])
TCPDSACKOfoSent - 发送的无序的 DSACK 数据包
metrics:
irate(node_netstat_TcpExt_TCPDSACKOfoSent{instance=~"$node:$port",job=~"$job"}[5m])
TCPDSACKOldSent - 发送的旧 DSACKs 数据包
metrics:
irate(node_netstat_TcpExt_TCPDSACKOldSent{instance=~"$node:$port",job=~"$job"}[5m])
TCPDSACKRecv - 接收的 DSACK 数据包
metrics:
irate(node_netstat_TcpExt_TCPDSACKRecv{instance=~"$node:$port",job=~"$job"}[5m])
TCPDSACKUndo
metrics:
irate(node_netstat_TcpExt_TCPDSACKUndo{instance=~"$node:$port",job=~"$job"}[5m])
TCPDSACKIgnoredNoUndo
metrics:
irate(node_netstat_TcpExt_TCPDSACKIgnoredNoUndo{instance=~"$node:$port",job=~"$job"}[5m])
13. TCP FastOpen / FastRetrans
type: Graph
Unit: short
Label: Counter
TCPFastOpenActive - 成功的出站 TFO 连接
metrics:
irate(node_netstat_TcpExt_TCPFastOpenActive{instance=~"$node:$port",job=~"$job"}[5m])
TCPFastOpenActiveFail - 收到的 SYN-ACK 数据包未确认 SYN 数据包中发送的数据,并导致无 SYN 数据的重传
metrics:
irate(node_netstat_TcpExt_TCPFastOpenActiveFail{instance=~"$node:$port",job=~"$job"}[5m])
TCPFastOpenCookieReqd - 请求设置 TFO 但没有 cookie 的入站 SYN 数据包
metrics:
irate(node_netstat_TcpExt_TCPFastOpenCookieReqd{instance=~"$node:$port",job=~"$job"}[5m])
TCPFastOpenListenOverflow - TFO 监听队列溢出
metrics:
irate(node_netstat_TcpExt_TCPFastOpenListenOverflow{instance=~"$node:$port",job=~"$job"}[5m])
TCPFastOpenPassive - 成功的入站 TFO 连接
metrics:
irate(node_netstat_TcpExt_TCPFastOpenPassive{instance=~"$node:$port",job=~"$job"}[5m])
TCPFastOpenPassiveFail - 带有TFO cookie 的无效的入站 SYN 数据包
metrics:
irate(node_netstat_TcpExt_TCPFastOpenPassiveFail{instance=~"$node:$port",job=~"$job"}[5m])
TCPFastRetrans - 丢失快速重传的数据包
metrics:
irate(node_netstat_TcpExt_TCPFastRetrans{instance=~"$node:$port",job=~"$job"}[5m])
14. TCP HP
type: Graph
Unit: short
Label: Counter
TCPHPAcks - 接收到的不包含数据的 Acks
metrics:
irate(node_netstat_TcpExt_TCPHPAcks{instance=~"$node:$port",job=~"$job"}[5m])
TCPHPHits - HP 数据包
metrics:
irate(node_netstat_TcpExt_TCPHPHits{instance=~"$node:$port",job=~"$job"}[5m])
TCPHPHitsToUser
metrics:
irate(node_netstat_TcpExt_TCPHPHitsToUser{instance=~"$node:$port",job=~"$job"}[5m])
15. TCP ZeroWindow
type: Graph
Unit: short
Label: Counter
TCPToZeroWindowAdv
metrics:
irate(node_netstat_TcpExt_TCPToZeroWindowAdv{instance=~"$node:$port",job=~"$job"}[5m])
TCPWantZeroWindowAdv
metrics:
irate(node_netstat_TcpExt_TCPWantZeroWindowAdv{instance=~"$node:$port",job=~"$job"}[5m])
TCPFromZeroWindowAdv
metrics:
irate(node_netstat_TcpExt_TCPFromZeroWindowAdv{instance=~"$node:$port",job=~"$job"}[5m])
16. TCP Reorder
type: Graph
Unit: short
Label: Counter
TCPFACKReorder - 如果在需要更新时判断支持FACK,使用 TCPFACKReorder 计数器
metrics:
irate(node_netstat_TcpExt_TCPFACKReorder{instance=~"$node:$port",job=~"$job"}[5m])
TCPTSReorder - 如果是被一个partial ack确认后需要更新reorder值,使用 TCPTSReorder 计数器
metrics:
irate(node_netstat_TcpExt_TCPTSReorder{instance=~"$node:$port",job=~"$job"}[5m])
17. TCP Reno
type: Graph
Unit: short
Label: Counter
TCPRenoFailures - reno 后快速重传超时的数量
metrics:
irate(node_netstat_TcpExt_TCPRenoFailures{instance=~"$node:$port",job=~"$job"}[5m])
TCPRenoRecovery
metrics:
irate(node_netstat_TcpExt_TCPRenoRecovery{instance=~"$node:$port",job=~"$job"}[5m])
TCPRenoRecoveryFail
metrics:
irate(node_netstat_TcpExt_TCPRenoRecoveryFail{instance=~"$node:$port",job=~"$job"}[5m])
TCPRenoReorder
metrics:
irate(node_netstat_TcpExt_TCPRenoReorder{instance=~"$node:$port",job=~"$job"}[5m])
18. TCP ReqQ
type: Graph
Unit: short
Label: Counter
TCPReqQFullDoCookies
metrics:
irate(node_netstat_TcpExt_TCPReqQFullDoCookies{instance=~"$node:$port",job=~"$job"}[5m])
TCPReqQFullDrop
metrics:
irate(node_netstat_TcpExt_TCPReqQFullDrop{instance=~"$node:$port",job=~"$job"}[5m])
19. TCP Out of order
type: Graph
Unit: short
Label: Counter
TCPOFODrop - 在 OFO 中排队但由于达到了 socket rcvbuf 限制而丢弃的数据包
metrics:
irate(node_netstat_TcpExt_TCPOFODrop{instance=~"$node:$port",job=~"$job"}[5m])
TCPOFOMerge - OFO 中与其他数据包合并的数据包
metrics:
irate(node_netstat_TcpExt_TCPOFOMerge{instance=~"$node:$port",job=~"$job"}[5m])
TCPOFOQueue - OFO 队列的数据包
metrics:
irate(node_netstat_TcpExt_TCPOFOQueue{instance=~"$node:$port",job=~"$job"}[5m])
20. TCP MD5
type: Graph
Unit: short
Label: Counter
TCPMD5NotFound - 希望收到带 MD5 选项的包,但是包里面没有 MD5 选项
metrics:
irate(node_netstat_TcpExt_TCPMD5NotFound{instance=~"$node:$port",job=~"$job"}[5m])
TCPMD5Unexpected - 不希望收到带 MD5 选项的包,但是包里面有 MD5 选项
metrics:
irate(node_netstat_TcpExt_TCPMD5Unexpected{instance=~"$node:$port",job=~"$job"}[5m])
21. TCP Prequeued
type: Graph
Unit: short
Label: Counter
TCPPrequeued
metrics:
irate(node_netstat_TcpExt_TCPPrequeued{instance=~"$node:$port",job=~"$job"}[5m])
TCPPrequeueDropped - prequeue 队列丢弃的数据包
metrics:
irate(node_netstat_TcpExt_TCPPrequeueDropped{instance=~"$node:$port",job=~"$job"}[5m])
22. TCP Rcv
type: Graph
Unit: short
Label: Counter
TCPRcvCoalesce - 在接收队列中崩溃的数据包
metrics:
irate(node_netstat_TcpExt_TCPRcvCoalesce{instance=~"$node:$port",job=~"$job"}[5m])
TCPRcvCollapsed - 由于低的 socket 缓冲区,在接收队列中崩溃的数据包
metrics:
irate(node_netstat_TcpExt_TCPRcvCollapsed{instance=~"$node:$port",job=~"$job"}[5m])
23. TCP Original Data
type: Graph
Unit: short
Label: Counter
TCPOrigDataSent - 带有原始数据的传出数据包
metrics:
irate(node_netstat_TcpExt_TCPOrigDataSent{instance=~"$node:$port",job=~"$job"}[5m])
24. TCP Filters
type: Graph
Unit: short
Label: Counter
ArpFilter - 过滤的 Arp 数据包
metrics:
irate(node_netstat_TcpExt_ArpFilter{instance=~"$node:$port",job=~"$job"}[5m])
IPReversePathFilter - 从非直连网络到达的数据包
metrics:
irate(node_netstat_TcpExt_IPReversePathFilter{instance=~"$node:$port",job=~"$job"}[5m])
25. TCP Pure ACK
type: Graph
Unit: short
Label: Counter
TCPPureAcks - 接收到不包含的数据负载的 ACKs
metrics:
irate(node_netstat_TcpExt_TCPPureAcks{instance=~"$node:$port",job=~"$job"}[5m])
26. TCP Auto Corking
type: Graph
Unit: short
Label: Counter
TCPAutoCorking - Tcp 自动闭塞
metrics:
irate(node_netstat_TcpExt_TCPAutoCorking{instance=~"$node:$port",job=~"$job"}[5m])
27. TCP Issues
type: Graph
Unit: short
Label: Counter
BusyPollRxPackets - 低延迟应用程序获取的数据包
metrics:
irate(node_netstat_TcpExt_BusyPollRxPackets{instance=~"$node:$port",job=~"$job"}[5m])
EmbryonicRsts - Resets received for embryonic SYN_RECV sockets
metrics:
irate(node_netstat_TcpExt_EmbryonicRsts{instance=~"$node:$port",job=~"$job"}[5m])
ListenOverflows - 监听 socket 的队列溢出
metrics:
irate(node_netstat_TcpExt_ListenOverflows{instance=~"$node:$port",job=~"$job"}[5m])
TCPSchedulerFailed
metrics:
irate(node_netstat_TcpExt_TCPSchedulerFailed{instance=~"$node:$port",job=~"$job"}[5m])
TCPMemoryPressures
metrics:
irate(node_netstat_TcpExt_TCPMemoryPressures{instance=~"$node:$port",job=~"$job"}[5m])