bmsd/mysql.c

changeset 194
d202777ebae5
parent 192
7f69b43e6084
child 299
047ead629d4a
equal deleted inserted replaced
193:3cbd81ea9391 194:d202777ebae5
510 510
511 free(query); 511 free(query);
512 } 512 }
513 513
514 514
515
516 void fermentation_mysql_log(fermentation_log *log)
517 {
518 char *query, buf[65];
519
520 query = xstrcpy((char *)"INSERT INTO log_fermentation SET datetime='");
521 query = xstrcat(query, log->datetime);
522 query = xstrcat(query, (char *)":00");
523 if (log->product_uuid) {
524 query = xstrcat(query, (char *)"', product_uuid='");
525 query = xstrcat(query, log->product_uuid);
526 }
527 if (log->product_code) {
528 query = xstrcat(query, (char *)"', product_code='");
529 query = xstrcat(query, log->product_code);
530 }
531 if (log->product_name) {
532 query = xstrcat(query, (char *)"', product_name='");
533 query = xstrcat(query, log->product_name);
534 }
535 query = xstrcat(query, (char *)"', stage='");
536 query = xstrcat(query, log->stage);
537 query = xstrcat(query, (char *)"', mode='");
538 query = xstrcat(query, log->mode);
539 query = xstrcat(query, (char *)"', temperature_beer='");
540 snprintf(buf, 64, "%.3f", log->temperature_beer);
541 query = xstrcat(query, buf);
542 query = xstrcat(query, (char *)"', temperature_air='");
543 snprintf(buf, 64, "%.3f", log->temperature_air);
544 query = xstrcat(query, buf);
545 query = xstrcat(query, (char *)"', temperature_chiller='");
546 snprintf(buf, 64, "%.3f", log->temperature_chiller);
547 query = xstrcat(query, buf);
548 query = xstrcat(query, (char *)"', temperature_room='");
549 snprintf(buf, 64, "%.3f", log->temperature_room);
550 query = xstrcat(query, buf);
551 query = xstrcat(query, (char *)"', target_low='");
552 snprintf(buf, 64, "%.1f", log->setpoint_low);
553 query = xstrcat(query, buf);
554 query = xstrcat(query, (char *)"', target_high='");
555 snprintf(buf, 64, "%.1f", log->setpoint_high);
556 query = xstrcat(query, buf);
557 query = xstrcat(query, (char *)"', heater_power='");
558 snprintf(buf, 64, "%d", log->heater_power);
559 query = xstrcat(query, buf);
560 query = xstrcat(query, (char *)"', heater_usage='");
561 snprintf(buf, 64, "%ld", log->heater_usage);
562 query = xstrcat(query, buf);
563 query = xstrcat(query, (char *)"', cooler_power='");
564 snprintf(buf, 64, "%d", log->cooler_power);
565 query = xstrcat(query, buf);
566 query = xstrcat(query, (char *)"', cooler_usage='");
567 snprintf(buf, 64, "%ld", log->cooler_usage);
568 query = xstrcat(query, buf);
569 query = xstrcat(query, (char *)"', fan_power='");
570 snprintf(buf, 64, "%d", log->fan_power);
571 query = xstrcat(query, buf);
572 query = xstrcat(query, (char *)"', fan_usage='");
573 snprintf(buf, 64, "%ld", log->fan_usage);
574 query = xstrcat(query, buf);
575 query = xstrcat(query, (char *)"'");
576 // sg
577 if (log->event) {
578 query = xstrcat(query, (char *)", event='");
579 query = xstrcat(query, log->event);
580 query = xstrcat(query, (char *)"'");
581 }
582 if (log->fermenter_uuid) {
583 query = xstrcat(query, (char *)", fermenter_uuid='");
584 query = xstrcat(query, log->fermenter_uuid);
585 query = xstrcat(query, (char *)"'");
586 }
587 if (log->fermenter_node) {
588 query = xstrcat(query, (char *)", fermenter_node='");
589 query = xstrcat(query, log->fermenter_node);
590 query = xstrcat(query, (char *)"'");
591 }
592 if (log->fermenter_alias) {
593 query = xstrcat(query, (char *)", fermenter_alias='");
594 query = xstrcat(query, log->fermenter_alias);
595 query = xstrcat(query, (char *)"'");
596 }
597
598 if (mysql_real_query(con, query, strlen(query))) {
599 syslog(LOG_NOTICE, "MySQL: `%s' error %u (%s)\n)", query, mysql_errno(con), mysql_error(con));
600 }
601
602 free(query);
603 }
604
605

mercurial