From 28000a132dd39ef2a82d3cf61555b769d20f78c4 Mon Sep 17 00:00:00 2001 From: "Joseph P. White" Date: Tue, 9 Apr 2019 21:22:35 -0400 Subject: [PATCH] Update templates for new archive layout. --- config/templates/pmlogger/control | 2 +- config/templates/slurm/slurm-epilog | 9 ++++++++- config/templates/slurm/slurm-prolog | 11 ++++++++--- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/config/templates/pmlogger/control b/config/templates/pmlogger/control index ccdadd64..cf766f60 100644 --- a/config/templates/pmlogger/control +++ b/config/templates/pmlogger/control @@ -36,7 +36,7 @@ $PMCD_REQUEST_TIMEOUT=120 # (LOCALHOSTNAME is expanded to local: in the first column, # and to `hostname` in the fourth (directory) column.) # -LOCALHOSTNAME y n "PCP_LOG_DIR/pmlogger/LOCALHOSTNAME/$(date +%Y)/$(date +%m)/$(date +%d)" -r -c /etc/pcp/pmlogger/pmlogger-supremm.config +LOCALHOSTNAME y n "PCP_LOG_DIR/pmlogger/$(date +%Y)/$(date +%m)/LOCALHOSTNAME/$(date +%Y)-$(date +%m)-$(date +%d)" -r -c /etc/pcp/pmlogger/pmlogger-supremm.config # Note: if multiple pmloggers for the same host (e.g. both primary and # non-primary loggers are active), then they MUST use different diff --git a/config/templates/slurm/slurm-epilog b/config/templates/slurm/slurm-epilog index 367abeb8..4d6b6f8e 100755 --- a/config/templates/slurm/slurm-epilog +++ b/config/templates/slurm/slurm-epilog @@ -2,15 +2,22 @@ use strict; use Sys::Hostname; +use Date::Simple; use POSIX qw(strftime); my $jobid = $ENV{SLURM_JOB_ID}; +my $today = Date::Simple->new; + +my $logyear = $today->format("%Y"); +my $logmonth = $today->format("%m"); +my $logday = $today->format("%d"); + my $jobdatelong = strftime "%Y%m%d.%H.%M.%S", localtime; my $fullhost = hostname(); # PCP End of job logging -my $logdir = "//supremm/pmlogger/$fullhost/$logyear/$logmonth/$logday"; +my $logdir = "//supremm/pmlogger/$logyear/$logmonth/$fullhost/$logyear-$logmonth-$logday"; system("env PMLOGGER_EPILOG=yes pmlogger -U pcp -c /etc/pcp/pmlogger/pmlogger-supremm.config -s 1 -l /tmp/job-$jobid-end-$jobdatelong.log $logdir/job-$jobid-end-$jobdatelong &> /dev/null"); exit(0); diff --git a/config/templates/slurm/slurm-prolog b/config/templates/slurm/slurm-prolog index e8ee7739..b1d0f024 100755 --- a/config/templates/slurm/slurm-prolog +++ b/config/templates/slurm/slurm-prolog @@ -2,8 +2,15 @@ use strict; use Sys::Hostname; +use Date::Simple; use POSIX qw(strftime setsid); +my $today = Date::Simple->new; + +my $logyear = $today->format("%Y"); +my $logmonth = $today->format("%m"); +my $logday = $today->format("%d"); + my $jobdatelong = strftime "%Y%m%d.%H.%M.%S", localtime; my $host = ( split('\.', hostname()) )[0]; my $jobid = $ENV{SLURM_JOB_ID}; @@ -27,11 +34,9 @@ open( STDERR, ">&STDOUT" ); # Detach STDERR from shell chdir '/tmp'; # Change working directory umask(0); # Reset umask -my $logdir = "//supremm/pmlogger/$fullhost/$logyear/$logmonth/$logday"; +my $logdir = "//supremm/pmlogger/$logyear/$logmonth/$fullhost/$logyear-$logmonth-$logday"; # The prolog config runs every 10 seconds, we exit after 4 samples system("env PMLOGGER_PROLOG=yes pmlogger -U pcp -c /etc/pcp/pmlogger/pmlogger-supremm.config -s 4 -l /tmp/job-$jobid-begin-$jobdatelong.log $logdir/job-$jobid-begin-$jobdatelong &> /dev/null"); -exec( $cmd ); - exit(0)