From 8ce03c0d2cd84be5424ddc6b0432249134bd9bed Mon Sep 17 00:00:00 2001 From: Aki Kareha Date: Sat, 22 Feb 2025 15:39:27 +0900 Subject: [PATCH] add logging --- .gitignore | 1 + clean | 1 + update | 34 +++++++++++++++++++++++++++------- 3 files changed, 29 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 8a90164..3f100fd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ *.swp *.csv +log diff --git a/clean b/clean index cd49ec9..fbe59c5 100755 --- a/clean +++ b/clean @@ -1,2 +1,3 @@ #!/bin/sh +rm -rf log rm -f *.csv diff --git a/update b/update index fc85b96..d776d26 100755 --- a/update +++ b/update @@ -3,13 +3,7 @@ # Settings CSV_URL="https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv" -# Internal configuration settings -LOCK_DIR="lock" - -TMP_CSV_FILE="holidays-jp-tmp.csv" -RAW_CSV_FILE="holidays-jp-raw.csv" -CSV_FILE="holidays-jp.csv" - +# Constants EXIT_SUCCESS=0 EXIT_FAILURE=1 @@ -23,18 +17,44 @@ if ! command -v nkf >/dev/null; then exit $EXIT_FAILURE fi +# Logging +CURRENT_MONTH=$(date "+%Yw%U%z") +SCRIPT_NAME=$(basename $0) +LOG_DIR="log" +LOG_FILE="$LOG_DIR/$SCRIPT_NAME_$CURRENT_MONTH" + +get_current_time() { + date "+%Y-%m-%d %H:%M:%S%z" +} + +log() { + local timestamp=$(get_current_time) + local message=$1 + echo "$timestamp $message" >>$LOG_FILE +} + # Acquire the lock or exit +LOCK_DIR="lock" if ! mkdir "$LOCK_DIR" 2>/dev/null; then echo "Another process is holding the lock. Exiting." exit $EXIT_FAILURE fi +mkdir -p $LOG_DIR + +# Internal configuration settings +TMP_CSV_FILE="holidays-jp-tmp.csv" +RAW_CSV_FILE="holidays-jp-raw.csv" +CSV_FILE="holidays-jp.csv" + # Run curl -sS -L -o $TMP_CSV_FILE $CSV_URL if ! diff -q $RAW_CSV_FILE $TMP_CSV_FILE >/dev/null 2>&1; then mv $TMP_CSV_FILE $RAW_CSV_FILE nkf -w $RAW_CSV_FILE >$CSV_FILE + log "Changed" else + log "No Change" rm $TMP_CSV_FILE fi