From c5895c466afbef44028cdf8a882a08914a66f566 Mon Sep 17 00:00:00 2001 From: Jakub Matys Date: Thu, 17 May 2018 12:28:09 +0200 Subject: [PATCH] Upgraded log rotating - remove only closed files + increased mod time --- build/deb/Dockerfile | 1 + build/deb/debian/blockbook-bch-testnet.cron.daily | 2 +- build/deb/debian/blockbook-bch-testnet.install | 1 + build/deb/debian/blockbook-bch.cron.daily | 2 +- build/deb/debian/blockbook-bch.install | 1 + build/deb/debian/blockbook-btc-testnet.cron.daily | 2 +- build/deb/debian/blockbook-btc-testnet.install | 1 + build/deb/debian/blockbook-btc.cron.daily | 2 ++ build/deb/debian/blockbook-btc.install | 1 + build/deb/debian/blockbook-zec.cron.daily | 2 +- build/deb/debian/blockbook-zec.install | 1 + build/deb/debian/control | 10 +++++----- build/deb/logrotate.sh | 11 +++++++++++ 13 files changed, 28 insertions(+), 9 deletions(-) create mode 100644 build/deb/debian/blockbook-btc.cron.daily create mode 100755 build/deb/logrotate.sh diff --git a/build/deb/Dockerfile b/build/deb/Dockerfile index bb0f3d56..9b21dfe5 100644 --- a/build/deb/Dockerfile +++ b/build/deb/Dockerfile @@ -7,6 +7,7 @@ RUN apt-get update && \ apt-get clean ADD build-deb.sh /build/build-deb.sh +ADD logrotate.sh /build/logrotate.sh WORKDIR /build diff --git a/build/deb/debian/blockbook-bch-testnet.cron.daily b/build/deb/debian/blockbook-bch-testnet.cron.daily index b6fa1fa4..a790c4b6 100644 --- a/build/deb/debian/blockbook-bch-testnet.cron.daily +++ b/build/deb/debian/blockbook-bch-testnet.cron.daily @@ -1,2 +1,2 @@ #!/bin/sh -find /opt/coins/blockbook/bch-testnet/logs -mtime +6 -type f -delete +/opt/coins/blockbook/bch-testnet/bin/logrotate.sh diff --git a/build/deb/debian/blockbook-bch-testnet.install b/build/deb/debian/blockbook-bch-testnet.install index 7064acb1..d1e6864a 100755 --- a/build/deb/debian/blockbook-bch-testnet.install +++ b/build/deb/debian/blockbook-bch-testnet.install @@ -3,3 +3,4 @@ blockbook /opt/coins/blockbook/bch-testnet/bin cert /opt/coins/blockbook/bch-testnet static /opt/coins/blockbook/bch-testnet configs/bch-testnet.json => /opt/coins/blockbook/bch-testnet/config/blockchaincfg.json +logrotate.sh /opt/coins/blockbook/bch-testnet/bin diff --git a/build/deb/debian/blockbook-bch.cron.daily b/build/deb/debian/blockbook-bch.cron.daily index 4e77178d..910e4c12 100644 --- a/build/deb/debian/blockbook-bch.cron.daily +++ b/build/deb/debian/blockbook-bch.cron.daily @@ -1,2 +1,2 @@ #!/bin/sh -find /opt/coins/blockbook/bch/logs -mtime +6 -type f -delete +/opt/coins/blockbook/bch/bin/logrotate.sh diff --git a/build/deb/debian/blockbook-bch.install b/build/deb/debian/blockbook-bch.install index 2fbc27fa..60b20232 100755 --- a/build/deb/debian/blockbook-bch.install +++ b/build/deb/debian/blockbook-bch.install @@ -3,3 +3,4 @@ blockbook /opt/coins/blockbook/bch/bin cert /opt/coins/blockbook/bch static /opt/coins/blockbook/bch configs/bch.json => /opt/coins/blockbook/bch/config/blockchaincfg.json +logrotate.sh /opt/coins/blockbook/bch/bin diff --git a/build/deb/debian/blockbook-btc-testnet.cron.daily b/build/deb/debian/blockbook-btc-testnet.cron.daily index 11b1a8b0..4a3fa5cd 100644 --- a/build/deb/debian/blockbook-btc-testnet.cron.daily +++ b/build/deb/debian/blockbook-btc-testnet.cron.daily @@ -1,2 +1,2 @@ #!/bin/sh -find /opt/coins/blockbook/btc-testnet/logs -mtime +6 -type f -delete +/opt/coins/blockbook/btc-testnet/bin/logrotate.sh diff --git a/build/deb/debian/blockbook-btc-testnet.install b/build/deb/debian/blockbook-btc-testnet.install index 26629f64..5fe355ef 100755 --- a/build/deb/debian/blockbook-btc-testnet.install +++ b/build/deb/debian/blockbook-btc-testnet.install @@ -3,3 +3,4 @@ blockbook /opt/coins/blockbook/btc-testnet/bin cert /opt/coins/blockbook/btc-testnet static /opt/coins/blockbook/btc-testnet configs/btc-testnet.json => /opt/coins/blockbook/btc-testnet/config/blockchaincfg.json +logrotate.sh /opt/coins/blockbook/btc-testnet/bin diff --git a/build/deb/debian/blockbook-btc.cron.daily b/build/deb/debian/blockbook-btc.cron.daily new file mode 100644 index 00000000..7516ccee --- /dev/null +++ b/build/deb/debian/blockbook-btc.cron.daily @@ -0,0 +1,2 @@ +#!/bin/sh +/opt/coins/blockbook/btc/bin/logrotate.sh diff --git a/build/deb/debian/blockbook-btc.install b/build/deb/debian/blockbook-btc.install index 945b78cc..e9c11963 100755 --- a/build/deb/debian/blockbook-btc.install +++ b/build/deb/debian/blockbook-btc.install @@ -3,3 +3,4 @@ blockbook /opt/coins/blockbook/btc/bin cert /opt/coins/blockbook/btc static /opt/coins/blockbook/btc configs/btc.json => /opt/coins/blockbook/btc/config/blockchaincfg.json +logrotate.sh /opt/coins/blockbook/btc/bin diff --git a/build/deb/debian/blockbook-zec.cron.daily b/build/deb/debian/blockbook-zec.cron.daily index cd04a1dc..03b09708 100644 --- a/build/deb/debian/blockbook-zec.cron.daily +++ b/build/deb/debian/blockbook-zec.cron.daily @@ -1,2 +1,2 @@ #!/bin/sh -find /opt/coins/blockbook/zec/logs -mtime +6 -type f -delete +/opt/coins/blockbook/zec/bin/logrotate.sh diff --git a/build/deb/debian/blockbook-zec.install b/build/deb/debian/blockbook-zec.install index 6f09dd98..cc3cb553 100755 --- a/build/deb/debian/blockbook-zec.install +++ b/build/deb/debian/blockbook-zec.install @@ -3,3 +3,4 @@ blockbook /opt/coins/blockbook/zec/bin cert /opt/coins/blockbook/zec static /opt/coins/blockbook/zec configs/zec.json => /opt/coins/blockbook/zec/config/blockchaincfg.json +logrotate.sh /opt/coins/blockbook/zec/bin diff --git a/build/deb/debian/control b/build/deb/debian/control index 24506472..424137cf 100644 --- a/build/deb/debian/control +++ b/build/deb/debian/control @@ -7,25 +7,25 @@ Standards-Version: 3.9.5 Package: blockbook-btc Architecture: amd64 -Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, bitcoin-btc +Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, psmisc, bitcoin-btc Description: Satoshilabs blockbook server (Bitcoin mainnet) Package: blockbook-btc-testnet Architecture: amd64 -Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, bitcoin-testnet +Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, psmisc, bitcoin-testnet Description: Satoshilabs blockbook server (Bitcoin testnet) Package: blockbook-zec Architecture: amd64 -Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, zcash-zec +Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, psmisc, zcash-zec Description: Satoshilabs blockbook server (ZCash mainnet) Package: blockbook-bch Architecture: amd64 -Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, bcash-bch +Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, psmisc, bcash-bch Description: Satoshilabs blockbook server (Bitcoin Cash mainnet) Package: blockbook-bch-testnet Architecture: amd64 -Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, bcash-testnet +Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, psmisc, bcash-testnet Description: Satoshilabs blockbook server (Bitcoin Cash testnet) diff --git a/build/deb/logrotate.sh b/build/deb/logrotate.sh new file mode 100755 index 00000000..8bce66bb --- /dev/null +++ b/build/deb/logrotate.sh @@ -0,0 +1,11 @@ +#!/bin/bash +set -e + +LOGS=$(readlink -f $(dirname $0)/../logs) + +find $LOGS -mtime +30 -type f -print0 | while read -r -d $'\0' log; do + # remove log if isn't opened by any process + if ! fuser -s $log; then + rm -f $log + fi +done