- 日付と時刻を時刻だけでなく、開始時刻(-s)または終了時刻(-e)として受け入れる「sar」コマンドは表示されません。もしそうなら、 "sar"を照会して1日より古い日付と時刻のデータポイントを取得するにはどうすればよいですか(-fはここでは役に立ちません)。 "sar"コマンドの出力には、時間と分単位の時間だけでなく、データポイントの日付値も必要です。
- sysstatがpaデータファイルを毎日分割するのを見ました。単一のpaファイルから毎週sysstat(sa1 / sa2)データを収集するようにデフォルトのsysstat cronエントリを変更できますか?
システム状態の設定:
cat /etc/sysconfig/sysstat
# sysstat-9.0.4 configuration file.
# How long to keep log files (in days).
# If value is greater than 28, then log files are kept in
# multiple directories, one for each month.
HISTORY=7
# Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER=10
# Parameters for the system activity data collector (see sadc manual page)
# which are used for the generation of log files.
SADC_OPTIONS="-S DISK"
sysstat cronエントリ:
cat /etc/cron.d/sysstat
# Run system activity accounting tool every 10 minutes
*/10 * * * * root /usr/lib64/sa/sa1 1 1
# 0 * * * * root /usr/lib64/sa/sa1 600 6 &
# Generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib64/sa/sa2 -A
答え1
これを直接行うことはできません。 sar(systat)と友達はデフォルトで毎日のログ記録に制限されています。 "sadc.c"(sysstat-11.7.2)から:
485 void setup_file_hdr(int fd)
486 {
...
507 file_hdr.sa_day = rectime.tm_mday;
508 file_hdr.sa_month = rectime.tm_mon;
509 file_hdr.sa_year = rectime.tm_year;
したがって、ファイルヘッダーには1日しか含まれません。
個人記録の形式はやや説得力がありません。 「sa.h」から:
604 struct record_header {
...
617 /*
618 * Timestamp: Hour (0-23), minute (0-59) and second (0-59).
619 * Used to determine TRUE time (immutable, non locale dependent time).
620 */
621 unsigned char hour;
622 unsigned char minute;
623 unsigned char second;
ただし、構造には1/100秒単位の機械稼働時間とエポックから経過した時間(秒)も含まれています。値がどのように使用されるかを確認するには、より多くの操作を実行する必要があります(これは実行しません)、これは証拠ではなくヒントに近いです。