My goal is to show in Graphite/Grafana “Active sessions along the simulation” - I am loadtesting an application and I want to show the place where one machine has too much load which would be represented by active session > 10 (in this case if this load was too big for machine).
The problem is that I am not sure which metrics to use. Certainly it is not allUsers/active - mostly it is 0 here (and I am not sure what does it mean then), at first I was thinking that this should be the metric I would want to show, according to the documentation
active : # of users currently running the scenario
Maybe 0 active users is shown because this test does not overload the machine and mean response time is 19ms so Gatling does not register it somehow (I am guessing here, my experience with metrics and graphite is very limited).
Showing requests per seconds would not work because when machine is overloaded requests will be dispatched but gatling will be waiting for responses.
Is there some way to get graph like “Active sessions along the simulation” in Graphite then?
I think that part of the problem is that Gatling sends floating points with comma 37,000000 and I observed that Graphite does not want to accept such metrics - it wants floating points with dot
W dniu wtorek, 9 września 2014 10:51:48 UTC+2 użytkownik Andrzej Dębski napisał:
The comma problem was on my side - wrong locale set on Gatling machine. As for active users I created a file with metrics that are being send by the Gatling:
Yes, most of my users are short lived - each user is making one request and receives response in few millis mostly in this example case.
So that’s what happens: “active users” are the ones that are still alive at the end of each second.
I can understand people using very shorted lived virtual users get a bit confused. Suggestion welcome.
And about the locale - for now I just changed my Linux machine locale to en_US which has dot decimal separator.
I’ve pinged our Graphite “expert”. I’m not sure Graphite can accept any other format that en_US, so we shouldn’t use Gatling’s locale for this.
> Yes, most of my users are short lived - each user is making one request
and receives response in few millis mostly in this example case.
So that's what happens: "active users" are the ones that are still alive
at the end of each second.
I can understand people using very shorted lived virtual users get a bit
confused. Suggestion welcome.
I think as long as you know how it is measured it makes sense.
it seems reasonable that if the user only lives for 20ms and each user is
injected every 100ms then there is a small chance of sampling 1 active user
at any point in time during the test (with some assumptions).
--> document in the measurements/timings page: http://gatling.io/docs/2.0.0-RC4/general/timings.html
part of the initial question was the difference between the gatling report
and the graphite chart. http://i.imgur.com/7aICx4u.png http://i.imgur.com/FK1eQND.png
if so, that difference doesn't seem to be reconciled yet?
Were both those charts from the same test?
If so it is likely that the report is wrong and graphite(+console) correct.
I tested this - cUps(1) with 1 request of <10ms
console reported 0:
waiting: 20 / running: 0 / done:0
waiting: 15 / running: 0 / done:5
waiting: 10 / running: 0 / done:10
waiting: 5 / running: 0 / done:15
waiting: 0 / running: 0 / done:20
but reports reported : 1 active user for the duration of the test.
if cUps(5) then reports active=5, console=0.
looks like a reports defect where it sums the users. #2178
Yes, both charts are from the same test - maybe the users in the charts are users that are active at the start (or in other words: I will start so many users during this second + users from previous seconds that are not yet finished).