Parsing API call

(Arussel) #1


I'm sending nginx logs to kibana and end up with fields:

  • http verb: GET, POST, DELETE ...
  • duration: an int in ms
  • the path from the call: /a/b/c

I want to group the call so know how each API takes inside the system, so do a sum of duration per (http verb / path).
The problem is that the path is not just a string, we're using REST API the path should be interpreted as regex, ie:

  • GET /a/customers/1234 should be grouped in the GET /a/customers/${customerId} call
  • DELETE /a/customers/1234 should be grouped in the DELETE /a/customers/${customerId} call
  • GET /a/customers/totallength should be grouped in the GET /a/customers/totallength call

The other problems is that we have hundreds of API call and this would be extremely hard to maintains this manually. Is there a way to create a kibana graph using a config file ? we're using playframework so have a route files with all the info we need, ideally we would be able to write a script that create the kibana graph file and we could send it to kibana via an API call to create/update the graph (we're using AWS ES).


(Christian Dahlqvist) #2

It may be easier and more efficient to extract this at ingestion time.

(system) #3

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.