I'm looking for a way to get sadf (from sysstat package) to generate me the csv version of the collected data by sar of the current day.

I know that sar keeps it's configuration in /etc/sysstat/sysstat where it has it's SA_DIR specified. In my case (Ubuntu 16.04 LTS) it shows:


I would like to get this value and use it for the sadf command like:

# instead of the hard coded path...
sadf -d /var/log/sysstat/sa$(date +%d -d yesterday)
# ... I would like something like this with a SA_DIR variable
sadf -d $SA_DIR/sa$(date +%d -d today)

How can I get the SA_DIR form the sar configuration file?

With @steve 's solution I ended up using sadf like this:

# Generate CSV's
. /etc/sysstat/sysstat
sadf -d $SA_DIR/sa$(date +%d -d today) -- -r     > memory_`date +%Y-%m-%d_%H-%M-%S`.csv  # Memory statistics
sadf -d $SA_DIR/sa$(date +%d -d today) -- -n DEV > network_`date +%Y-%m-%d_%H-%M-%S`.csv # Network statistics
sadf -d $SA_DIR/sa$(date +%d -d today) -- -u     > cpu_`date +%Y-%m-%d_%H-%M-%S`.csv     # CPU statistics

Run . /etc/sysstat/sysstat within your script. That will result in environment variable $SA_DIR being set appropriately.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.