Telemetry¶
Hiku exposes several prometheus metrics.
Graph execution time metrics¶
Shows the time spent in the graph execution for each Field or Link.
You can enable graph execution time metrics like this:
from hiku.telemetry import GraphMetrics
from hiku.graph import Graph, Field, Root
GRAPH = Graph([
Root([
Field('value', String, value_func),
]),
])
metrics = GraphMetrics('mobile', metric=mobile_graph_metrics)
GRAPH = metrics.visit(GRAPH)
- Where:
mobile - is a graph label (in case you have multiple graphs in your app)
metric - is your custom Summary metric. If not provided, the default Summary(‘graph_field_time’) is used
Default metric:
Summary(
'graph_field_time',
'Graph field time (seconds)',
['graph', 'node', 'field'],
)
Query parse cache metrics¶
QueryParseCache exposes metrics for query parsing time:
Gauge('hiku_query_cache_hits', 'Query cache hits')
Gauge('hiku_query_cache_misses', 'Query cache misses')