#define NETDATA_RRD2JSON_H 1
#define HOSTNAME_MAX 1024
-extern char *hostname;
+
+#define API_RELATIVE_TIME_MAX (3 * 365 * 86400)
// type of JSON generations
#define DATASOURCE_INVALID -1
#define DATASOURCE_FORMAT_SSV_COMMA "ssvcomma"
#define DATASOURCE_FORMAT_CSV_JSON_ARRAY "csvjsonarray"
-#define GROUP_AVERAGE 0
-#define GROUP_MAX 1
-#define GROUP_SUM 2
-#define GROUP_INCREMENTAL_SUM 3
+#define ALLMETRICS_FORMAT_SHELL "shell"
+#define ALLMETRICS_FORMAT_PROMETHEUS "prometheus"
+
+#define ALLMETRICS_SHELL 1
+#define ALLMETRICS_PROMETHEUS 2
+
+#define GROUP_UNDEFINED 0
+#define GROUP_AVERAGE 1
+#define GROUP_MIN 2
+#define GROUP_MAX 3
+#define GROUP_SUM 4
+#define GROUP_INCREMENTAL_SUM 5
#define RRDR_OPTION_NONZERO 0x00000001 // don't output dimensions will just zero values
#define RRDR_OPTION_REVERSED 0x00000002 // output the rows in reverse order (oldest to newest)
extern void rrd_stats_api_v1_chart(RRDSET *st, BUFFER *wb);
extern void rrd_stats_api_v1_charts(BUFFER *wb);
+extern void rrd_stats_api_v1_charts_allmetrics_shell(BUFFER *wb);
+extern void rrd_stats_api_v1_charts_allmetrics_prometheus(BUFFER *wb);
+
extern unsigned long rrd_stats_one_json(RRDSET *st, char *options, BUFFER *wb);
extern void rrd_stats_graph_json(RRDSET *st, char *options, BUFFER *wb);
extern time_t rrd_stats_json(int type, RRDSET *st, BUFFER *wb, long entries_to_show, long group, int group_method, time_t after, time_t before, int only_non_zero);
extern int rrd2format(RRDSET *st, BUFFER *out, BUFFER *dimensions, uint32_t format, long points, long long after, long long before, int group_method, uint32_t options, time_t *latest_timestamp);
-extern int rrd2value(RRDSET *st, BUFFER *wb, calculated_number *n, const char *dimensions, long points, long long after, long long before, int group_method, uint32_t options, time_t *latest_timestamp, int *value_is_null);
+extern int rrd2value(RRDSET *st, BUFFER *wb, calculated_number *n, const char *dimensions, long points, long long after, long long before, int group_method, uint32_t options, time_t *db_before, time_t *db_after, int *value_is_null);
#endif /* NETDATA_RRD2JSON_H */