Help with colletcl tool

Link to this post 11 Jan 11

Hey Guys,

Im fairly new to the world of linux so I need a bit of help. Im currently using a tool called collectl ( to gather sone I/O information about a Red Hat server. Ive figured how to capture the data but my problem is I really need to get the results into a CSV file for Excel.

Has anyone on this forum any experience using collectl and if so can the data be exported to a CSV file?


Link to this post 11 Jan 11

I'm actually the author of collectl! Personally I don't like csv formatted data because I find it a pain to parse and most utilities that read CSV also read space separated data so that's the default when you with with -P. If if you include -f it ill write to a file in that directory. BUT if you really want csv data ;), you can use "--sep ','" to tell it to use a comma as the separator instead. Does that answer your question or are you looking for more details?

Link to this post 11 Jan 11


Thanks for your reply. Where in the command would you use --sep? For example if I ws running

colletl -sd -c10 --P -p/temp

Also there is a chance I might have to gather the data for up to a week, how big do you think the csv file would get?

Thanks in advance.

By the way its a great tool!

Link to this post 11 Jan 11

If you really only care about disk data and nothing more - it's not that expensive to grab more - the question is do you just want summaries of totals across ALL disks or would you prefer data on individual ones? -sd will get you the summary, -sD the details and -sdD both. Anyhow assuming you really want summary as you've indicated above AND if you want it for 5 days, run collectl as a daemon. just edit the line DaemonCommands in /etc/collectl.conf from:

DaemonCommands = -f /var/log/collectl -r00:00,7 -m -F60 -s+YZ


DaemonCommands = -f /var/log/collectl -r00:00,7 -sd -P --sep ','

that will write the csv data to a file in /var/log/collectl, creating a new one each midnight. To start it just do /etc/init.d/collectl start and after 5 days /etc/init.d/collectl stop. The default collection interval is 10 seconds.

The output, which you can generate interactively to look at would be from the command:

"collectl -sd -P --sep ','" and look like the following, noting the interactive default interval is 1 sec:

[root@poker collectl]# collectl -sd -P --sep ','
waiting for 1 second sample...

this should be enough to get you going...

Link to this post 12 Jan 11


Thanks again for yout response just to give some background info. The data I need to captutre is wtites per second on the disk subsystem. So I will be using -sd. I would like to capture the at least 3 days worth of data mayne up to 5.

I would like to have the data captured as a CSV file so it can be viewed in excel.

I tried running the command below because I want to see what the results look like in Excel. However it did not run is the syntax correct?

collectl -sd -P -p/temp --sep','

Link to this post 12 Jan 11

why didn't you say excel? ;)
excel can read collectl's space-separated format with no problems, you just need to open as you would any file and tell excel the fields are space-separated when it asks.

Anyhow if you want to capture disk writes/sec, -sd will show the total writes on all your disks. If all but one are idle, this should work fine, but if you have multiple disks active, -sD will get you exact numbers for each.

I don't know where -p in your command above is coming from. You need -f/temp if you want to write the output to the directory /temp. By default, if you have the compression library installed, collectl will write its output in a compressed 'gz' file, which you can always manually uncompress. Alternatively you can add the switch -oz which will tell it not to compress.

So, the command I'd consider using is:

collectl -sD -P -f/temp -oZ

then try importing the /temp/*dsk into excel without around with --sep. It's really not hard...
of you use -sd you'll have a file named *.tab instead. if you use -sdD you'll get both!


Who we are ?

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More About the foundation...

Frequent Questions

Linux Training / Board