Code

Imported upstream version 1.4.8
[pkg-rrdtool.git] / src / rrdupdate.c
1 /*****************************************************************************
2  * RRDtool 1.4.8  Copyright by Tobi Oetiker, 1997-2013
3  *****************************************************************************
4  * rrdupdate.c  Main program for the (standalone) rrdupdate utility
5  *****************************************************************************
6  * $Id$
7  *****************************************************************************/
9 #if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__CYGWIN32__) && !defined(HAVE_CONFIG_H)
10 #include "../win32/config.h"
11 #else
12 #ifdef HAVE_CONFIG_H
13 #include "../rrd_config.h"
14 #endif
15 #endif
17 #include "rrd.h"
18 #include "plbasename.h"
20 int main(
21     int argc,
22     char **argv)
23 {
24     char *name=basename(argv[0]);
25     rrd_info_t *info;
27     if (!strcmp(name, "rrdcreate"))
28         rrd_create(argc, argv);
29     else if (!strcmp(name, "rrdinfo")) {
30          info=rrd_info(argc, argv);
31          rrd_info_print(info);
32          rrd_info_free(info);
33     }
34     else
35         rrd_update(argc, argv);
37     if (rrd_test_error()) {
38         printf("RRDtool " PACKAGE_VERSION
39                "  Copyright by Tobi Oetiker, 1997-2010\n\n");
40         if (!strcmp(name, "rrdcreate")) {
41             printf("Usage: rrdcreate <filename>\n"
42                    "\t\t\t[--start|-b start time]\n"
43                    "\t\t\t[--step|-s step]\n"
44                    "\t\t\t[--no-overwrite]\n"
45                    "\t\t\t[DS:ds-name:DST:dst arguments]\n"
46                    "\t\t\t[RRA:CF:cf arguments]\n\n");
47         }
48         else if (!strcmp(name, "rrdinfo")) {
49             printf("Usage: rrdinfo <filename>\n");
50         }
51         else {
52             printf("Usage: rrdupdate <filename>\n"
53                    "\t\t\t[--template|-t ds-name[:ds-name]...]\n"
54                    "\t\t\ttime|N:value[:value...]\n\n"
55                    "\t\t\tat-time@value[:value...]\n\n"
56                    "\t\t\t[ time:value[:value...] ..]\n\n");
57         }
59         printf("ERROR: %s\n", rrd_get_error());
60         rrd_clear_error();
61         return 1;
62     }
63     return 0;
64 }