This renames the log files in logs/screen that contain timestamps to put
the timestamp after '.log' and '.log.summary' in the names. This will
simplify devstack-gate's search for log files to copy to '*.log'.
dstat.txt is also renamed to dstat.log
Make LOGDIR and LOGFILE local
bp:devstack-logging-and-service-names
Change-Id: I02aba9ca82c117a1186dafc1d3c07aa04ecd1dde
| ... | ... |
@@ -1244,8 +1244,8 @@ function _run_process {
|
| 1244 | 1244 |
exec 6>&- |
| 1245 | 1245 |
|
| 1246 | 1246 |
if [[ -n ${SCREEN_LOGDIR} ]]; then
|
| 1247 |
- exec 1>&${SCREEN_LOGDIR}/screen-${service}.${CURRENT_LOG_TIME}.log 2>&1
|
|
| 1248 |
- ln -sf ${SCREEN_LOGDIR}/screen-${service}.${CURRENT_LOG_TIME}.log ${SCREEN_LOGDIR}/screen-${service}.log
|
|
| 1247 |
+ exec 1>&${SCREEN_LOGDIR}/screen-${service}.log.${CURRENT_LOG_TIME} 2>&1
|
|
| 1248 |
+ ln -sf ${SCREEN_LOGDIR}/screen-${service}.log.${CURRENT_LOG_TIME} ${SCREEN_LOGDIR}/screen-${service}.log
|
|
| 1249 | 1249 |
|
| 1250 | 1250 |
# TODO(dtroyer): Hack to get stdout from the Python interpreter for the logs. |
| 1251 | 1251 |
export PYTHONUNBUFFERED=1 |
| ... | ... |
@@ -1329,9 +1329,9 @@ function screen_process {
|
| 1329 | 1329 |
screen -S $SCREEN_NAME -X screen -t $name |
| 1330 | 1330 |
|
| 1331 | 1331 |
if [[ -n ${SCREEN_LOGDIR} ]]; then
|
| 1332 |
- screen -S $SCREEN_NAME -p $name -X logfile ${SCREEN_LOGDIR}/screen-${name}.${CURRENT_LOG_TIME}.log
|
|
| 1332 |
+ screen -S $SCREEN_NAME -p $name -X logfile ${SCREEN_LOGDIR}/screen-${name}.log.${CURRENT_LOG_TIME}
|
|
| 1333 | 1333 |
screen -S $SCREEN_NAME -p $name -X log on |
| 1334 |
- ln -sf ${SCREEN_LOGDIR}/screen-${name}.${CURRENT_LOG_TIME}.log ${SCREEN_LOGDIR}/screen-${name}.log
|
|
| 1334 |
+ ln -sf ${SCREEN_LOGDIR}/screen-${name}.log.${CURRENT_LOG_TIME} ${SCREEN_LOGDIR}/screen-${name}.log
|
|
| 1335 | 1335 |
fi |
| 1336 | 1336 |
|
| 1337 | 1337 |
# sleep to allow bash to be ready to be send the command - we are |
| ... | ... |
@@ -1377,7 +1377,7 @@ function screen_rc {
|
| 1377 | 1377 |
echo "stuff \"$2$NL\"" >> $SCREENRC |
| 1378 | 1378 |
|
| 1379 | 1379 |
if [[ -n ${SCREEN_LOGDIR} ]]; then
|
| 1380 |
- echo "logfile ${SCREEN_LOGDIR}/screen-${1}.${CURRENT_LOG_TIME}.log" >>$SCREENRC
|
|
| 1380 |
+ echo "logfile ${SCREEN_LOGDIR}/screen-${1}.log.${CURRENT_LOG_TIME}" >>$SCREENRC
|
|
| 1381 | 1381 |
echo "log on" >>$SCREENRC |
| 1382 | 1382 |
fi |
| 1383 | 1383 |
fi |
| ... | ... |
@@ -1489,8 +1489,8 @@ function _old_run_process {
|
| 1489 | 1489 |
exec 6>&- |
| 1490 | 1490 |
|
| 1491 | 1491 |
if [[ -n ${SCREEN_LOGDIR} ]]; then
|
| 1492 |
- exec 1>&${SCREEN_LOGDIR}/screen-${1}.${CURRENT_LOG_TIME}.log 2>&1
|
|
| 1493 |
- ln -sf ${SCREEN_LOGDIR}/screen-${1}.${CURRENT_LOG_TIME}.log ${SCREEN_LOGDIR}/screen-${1}.log
|
|
| 1492 |
+ exec 1>&${SCREEN_LOGDIR}/screen-${1}.log.${CURRENT_LOG_TIME} 2>&1
|
|
| 1493 |
+ ln -sf ${SCREEN_LOGDIR}/screen-${1}.log.${CURRENT_LOG_TIME} ${SCREEN_LOGDIR}/screen-${1}.log
|
|
| 1494 | 1494 |
|
| 1495 | 1495 |
# TODO(dtroyer): Hack to get stdout from the Python interpreter for the logs. |
| 1496 | 1496 |
export PYTHONUNBUFFERED=1 |
| ... | ... |
@@ -370,15 +370,14 @@ if [[ -n "$LOGFILE" || -n "$SCREEN_LOGDIR" ]]; then |
| 370 | 370 |
fi |
| 371 | 371 |
|
| 372 | 372 |
if [[ -n "$LOGFILE" ]]; then |
| 373 |
- # First clean up old log files. Use the user-specified ``LOGFILE`` |
|
| 374 |
- # as the template to search for, appending '.*' to match the date |
|
| 375 |
- # we added on earlier runs. |
|
| 376 |
- LOGDIR=$(dirname "$LOGFILE") |
|
| 377 |
- LOGFILENAME=$(basename "$LOGFILE") |
|
| 378 |
- mkdir -p $LOGDIR |
|
| 379 |
- find $LOGDIR -maxdepth 1 -name $LOGFILENAME.\* -mtime +$LOGDAYS -exec rm {} \;
|
|
| 373 |
+ # Clean up old log files. Append '.*' to the user-specified |
|
| 374 |
+ # ``LOGFILE`` to match the date in the search template. |
|
| 375 |
+ local logfile_dir="${LOGFILE%/*}" # dirname
|
|
| 376 |
+ local logfile_name="${LOGFILE##*/}" # basename
|
|
| 377 |
+ mkdir -p $logfile_dir |
|
| 378 |
+ find $logfile_dir -maxdepth 1 -name $logfile_name.\* -mtime +$LOGDAYS -exec rm {} \;
|
|
| 380 | 379 |
LOGFILE=$LOGFILE.${CURRENT_LOG_TIME}
|
| 381 |
- SUMFILE=$LOGFILE.${CURRENT_LOG_TIME}.summary
|
|
| 380 |
+ SUMFILE=$LOGFILE.summary.${CURRENT_LOG_TIME}
|
|
| 382 | 381 |
|
| 383 | 382 |
# Redirect output according to config |
| 384 | 383 |
|
| ... | ... |
@@ -399,8 +398,8 @@ if [[ -n "$LOGFILE" ]]; then |
| 399 | 399 |
|
| 400 | 400 |
echo_summary "stack.sh log $LOGFILE" |
| 401 | 401 |
# Specified logfile name always links to the most recent log |
| 402 |
- ln -sf $LOGFILE $LOGDIR/$LOGFILENAME |
|
| 403 |
- ln -sf $SUMFILE $LOGDIR/$LOGFILENAME.summary |
|
| 402 |
+ ln -sf $LOGFILE $logfile_dir/$logfile_name |
|
| 403 |
+ ln -sf $SUMFILE $logfile_dir/$logfile_name.summary |
|
| 404 | 404 |
else |
| 405 | 405 |
# Set up output redirection without log files |
| 406 | 406 |
# Set fd 3 to a copy of stdout. So we can set fd 1 without losing |