SYNOPSIS
psensor-server [,OPTION/]...DESCRIPTION
psensor-server is an HTTP server for monitoring hardware sensors remotely.
It provides a JSON Web service which can be used by psensor(1) to monitor remotely the hardware sensors of a computer.
It can provide information about:
* the temperature of the motherboard and CPU sensors (using lm-sensors).
* the temperature of the Hard Disk Drives (using hddtemp).
* the rotation speed of the fans (using lm-sensors).
It is also possible to connect to the psensor-server with a browser, a simple Web page is displaying the sensors information and the CPU usage.
The URL http://hostname:3131/api/1.0/sensors/[id] returns a JSON object containing all information about a sensor. [id] is the uniq identifier of the sensor.
Here is an example of the JSON object of type 'sensor':
{ "id": "lmsensor acpitz-virtual-0 temp1",
"name": "temp1",
"type": 257,
"min": 47.800000,
"max": 60.800000,
"measures": [ { "value": 47.800000, "time": 1311374873 },
{ "value": 49.800000, "time": 1311374878 },
{ "value": 49.800000, "time": 1311374883 } ],
"last_measure": { "value": 49.800000, "time": 1311374883 }
}
Fields of the type 'sensor':
* id: the uniq identifier of the sensor.
* name: a humean readable name of the sensor (might not be uniq).
* type: the type of sensor. Look at src/lib/psensor.h for the
different types.
* min: the minimal value of the sensor.
* max: the maximal value of the sensor.
* measures: all measures of the sensor.
* last_measure: the last value of the sensor.
* time: the time of a measure as the number of seconds since
1970/01/01.
The URL http://hostname:3131/api/1.0/sensors returns a JSON array containing all JSON objects of type 'sensor'.
psensor-server can be stopped by sending an HTTP request with the URL 'http://hostname:port/api/1.0/server/stop'.
OPTIONS
- -h, --help
- display this help and exit
- -v, --version
- display version information and exit
- -p,--port=PORT
- webserver port
- -w,--wdir=DIR
- directory containing webserver pages
- -d, --debug=,LEVEL/
- set the debug level, integer between 0 and 3
- -l, --log-file=,PATH/
- set the log file to PATH
-
--sensor-log-file=,PATH/ set the sensor log file to PATH
- --sensor-log-interval=,S/ set the sensor log interval to S (seconds)
SENSOR LOG FILE
It is using a text format, each line is terminated with a NEWLINE char.
The first line is: I,%D,%V
%D is the starting time of the log expressed as the number of seconds since EPOC.
%V is the version of psensor-server.
Following lines gives the ordered list of sensors: S,%I,%T
%I is the uniq identifier of the sensor.
%T is the hexadecimal representation of the sensor type.
Then, the values of all sensors are written: %D,%V...
%D is the number of seconds elapsed since the starting time of the log.
%V... is the list separated by a comma of the current value of all sensors. The ordering is the same than the list of sensor identifiers.
The value is expressed as a float with one digit precision. Temperatures are using Celsius unit.
The value is written only if it has changed.
Example: I,1345974927,0.7.0.4 S,lmsensor coretemp-isa-0000 Physical id 0,101 S,lmsensor coretemp-isa-0000 Core 0,101 S,lmsensor coretemp-isa-0000 Core 1,101 0,37.0,37.0,36.0 5,36.0,,36.0
Five seconds after the log starts, the temperature of the second sensor (Core 0) is still 37C.
WARNING
psensor-server does not provide any way to restrict the connection to the HTTP server, worst, no effort has been made against malicious HTTP attacks. You should make the psensor-server port available only to a network or computer you trust by using the usual network security tools of the system (for example, iptables(8) ).
COPYRIGHT
Copyright © 2010-2012 [email protected] License GPLv2: GNU GPL version 2 or later <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.