master
md 136 lines 3.48 KB
Rendered Raw
1 <!--startmeta
2 custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/softirq_statistics.md"
3 meta_yaml: "https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/metadata.yaml"
4 sidebar_label: "SoftIRQ statistics"
5 learn_status: "Published"
6 learn_rel_path: "Collecting Metrics/Collectors/Operating Systems"
7 keywords: ['softirqs', 'interrupts']
8 message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE"
9 endmeta-->
10
11 # SoftIRQ statistics
12
13
14 <img src="https://netdata.cloud/img/linuxserver.svg" width="150"/>
15
16
17 Plugin: proc.plugin
18 Module: /proc/softirqs
19
20 <img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" />
21
22 ## Overview
23
24 In the Linux kernel, handling of hardware interrupts is split into two halves: the top half and the bottom half.
25 The top half is the routine that responds immediately to an interrupt, while the bottom half is deferred to be processed later.
26
27 Softirqs are a mechanism in the Linux kernel used to handle the bottom halves of interrupts, which can be
28 deferred and processed later in a context where it's safe to enable interrupts.
29
30 The actual work of handling the interrupt is offloaded to a softirq and executed later when the system
31 decides it's a good time to process them. This helps to keep the system responsive by not blocking the top
32 half for too long, which could lead to missed interrupts.
33
34 Monitoring `/proc/softirqs` is useful for:
35
36 - **Performance tuning**: A high rate of softirqs could indicate a performance issue. For instance, a high
37 rate of network softirqs (`NET_RX` and `NET_TX`) could indicate a network performance issue.
38
39 - **Troubleshooting**: If a system is behaving unexpectedly, checking the softirqs could provide clues about
40 what is going on. For example, a sudden increase in block device softirqs (BLOCK) might indicate a problem
41 with a disk.
42
43 - **Understanding system behavior**: Knowing what types of softirqs are happening can help you understand what
44 your system is doing, particularly in terms of how it's interacting with hardware and how it's handling
45 interrupts.
46
47
48
49
50 This collector is supported on all platforms.
51
52 This collector supports collecting metrics from multiple instances of this integration, including remote instances.
53
54
55 ### Default Behavior
56
57 #### Auto-Detection
58
59 This integration doesn't support auto-detection.
60
61 #### Limits
62
63 The default configuration for this integration does not impose any limits on data collection.
64
65 #### Performance Impact
66
67 The default configuration for this integration is not expected to impose a significant performance impact on the system.
68
69 ## Setup
70
71
72 ### Prerequisites
73
74 No action required.
75
76 ### Configuration
77
78 #### Options
79
80
81
82 There are no configuration options.
83
84
85
86 #### via File
87
88 There is no configuration file.
89
90 ##### Examples
91 There are no configuration examples.
92
93
94
95 ## Alerts
96
97 There are no alerts configured by default for this integration.
98
99
100 ## Metrics
101
102 Metrics grouped by *scope*.
103
104 The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.
105
106
107
108 ### Per SoftIRQ statistics instance
109
110
111
112 This scope has no labels.
113
114 Metrics:
115
116 | Metric | Dimensions | Unit |
117 |:------|:----------|:----|
118 | system.softirqs | a dimension per softirq | softirqs/s |
119
120 ### Per cpu core
121
122
123
124 Labels:
125
126 | Label | Description |
127 |:-----------|:----------------|
128 | cpu | TBD |
129
130 Metrics:
131
132 | Metric | Dimensions | Unit |
133 |:------|:----------|:----|
134 | cpu.softirqs | a dimension per softirq | softirqs/s |
135
136