Feature requestED: monitoring Nginx from the outside
manlio_perillo at libero.it
Thu May 1 13:39:50 MSD 2008
François Battail ha scritto:
> Manlio Perillo <manlio_perillo at ...> writes:
>> But the purpose of this module is to make these variables available from
>> an external client, right?
> Not really available, but sampled to make statistics.
>> However if the external client and Nginx do not synchronize the access
>> to the shared memory, then the client will potentially read wrong values.
> I don't think so. Each variable will be correct and is not supposed to be
> related to another one (this is a false assertion if your point of view is
Each variable will be correct, but since you are writing the value to a
shared memory location not atomically, the variable as read by the
client will not be correct.
> The script will run for example with a cycle of 10 s (as collectd
> did) to give trends, no more, no less.
This is, IMHO, wrong in principle.
First of all it does not matter if the example read the shared memory
each 10 s.
It can happen that when the client is reading the shared memory, Nginx
concurrently writes this memory.
Moreover it really does not make sense to write in a shared memory if
you want to support monitoring tools!
Just write a module like the stub_status module!
Finally there is one last problem.
Nginx uses only a few shared variables (the one handled the the
All other variables are private to each worker process.
This means that probably your shared memory location will contain values
not very useful.
> Then it's up to you to read the log to search for correlation if trends are
> curious, it's just monitoring! But (I hope) it may be a good help for people
> having many servers running Nginx.
> Best regards.
Regards Manlio Perillo
More information about the nginx