add gradient into data
This commit is contained in:
parent
8c0c864905
commit
6a13da024d
@ -88,7 +88,8 @@ int main (void) {
|
||||
double f = 1.0 / (((double) diff) / 1000000.0);
|
||||
int valid = settled ? 1 : 0;
|
||||
|
||||
if (settled && (abs(f - lastF) > epsilon)) {
|
||||
double gradient = abs(f - lastF);
|
||||
if (settled && (gradient > epsilon)) {
|
||||
logmsg(LOG_INFO, "Current f=%f, last f=%f, gradient too large, skipped\n", f, lastF);
|
||||
skipped++;
|
||||
f = lastF;
|
||||
@ -96,7 +97,7 @@ int main (void) {
|
||||
}
|
||||
lastF = f;
|
||||
// printf("%f, %d\n", f, valid);
|
||||
influxAddFrequency(f, valid);
|
||||
influxAddFrequency(f, gradient, valid);
|
||||
|
||||
ledTick++;
|
||||
if (ledTick == 50) {
|
||||
|
@ -79,7 +79,7 @@ static void influxSendRequest() {
|
||||
led(E_BLUE, false);
|
||||
}
|
||||
|
||||
void influxAddFrequency(double f, int valid) {
|
||||
void influxAddFrequency(double f, double gradient, int valid) {
|
||||
static uint32_t entries = 0;
|
||||
static uint32_t totalEntries = 0;
|
||||
char tmpBuf[256];
|
||||
@ -87,7 +87,7 @@ void influxAddFrequency(double f, int valid) {
|
||||
|
||||
clock_gettime(CLOCK_REALTIME, &t);
|
||||
uint64_t tt = (((uint64_t)t.tv_sec) * 1000) + (((uint64_t)t.tv_nsec) / 1000000);
|
||||
int c = sprintf(tmpBuf, "mainsfrequency,host=%s,valid=%d freq=%f %llu\n", influxTag, valid, f, tt);
|
||||
int c = sprintf(tmpBuf, "mainsfrequency,host=%s,valid=%d freq=%f,gradient=%f %llu\n", influxTag, valid, f, gradient, tt);
|
||||
|
||||
if ((bufferNextEntry + c + 10) > (influxBuffer + BUFSIZE)) {
|
||||
influxSendRequest();
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
#include <libconfig.h>
|
||||
|
||||
void influxAddFrequency(double f, int valid);
|
||||
void influxAddFrequency(double f, double gradient, int valid);
|
||||
void influxInit(config_t *pCfg);
|
||||
|
||||
#endif // _INFLUX_H_
|
||||
|
Loading…
x
Reference in New Issue
Block a user