From caf3b6c90fc9b0bf675f03bef28fcae48dd6bcba Mon Sep 17 00:00:00 2001 From: Filippo Tessarotto Date: Wed, 17 Oct 2018 08:44:02 +0200 Subject: [PATCH] Nginx error: log files may be empty --- plugins/nginx/nginx_error | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/plugins/nginx/nginx_error b/plugins/nginx/nginx_error index 6372867a..a0ff11b5 100755 --- a/plugins/nginx/nginx_error +++ b/plugins/nginx/nginx_error @@ -122,9 +122,13 @@ http_codes[503]='Service Unavailable' do_fetch () { local count status_code declare -A line_counts - while read -r count status_code; do + values="$(awk '{print $9}' "$log" | sort | uniq -c)" + # Log files may be empty due to logrotation + if [ -n "$values" ]; then + while read -r count status_code; do line_counts[$status_code]=$count - done <<< "$(awk '{print $9}' "$log" | sort | uniq -c)" + done <<< "$values" + fi for status_code in "${!http_codes[@]}"; do echo "error${status_code}.value ${line_counts[$status_code]:-0}"