logging
This commit is contained in:
parent
e21e114313
commit
61b1498d7b
@ -3,7 +3,7 @@ CC=gcc
|
||||
CFLAGS=-Wall
|
||||
LDFLAGS=-lwiringPi -lcurl -lconfig
|
||||
|
||||
counter: counter.o LS7366R.o influx.o ringbuffer.o led.o
|
||||
counter: counter.o LS7366R.o influx.o ringbuffer.o led.o logging.o
|
||||
$(CC) -o $@ $(LDFLAGS) $^
|
||||
|
||||
.c.o:
|
||||
|
@ -10,6 +10,7 @@
|
||||
#include "influx.h"
|
||||
#include "ringbuffer.h"
|
||||
#include "led.h"
|
||||
#include "logging.h"
|
||||
|
||||
|
||||
const int CTRL_OUT = 16;
|
||||
@ -51,9 +52,9 @@ void init() {
|
||||
void readConfig() {
|
||||
config_init(&cfg);
|
||||
if (! config_read_file(&cfg, "/opt/etc/counter.cfg")) {
|
||||
fprintf(stderr, "failed to read config file: %s:%d - %s\n",
|
||||
config_error_file(&cfg), config_error_line(&cfg),
|
||||
config_error_text(&cfg));
|
||||
logmsg(LOG_ERR, "failed to read config file: %s:%d - %s\n",
|
||||
config_error_file(&cfg), config_error_line(&cfg),
|
||||
config_error_text(&cfg));
|
||||
config_destroy(&cfg);
|
||||
exit(-1);
|
||||
}
|
||||
@ -87,7 +88,7 @@ int main (void) {
|
||||
double f = 1.0 / (((double) diff) / 1000000.0);
|
||||
|
||||
if (settled && (abs(f - lastF) > epsilon)) {
|
||||
fprintf(stderr, "Current f=%f, last f=%f, gradient too large, skipped\n", f, lastF);
|
||||
logmsg(LOG_INFO, "Current f=%f, last f=%f, gradient too large, skipped\n", f, lastF);
|
||||
skipped++;
|
||||
f = lastF;
|
||||
}
|
||||
@ -100,7 +101,7 @@ int main (void) {
|
||||
ledTick = 0;
|
||||
led(E_GREEN, false);
|
||||
if (! settled) {
|
||||
fprintf(stderr, "Now it is settled\n");
|
||||
logmsg(LOG_INFO, "Now it is settled\n");
|
||||
settled = true;
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
#include <libconfig.h>
|
||||
|
||||
#include "led.h"
|
||||
#include "logging.h"
|
||||
|
||||
|
||||
const char INFLUXURL_KEY[] = "influxUrl";
|
||||
@ -70,7 +71,7 @@ static void influxSendRequest() {
|
||||
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, influxBuffer);
|
||||
CURLcode res = curl_easy_perform(curl);
|
||||
if(res != CURLE_OK) {
|
||||
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
|
||||
logmsg(LOG_ERR, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
|
||||
led(E_RED, true);
|
||||
}
|
||||
curl_easy_cleanup(curl);
|
||||
@ -92,7 +93,7 @@ void influxAddFrequency(double f) {
|
||||
influxSendRequest();
|
||||
influxClearBuffer();
|
||||
totalEntries += entries;
|
||||
fprintf(stderr, "%u entries sent to database, in total %u, skipped: %u\n", entries, totalEntries, skipped);
|
||||
logmsg(LOG_INFO, "%u entries sent to database, in total %u, skipped: %u\n", entries, totalEntries, skipped);
|
||||
entries = 0;
|
||||
}
|
||||
|
||||
|
13
src/logging.c
Normal file
13
src/logging.c
Normal file
@ -0,0 +1,13 @@
|
||||
#include <syslog.h>
|
||||
#include <stdarg.h>
|
||||
|
||||
void logmsg(int prio, const char* format, ...) {
|
||||
va_list vl;
|
||||
|
||||
openlog("counter", 0, LOG_LOCAL0);
|
||||
va_start(vl, format);
|
||||
vsyslog(prio, format, vl);
|
||||
va_end(vl);
|
||||
closelog();
|
||||
}
|
||||
|
8
src/logging.h
Normal file
8
src/logging.h
Normal file
@ -0,0 +1,8 @@
|
||||
#ifndef _LOGGING_H_
|
||||
#define _LOGGING_H_
|
||||
|
||||
#include <syslog.h>
|
||||
|
||||
void logmsg(int prio, const char* format, ...);
|
||||
|
||||
#endif // _LOGGING_H_
|
Loading…
x
Reference in New Issue
Block a user