Skip to content

Commit

Permalink
Merge branch 'master' into vault-0.10-tests
Browse files Browse the repository at this point in the history
  • Loading branch information
magiconair committed Sep 19, 2018
2 parents ac2a9a2 + 2ac1992 commit e811c52
Show file tree
Hide file tree
Showing 73 changed files with 1,165 additions and 316 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,5 @@ fabio
fabio.exe
fabio.sublime-*
demo/cert/
pkg/
/pkg/
dist/
42 changes: 42 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,47 @@
## Changelog

### Unreleased

#### Breaking Changes

#### Bug Fixes

* [Issue #530](https://github.com/fabiolb/fabio/issues/530): Memory leak in go-metrics library

When metrics collection was enabled within fabio instances with very dynamic route changes memory usage quickly
ramped above expected levels. Research done by [@galen0624](https://github.com/galen0624) identified the issue
and lead to the discovery of a fix in an updated version of the go-metrics library used by fabio.

* [Issue #506](https://github.com/fabiolb/fabio/issues/506): Wrong route for multiple matching host glob patterns

When multiple host glob patterns match an incoming request fabio can pick the wrong backend for the request.
This is because the sorting code that should sort the matching patterns from most specific to least specific
does not take into account that doamin names have their most specific part at the front. This has been fixed
by reversing the domain names before sorting.

#### Improvements

* [Issue #542](https://github.com/fabiolb/fabio/issues/542): Ignore host case when adding and matching routes

Fabio was forcing hostnames in routes added via Consul tags to lowercase. This caused problems
with table lookups that were not case-insensitive. The patch applied in #543 forces all routes added
via consul tags or the internal `addRoute` to have lower case hostnames in addition to forcing
hostnames to lowercase before performing table lookups. This means that the host portion of routes and
host based table lookups in fabio are no longer case sensitive.

Thanks to [@shantanugadgil](https://github.com/shantanugadgil) for the patch.

#### Features

* [Issue #544](https://github.com/fabiolb/fabio/issues/544): Add $host pseudo variable

This PR added support for `$host` pseudo variable that behaves similarly to the `$path` variable.
You should now be able to create a global redirect for requests received on any host to the same or different
request host on the same or different path when combined with the `$path` variable. This allows for a truly global
protocol redirect of HTTP -> HTTPS traffic irrespective of host and path.

Thanks to [@holtwilkins](https://github.com/holtwilkins) for the patch.

### [v1.5.9](https://github.com/fabiolb/fabio/releases/tag/v1.5.9) - 16 May 2018

#### Notes
Expand Down
20 changes: 10 additions & 10 deletions Dockerfile-test
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
FROM ubuntu
RUN apt-get update && apt-get -y install unzip make git-core
ARG consul_version
ARG vault_version
ARG go_version
COPY consul_${consul_version}_linux_amd64.zip /tmp
COPY vault_${vault_version}_linux_amd64.zip /tmp
COPY go${go_version}.linux-amd64.tar.gz /tmp
RUN unzip /tmp/consul_${consul_version}_linux_amd64.zip -d /usr/local/bin
RUN unzip /tmp/vault_${vault_version}_linux_amd64.zip -d /usr/local/bin
RUN tar -C /usr/local -x -f /tmp/go${go_version}.linux-amd64.tar.gz
RUN apt-get update && apt-get -y install make git-core unzip
ARG consul_version=1.0.6
ARG vault_version=0.9.6
ARG go_version=1.10.3
ADD https://releases.hashicorp.com/consul/${consul_version}/consul_${consul_version}_linux_amd64.zip /usr/local/bin
ADD https://releases.hashicorp.com/vault/${vault_version}/vault_${vault_version}_linux_amd64.zip /usr/local/bin
ADD https://dl.google.com/go/go${go_version}.linux-amd64.tar.gz /usr/local
RUN cd /usr/local/bin && unzip consul_${consul_version}_linux_amd64.zip
RUN cd /usr/local/bin && unzip vault_${vault_version}_linux_amd64.zip
RUN cd /usr/local && tar xf go${go_version}.linux-amd64.tar.gz
ENV PATH=/usr/local/go/bin:/root/go/bin:$PATH
WORKDIR /root/go/src/github.com/fabiolb/fabio
COPY . .
Expand Down
22 changes: 3 additions & 19 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,16 +20,10 @@ GOVERSION = $(shell go version | awk '{print $$3;}')
# GORELEASER is the path to the goreleaser binary.
GORELEASER = $(shell which goreleaser)

# GOVENDOR is the path to the govendor binary.
GOVENDOR = $(shell which govendor)

# VENDORFMT is the path to the vendorfmt binary.
VENDORFMT = $(shell which vendorfmt)

# pin versions for CI builds
CI_CONSUL_VERSION=1.1.0
CI_VAULT_VERSION=0.10.1
CI_GO_VERSION=1.10.2
CI_GO_VERSION=1.10.3

# all is the default target
all: test
Expand All @@ -46,23 +40,13 @@ help:
@echo "clean - remove temp files"

# build compiles fabio and the test dependencies
build: checkdeps vendorfmt gofmt
build: gofmt
go build

# test runs the tests
test: build
go test -v -test.timeout 15s `go list ./... | grep -v '/vendor/'`

# checkdeps ensures that all required dependencies are vendored in
checkdeps:
[ -x "$(GOVENDOR)" ] || go get -u github.com/kardianos/govendor
govendor list +e | grep '^ e ' && { echo "Found missing packages. Please run 'govendor add +e'"; exit 1; } || : echo

# vendorfmt ensures that the vendor/vendor.json file is formatted correctly
vendorfmt:
[ -x "$(VENDORFMT)" ] || go get -u github.com/magiconair/vendorfmt/cmd/vendorfmt
vendorfmt

# gofmt runs gofmt on the code
gofmt:
gofmt -s -w `find . -type f -name '*.go' | grep -v vendor`
Expand Down Expand Up @@ -156,4 +140,4 @@ clean:
rm -rf pkg dist fabio
find . -name '*.test' -delete

.PHONY: all build checkdeps clean codeship gofmt gorelease help homebrew install linux pkg preflight release tag test vendorfmt
.PHONY: all build clean codeship gofmt gorelease help homebrew install linux pkg preflight release tag test
6 changes: 3 additions & 3 deletions NOTICES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -94,9 +94,9 @@ License: MPL-2 (https://github.com/hashicorp/vault/LICENSE)
Copyright 2017 HashiCorp, Inc.


github.com/magiconair/go-metrics-statsd
https://github.com/magiconair/go-metrics-statsd
License: MIT (https://github.com/magiconair/go-metrics-statsd/LICENSE)
github.com/pubnub/go-metrics-statsd
https://github.com/pubnub/go-metrics-statsd
License: MIT (https://github.com/pubnub/go-metrics-statsd/LICENSE)
Copyright (c) 2016 PubNub


Expand Down
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,7 @@ The full documentation is on [fabiolb.net](https://fabiolb.net/)

3. Register a **health check** in consul as described [here](https://consul.io/docs/agent/checks.html).

Make sure the health check is **passing** since fabio will only watch services
which have a passing health check.
By default fabio only watches services which have a **passing** health check, unless overriden with [registry.consul.service.status](https://fabiolb.net/ref/registry.consul.service.status/).

4. Register one `urlprefix-` tag per `host/path` prefix it serves, e.g.:

Expand Down
1 change: 1 addition & 0 deletions config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ type Proxy struct {
ResponseHeaderTimeout time.Duration
KeepAliveTimeout time.Duration
FlushInterval time.Duration
GlobalFlushInterval time.Duration
LocalIP string
ClientIPHeader string
TLSHeader string
Expand Down
15 changes: 8 additions & 7 deletions config/default.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,14 @@ var defaultConfig = &Config{
},
},
Proxy: Proxy{
MaxConn: 10000,
Strategy: "rnd",
Matcher: "prefix",
NoRouteStatus: 404,
DialTimeout: 30 * time.Second,
FlushInterval: time.Second,
LocalIP: LocalIPString(),
MaxConn: 10000,
Strategy: "rnd",
Matcher: "prefix",
NoRouteStatus: 404,
DialTimeout: 30 * time.Second,
FlushInterval: time.Second,
GlobalFlushInterval: 0,
LocalIP: LocalIPString(),
},
Registry: Registry{
Backend: "consul",
Expand Down
1 change: 1 addition & 0 deletions config/load.go
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ func load(cmdline, environ, envprefix []string, props *properties.Properties) (c
f.DurationVar(&readTimeout, "proxy.readtimeout", defaultValues.ReadTimeout, "read timeout for incoming requests")
f.DurationVar(&writeTimeout, "proxy.writetimeout", defaultValues.WriteTimeout, "write timeout for outgoing responses")
f.DurationVar(&cfg.Proxy.FlushInterval, "proxy.flushinterval", defaultConfig.Proxy.FlushInterval, "flush interval for streaming responses")
f.DurationVar(&cfg.Proxy.GlobalFlushInterval, "proxy.globalflushinterval", defaultConfig.Proxy.GlobalFlushInterval, "flush interval for non-streaming responses")
f.StringVar(&cfg.Log.AccessFormat, "log.access.format", defaultConfig.Log.AccessFormat, "access log format")
f.StringVar(&cfg.Log.AccessTarget, "log.access.target", defaultConfig.Log.AccessTarget, "access log target")
f.StringVar(&cfg.Log.RoutesFormat, "log.routes.format", defaultConfig.Log.RoutesFormat, "log format of routing table updates")
Expand Down
7 changes: 7 additions & 0 deletions config/load_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -362,6 +362,13 @@ func TestLoad(t *testing.T) {
return cfg
},
},
{
args: []string{"-proxy.globalflushinterval", "5ms"},
cfg: func(cfg *Config) *Config {
cfg.Proxy.GlobalFlushInterval = 5 * time.Millisecond
return cfg
},
},
{
args: []string{"-proxy.maxconn", "555"},
cfg: func(cfg *Config) *Config {
Expand Down
9 changes: 2 additions & 7 deletions docs/content/contrib/guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,8 @@ we ask for the following:
already underway.
* Only add libraries if they provide significant value. Consider copying the code
(attribution) or writing it yourself.
* Manage dependencies in the vendor path via `govendor` as separate commits per library
and format the `vendor.json` file with `vendorfmt`. Please make sure your commit
message has the following format:

```
Vendoring in version <git hash> of <pkgname>
```
* Manage dependencies with `go mod` and run `go mod vendor` afterwards to
sync the `vendor` folder for backwards compatibility.

Once you are ready to send in a pull request, be sure to:

Expand Down
6 changes: 3 additions & 3 deletions docs/content/feature/access-control.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,9 @@ The source ip used for validation against the defined ruleset is
taken from information available in the request.

For `HTTP` requests the client `RemoteAddr` is always validated
followed by the first element of the `X-Forwarded-For` header, if
present. When either of these elements match an `allow` the request
will be allowed; similarly when either element matches a `deny` the
followed by all elements of the `X-Forwarded-For` header, if
present. When all of these elements match an `allow` the request
will be allowed; similarly when any element matches a `deny` the
request will be denied.

For `TCP` requests the source address of the network socket
Expand Down
10 changes: 10 additions & 0 deletions docs/content/ref/proxy.globalflushinterval.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: "proxy.globalflushinterval"
---

`proxy.globalflushinterval` configures periodic flushing of the
response buffer for proxied non-SSE connections. By default it is disabled.

The default is

proxy.globalflushinterval = 0
2 changes: 1 addition & 1 deletion docs/layouts/partials/footer.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
</div>
<div class="col-md-6 col-sm-6">
<ul class="footer-menu">
<li><a href="https://github.com/fabiolb/website/commits/master">Changelog</a></li>
<li><a href="https://github.com/fabiolb/fabio/commits/master">Changelog</a></li>
<li><a href="/contact/">Contact</a></li>
<li>
<a href="https://gohugo.io"><img src="/img/made-with-hugo.png" height="51px"></a>
Expand Down
6 changes: 6 additions & 0 deletions fabio.properties
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,12 @@
#
# proxy.flushinterval = 1s

# proxy.globalflushinterval configures periodic flushing of the
# response buffer for non-SSE connections. By default it is not enabled.
#
# The default is
#
# proxy.globalflushinterval = 0

# proxy.maxconn configures the maximum number of cached
# incoming and outgoing connections.
Expand Down
30 changes: 30 additions & 0 deletions go.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
module github.com/fabiolb/fabio

require (
github.com/armon/go-proxyproto v0.0.0-20150207025855-609d6338d3a7
github.com/circonus-labs/circonus-gometrics v0.0.0-20160830164725-f8c68ed96a06
github.com/circonus-labs/circonusllhist v0.0.0-20160526043813-d724266ae527 // indirect
github.com/cyberdelia/go-metrics-graphite v0.0.0-20150826032200-b8345b7f01d5
github.com/fatih/structs v0.0.0-20160601093117-5ada2f449b10 // indirect
github.com/gobwas/glob v0.0.0-20180208211842-19c076cdf202
github.com/hashicorp/consul v0.8.0
github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce // indirect
github.com/hashicorp/go-cleanhttp v0.0.0-20160407174126-ad28ea4487f0 // indirect
github.com/hashicorp/go-multierror v0.0.0-20150916205742-d30f09973e19 // indirect
github.com/hashicorp/go-retryablehttp v0.0.0-20160810172255-f4ed9b0fa01a // indirect
github.com/hashicorp/go-rootcerts v0.0.0-20160503143440-6bb64b370b90 // indirect
github.com/hashicorp/hcl v0.0.0-20160607001940-d7400db7143f // indirect
github.com/hashicorp/serf v0.7.0 // indirect
github.com/hashicorp/vault v0.6.0
github.com/magiconair/properties v0.0.0-20171031211101-49d762b9817b
github.com/mitchellh/go-homedir v0.0.0-20160606030122-1111e456ffea // indirect
github.com/mitchellh/mapstructure v0.0.0-20160212031839-d2dd02622084 // indirect
github.com/pascaldekloe/goe v0.0.0-20150719195608-f99183613f48
github.com/pkg/profile v1.2.1
github.com/pubnub/go-metrics-statsd v0.0.0-20170124014003-7da61f429d6b
github.com/rcrowley/go-metrics v0.0.0-20180503174638-e2704e165165
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af
github.com/sergi/go-diff v0.0.0-20170118131230-24e2351369ec
golang.org/x/net v0.0.0-20170114055629-f2499483f923
golang.org/x/sync v0.0.0-20170927054112-8e0aa688b654
)
52 changes: 52 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
github.com/armon/go-proxyproto v0.0.0-20150207025855-609d6338d3a7 h1:AuTQOaYRBRtfDwY9ksr2sLXBgNvI5Mi6nhPdKdLE8Uw=
github.com/armon/go-proxyproto v0.0.0-20150207025855-609d6338d3a7/go.mod h1:QmP9hvJ91BbJmGVGSbutW19IC0Q9phDCLGaomwTJbgU=
github.com/circonus-labs/circonus-gometrics v0.0.0-20160830164725-f8c68ed96a06 h1:DHdPk46/oiLoYPQ7Dt10pRx74HaJVoyjS5Ea7eyROes=
github.com/circonus-labs/circonus-gometrics v0.0.0-20160830164725-f8c68ed96a06/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag=
github.com/circonus-labs/circonusllhist v0.0.0-20160526043813-d724266ae527 h1:g5Ns3zGpLJ0T+1YJ0d3VVPrlMMyFHXV4x82xNgIT9z0=
github.com/circonus-labs/circonusllhist v0.0.0-20160526043813-d724266ae527/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I=
github.com/cyberdelia/go-metrics-graphite v0.0.0-20150826032200-b8345b7f01d5 h1:TYSgSeiA3LfBi6son0KgHb4wcTXV1kB5wZtTorXQ914=
github.com/cyberdelia/go-metrics-graphite v0.0.0-20150826032200-b8345b7f01d5/go.mod h1:xwIwAxMvYnVrGJPe2FKx5prTrnAjGOD8zvDOnxnrrkM=
github.com/fatih/structs v0.0.0-20160601093117-5ada2f449b10 h1:ajF8LGnOEaXJZD9XGNIawJ55pmntNqLiKdEFXo9/Bnk=
github.com/fatih/structs v0.0.0-20160601093117-5ada2f449b10/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M=
github.com/gobwas/glob v0.0.0-20180208211842-19c076cdf202 h1:XcHVP1KCiY3CQI5oi8+7pRPD/5dC2NbhGZLn5CFGO74=
github.com/gobwas/glob v0.0.0-20180208211842-19c076cdf202/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8=
github.com/hashicorp/consul v0.8.0 h1:Z/JG7b8Djn1v4LwLT9YWSTrxMQwTidzT1sD6rJYF9Pc=
github.com/hashicorp/consul v0.8.0/go.mod h1:mFrjN1mfidgJfYP1xrJCF+AfRhr6Eaqhb2+sfyn/OOI=
github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce h1:prjrVgOk2Yg6w+PflHoszQNLTUh4kaByUcEWM/9uin4=
github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
github.com/hashicorp/go-cleanhttp v0.0.0-20160407174126-ad28ea4487f0 h1:2l0haPDqCzZEO160UR5DSrrl8RWptFCoxFsSbRLJBaI=
github.com/hashicorp/go-cleanhttp v0.0.0-20160407174126-ad28ea4487f0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80=
github.com/hashicorp/go-multierror v0.0.0-20150916205742-d30f09973e19 h1:gb61U/o4ZJ6TRYvZqJUKYidIhJOEAvNyVMesryROxAY=
github.com/hashicorp/go-multierror v0.0.0-20150916205742-d30f09973e19/go.mod h1:JMRHfdO9jKNzS/+BTlxCjKNQHg/jZAft8U7LloJvN7I=
github.com/hashicorp/go-retryablehttp v0.0.0-20160810172255-f4ed9b0fa01a h1:EyMMojcpa0OFWj8zjSPQ+8SsBVm+hMDqQlxjGdCxUDQ=
github.com/hashicorp/go-retryablehttp v0.0.0-20160810172255-f4ed9b0fa01a/go.mod h1:fXcdFsQoipQa7mwORhKad5jmDCeSy/RCGzWA08PO0lM=
github.com/hashicorp/go-rootcerts v0.0.0-20160503143440-6bb64b370b90 h1:9HVkPxOpo+yO93Ah4yrO67d/qh0fbLLWbKqhYjyHq9A=
github.com/hashicorp/go-rootcerts v0.0.0-20160503143440-6bb64b370b90/go.mod h1:o4zcYY1e0GEZI6eSEr+43QDYmuGglw1qSO6qdHUHCgg=
github.com/hashicorp/hcl v0.0.0-20160607001940-d7400db7143f h1:4/YA+0VGQiTOscm2IpwDVLncidInJKGuU62GBKeUbE8=
github.com/hashicorp/hcl v0.0.0-20160607001940-d7400db7143f/go.mod h1:oZtUIOe8dh44I2q6ScRibXws4Ajl+d+nod3AaR9vL5w=
github.com/hashicorp/serf v0.7.0 h1:9NBx0ZSoEtMrWrNf2ByXsmoKcpJyHIU7xGU/itMCtkg=
github.com/hashicorp/serf v0.7.0/go.mod h1:h/Ru6tmZazX7WO/GDmwdpS975F019L4t5ng5IgwbNrE=
github.com/hashicorp/vault v0.6.0 h1:wc/KN2SZ76imak5yOF4Utm6p0e4BNtSKLhWlYrzX+vQ=
github.com/hashicorp/vault v0.6.0/go.mod h1:KfSyffbKxoVyspOdlaGVjIuwLobi07qD1bAbosPMpP0=
github.com/magiconair/properties v0.0.0-20171031211101-49d762b9817b h1:bR3tkU6ocnK5a0NsdgTMWc7sILt+BY0PceUYC6EpSqc=
github.com/magiconair/properties v0.0.0-20171031211101-49d762b9817b/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
github.com/mitchellh/go-homedir v0.0.0-20160606030122-1111e456ffea h1:6vbWobCwqTqcqPXwGOyVXdwdINhgsh7rEueNhT/89kM=
github.com/mitchellh/go-homedir v0.0.0-20160606030122-1111e456ffea/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
github.com/mitchellh/mapstructure v0.0.0-20160212031839-d2dd02622084 h1:Z2EJ6SUYrzx6J/YH/ltZthkUQTB/5+Ykpkew6y9DGJE=
github.com/mitchellh/mapstructure v0.0.0-20160212031839-d2dd02622084/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
github.com/pascaldekloe/goe v0.0.0-20150719195608-f99183613f48 h1:8y3keSPOPy5pszxfE4wtwlAKuuIde8X6zcto98U4RYw=
github.com/pascaldekloe/goe v0.0.0-20150719195608-f99183613f48/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
github.com/pkg/profile v1.2.1 h1:F++O52m40owAmADcojzM+9gyjmMOY/T4oYJkgFDH8RE=
github.com/pkg/profile v1.2.1/go.mod h1:hJw3o1OdXxsrSjjVksARp5W95eeEaEfptyVZyv6JUPA=
github.com/pubnub/go-metrics-statsd v0.0.0-20170124014003-7da61f429d6b h1:xCVl8I01z+W/Q+z7napcXRrOhsFzxmYLiBxigDbNQcg=
github.com/pubnub/go-metrics-statsd v0.0.0-20170124014003-7da61f429d6b/go.mod h1:5UoZ1X6PWZWpPxwpR8qZ/qTN2BXIrrYTV9j+6TaQngA=
github.com/rcrowley/go-metrics v0.0.0-20180503174638-e2704e165165 h1:nkcn14uNmFEuGCb2mBZbBb24RdNRL08b/wb+xBOYpuk=
github.com/rcrowley/go-metrics v0.0.0-20180503174638-e2704e165165/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af h1:gu+uRPtBe88sKxUCEXRoeCvVG90TJmwhiqRpvdhQFng=
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg=
github.com/sergi/go-diff v0.0.0-20170118131230-24e2351369ec h1:shdBt9xKJPFOcYfVt160PFXcIKxJZC6165xf9qeWx/o=
github.com/sergi/go-diff v0.0.0-20170118131230-24e2351369ec/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
golang.org/x/net v0.0.0-20170114055629-f2499483f923 h1:cLl2p2++IYXqH4YzQ7uIc7QLOa4SU0x1vSy9Da++V94=
golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/sync v0.0.0-20170927054112-8e0aa688b654 h1:ogYMTsPtkSw1JROKERM/ualwPUvE2UOP2KfhwFO6aVE=
golang.org/x/sync v0.0.0-20170927054112-8e0aa688b654/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
2 changes: 0 additions & 2 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,6 @@ var version = "1.5.9"

var shuttingDown int32

var logOutput logger.LevelWriter

func main() {
logOutput := logger.NewLevelWriter(os.Stderr, "INFO", "2017/01/01 00:00:00 ")
log.SetOutput(logOutput)
Expand Down
2 changes: 1 addition & 1 deletion metrics/gometrics.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import (
"time"

graphite "github.com/cyberdelia/go-metrics-graphite"
statsd "github.com/magiconair/go-metrics-statsd"
statsd "github.com/pubnub/go-metrics-statsd"
gm "github.com/rcrowley/go-metrics"
)

Expand Down
Loading

0 comments on commit e811c52

Please sign in to comment.