Code

store: Store a service/metric's parent hostname as an attribute.
[sysdb.git] / t / unit / core / store_json_test.c
index ff6a18edc3ae8f095988129231430b893a0a5b03..704ad067fc52d9fba04a8ea5bbe901a3013583c6 100644 (file)
@@ -124,8 +124,7 @@ verify_json_output(sdb_strbuf_t *buf, const char *expected)
 
 struct {
        struct {
-               sdb_store_matcher_t *(*m)(sdb_store_expr_t *,
-                               sdb_store_expr_t *);
+               sdb_store_matcher_t *(*m)(sdb_store_expr_t *, sdb_store_expr_t *);
                int field;
                sdb_data_t value;
        } filter;
@@ -155,6 +154,9 @@ struct {
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                "\"update_interval\": \"0s\", \"backends\": [], "
                                                "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h1\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []},"
                                                        "{\"name\": \"k3\", \"value\": 42, "
                                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                                "\"update_interval\": \"0s\", \"backends\": []}"
@@ -162,7 +164,12 @@ struct {
                                        "{\"name\": \"m2\", "
                                                "\"timeseries\": false, "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
-                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "\"update_interval\": \"0s\", \"backends\": [], "
+                                               "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h1\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "]}"
                                "]},"
                        "{\"name\": \"h2\", \"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                "\"update_interval\": \"0s\", \"backends\": [], "
@@ -170,16 +177,29 @@ struct {
                                        "{\"name\": \"m1\", "
                                                "\"timeseries\": false, "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
-                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "\"update_interval\": \"0s\", \"backends\": [], "
+                                               "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h2\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "]}"
                                "], "
                                "\"services\": ["
                                        "{\"name\": \"s1\", "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
-                                               "\"update_interval\": \"0s\", \"backends\": []},"
+                                               "\"update_interval\": \"0s\", \"backends\": [], "
+                                               "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h2\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "]},"
                                        "{\"name\": \"s2\", "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                "\"update_interval\": \"0s\", \"backends\": [], "
                                                "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h2\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []},"
                                                        "{\"name\": \"k1\", \"value\": 123, "
                                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                                "\"update_interval\": \"0s\", \"backends\": []},"
@@ -215,6 +235,9 @@ struct {
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                "\"update_interval\": \"0s\", \"backends\": [], "
                                                "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h2\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []},"
                                                        "{\"name\": \"k1\", \"value\": 123, "
                                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                                "\"update_interval\": \"0s\", \"backends\": []}"
@@ -236,7 +259,12 @@ struct {
                                        "{\"name\": \"m2\", "
                                                "\"timeseries\": false, "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
-                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "\"update_interval\": \"0s\", \"backends\": [], "
+                                               "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h1\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "]}"
                                "]}"
                "]" },
        { { sdb_store_ge_matcher, SDB_FIELD_LAST_UPDATE,
@@ -259,11 +287,19 @@ struct {
                                "\"services\": ["
                                        "{\"name\": \"s1\", "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
-                                               "\"update_interval\": \"0s\", \"backends\": []},"
+                                               "\"update_interval\": \"0s\", \"backends\": [], "
+                                               "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h2\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "]},"
                                        "{\"name\": \"s2\", "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                "\"update_interval\": \"0s\", \"backends\": [], "
                                                "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h2\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []},"
                                                        "{\"name\": \"k1\", \"value\": 123, "
                                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                                "\"update_interval\": \"0s\", \"backends\": []},"
@@ -298,6 +334,9 @@ struct {
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                "\"update_interval\": \"0s\", \"backends\": [], "
                                                "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h2\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []},"
                                                        "{\"name\": \"k1\", \"value\": 123, "
                                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                                "\"update_interval\": \"0s\", \"backends\": []}"
@@ -319,6 +358,9 @@ struct {
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                "\"update_interval\": \"0s\", \"backends\": [], "
                                                "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h1\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []},"
                                                        "{\"name\": \"k3\", \"value\": 42, "
                                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                                                "\"update_interval\": \"0s\", \"backends\": []}"
@@ -326,7 +368,12 @@ struct {
                                        "{\"name\": \"m2\", "
                                                "\"timeseries\": false, "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
-                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "\"update_interval\": \"0s\", \"backends\": [], "
+                                               "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h1\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "]}"
                                "]},"
                        "{\"name\": \"h2\", \"last_update\": \"1970-01-01 00:00:00 +0000\", "
                                "\"update_interval\": \"0s\", \"backends\": [], "
@@ -334,7 +381,12 @@ struct {
                                        "{\"name\": \"m1\", "
                                                "\"timeseries\": false, "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
-                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "\"update_interval\": \"0s\", \"backends\": [], "
+                                               "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h2\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "]}"
                                "]}"
                "]" },
        { { NULL, 0, SDB_DATA_INIT },
@@ -371,7 +423,12 @@ struct {
                                        "{\"name\": \"m2\", "
                                                "\"timeseries\": false, "
                                                "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
-                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "\"update_interval\": \"0s\", \"backends\": [], "
+                                               "\"attributes\": ["
+                                                       "{\"name\": \"hostname\", \"value\": \"h1\", "
+                                                               "\"last_update\": \"1970-01-01 00:00:00 +0000\", "
+                                                               "\"update_interval\": \"0s\", \"backends\": []}"
+                                               "]}"
                                "]}"
                "]" },
        { { sdb_store_lt_matcher, SDB_FIELD_LAST_UPDATE,