4

I am very new to Chef Server and Chef Chef client. Also, new to Ruby in which Chef was written.

I have a problem monitoring the performance of chef server's response time when Chef client is running and getting information from it. By the way, our setup is 1 Chef server, 1 Chef client as the node and 1 Chef client for the workstation (where we execute knife commands).

Currently, our logs output information only contain the elapsed time after Chef client was run,

[root@sg8tb08208 chef]# chef-client
[2013-02-13T15:16:02+09:00] INFO: *** Chef 10.18.2 ***

..........more log info..................then

[2013-02-13T15:16:11+09:00] INFO: Chef Run complete in 8.782384 seconds

but we also need to log or at least know the response time of the server and the network between them. Is this possible?

I have been scouring the web for 2 days now, and I can't even find a documentation about it. Or even, someone who tried it already. It would be very helpful even to know what is the average response time of a Chef server given n number of client/nodes connecting to it.

Your help would be very much appreciated. Thank you!

UPDATE: I am trying to use revealcloud to monitor the server performance. This connects to CopperEgg. I have already set up the api_key and the proxy but I keep getting an error.

Error executing action `run` on resource 'script[revealcloud_install]'
Expected process to exit with [0], but received '2'
 - !! Downloaded revealcloud binary does not match MD5
---- End output of "bash"  "/tmp/chef-script20130214-1211-1xejv30-0" ----

1 Answer 1

3

To examine the response times of each individual resource of your recipe, you can use chef-handler-elapsed-time to do some kind of profiling for those 8.782384 seconds.

For history of response times for the provision of multiple systems and statistics, you can use chef-metrics and send all those cool metrics to a graphite.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .