Pre-2.0 release: Sync with HAMMER 64 - NFS and cross-device link fixes.
[dragonfly.git] / usr.sbin / sensorsd / sensorsd.conf.5
blobc811012c55755110f2a17caa062ae3c81dc04d9e
1 .\" $OpenBSD: sensorsd.conf.5,v 1.18 2007/08/14 17:10:02 cnst Exp $
2 .\" $DragonFly: src/usr.sbin/sensorsd/sensorsd.conf.5,v 1.3 2007/12/25 12:54:50 hasso Exp $
3 .\"
4 .\" Copyright (c) 2003 Henning Brauer <henning@openbsd.org>
5 .\" Copyright (c) 2005 Matthew Gream <matthew.gream@pobox.com>
6 .\" Copyright (c) 2007 Constantine A. Murenin <cnst@FreeBSD.org>
7 .\"
8 .\" Permission to use, copy, modify, and distribute this software for any
9 .\" purpose with or without fee is hereby granted, provided that the above
10 .\" copyright notice and this permission notice appear in all copies.
11 .\"
12 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
13 .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
14 .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
15 .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
16 .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
17 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
18 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
19 .\"
20 .Dd December 25, 2007
21 .Dt SENSORSD.CONF 5
22 .Os
23 .Sh NAME
24 .Nm sensorsd.conf
25 .Nd configuration file for sensorsd
26 .Sh DESCRIPTION
27 The
28 .Nm
29 file is read by
30 .Xr sensorsd 8
31 to configure hardware sensor monitoring.
32 Each sensor registered in the system
33 is matched by at most one entry in
34 .Nm ,
35 which may specify high and low limits,
36 and whether sensor status changes provided by the driver should be ignored.
37 If the limits are crossed or if the status provided by the driver changes,
38 .Xr sensorsd 8 Ap s
39 alert functionality is triggered and a command, if specified, is
40 executed.
41 .Pp
42 The
43 .Nm
44 file follows the syntax of configuration databases as documented in
45 .Xr getcap 3 .
46 Sensors may be specified by their full
47 .Va hw.sensors
48 .Xr sysctl 8
49 variable name or by type,
50 with the full name taking precedence.
51 For example, if an entry
52 .Va hw.sensors.lm0.temp1
53 is not found, then an entry for
54 .Dq Li temp
55 will instead be looked for.
56 .Pp
57 The following attributes may be used:
58 .Pp
59 .Bl -tag -width ".Li command" -offset indent -compact
60 .It Li command
61 Specify a command to be executed on state change.
62 .It Li high
63 Specify an upper limit.
64 .It Li low
65 Specify a lower limit.
66 .It Li istatus
67 Ignore status provided by the driver.
68 .El
69 .Pp
70 The values for temperature sensors can be given in degrees Celsius or
71 Fahrenheit, for voltage sensors in volts, and fan speed sensors take a
72 unit-less number representing RPM.
73 Values for all other types of sensors can be specified
74 in the same units as they appear under the
75 .Xr sysctl 8
76 .Va hw.sensors
77 tree.
78 .Pp
79 Sensors that provide status
80 do not require boundary values specified
81 and simply trigger on status transitions.
82 If boundaries are specified nonetheless,
83 then they are used in addition to automatic status monitoring,
84 unless the
85 .Dq Li istatus
86 attribute is specified to ignore status values that are provided by the drivers.
87 .Pp
88 The command is executed when there is any change in sensor state.
89 Tokens in the command are substituted as follows:
90 .Pp
91 .Bl -tag -width indent -offset indent -compact
92 .It Li %x
93 the
94 .Va xname
95 of the device the sensor sits on
96 .It Li %t
97 the type of sensor
98 .It Li %n
99 the sensor number
100 .It Li %2
101 the sensor's current value
102 .It Li %3
103 the sensor's low limit
104 .It Li %4
105 the sensor's high limit
108 By default,
109 .Xr sensorsd 8
110 monitors status changes on all sensors that keep their state.
111 This behaviour may be altered by using the
112 .Dq Li istatus
113 attribute to ignore
114 status changes of sensors of a certain type
115 or individual sensors.
116 .Sh FILES
117 .Bl -tag -width ".Pa /etc/sensorsd.conf"
118 .It Pa /etc/sensorsd.conf
119 Configuration file for
120 .Xr sensorsd 8 .
122 .Sh EXAMPLES
123 In the following configuration file,
125 .Va hw.sensors.lm0.temp0
126 transitions 80C, the command
127 .Pa /etc/sensorsd/log_warning
128 will be executed,
129 with the sensor type, number and current value passed to it.
130 Alerts will be sent
132 .Va hw.sensors.lm0.volt3
133 transitions to being within or outside
134 a range of 4.8V and 5.2V;
135 if the speed of the fan attached to
136 .Va hw.sensors.lm0.fan1
137 transitions to being below or above 1000RPM;
138 however, no alerts will be generated for status changes on
139 timedelta sensors.
140 For all other sensors whose drivers automatically provide
141 sensor status updates, alerts will be generated
142 each time those sensors undergo status transitions.
143 .Bd -literal -offset indent
144 # Comments are allowed
145 hw.sensors.lm0.temp0:high=80C:command=/etc/sensorsd/log_warning %t %n %2
146 hw.sensors.lm0.volt3:low=4.8V:high=5.2V
147 hw.sensors.lm0.fan1:low=1000
148 timedelta:istatus       #ignore status changes for timedelta
150 .Sh SEE ALSO
151 .Xr getcap 3 ,
152 .Xr lm 4 ,
153 .Xr sensorsd 8 ,
154 .Xr sysctl 8
155 .Sh HISTORY
158 file format first appeared in
159 .Ox 3.5 .
160 The format was altered in
161 .Ox 4.1
162 to accommodate hierarchical device-based sensor addressing.
164 .Dq Li istatus
165 attribute was introduced in
166 .Ox 4.2 .
167 .Sh CAVEATS
168 Alert functionality is triggered every time there is a change in sensor state;
169 for example, when
170 .Xr sensorsd 8
171 is started,
172 the status of each monitored sensor changes
173 from undefined to whatever it is.
174 One must keep this in mind when using commands
175 that may unconditionally perform adverse actions (e.g.\&
176 .Xr shutdown 8 ) ,
177 as they will be executed even when all sensors perform to specification.
178 If this is undesirable, then a wrapper shell script should be used instead.