| 1 | { |
| 2 | "status": 200, |
| 3 | "type": "topology", |
| 4 | "has_history": false, |
| 5 | "update_every": 1, |
| 6 | "data": { |
| 7 | "schema_version": "netdata.topology.v1", |
| 8 | "producer": { |
| 9 | "source": "streaming", |
| 10 | "instance": "sample-stream", |
| 11 | "node_id": "child-node", |
| 12 | "machine_guid": "child-machine", |
| 13 | "agent_version": "test", |
| 14 | "plugin": "netdata", |
| 15 | "capabilities": ["topology-v1"] |
| 16 | }, |
| 17 | "collected_at": "2026-05-09T00:00:00Z", |
| 18 | "view": { |
| 19 | "id": "streaming-path", |
| 20 | "scope": "node", |
| 21 | "mode": "detailed", |
| 22 | "group_by": ["node"] |
| 23 | }, |
| 24 | "dictionaries": { |
| 25 | "strings": [ |
| 26 | "stream_node", |
| 27 | "child-node", |
| 28 | "parent-node", |
| 29 | "child-machine", |
| 30 | "parent-machine", |
| 31 | "stream_parent", |
| 32 | "stream_path", |
| 33 | "direct", |
| 34 | "replicating" |
| 35 | ] |
| 36 | }, |
| 37 | "types": { |
| 38 | "actor_types": { |
| 39 | "stream_node": { |
| 40 | "layer": "streaming", |
| 41 | "identity": ["node_id"], |
| 42 | "merge_identity": ["node_id"], |
| 43 | "aggregation_scopes": ["node"] |
| 44 | } |
| 45 | }, |
| 46 | "link_types": { |
| 47 | "stream_parent": { |
| 48 | "orientation": "hierarchical", |
| 49 | "direction_role": "ownership", |
| 50 | "aggregation": { |
| 51 | "direction": "preserve", |
| 52 | "evidence": "append" |
| 53 | } |
| 54 | } |
| 55 | }, |
| 56 | "table_types": { |
| 57 | "stream_path": { |
| 58 | "role": "actor_detail", |
| 59 | "owner": "actor", |
| 60 | "aggregation": "append", |
| 61 | "columns": [ |
| 62 | {"id": "actor", "type": "actor_ref", "role": "reference"}, |
| 63 | {"id": "hop", "type": "uint"}, |
| 64 | {"id": "node_id", "type": "string_ref", "dictionary": "strings"}, |
| 65 | {"id": "parent_node_id", "type": "string_ref", "dictionary": "strings"}, |
| 66 | {"id": "path_kind", "type": "string_ref", "dictionary": "strings"}, |
| 67 | {"id": "since", "type": "timestamp"} |
| 68 | ] |
| 69 | } |
| 70 | }, |
| 71 | "aggregation_scopes": { |
| 72 | "node": {"columns": ["node_id"], "evidence_policy": "preserve"} |
| 73 | } |
| 74 | }, |
| 75 | "actors": { |
| 76 | "rows": 2, |
| 77 | "columns": [ |
| 78 | {"id": "type", "type": "string_ref", "dictionary": "strings"}, |
| 79 | {"id": "node_id", "type": "string_ref", "dictionary": "strings", "role": "identity"}, |
| 80 | {"id": "machine_guid", "type": "string_ref", "dictionary": "strings"} |
| 81 | ], |
| 82 | "values": [ |
| 83 | {"codec": "const", "value": 0}, |
| 84 | {"codec": "values", "values": [1, 2]}, |
| 85 | {"codec": "values", "values": [3, 4]} |
| 86 | ] |
| 87 | }, |
| 88 | "links": { |
| 89 | "rows": 1, |
| 90 | "columns": [ |
| 91 | {"id": "src_actor", "type": "actor_ref", "role": "reference"}, |
| 92 | {"id": "dst_actor", "type": "actor_ref", "role": "reference"}, |
| 93 | {"id": "type", "type": "string_ref", "dictionary": "strings"}, |
| 94 | {"id": "state", "type": "string_ref", "dictionary": "strings"}, |
| 95 | {"id": "stream_count", "type": "uint", "role": "metric", "aggregation": "sum"} |
| 96 | ], |
| 97 | "values": [ |
| 98 | {"codec": "const", "value": 0}, |
| 99 | {"codec": "const", "value": 1}, |
| 100 | {"codec": "const", "value": 5}, |
| 101 | {"codec": "const", "value": 8}, |
| 102 | {"codec": "const", "value": 1} |
| 103 | ] |
| 104 | }, |
| 105 | "tables": { |
| 106 | "actor": { |
| 107 | "stream_path": { |
| 108 | "type": "stream_path", |
| 109 | "table": { |
| 110 | "rows": 1, |
| 111 | "columns": [ |
| 112 | {"id": "actor", "type": "actor_ref", "role": "reference"}, |
| 113 | {"id": "hop", "type": "uint"}, |
| 114 | {"id": "node_id", "type": "string_ref", "dictionary": "strings"}, |
| 115 | {"id": "parent_node_id", "type": "string_ref", "dictionary": "strings"}, |
| 116 | {"id": "path_kind", "type": "string_ref", "dictionary": "strings"}, |
| 117 | {"id": "since", "type": "timestamp"} |
| 118 | ], |
| 119 | "values": [ |
| 120 | {"codec": "const", "value": 0}, |
| 121 | {"codec": "const", "value": 1}, |
| 122 | {"codec": "const", "value": 1}, |
| 123 | {"codec": "const", "value": 2}, |
| 124 | {"codec": "const", "value": 7}, |
| 125 | {"codec": "const", "value": "2026-05-09T00:00:00Z"} |
| 126 | ] |
| 127 | } |
| 128 | } |
| 129 | } |
| 130 | }, |
| 131 | "stats": { |
| 132 | "actors": 2, |
| 133 | "links": 1, |
| 134 | "actor_detail_rows": 1 |
| 135 | } |
| 136 | } |
| 137 | } |