Changeset 2503
- Timestamp:
- 05/01/04 21:18:53 (9 years ago)
- Location:
- lm-sensors/trunk/prog/sensord
- Files:
-
- 5 modified
Legend:
- Unmodified
- Added
- Removed
-
lm-sensors/trunk/prog/sensord/args.c
r1474 r2503 40 40 int logTime = 30 * 60; 41 41 int rrdTime = 5 * 60; 42 int rrdNoAverage = 0; 42 43 int syslogFacility = LOG_LOCAL4; 43 44 int doScan = 0; … … 99 100 " -l, --log-interval <time> -- interval between logging sensors (default 30m)\n" 100 101 " -t, --rrd-interval <time> -- interval between updating RRD file (default 5m)\n" 102 " -T, --rrd-no-average -- switch RRD in non-average mode\n" 101 103 " -r, --rrd-file <file> -- RRD file (default <none>)\n" 102 104 " -c, --config-file <file> -- configuration file (default sensors.conf)\n" … … 136 138 "If no chips are specified, all chip info will be printed.\n"; 137 139 138 static const char *daemonShortOptions = "i:l:t: f:r:c:p:advhg:";140 static const char *daemonShortOptions = "i:l:t:Tf:r:c:p:advhg:"; 139 141 140 142 static const struct option daemonLongOptions[] = { … … 142 144 { "log-interval", required_argument, NULL, 'l' }, 143 145 { "rrd-interval", required_argument, NULL, 't' }, 146 { "rrd-no-average", no_argument, NULL, 'T' }, 144 147 { "syslog-facility", required_argument, NULL, 'f' }, 145 148 { "rrd-file", required_argument, NULL, 'r' }, … … 191 194 if ((rrdTime = parseTime (optarg)) < 0) 192 195 return -1; 196 break; 197 case 'T': 198 rrdNoAverage = 1; 193 199 break; 194 200 case 'f': -
lm-sensors/trunk/prog/sensord/rrd.c
r2346 r2503 257 257 } else { 258 258 sprintf (stepBuff, "%d", rrdTime); 259 sprintf (rraBuff, "RRA: AVERAGE:%f:%d:%d", 0.5 /* fraction of non-unknown samples needed per entry */, 1 /* samples per entry */, 7 * 24 * 60 * 60 / rrdTime /* 1 week */);259 sprintf (rraBuff, "RRA:%s:%f:%d:%d", rrdNoAverage?"LAST":"AVERAGE", 0.5 /* fraction of non-unknown samples needed per entry */, 1 /* samples per entry */, 7 * 24 * 60 * 60 / rrdTime /* 1 week */); 260 260 argc += num; 261 261 argv[argc ++] = rraBuff; -
lm-sensors/trunk/prog/sensord/sensord.8
r2355 r2503 71 71 72 72 The time is specified as before; e.g., `5m'. 73 .IP "-T, --rrd-no-average" 74 Specify that the round-robin database should not be averaged. 75 73 76 .IP "-r, --rrd-file file" 74 77 Specify a round-robin database into which to log all sensor readings; -
lm-sensors/trunk/prog/sensord/sensord.c
r1389 r2503 29 29 #include <syslog.h> 30 30 #include <unistd.h> 31 #include <time.h> 31 32 #include <sys/types.h> 32 33 #include <sys/stat.h> … … 76 77 (void) { 77 78 int ret = 0; 78 int scanValue = 0, logValue = 0, rrdValue = 0; 79 int scanValue = 0, logValue = 0; 80 /* 81 * First RRD update at next RRD timeslot to prevent failures due 82 * one timeslot updated twice on restart for example. 83 */ 84 int rrdValue = rrdTime - time(NULL) % rrdTime; 79 85 80 86 sensorLog (LOG_INFO, "sensord started"); … … 94 100 if ((ret == 0) && rrdTime && rrdFile && (rrdValue <= 0)) { 95 101 ret = rrdUpdate (); 96 rrdValue += rrdTime; 102 /* 103 * The amount of time to wait is computed using the same method as 104 * in RRD instead of simply adding the interval. 105 */ 106 rrdValue = rrdTime - time(NULL) % rrdTime; 97 107 } 98 108 if (!done && (ret == 0)) { -
lm-sensors/trunk/prog/sensord/sensord.h
r1566 r2503 37 37 extern int logTime; 38 38 extern int rrdTime; 39 extern int rrdNoAverage; 39 40 extern int syslogFacility; 40 41 extern int doScan;
