https://signoz.io logo
#general
Title
# general
a

Alejandro Decchi

10/26/2022, 2:08 PM
Hi Users; Signoz for error rate create a similar query like this:
Copy code
max(sum(rate(signoz_calls_total{service_name = "my-service", status_code="STATUS_CODE_ERROR"}[5m]) OR rate(signoz_calls_total{service_name="my-service", http_status_code =~"5.." }[5m]))*100/sum(rate(signoz_calls_total{service_name="my-service"}[5m]))) < 1000 OR vector(0)
I do not understand why the metrics use: •
or
with different
status_code
in place of
and
to summarise both, in case of both
status_code
means different things • what is the difference between
status_code="STATUS_CODE_ERROR"
and
http_status_code =~"5..,4..,3.."
• why it says
< 1000 OR vector(0)
• what the
operation
filter exclude, that signoz add each path. I hope someone can give some lights
s

Srikanth Chekuri

10/27/2022, 3:43 AM
or
with different
status_code
in place of
and
to summarise both, in case of both
status_code
means different things
One is
status_code
and other is
http_status_code
. I hope you are not confused by that.
• what is the difference between
status_code="STATUS_CODE_ERROR"
and
http_status_code =~"5..,4..,3.."
The difference is that latter is explicitly tied to HTTP client/server libraries but there can various kinds of spans emitting from different systems (queues, jobs, gRPC servers etc..) which are not necessarily the http related.
• why it says
< 1000 OR vector(0)
Not totally sure. This needs some commit revision.
• what the
operation
filter exclude, that signoz add each path.
I am not sure I understood the question. Maybe rephrase it?
m

Mariano Mirabelli

10/27/2022, 4:55 PM
I think that @Alejandro Decchi is referring to the operation tag included in the default query built by SigNoz UI. To rephrase him: Why does the SigNoz UI query specify each operation individually instead of omitting the operation tag and retrieving all the operations belonging to a specific application(HTTP POST, HTTP GET and so on…)?
a

Alejandro Decchi

10/27/2022, 5:13 PM
Yes, that is the point
s

Srikanth Chekuri

10/27/2022, 5:15 PM
I still don’t get which thing you are referring to? Where are you referring this in the UI/API?
m

Mariano Mirabelli

10/27/2022, 7:14 PM
Refers to the query executed by SigNoz UI to draw the Error Percentage Dashboard. Each operation belonged an application is detailed in the operation filter used in the query launched against the SigNoz backend. The question is: Why does it need to detail each operation explicitly if the dashboard should take into account all operations anyway? Why is it not possible to skip the operations filter in the query?
s

Srikanth Chekuri

10/27/2022, 8:12 PM
Because all operations don’t mean the same. Say for a service, there is a trace with 3 levels of nestedness, an error operation at the lowest and deepest doesn’t necessarily mean the entire thing erroneous. What counts at a service level is the top most operation which initiates the trace that’s why there is filter. And all these operations you see are top levels ones.
m

Mariano Mirabelli

10/27/2022, 9:02 PM
Thank you for the clarification. Just one question more. To set alerts based on the error percentage: Is it right to take that query as an input to trigger them?
s

Srikanth Chekuri

10/28/2022, 6:11 AM
Yes
m

Mariano Mirabelli

10/28/2022, 11:38 AM
Thanks!
2 Views