fixed logging
parent
6c1e114074
commit
a37ccdaee0
|
@ -79,12 +79,14 @@ var (
|
|||
chanOsSignal chan os.Signal
|
||||
)
|
||||
|
||||
func init() {
|
||||
glog.MaxSize = 1024 * 1024
|
||||
glog.CopyStandardLogTo("INFO")
|
||||
}
|
||||
|
||||
func main() {
|
||||
flag.Parse()
|
||||
|
||||
// override setting for glog to log only to stderr, to match the http handler
|
||||
flag.Lookup("logtostderr").Value.Set("true")
|
||||
|
||||
defer glog.Flush()
|
||||
|
||||
chanOsSignal = make(chan os.Signal, 1)
|
||||
|
|
|
@ -5,7 +5,7 @@ FROM debian:9
|
|||
RUN apt-get update && \
|
||||
apt-get install -y build-essential git wget pkg-config lxc-dev libzmq3-dev \
|
||||
libgflags-dev libsnappy-dev zlib1g-dev libbz2-dev \
|
||||
liblz4-dev graphviz upx-ucl && \
|
||||
liblz4-dev graphviz && \
|
||||
apt-get clean
|
||||
|
||||
ENV GOLANG_VERSION=go1.10.linux-amd64
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
build: prepare-sources
|
||||
cd $(GOPATH)/src/blockbook && go build -o $(CURDIR)/blockbook -ldflags="-s -w"
|
||||
upx $(CURDIR)/blockbook
|
||||
cp $(CURDIR)/blockbook /out/blockbook
|
||||
chown $(PACKAGER) /out/blockbook
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ set -e
|
|||
|
||||
cp -r /src/build/deb/debian .
|
||||
cp -r /src/configs .
|
||||
mkdir server && cp /src/server/testcert.* server
|
||||
mkdir server && cp -r /src/server/testcert.* /src/server/static server
|
||||
|
||||
dpkg-buildpackage -us -uc
|
||||
mv ../*.deb /out
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#!/usr/bin/dh-exec
|
||||
blockbook /opt/blockbook/btc-testnet/bin
|
||||
server/testcert.* /opt/blockbook/btc-testnet/cert
|
||||
server/static /opt/blockbook/btc-testnet
|
||||
configs/btc-testnet.json => /opt/blockbook/btc-testnet/config/blockchaincfg.json
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
/opt/blockbook/btc-testnet/logs/blockbook.log
|
||||
{
|
||||
rotate 7
|
||||
daily
|
||||
compress
|
||||
missingok
|
||||
notifempty
|
||||
copytruncate
|
||||
}
|
|
@ -9,10 +9,13 @@ case "$1" in
|
|||
useradd --system -M -U blockbook
|
||||
fi
|
||||
|
||||
if [ "$(stat -c '%U' /data/btc-testnet/blockbook)" != "blockbook" ]
|
||||
then
|
||||
chown -R blockbook:blockbook /data/btc-testnet/blockbook
|
||||
fi
|
||||
for dir in /data/btc-testnet/blockbook /opt/blockbook/btc-testnet/logs
|
||||
do
|
||||
if [ "$(stat -c '%U' $dir)" != "blockbook" ]
|
||||
then
|
||||
chown -R blockbook:blockbook $dir
|
||||
fi
|
||||
done
|
||||
;;
|
||||
|
||||
esac
|
||||
|
|
|
@ -9,15 +9,11 @@ Description=Blockbook daemon (BTC testnet)
|
|||
After=network.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/opt/blockbook/btc-testnet/bin/blockbook -coin=btc-testnet -blockchaincfg=/opt/blockbook/btc-testnet/config/blockchaincfg.json -datadir=/data/btc-testnet/blockbook/db -sync -httpserver=:18335 -socketio=:18336 -certfile=/opt/blockbook/btc-testnet/cert/blockbook -explorer=https://bitcore1.trezor.io/
|
||||
# Creates /run/blockbook owned by blockbook
|
||||
RuntimeDirectory=blockbook
|
||||
ExecStart=/opt/blockbook/btc-testnet/bin/blockbook -coin=btc-testnet -blockchaincfg=/opt/blockbook/btc-testnet/config/blockchaincfg.json -datadir=/data/btc-testnet/blockbook/db -sync -httpserver=:18335 -socketio=:18336 -certfile=/opt/blockbook/btc-testnet/cert/blockbook -explorer=https://bitcore1.trezor.io/ -log_dir=/opt/blockbook/btc-testnet/logs
|
||||
User=blockbook
|
||||
# Type=forking
|
||||
# PIDFile=/run/bitcoind/btc-testnet.pid
|
||||
Type=simple
|
||||
Restart=on-failure
|
||||
StandardOutput=file:/opt/blockbook/btc-testnet/logs/blockbook.log
|
||||
StandardError=file:/opt/blockbook/btc-testnet/logs/blockbook.log
|
||||
WorkingDirectory=/opt/blockbook/btc-testnet
|
||||
|
||||
# Hardening measures
|
||||
####################
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#!/usr/bin/dh-exec
|
||||
blockbook /opt/blockbook/btc/bin
|
||||
server/testcert.* /opt/blockbook/btc/cert
|
||||
server/static /opt/blockbook/btc
|
||||
configs/btc.json => /opt/blockbook/btc/config/blockchaincfg.json
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
/opt/blockbook/btc/logs/blockbook.log
|
||||
{
|
||||
rotate 7
|
||||
daily
|
||||
compress
|
||||
missingok
|
||||
notifempty
|
||||
copytruncate
|
||||
}
|
|
@ -9,10 +9,13 @@ case "$1" in
|
|||
useradd --system -M -U blockbook
|
||||
fi
|
||||
|
||||
if [ "$(stat -c '%U' /data/btc/blockbook)" != "blockbook" ]
|
||||
then
|
||||
chown -R blockbook:blockbook /data/btc/blockbook
|
||||
fi
|
||||
for dir in /data/btc/blockbook /opt/blockbook/btc/logs
|
||||
do
|
||||
if [ "$(stat -c '%U' $dir)" != "blockbook" ]
|
||||
then
|
||||
chown -R blockbook:blockbook $dir
|
||||
fi
|
||||
done
|
||||
;;
|
||||
|
||||
esac
|
||||
|
|
|
@ -9,15 +9,11 @@ Description=Blockbook daemon (BTC mainnet)
|
|||
After=network.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/opt/blockbook/btc/bin/blockbook -coin=btc -blockchaincfg=/opt/blockbook/btc/config/blockchaincfg.json -datadir=/data/btc/blockbook/db -sync -httpserver=:8335 -socketio=:8336 -certfile=/opt/blockbook/btc/cert/blockbook -explorer=https://bitcore1.trezor.io/
|
||||
# Creates /run/blockbook owned by blockbook
|
||||
RuntimeDirectory=blockbook
|
||||
ExecStart=/opt/blockbook/btc/bin/blockbook -coin=btc -blockchaincfg=/opt/blockbook/btc/config/blockchaincfg.json -datadir=/data/btc/blockbook/db -sync -httpserver=:8335 -socketio=:8336 -certfile=/opt/blockbook/btc/cert/blockbook -explorer=https://bitcore1.trezor.io/ -log_dir=/opt/blockbook/btc/logs
|
||||
User=blockbook
|
||||
# Type=forking
|
||||
# PIDFile=/run/bitcoind/btc.pid
|
||||
Type=simple
|
||||
Restart=on-failure
|
||||
StandardOutput=file:/opt/blockbook/btc/logs/blockbook.log
|
||||
StandardError=file:/opt/blockbook/btc/logs/blockbook.log
|
||||
WorkingDirectory=/opt/blockbook/btc
|
||||
|
||||
# Hardening measures
|
||||
####################
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#!/usr/bin/dh-exec --with=install
|
||||
blockbook /opt/blockbook/zec/bin
|
||||
server/testcert.* /opt/blockbook/zec/cert
|
||||
server/static /opt/blockbook/zec
|
||||
configs/zec.json => /opt/blockbook/zec/config/blockchaincfg.json
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
/opt/blockbook/zec/logs/blockbook.log
|
||||
{
|
||||
rotate 7
|
||||
daily
|
||||
compress
|
||||
missingok
|
||||
notifempty
|
||||
copytruncate
|
||||
}
|
|
@ -9,10 +9,13 @@ case "$1" in
|
|||
useradd --system -M -U blockbook
|
||||
fi
|
||||
|
||||
if [ "$(stat -c '%U' /data/zec/blockbook)" != "blockbook" ]
|
||||
then
|
||||
chown -R blockbook:blockbook /data/zec/blockbook
|
||||
fi
|
||||
for dir in /data/zec/blockbook /opt/blockbook/zec/logs
|
||||
do
|
||||
if [ "$(stat -c '%U' $dir)" != "blockbook" ]
|
||||
then
|
||||
chown -R blockbook:blockbook $dir
|
||||
fi
|
||||
done
|
||||
;;
|
||||
|
||||
esac
|
||||
|
|
|
@ -9,15 +9,11 @@ Description=Blockbook daemon (ZEC mainnet)
|
|||
After=network.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/opt/blockbook/zec/bin/blockbook -coin=zec -blockchaincfg=/opt/blockbook/zec/config/blockchaincfg.json -datadir=/data/zec/blockbook/db -sync -httpserver=:8235 -socketio=:8236 -certfile=/opt/blockbook/zec/cert/blockbook -explorer=https://zec-bitcore1.trezor.io/
|
||||
# Creates /run/blockbook owned by blockbook
|
||||
RuntimeDirectory=blockbook
|
||||
ExecStart=/opt/blockbook/zec/bin/blockbook -coin=zec -blockchaincfg=/opt/blockbook/zec/config/blockchaincfg.json -datadir=/data/zec/blockbook/db -sync -httpserver=:8235 -socketio=:8236 -certfile=/opt/blockbook/zec/cert/blockbook -explorer=https://zec-bitcore1.trezor.io/ -log_dir=/opt/blockbook/zec/logs
|
||||
User=blockbook
|
||||
# Type=forking
|
||||
# PIDFile=/run/bitcoind/zec.pid
|
||||
Type=simple
|
||||
Restart=on-failure
|
||||
StandardOutput=file:/opt/blockbook/zec/logs/blockbook.log
|
||||
StandardError=file:/opt/blockbook/zec/logs/blockbook.log
|
||||
WorkingDirectory=/opt/blockbook/zec
|
||||
|
||||
# Hardening measures
|
||||
####################
|
||||
|
|
|
@ -2,20 +2,20 @@ Source: blockbook
|
|||
Section: satoshilabs
|
||||
Priority: optional
|
||||
Maintainer: jakub.matys@satoshilabs.com
|
||||
Build-Depends: debhelper, dh-systemd, dh-exec, upx
|
||||
Build-Depends: debhelper, dh-systemd, dh-exec
|
||||
Standards-Version: 3.9.5
|
||||
|
||||
Package: blockbook-btc
|
||||
Architecture: amd64
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils
|
||||
Description: Satoshilabs blockbook server
|
||||
|
||||
Package: blockbook-btc-testnet
|
||||
Architecture: amd64
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils
|
||||
Description: Satoshilabs blockbook server
|
||||
|
||||
Package: blockbook-zec
|
||||
Architecture: amd64
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils
|
||||
Description: Satoshilabs blockbook server
|
||||
|
|
|
@ -8,12 +8,10 @@ import (
|
|||
"errors"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"os"
|
||||
"strconv"
|
||||
|
||||
"github.com/golang/glog"
|
||||
|
||||
"github.com/gorilla/handlers"
|
||||
"github.com/gorilla/mux"
|
||||
"github.com/prometheus/client_golang/prometheus/promhttp"
|
||||
)
|
||||
|
@ -30,8 +28,10 @@ type HTTPServer struct {
|
|||
|
||||
// NewHTTPServer creates new REST interface to blockbook and returns its handle
|
||||
func NewHTTPServer(httpServerBinding string, certFiles string, db *db.RocksDB, chain bchain.BlockChain, txCache *db.TxCache) (*HTTPServer, error) {
|
||||
r := mux.NewRouter()
|
||||
https := &http.Server{
|
||||
Addr: httpServerBinding,
|
||||
Addr: httpServerBinding,
|
||||
Handler: r,
|
||||
}
|
||||
s := &HTTPServer{
|
||||
https: https,
|
||||
|
@ -42,7 +42,6 @@ func NewHTTPServer(httpServerBinding string, certFiles string, db *db.RocksDB, c
|
|||
chainParser: chain.GetChainParser(),
|
||||
}
|
||||
|
||||
r := mux.NewRouter()
|
||||
r.HandleFunc("/", s.info)
|
||||
r.HandleFunc("/bestBlockHash", s.bestBlockHash)
|
||||
r.HandleFunc("/blockHash/{height}", s.blockHash)
|
||||
|
@ -51,10 +50,6 @@ func NewHTTPServer(httpServerBinding string, certFiles string, db *db.RocksDB, c
|
|||
r.HandleFunc("/unconfirmedTransactions/{address}", s.unconfirmedTransactions)
|
||||
r.HandleFunc("/metrics", promhttp.Handler().ServeHTTP)
|
||||
|
||||
var h http.Handler = r
|
||||
h = handlers.LoggingHandler(os.Stderr, h)
|
||||
https.Handler = h
|
||||
|
||||
return s, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -76,7 +76,7 @@ func NewSocketIoServer(binding string, certFiles string, db *db.RocksDB, chain b
|
|||
}
|
||||
|
||||
// support for tests of socket.io interface
|
||||
serveMux.Handle(path+"test.html", http.FileServer(http.Dir("./server/static/")))
|
||||
serveMux.Handle(path+"test.html", http.FileServer(http.Dir("./static/")))
|
||||
// redirect to Bitcore for details of transaction
|
||||
serveMux.HandleFunc(path+"tx/", s.txRedirect)
|
||||
// handle socket.io
|
||||
|
|
Loading…
Reference in New Issue