tags: #publish links: [[GraphQL]], [[SRE and DevOps]] created: 2020-09-23 Wed related: [[GraphQL makes caching hard and has bad worst-case latency]] --- # GraphQL is hard to monitor Because it's an aggregation API: the standard is to return 200 when query is valid, and return errors from specific sub-datasources as text within the response. So you can't usefully monitor HTTP error codes. You also have a wide variety of queries being run through a single endpoint URL, which means average/max latency doesn't mean anything - different queries are of very different sizes and hit different backend data sources.