07 Nov 2024 10:01 AM - edited 07 Nov 2024 10:06 AM
Hello Floks, I am trying to figure out a way to create an SLO for message processing, our application process 100s of messages every minute and we use a log file to capture each transaction (request/response).. we see a drop or no transaction against timestamp is there is an issue, and we need to capture than in SLO, so how many times( seconds) we are not processing any message, is there a way to do this against timesptamp in the logs against total time ( seconds over a period i.e for month)
07 Nov 2024 10:54 AM
Hello @rishisingh1210
You can find an examples regarding the raised concern:
Hoping it helps.
BR,
Peter
07 Nov 2024 11:12 AM
Hi @rishisingh1210 ,
you might want to look into https://community.dynatrace.com/t5/Feedback-channel/Feedback-channel-for-the-new-service-level-objec... - what we have in a release currently.
You will be able to define SLOs based on arbitrary DQL queries, that might allow to process timeframes between certain events. For sure, this would be very experimental and honestly, I would not know right away how to formulate a proper query that can be executed properly. However, I'm confident that it is possible and that with DQL we are getting where you want have more sophisticated SLOs.
Best, Wolfgang
07 Nov 2024 12:45 PM
Not sure if something like this will work, but as an idea.
Parse your log files to extract timestamps of each transaction (request/response).
There is a funcion to calculate delta between array elements https://docs.dynatrace.com/docs/platform/grail/dynatrace-query-language/functions/array-functions#ar... , try to use it with the timestamps
Sum the deltas https://docs.dynatrace.com/docs/platform/grail/dynatrace-query-language/functions/array-functions#ar...
Working with the sum you'll probably can have a number to work with.