From 1bfc10bc28b57c4be1160e7d39b90ad15609fe23 Mon Sep 17 00:00:00 2001 From: Dieter Plaetinck Date: Fri, 29 Sep 2017 15:16:36 +0200 Subject: [PATCH] rebrand: raintank -> GrafanaLabs see https://grafana.com/blog/2017/03/13/we-are-now-grafana-labs/ Note: * update import paths * packagecloud stays raintank for now * dockerhub: use grafana's * packages use /var/run/metrictank instead of /var/run/raintank * cassandra namespaces defaults are left unchanged --- README.md | 66 +++++++++---------- api/api.go | 8 +-- api/cluster.go | 8 +-- api/dataprocessor.go | 12 ++-- api/dataprocessor_test.go | 18 ++--- api/graphite.go | 22 +++---- api/graphite_proxy.go | 2 +- api/init.go | 2 +- api/middleware/cluster.go | 2 +- api/middleware/stats.go | 2 +- api/middleware/tracer.go | 2 +- api/models/cluster.go | 2 +- api/models/cluster_gen.go | 6 +- api/models/graphite.go | 2 +- api/models/graphite_test.go | 2 +- api/models/node.go | 2 +- api/models/request.go | 6 +- api/models/series.go | 2 +- api/query_engine.go | 10 +-- api/query_engine_test.go | 8 +-- api/response/fast_json_test.go | 4 +- api/response/json_test.go | 4 +- api/response/msgp_test.go | 2 +- api/response/pickle_test.go | 2 +- api/response/response.go | 2 +- api/response/response_test.go | 2 +- api/routes.go | 4 +- cassandra/metrics.go | 2 +- circle.yml | 2 +- cluster/manager.go | 2 +- cluster/node.go | 2 +- cmd/mt-aggs-explain/main.go | 4 +- cmd/mt-explain/main.go | 2 +- cmd/mt-index-cat/main.go | 4 +- cmd/mt-index-migrate-06-to-07/main.go | 4 +- cmd/mt-index-migrate/main.go | 4 +- cmd/mt-kafka-mdm-sniff-out-of-order/main.go | 4 +- cmd/mt-kafka-mdm-sniff/main.go | 4 +- cmd/mt-replicator-via-tsdb/main.go | 6 +- cmd/mt-replicator-via-tsdb/metrics.go | 4 +- cmd/mt-replicator/metrics.go | 2 +- cmd/mt-schemas-explain/main.go | 4 +- cmd/mt-split-metrics-by-ttl/main.go | 2 +- cmd/mt-store-cat/full.go | 2 +- cmd/mt-store-cat/main.go | 2 +- cmd/mt-store-cat/metrics.go | 2 +- cmd/mt-store-cat/series.go | 6 +- cmd/mt-store-cat/tables.go | 2 +- cmd/mt-view-boundaries/main.go | 6 +- cmd/mt-whisper-importer-reader/conversion.go | 2 +- cmd/mt-whisper-importer-reader/main.go | 10 +-- cmd/mt-whisper-importer-writer/main.go | 14 ++-- conf/retention.go | 4 +- conf/schemas.go | 2 +- consolidation/consolidate_test.go | 2 +- consolidation/consolidation.go | 2 +- contrib/maintenance-es-index.sh | 2 +- docker/docker-cluster/docker-compose.yml | 8 +-- docker/docker-cluster/metrictank.ini | 4 +- docker/docker-cluster/storage-schemas.conf | 6 +- .../docker-compose.yml | 2 +- .../metrictank.ini | 4 +- .../storage-aggregation.conf | 2 +- .../storage-schemas.conf | 6 +- docker/docker-dev/docker-compose.yml | 2 +- docker/docker-standard/docker-compose.yml | 2 +- docs/cassandra.md | 6 +- docs/clustering.md | 10 +-- docs/community.md | 2 +- docs/config.md | 20 +++--- docs/consolidation.md | 10 +-- docs/development.md | 2 +- docs/graphite.md | 4 +- docs/http-api.md | 10 +-- docs/installation-deb.md | 18 ++--- docs/installation-rpm.md | 18 ++--- docs/installation-source.md | 6 +- docs/installation.md | 8 +-- docs/kafka.md | 2 +- docs/memory-server.md | 6 +- docs/metadata.md | 6 +- docs/operations.md | 26 ++++---- docs/overview.md | 2 +- docs/quick-start-docker.md | 14 ++-- docs/roadmap.md | 4 +- docs/tools.md | 2 +- expr/NOTES | 4 +- expr/func_alias.go | 2 +- expr/func_alias_test.go | 2 +- expr/func_aliasbynode.go | 2 +- expr/func_aliassub.go | 2 +- expr/func_aliassub_test.go | 2 +- expr/func_avgseries.go | 2 +- expr/func_avgseries_test.go | 4 +- expr/func_consolidateby.go | 4 +- expr/func_divideseries.go | 2 +- expr/func_get.go | 2 +- expr/func_mock_test.go | 2 +- expr/func_movingaverage.go | 2 +- expr/func_persecond.go | 2 +- expr/func_persecond_test.go | 2 +- expr/func_scale.go | 2 +- expr/func_smartsummarize.go | 2 +- expr/func_sumseries.go | 2 +- expr/func_sumseries_test.go | 4 +- expr/func_transformnull.go | 2 +- expr/funcs.go | 4 +- expr/plan.go | 4 +- expr/plan_test.go | 6 +- expr/test.go | 2 +- idx/cassandra/cassandra.go | 10 +-- idx/cassandra/cassandra_test.go | 4 +- idx/memory/memory.go | 6 +- idx/memory/memory_find_test.go | 2 +- idx/memory/memory_test.go | 2 +- input/carbon/carbon.go | 6 +- input/carbon/intervalgetter.go | 4 +- input/input.go | 6 +- input/input_test.go | 10 +-- input/kafkamdm/kafkamdm.go | 8 +-- mdata/aggmetric.go | 10 +-- mdata/aggmetric_test.go | 8 +-- mdata/aggmetrics.go | 2 +- mdata/aggregator.go | 4 +- mdata/aggregator_test.go | 6 +- mdata/cache/accnt/stats.go | 2 +- mdata/cache/cache_mock.go | 2 +- mdata/cache/ccache.go | 8 +-- mdata/cache/ccache_chunk.go | 2 +- mdata/cache/ccache_metric.go | 4 +- mdata/cache/ccache_test.go | 4 +- mdata/cache/if.go | 2 +- mdata/chunk/archive/archive.go | 2 +- mdata/chunk/archive/archive_gen.go | 2 +- mdata/chunk/chunk.go | 2 +- mdata/cwr.go | 2 +- mdata/ifaces.go | 2 +- mdata/init.go | 4 +- mdata/notifier.go | 6 +- mdata/notifierKafka/cfg.go | 6 +- mdata/notifierKafka/notifierKafka.go | 8 +-- mdata/notifierNsq/cfg.go | 2 +- .../notifierNsq/instrumented_nsq/consumer.go | 2 +- mdata/notifierNsq/notifierNsq.go | 8 +-- mdata/result.go | 2 +- mdata/schema.go | 2 +- mdata/store.go | 2 +- mdata/store_cassandra.go | 8 +-- mdata/store_devnull.go | 2 +- mdata/store_mock.go | 2 +- metrictank-sample.ini | 4 +- metrictank.go | 30 ++++----- scripts/Dockerfile | 2 +- scripts/build.sh | 2 +- scripts/build_docker.sh | 6 +- scripts/build_tools.sh | 2 +- scripts/config-to-doc.sh | 8 +-- scripts/config/metrictank-docker.ini | 4 +- scripts/config/metrictank-package.ini | 4 +- scripts/config/storage-aggregation.conf | 2 +- scripts/config/storage-schemas.conf | 6 +- scripts/config/systemd/metrictank.service | 4 +- scripts/depends.sh | 2 +- scripts/deploy_docker.sh | 4 +- scripts/package.sh | 8 +-- scripts/tools-to-doc.sh | 2 +- scripts/tools_gitignore.sh | 2 +- stats/config/init.go | 2 +- .../go-metrics20/carbon20/validate.go | 4 +- vendor/vendor.json | 2 +- 170 files changed, 433 insertions(+), 433 deletions(-) diff --git a/README.md b/README.md index d1d46b361d..8950d68b2b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -[![Circle CI](https://circleci.com/gh/raintank/metrictank.svg?style=shield)](https://circleci.com/gh/raintank/metrictank) -[![Go Report Card](https://goreportcard.com/badge/github.com/raintank/metrictank)](https://goreportcard.com/report/github.com/raintank/metrictank) -[![GoDoc](https://godoc.org/github.com/raintank/metrictank?status.svg)](https://godoc.org/github.com/raintank/metrictank) +[![Circle CI](https://circleci.com/gh/grafana/metrictank.svg?style=shield)](https://circleci.com/gh/grafana/metrictank) +[![Go Report Card](https://goreportcard.com/badge/github.com/grafana/metrictank)](https://goreportcard.com/report/github.com/grafana/metrictank) +[![GoDoc](https://godoc.org/github.com/grafana/metrictank?status.svg)](https://godoc.org/github.com/grafana/metrictank) ## introduction @@ -12,26 +12,26 @@ as well as data chunking to lower the load on cassandra. Graphite users are fir ## status -While [raintank](http://raintank.io) has been running metrictank in production since december 2015, there are still plenty of kinks to work out +While [GrafanaLabs](http://grafana.com) has been running metrictank in production since december 2015, there are still plenty of kinks to work out and bugs to fix. It should be considered an *alpha* project. ## limitations * no performance/availability isolation between tenants per instance. (only data isolation) -* clustering is basic: statically defined peers, master promotions are manual, etc. See [clustering](https://github.com/raintank/metrictank/blob/master/docs/clustering.md) for more. +* clustering is basic: statically defined peers, master promotions are manual, etc. See [clustering](https://github.com/grafana/metrictank/blob/master/docs/clustering.md) for more. * minimum computation locality: we move the data from storage to processing code, which is both metrictank and graphite. * the datastructures can use performance engineering. [A Go GC issue may occassionally inflate response times](https://github.com/golang/go/issues/14812). * the native input protocol is inefficient. Should not send all metadata with each point. -* we use metrics2.0 in native input protocol and indexes, but [barely do anything with it yet](https://github.com/raintank/metrictank/blob/master/docs/tags.md). +* we use metrics2.0 in native input protocol and indexes, but [barely do anything with it yet](https://github.com/grafana/metrictank/blob/master/docs/tags.md). * for any series you can't write points that are earlier than previously written points. (unless you restart MT) ## interesting design characteristics (feature or limitation.. up to you) * upgrades / process restarts requires running multiple instances (potentially only for the duration of the maintenance) and re-assigning the primary role. -Otherwise data loss of current chunks will be incurred. See [operations guide](https://github.com/raintank/metrictank/blob/master/docs/operations.md) +Otherwise data loss of current chunks will be incurred. See [operations guide](https://github.com/grafana/metrictank/blob/master/docs/operations.md) * only float64 values. Ints and bools currently stored as floats (works quite well due to the gorilla compression), No text support. -* only uint32 unix timestamps in second resolution. For higher resolution, consider [streaming directly to grafana](https://blog.raintank.io/using-grafana-with-intels-snap-for-ad-hoc-metric-exploration/) +* only uint32 unix timestamps in second resolution. For higher resolution, consider [streaming directly to grafana](https://grafana.com/blog/2016/03/31/using-grafana-with-intels-snap-for-ad-hoc-metric-exploration/) * no data locality: doesn't seem needed yet to put related series together. ## main features @@ -40,7 +40,7 @@ Otherwise data loss of current chunks will be incurred. See [operations guide]( * graphite is a first class citizen. As of graphite-1.0.1, metrictank can be used as a graphite CLUSTER_SERVER. * accurate, flexible rollups by storing min/max/sum/count (which also gives us average). So we can do consolidation (combined runtime+archived) accurately and correctly, -[unlike most other graphite backends like whisper](https://blog.raintank.io/25-graphite-grafana-and-statsd-gotchas/#runtime.consolidation) +[unlike most other graphite backends like whisper](https://grafana.com/blog/2016/03/03/25-graphite-grafana-and-statsd-gotchas/#runtime.consolidation) * metrictank acts as a writeback RAM cache for recent data. * flexible tenancy: can be used as single tenant or multi tenant. Selected data can be shared across all tenants. * input options: carbon, metrics2.0, kafka. (soon: json or msgpack over http) @@ -51,39 +51,39 @@ So we can do consolidation (combined runtime+archived) accurately and correctly, ### installation, configuration and operation. -* [Overview](https://github.com/raintank/metrictank/blob/master/docs/overview.md) -* [Quick start using docker](https://github.com/raintank/metrictank/blob/master/docs/quick-start-docker.md) -* [Installation guides](https://github.com/raintank/metrictank/blob/master/docs/installation.md) -* [Configuration](https://github.com/raintank/metrictank/blob/master/docs/config.md) -* [Memory server](https://github.com/raintank/metrictank/blob/master/docs/memory-server.md) -* [Compression tips](https://github.com/raintank/metrictank/blob/master/docs/compression-tips.md) -* [Cassandra](https://github.com/raintank/metrictank/blob/master/docs/cassandra.md) -* [Kafka](https://github.com/raintank/metrictank/blob/master/docs/kafka.md) -* [Inputs](https://github.com/raintank/metrictank/blob/master/docs/inputs.md) -* [Metrics](https://github.com/raintank/metrictank/blob/master/docs/metrics.md) -* [Operations](https://github.com/raintank/metrictank/blob/master/docs/operations.md) -* [Tools](https://github.com/raintank/metrictank/blob/master/docs/tools.md) +* [Overview](https://github.com/grafana/metrictank/blob/master/docs/overview.md) +* [Quick start using docker](https://github.com/grafana/metrictank/blob/master/docs/quick-start-docker.md) +* [Installation guides](https://github.com/grafana/metrictank/blob/master/docs/installation.md) +* [Configuration](https://github.com/grafana/metrictank/blob/master/docs/config.md) +* [Memory server](https://github.com/grafana/metrictank/blob/master/docs/memory-server.md) +* [Compression tips](https://github.com/grafana/metrictank/blob/master/docs/compression-tips.md) +* [Cassandra](https://github.com/grafana/metrictank/blob/master/docs/cassandra.md) +* [Kafka](https://github.com/grafana/metrictank/blob/master/docs/kafka.md) +* [Inputs](https://github.com/grafana/metrictank/blob/master/docs/inputs.md) +* [Metrics](https://github.com/grafana/metrictank/blob/master/docs/metrics.md) +* [Operations](https://github.com/grafana/metrictank/blob/master/docs/operations.md) +* [Tools](https://github.com/grafana/metrictank/blob/master/docs/tools.md) ### features in-depth -* [Clustering](https://github.com/raintank/metrictank/blob/master/docs/clustering.md) -* [Consolidation](https://github.com/raintank/metrictank/blob/master/docs/consolidation.md) -* [Multi-tenancy](https://github.com/raintank/metrictank/blob/master/docs/multi-tenancy.md) -* [HTTP api](https://github.com/raintank/metrictank/blob/master/docs/http-api.md) -* [Graphite](https://github.com/raintank/metrictank/blob/master/docs/graphite.md) -* [Metadata](https://github.com/raintank/metrictank/blob/master/docs/metadata.md) -* [Tags](https://github.com/raintank/metrictank/blob/master/docs/tags.md) +* [Clustering](https://github.com/grafana/metrictank/blob/master/docs/clustering.md) +* [Consolidation](https://github.com/grafana/metrictank/blob/master/docs/consolidation.md) +* [Multi-tenancy](https://github.com/grafana/metrictank/blob/master/docs/multi-tenancy.md) +* [HTTP api](https://github.com/grafana/metrictank/blob/master/docs/http-api.md) +* [Graphite](https://github.com/grafana/metrictank/blob/master/docs/graphite.md) +* [Metadata](https://github.com/grafana/metrictank/blob/master/docs/metadata.md) +* [Tags](https://github.com/grafana/metrictank/blob/master/docs/tags.md) ### Other -* [Development](https://github.com/raintank/metrictank/blob/master/docs/development.md) -* [Community](https://github.com/raintank/metrictank/blob/master/docs/community.md) -* [Roadmap](https://github.com/raintank/metrictank/blob/master/docs/roadmap.md) -* [Faq](https://github.com/raintank/metrictank/blob/master/docs/faq.md) +* [Development](https://github.com/grafana/metrictank/blob/master/docs/development.md) +* [Community](https://github.com/grafana/metrictank/blob/master/docs/community.md) +* [Roadmap](https://github.com/grafana/metrictank/blob/master/docs/roadmap.md) +* [Faq](https://github.com/grafana/metrictank/blob/master/docs/faq.md) ## Releases and versioning -* [releases and changelog](https://github.com/raintank/metrictank/releases) +* [releases and changelog](https://github.com/grafana/metrictank/releases) * we aim to keep `master` stable and vet code before merging to master * We're pre-1.0 but adopt semver for our `0.MAJOR.MINOR` format. The rules are simple: * MAJOR version for incompatible API or functionality changes diff --git a/api/api.go b/api/api.go index 4f6976c067..8248abc793 100644 --- a/api/api.go +++ b/api/api.go @@ -9,11 +9,11 @@ import ( _ "net/http/pprof" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/cache" + "github.com/grafana/metrictank/stats" opentracing "github.com/opentracing/opentracing-go" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/cache" - "github.com/raintank/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "gopkg.in/macaron.v1" ) diff --git a/api/cluster.go b/api/cluster.go index 725172d2e2..c6a13f9c78 100644 --- a/api/cluster.go +++ b/api/cluster.go @@ -6,10 +6,10 @@ import ( "net/http" "strconv" - "github.com/raintank/metrictank/api/middleware" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/api/response" - "github.com/raintank/metrictank/cluster" + "github.com/grafana/metrictank/api/middleware" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/api/response" + "github.com/grafana/metrictank/cluster" "github.com/raintank/worldping-api/pkg/log" "github.com/tinylib/msgp/msgp" ) diff --git a/api/dataprocessor.go b/api/dataprocessor.go index 097bc03e08..96a2697e20 100644 --- a/api/dataprocessor.go +++ b/api/dataprocessor.go @@ -9,14 +9,14 @@ import ( "sync" "time" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/consolidation" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/chunk" + "github.com/grafana/metrictank/tracing" + "github.com/grafana/metrictank/util" opentracing "github.com/opentracing/opentracing-go" tags "github.com/opentracing/opentracing-go/ext" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/consolidation" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/chunk" - "github.com/raintank/metrictank/tracing" - "github.com/raintank/metrictank/util" "github.com/raintank/worldping-api/pkg/log" "gopkg.in/raintank/schema.v1" ) diff --git a/api/dataprocessor_test.go b/api/dataprocessor_test.go index e24cff3c8e..894e93c14e 100644 --- a/api/dataprocessor_test.go +++ b/api/dataprocessor_test.go @@ -7,15 +7,15 @@ import ( "testing" "time" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/consolidation" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/cache" - "github.com/raintank/metrictank/mdata/cache/accnt" - "github.com/raintank/metrictank/mdata/chunk" - "github.com/raintank/metrictank/test" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/consolidation" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/cache" + "github.com/grafana/metrictank/mdata/cache/accnt" + "github.com/grafana/metrictank/mdata/chunk" + "github.com/grafana/metrictank/test" "gopkg.in/raintank/schema.v1" ) diff --git a/api/graphite.go b/api/graphite.go index 9487710cc6..0a8df94063 100644 --- a/api/graphite.go +++ b/api/graphite.go @@ -11,20 +11,20 @@ import ( macaron "gopkg.in/macaron.v1" + "github.com/grafana/metrictank/api/middleware" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/api/response" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/consolidation" + "github.com/grafana/metrictank/expr" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/stats" + "github.com/grafana/metrictank/tracing" + "github.com/grafana/metrictank/util" opentracing "github.com/opentracing/opentracing-go" tags "github.com/opentracing/opentracing-go/ext" "github.com/raintank/dur" - "github.com/raintank/metrictank/api/middleware" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/api/response" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/consolidation" - "github.com/raintank/metrictank/expr" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/stats" - "github.com/raintank/metrictank/tracing" - "github.com/raintank/metrictank/util" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/api/graphite_proxy.go b/api/graphite_proxy.go index b22d00eb4f..2e07f07f04 100644 --- a/api/graphite_proxy.go +++ b/api/graphite_proxy.go @@ -7,7 +7,7 @@ import ( "net/url" "sync" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/stats" ) var proxyStats graphiteProxyStats diff --git a/api/init.go b/api/init.go index aa22a582ec..32c2b4a416 100644 --- a/api/init.go +++ b/api/init.go @@ -3,7 +3,7 @@ package api import ( "sync" - "github.com/raintank/metrictank/expr" + "github.com/grafana/metrictank/expr" "gopkg.in/raintank/schema.v1" ) diff --git a/api/middleware/cluster.go b/api/middleware/cluster.go index 45db6dc53f..55c7fb9b47 100644 --- a/api/middleware/cluster.go +++ b/api/middleware/cluster.go @@ -1,7 +1,7 @@ package middleware import ( - "github.com/raintank/metrictank/cluster" + "github.com/grafana/metrictank/cluster" macaron "gopkg.in/macaron.v1" ) diff --git a/api/middleware/stats.go b/api/middleware/stats.go index 5bf1b0052f..bfd71c456c 100644 --- a/api/middleware/stats.go +++ b/api/middleware/stats.go @@ -7,7 +7,7 @@ import ( "sync" "time" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/stats" "gopkg.in/macaron.v1" ) diff --git a/api/middleware/tracer.go b/api/middleware/tracer.go index be671ca6cb..4b06d71d0f 100644 --- a/api/middleware/tracer.go +++ b/api/middleware/tracer.go @@ -4,9 +4,9 @@ import ( "errors" "net/http" + "github.com/grafana/metrictank/tracing" opentracing "github.com/opentracing/opentracing-go" "github.com/opentracing/opentracing-go/ext" - "github.com/raintank/metrictank/tracing" "gopkg.in/macaron.v1" ) diff --git a/api/models/cluster.go b/api/models/cluster.go index dc0b08d3e3..125667d8d7 100644 --- a/api/models/cluster.go +++ b/api/models/cluster.go @@ -1,7 +1,7 @@ package models import ( - "github.com/raintank/metrictank/idx" + "github.com/grafana/metrictank/idx" ) //go:generate msgp diff --git a/api/models/cluster_gen.go b/api/models/cluster_gen.go index 130fa04fd3..793010dfb1 100644 --- a/api/models/cluster_gen.go +++ b/api/models/cluster_gen.go @@ -5,7 +5,7 @@ package models // DO NOT EDIT import ( - "github.com/raintank/metrictank/idx" + "github.com/grafana/metrictank/idx" "github.com/tinylib/msgp/msgp" ) @@ -167,7 +167,7 @@ func (z *IndexFindResp) DecodeMsg(dc *msgp.Reader) (err error) { if z.Nodes == nil && zlqf > 0 { z.Nodes = make(map[string][]idx.Node, zlqf) } else if len(z.Nodes) > 0 { - for key, _ := range z.Nodes { + for key := range z.Nodes { delete(z.Nodes, key) } } @@ -283,7 +283,7 @@ func (z *IndexFindResp) UnmarshalMsg(bts []byte) (o []byte, err error) { if z.Nodes == nil && zjfb > 0 { z.Nodes = make(map[string][]idx.Node, zjfb) } else if len(z.Nodes) > 0 { - for key, _ := range z.Nodes { + for key := range z.Nodes { delete(z.Nodes, key) } } diff --git a/api/models/graphite.go b/api/models/graphite.go index 0f2daa4f01..5031985283 100644 --- a/api/models/graphite.go +++ b/api/models/graphite.go @@ -6,8 +6,8 @@ import ( "strconv" "github.com/go-macaron/binding" + "github.com/grafana/metrictank/idx" pickle "github.com/kisielk/og-rek" - "github.com/raintank/metrictank/idx" "gopkg.in/macaron.v1" ) diff --git a/api/models/graphite_test.go b/api/models/graphite_test.go index 5f3341ac81..286272b438 100644 --- a/api/models/graphite_test.go +++ b/api/models/graphite_test.go @@ -4,7 +4,7 @@ import ( "encoding/json" "testing" - "github.com/raintank/metrictank/idx" + "github.com/grafana/metrictank/idx" ) func TestGraphiteNames(t *testing.T) { diff --git a/api/models/node.go b/api/models/node.go index b69535a161..6a344a9c46 100644 --- a/api/models/node.go +++ b/api/models/node.go @@ -1,8 +1,8 @@ package models import ( + "github.com/grafana/metrictank/cluster" opentracing "github.com/opentracing/opentracing-go" - "github.com/raintank/metrictank/cluster" ) type NodeStatus struct { diff --git a/api/models/request.go b/api/models/request.go index d546e4ac92..7a125076d0 100644 --- a/api/models/request.go +++ b/api/models/request.go @@ -3,11 +3,11 @@ package models import ( "fmt" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/consolidation" + "github.com/grafana/metrictank/util" opentracing "github.com/opentracing/opentracing-go" "github.com/opentracing/opentracing-go/log" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/consolidation" - "github.com/raintank/metrictank/util" ) type Req struct { diff --git a/api/models/series.go b/api/models/series.go index d915905423..9ba4e6a7dc 100644 --- a/api/models/series.go +++ b/api/models/series.go @@ -5,8 +5,8 @@ import ( "math" "strconv" + "github.com/grafana/metrictank/consolidation" pickle "github.com/kisielk/og-rek" - "github.com/raintank/metrictank/consolidation" "gopkg.in/raintank/schema.v1" ) diff --git a/api/query_engine.go b/api/query_engine.go index b84677d185..d366fa3201 100644 --- a/api/query_engine.go +++ b/api/query_engine.go @@ -3,11 +3,11 @@ package api import ( "math" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/api/response" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/stats" - "github.com/raintank/metrictank/util" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/api/response" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/stats" + "github.com/grafana/metrictank/util" ) var ( diff --git a/api/query_engine_test.go b/api/query_engine_test.go index e0d0e9213a..01b2f4ff17 100644 --- a/api/query_engine_test.go +++ b/api/query_engine_test.go @@ -4,10 +4,10 @@ import ( "regexp" "testing" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/consolidation" - "github.com/raintank/metrictank/mdata" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/consolidation" + "github.com/grafana/metrictank/mdata" ) // testAlign verifies the aligment of the given requests, given the retentions (one or more patterns, one or more retentions each) diff --git a/api/response/fast_json_test.go b/api/response/fast_json_test.go index 6fad1e85a7..52d1b9667f 100644 --- a/api/response/fast_json_test.go +++ b/api/response/fast_json_test.go @@ -6,8 +6,8 @@ import ( "net/http/httptest" "testing" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/idx" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/idx" "gopkg.in/raintank/schema.v1" ) diff --git a/api/response/json_test.go b/api/response/json_test.go index 8e38b2fcb6..5d79de4cff 100644 --- a/api/response/json_test.go +++ b/api/response/json_test.go @@ -6,8 +6,8 @@ import ( "net/http/httptest" "testing" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/idx" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/idx" "gopkg.in/raintank/schema.v1" ) diff --git a/api/response/msgp_test.go b/api/response/msgp_test.go index 100e5fa35b..66841da206 100644 --- a/api/response/msgp_test.go +++ b/api/response/msgp_test.go @@ -4,7 +4,7 @@ import ( "math" "testing" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/api/response/pickle_test.go b/api/response/pickle_test.go index 6e2fa3a598..f05256f522 100644 --- a/api/response/pickle_test.go +++ b/api/response/pickle_test.go @@ -4,7 +4,7 @@ import ( "math" "testing" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/api/response/response.go b/api/response/response.go index 2fb02dbaf4..001ce59dd6 100644 --- a/api/response/response.go +++ b/api/response/response.go @@ -4,7 +4,7 @@ import ( "errors" "net/http" - "github.com/raintank/metrictank/util" + "github.com/grafana/metrictank/util" ) var ErrMetricNotFound = errors.New("metric not found") diff --git a/api/response/response_test.go b/api/response/response_test.go index ec1ec5cfdb..9e4f65ee8c 100644 --- a/api/response/response_test.go +++ b/api/response/response_test.go @@ -1,7 +1,7 @@ package response import ( - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/api/routes.go b/api/routes.go index 66b8036c7f..dadc0346ff 100644 --- a/api/routes.go +++ b/api/routes.go @@ -2,9 +2,9 @@ package api import ( "github.com/go-macaron/binding" + "github.com/grafana/metrictank/api/middleware" + "github.com/grafana/metrictank/api/models" "github.com/raintank/gziper" - "github.com/raintank/metrictank/api/middleware" - "github.com/raintank/metrictank/api/models" "gopkg.in/macaron.v1" ) diff --git a/cassandra/metrics.go b/cassandra/metrics.go index 7a03e3fd61..d4d9ce02fd 100644 --- a/cassandra/metrics.go +++ b/cassandra/metrics.go @@ -5,7 +5,7 @@ import ( "strings" "github.com/gocql/gocql" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/stats" ) type ErrMetrics struct { diff --git a/circle.yml b/circle.yml index 647341dcd3..b95c299b9a 100644 --- a/circle.yml +++ b/circle.yml @@ -5,7 +5,7 @@ machine: - docker environment: GOPATH: "/home/ubuntu/.go_workspace" - IMPORTPATH: "/home/ubuntu/.go_workspace/src/github.com/raintank/metrictank" + IMPORTPATH: "/home/ubuntu/.go_workspace/src/github.com/grafana/metrictank" GODIST: "go1.9.linux-amd64.tar.gz" post: - mkdir -p download diff --git a/cluster/manager.go b/cluster/manager.go index b7191f5dd3..96e461bff7 100644 --- a/cluster/manager.go +++ b/cluster/manager.go @@ -8,8 +8,8 @@ import ( "sync" "time" + "github.com/grafana/metrictank/stats" "github.com/hashicorp/memberlist" - "github.com/raintank/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/cluster/node.go b/cluster/node.go index 5266113edb..42b90e06ad 100644 --- a/cluster/node.go +++ b/cluster/node.go @@ -10,9 +10,9 @@ import ( "time" "github.com/google/go-querystring/query" + "github.com/grafana/metrictank/tracing" opentracing "github.com/opentracing/opentracing-go" tags "github.com/opentracing/opentracing-go/ext" - "github.com/raintank/metrictank/tracing" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/cmd/mt-aggs-explain/main.go b/cmd/mt-aggs-explain/main.go index 7ac5a0328d..f5890cfb93 100644 --- a/cmd/mt-aggs-explain/main.go +++ b/cmd/mt-aggs-explain/main.go @@ -7,8 +7,8 @@ import ( "runtime" log "github.com/Sirupsen/logrus" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/consolidation" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/consolidation" ) var ( diff --git a/cmd/mt-explain/main.go b/cmd/mt-explain/main.go index c5e41a2f2b..95aeaab176 100644 --- a/cmd/mt-explain/main.go +++ b/cmd/mt-explain/main.go @@ -7,8 +7,8 @@ import ( "os" "time" + "github.com/grafana/metrictank/expr" "github.com/raintank/dur" - "github.com/raintank/metrictank/expr" ) func main() { diff --git a/cmd/mt-index-cat/main.go b/cmd/mt-index-cat/main.go index bde068d560..9e84051d3f 100644 --- a/cmd/mt-index-cat/main.go +++ b/cmd/mt-index-cat/main.go @@ -9,9 +9,9 @@ import ( "strings" "time" + "github.com/grafana/metrictank/cmd/mt-index-cat/out" + "github.com/grafana/metrictank/idx/cassandra" "github.com/raintank/dur" - "github.com/raintank/metrictank/cmd/mt-index-cat/out" - "github.com/raintank/metrictank/idx/cassandra" "gopkg.in/raintank/schema.v1" ) diff --git a/cmd/mt-index-migrate-06-to-07/main.go b/cmd/mt-index-migrate-06-to-07/main.go index db87751921..9f0b3bc098 100644 --- a/cmd/mt-index-migrate-06-to-07/main.go +++ b/cmd/mt-index-migrate-06-to-07/main.go @@ -8,8 +8,8 @@ import ( "time" "github.com/gocql/gocql" - part "github.com/raintank/metrictank/cluster/partitioner" - "github.com/raintank/metrictank/idx/cassandra" + part "github.com/grafana/metrictank/cluster/partitioner" + "github.com/grafana/metrictank/idx/cassandra" "github.com/raintank/worldping-api/pkg/log" "gopkg.in/raintank/schema.v1" ) diff --git a/cmd/mt-index-migrate/main.go b/cmd/mt-index-migrate/main.go index 17d1dae12c..d265a8a9e4 100644 --- a/cmd/mt-index-migrate/main.go +++ b/cmd/mt-index-migrate/main.go @@ -8,8 +8,8 @@ import ( "time" "github.com/gocql/gocql" - "github.com/raintank/metrictank/cluster/partitioner" - "github.com/raintank/metrictank/idx/cassandra" + "github.com/grafana/metrictank/cluster/partitioner" + "github.com/grafana/metrictank/idx/cassandra" "github.com/raintank/worldping-api/pkg/log" "gopkg.in/raintank/schema.v1" ) diff --git a/cmd/mt-kafka-mdm-sniff-out-of-order/main.go b/cmd/mt-kafka-mdm-sniff-out-of-order/main.go index b5a564a4cd..4c04b8b9d4 100644 --- a/cmd/mt-kafka-mdm-sniff-out-of-order/main.go +++ b/cmd/mt-kafka-mdm-sniff-out-of-order/main.go @@ -13,8 +13,8 @@ import ( "text/template" "time" - inKafkaMdm "github.com/raintank/metrictank/input/kafkamdm" - "github.com/raintank/metrictank/stats" + inKafkaMdm "github.com/grafana/metrictank/input/kafkamdm" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" "gopkg.in/raintank/schema.v1" diff --git a/cmd/mt-kafka-mdm-sniff/main.go b/cmd/mt-kafka-mdm-sniff/main.go index 887f9c6057..610aff10bb 100644 --- a/cmd/mt-kafka-mdm-sniff/main.go +++ b/cmd/mt-kafka-mdm-sniff/main.go @@ -12,8 +12,8 @@ import ( "syscall" "text/template" - inKafkaMdm "github.com/raintank/metrictank/input/kafkamdm" - "github.com/raintank/metrictank/stats" + inKafkaMdm "github.com/grafana/metrictank/input/kafkamdm" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" "gopkg.in/raintank/schema.v1" diff --git a/cmd/mt-replicator-via-tsdb/main.go b/cmd/mt-replicator-via-tsdb/main.go index 848f67d50a..21f10f7f51 100644 --- a/cmd/mt-replicator-via-tsdb/main.go +++ b/cmd/mt-replicator-via-tsdb/main.go @@ -12,9 +12,9 @@ import ( "github.com/Shopify/sarama" - "github.com/raintank/metrictank/cluster" - inKafkaMdm "github.com/raintank/metrictank/input/kafkamdm" - statsConfig "github.com/raintank/metrictank/stats/config" + "github.com/grafana/metrictank/cluster" + inKafkaMdm "github.com/grafana/metrictank/input/kafkamdm" + statsConfig "github.com/grafana/metrictank/stats/config" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" ) diff --git a/cmd/mt-replicator-via-tsdb/metrics.go b/cmd/mt-replicator-via-tsdb/metrics.go index e1e9ed1ad7..355bb95770 100644 --- a/cmd/mt-replicator-via-tsdb/metrics.go +++ b/cmd/mt-replicator-via-tsdb/metrics.go @@ -8,9 +8,9 @@ import ( "time" "github.com/golang/snappy" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/stats" "github.com/jpillora/backoff" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "gopkg.in/raintank/schema.v1" "gopkg.in/raintank/schema.v1/msg" diff --git a/cmd/mt-replicator/metrics.go b/cmd/mt-replicator/metrics.go index 8eef949ad2..80ed421e6e 100644 --- a/cmd/mt-replicator/metrics.go +++ b/cmd/mt-replicator/metrics.go @@ -5,7 +5,7 @@ import ( "github.com/Shopify/sarama" "github.com/bsm/sarama-cluster" - "github.com/raintank/metrictank/cluster/partitioner" + "github.com/grafana/metrictank/cluster/partitioner" "github.com/raintank/worldping-api/pkg/log" "gopkg.in/raintank/schema.v1" ) diff --git a/cmd/mt-schemas-explain/main.go b/cmd/mt-schemas-explain/main.go index 32af24723a..b7bf41a4ba 100644 --- a/cmd/mt-schemas-explain/main.go +++ b/cmd/mt-schemas-explain/main.go @@ -8,8 +8,8 @@ import ( "time" log "github.com/Sirupsen/logrus" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/mdata" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/mdata" ) var ( diff --git a/cmd/mt-split-metrics-by-ttl/main.go b/cmd/mt-split-metrics-by-ttl/main.go index 71b07b64b2..9f783bada6 100644 --- a/cmd/mt-split-metrics-by-ttl/main.go +++ b/cmd/mt-split-metrics-by-ttl/main.go @@ -8,8 +8,8 @@ import ( "path" "strings" + "github.com/grafana/metrictank/mdata" "github.com/raintank/dur" - "github.com/raintank/metrictank/mdata" ) var ( diff --git a/cmd/mt-store-cat/full.go b/cmd/mt-store-cat/full.go index 6f54e3cbd8..6ae272a2d0 100644 --- a/cmd/mt-store-cat/full.go +++ b/cmd/mt-store-cat/full.go @@ -6,7 +6,7 @@ import ( "strings" "time" - "github.com/raintank/metrictank/mdata" + "github.com/grafana/metrictank/mdata" ) func chunkSummary(store *mdata.CassandraStore, tables []string, metrics []Metric, keyspace, groupTTL string) error { diff --git a/cmd/mt-store-cat/main.go b/cmd/mt-store-cat/main.go index 594b3a62d0..8bca5b74e1 100644 --- a/cmd/mt-store-cat/main.go +++ b/cmd/mt-store-cat/main.go @@ -10,8 +10,8 @@ import ( log "github.com/Sirupsen/logrus" + "github.com/grafana/metrictank/mdata" "github.com/raintank/dur" - "github.com/raintank/metrictank/mdata" "github.com/rakyll/globalconf" ) diff --git a/cmd/mt-store-cat/metrics.go b/cmd/mt-store-cat/metrics.go index 595b2ed8b6..611ff5cf91 100644 --- a/cmd/mt-store-cat/metrics.go +++ b/cmd/mt-store-cat/metrics.go @@ -5,7 +5,7 @@ import ( "sort" "strings" - "github.com/raintank/metrictank/mdata" + "github.com/grafana/metrictank/mdata" ) type Metric struct { diff --git a/cmd/mt-store-cat/series.go b/cmd/mt-store-cat/series.go index a17ab3b364..4dc93f0d10 100644 --- a/cmd/mt-store-cat/series.go +++ b/cmd/mt-store-cat/series.go @@ -7,9 +7,9 @@ import ( "os" "time" - "github.com/raintank/metrictank/api" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/api" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/chunk" "gopkg.in/raintank/schema.v1" ) diff --git a/cmd/mt-store-cat/tables.go b/cmd/mt-store-cat/tables.go index df5fb65512..9c4aa501b1 100644 --- a/cmd/mt-store-cat/tables.go +++ b/cmd/mt-store-cat/tables.go @@ -6,7 +6,7 @@ import ( "strconv" "strings" - "github.com/raintank/metrictank/mdata" + "github.com/grafana/metrictank/mdata" ) type TablesByTTL []string diff --git a/cmd/mt-view-boundaries/main.go b/cmd/mt-view-boundaries/main.go index 40099cd2b3..5f602c6757 100644 --- a/cmd/mt-view-boundaries/main.go +++ b/cmd/mt-view-boundaries/main.go @@ -7,9 +7,9 @@ import ( "runtime" "time" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/chunk" "github.com/raintank/dur" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/chunk" ) var ( @@ -60,7 +60,7 @@ func main() { span := dur.MustParseNDuration("span", *spanStr) _, ok := chunk.RevChunkSpans[span] if !ok { - log.Fatal(4, "chunkSpan %s is not a valid value (https://github.com/raintank/metrictank/blob/master/docs/data-knobs.md#valid-chunk-spans)", *spanStr) + log.Fatal(4, "chunkSpan %s is not a valid value (https://github.com/grafana/metrictank/blob/master/docs/data-knobs.md#valid-chunk-spans)", *spanStr) } fmt.Println() display(int64(span), "specified span") diff --git a/cmd/mt-whisper-importer-reader/conversion.go b/cmd/mt-whisper-importer-reader/conversion.go index c24b65766a..717b5c0ee1 100644 --- a/cmd/mt-whisper-importer-reader/conversion.go +++ b/cmd/mt-whisper-importer-reader/conversion.go @@ -1,8 +1,8 @@ package main import ( + "github.com/grafana/metrictank/mdata" "github.com/kisielk/whisper-go/whisper" - "github.com/raintank/metrictank/mdata" ) type conversion struct { diff --git a/cmd/mt-whisper-importer-reader/main.go b/cmd/mt-whisper-importer-reader/main.go index 7a4beaf3bb..3333d1b204 100644 --- a/cmd/mt-whisper-importer-reader/main.go +++ b/cmd/mt-whisper-importer-reader/main.go @@ -19,11 +19,11 @@ import ( "time" log "github.com/Sirupsen/logrus" + "github.com/grafana/metrictank/api" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk/archive" "github.com/kisielk/whisper-go/whisper" - "github.com/raintank/metrictank/api" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/mdata/chunk" - "github.com/raintank/metrictank/mdata/chunk/archive" "gopkg.in/raintank/schema.v1" ) @@ -321,7 +321,7 @@ func encodedChunksFromPoints(points []whisper.Point, intervalIn, chunkSpan uint3 for _, point = range points { // this shouldn't happen, but if it would we better catch it here because Metrictank wouldn't handle it well: - // https://github.com/raintank/metrictank/blob/f1868cccfb92fc82cd853914af958f6d187c5f74/mdata/aggmetric.go#L378 + // https://github.com/grafana/metrictank/blob/f1868cccfb92fc82cd853914af958f6d187c5f74/mdata/aggmetric.go#L378 if point.Timestamp == 0 { continue } diff --git a/cmd/mt-whisper-importer-writer/main.go b/cmd/mt-whisper-importer-writer/main.go index 336cff3861..e0a9866a17 100644 --- a/cmd/mt-whisper-importer-writer/main.go +++ b/cmd/mt-whisper-importer-writer/main.go @@ -12,14 +12,14 @@ import ( log "github.com/Sirupsen/logrus" "github.com/gocql/gocql" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/cluster/partitioner" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/idx/cassandra" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk/archive" "github.com/raintank/dur" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/cluster/partitioner" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/idx/cassandra" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/chunk" - "github.com/raintank/metrictank/mdata/chunk/archive" ) var ( diff --git a/conf/retention.go b/conf/retention.go index 544ef62611..6485d5c3b3 100644 --- a/conf/retention.go +++ b/conf/retention.go @@ -6,8 +6,8 @@ import ( "strconv" "strings" + "github.com/grafana/metrictank/mdata/chunk" "github.com/raintank/dur" - "github.com/raintank/metrictank/mdata/chunk" ) const Month_sec = 60 * 60 * 24 * 28 @@ -118,7 +118,7 @@ func ParseRetentions(defs string) (Retentions, error) { } _, ok := chunk.RevChunkSpans[retention.ChunkSpan] if !ok { - return nil, fmt.Errorf("chunkSpan %s is not a valid value (https://github.com/raintank/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans)", parts[2]) + return nil, fmt.Errorf("chunkSpan %s is not a valid value (https://github.com/grafana/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans)", parts[2]) } } else { // default to a valid chunkspan that can hold at least 100 points, or select the largest one otherwise. diff --git a/conf/schemas.go b/conf/schemas.go index b458b2fbad..50016c50f0 100644 --- a/conf/schemas.go +++ b/conf/schemas.go @@ -8,7 +8,7 @@ import ( "strings" "github.com/alyu/configparser" - "github.com/raintank/metrictank/util" + "github.com/grafana/metrictank/util" ) // Schemas contains schema settings diff --git a/consolidation/consolidate_test.go b/consolidation/consolidate_test.go index 1bf8b075f7..eb18e5f2fe 100644 --- a/consolidation/consolidate_test.go +++ b/consolidation/consolidate_test.go @@ -3,7 +3,7 @@ package consolidation import ( "testing" - "github.com/raintank/metrictank/test" + "github.com/grafana/metrictank/test" "gopkg.in/raintank/schema.v1" ) diff --git a/consolidation/consolidation.go b/consolidation/consolidation.go index 4c94adac11..9b00a2e7ed 100644 --- a/consolidation/consolidation.go +++ b/consolidation/consolidation.go @@ -5,7 +5,7 @@ import ( "errors" "fmt" - "github.com/raintank/metrictank/batch" + "github.com/grafana/metrictank/batch" ) // consolidator is a highlevel description of a point consolidation method diff --git a/contrib/maintenance-es-index.sh b/contrib/maintenance-es-index.sh index 4539300fdb..e9c401e3e4 100644 --- a/contrib/maintenance-es-index.sh +++ b/contrib/maintenance-es-index.sh @@ -1,5 +1,5 @@ # this file contains some bash functions which come in handy when maintaining an ES metadata index -# (which is deprecated, but anyway. see https://github.com/raintank/metrictank/blob/master/docs/metadata.md ) +# (which is deprecated, but anyway. see https://github.com/grafana/metrictank/blob/master/docs/metadata.md ) # # first source this file: # source maintenance-es-index.sh diff --git a/docker/docker-cluster/docker-compose.yml b/docker/docker-cluster/docker-compose.yml index 67908d5c2e..eebadf0a5e 100644 --- a/docker/docker-cluster/docker-compose.yml +++ b/docker/docker-cluster/docker-compose.yml @@ -3,7 +3,7 @@ version: '2' services: metrictank0: hostname: metrictank0 - image: raintank/metrictank + image: grafana/metrictank ports: - "6060:6060" volumes: @@ -26,7 +26,7 @@ services: metrictank1: hostname: metrictank1 - image: raintank/metrictank + image: grafana/metrictank ports: - "6061:6060" volumes: @@ -49,7 +49,7 @@ services: metrictank2: hostname: metrictank2 - image: raintank/metrictank + image: grafana/metrictank ports: - "6062:6060" volumes: @@ -72,7 +72,7 @@ services: metrictank3: hostname: metrictank3 - image: raintank/metrictank + image: grafana/metrictank ports: - "6063:6060" volumes: diff --git a/docker/docker-cluster/metrictank.ini b/docker/docker-cluster/metrictank.ini index f340743172..b11920d120 100644 --- a/docker/docker-cluster/metrictank.ini +++ b/docker/docker-cluster/metrictank.ini @@ -5,7 +5,7 @@ instance = default ## data ## -# see https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # forego persisting of first received (and typically incomplete) chunk drop-first-chunk = false @@ -23,7 +23,7 @@ warm-up-period = 1s ## metric data storage in cassandra ## -# see https://github.com/raintank/metrictank/blob/master/docs/cassandra.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/cassandra.md for more details # comma-separated list of hostnames to connect to cassandra-addrs = cassandra:9042 # keyspace to use for storing the metric data table diff --git a/docker/docker-cluster/storage-schemas.conf b/docker/docker-cluster/storage-schemas.conf index 759ee61eb4..b890cdd231 100644 --- a/docker/docker-cluster/storage-schemas.conf +++ b/docker/docker-cluster/storage-schemas.conf @@ -27,14 +27,14 @@ #y - year # # The final 3 fields are specific to metrictank and if unspecified, use sane defaults. -# See https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# See https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # # chunkspan: duration of chunks. e.g. 10min, 30min, 1h, 90min... -# must be valid value as described here https://github.com/raintank/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans +# must be valid value as described here https://github.com/grafana/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans # Defaults to a the smallest chunkspan that can hold at least 100 points. # # numchunks: number of raw chunks to keep in in-memory ring buffer -# See https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for details and trade-offs, especially when compared to chunk-cache +# See https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for details and trade-offs, especially when compared to chunk-cache # which may be a more effective method to cache data and alleviate workload for cassandra. # Defaults to 2 # diff --git a/docker/docker-dev-custom-cfg-kafka/docker-compose.yml b/docker/docker-dev-custom-cfg-kafka/docker-compose.yml index d32882d147..599d5c8468 100644 --- a/docker/docker-dev-custom-cfg-kafka/docker-compose.yml +++ b/docker/docker-dev-custom-cfg-kafka/docker-compose.yml @@ -3,7 +3,7 @@ version: '2' services: metrictank: hostname: metrictank - image: raintank/metrictank + image: grafana/metrictank ports: - "6060:6060" - "2003:2003" diff --git a/docker/docker-dev-custom-cfg-kafka/metrictank.ini b/docker/docker-dev-custom-cfg-kafka/metrictank.ini index dcdf9cedf3..73c16609c2 100644 --- a/docker/docker-dev-custom-cfg-kafka/metrictank.ini +++ b/docker/docker-dev-custom-cfg-kafka/metrictank.ini @@ -5,7 +5,7 @@ instance = default ## data ## -# see https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # forego persisting of first received (and typically incomplete) chunk drop-first-chunk = false @@ -23,7 +23,7 @@ warm-up-period = 1h ## metric data storage in cassandra ## -# see https://github.com/raintank/metrictank/blob/master/docs/cassandra.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/cassandra.md for more details # comma-separated list of hostnames to connect to cassandra-addrs = cassandra:9042 # keyspace to use for storing the metric data table diff --git a/docker/docker-dev-custom-cfg-kafka/storage-aggregation.conf b/docker/docker-dev-custom-cfg-kafka/storage-aggregation.conf index 804e096218..ba13dc0d85 100644 --- a/docker/docker-dev-custom-cfg-kafka/storage-aggregation.conf +++ b/docker/docker-dev-custom-cfg-kafka/storage-aggregation.conf @@ -9,7 +9,7 @@ # When using multiple, the first one is used for reading. In the future, we will add capabilities to select the different archives for reading. # * the settings configured when metrictank starts are what is applied. So you can enable or disable archives by restarting metrictank. # -# see https://github.com/raintank/metrictank/blob/master/docs/consolidation.md for related info. +# see https://github.com/grafana/metrictank/blob/master/docs/consolidation.md for related info. [default] pattern = .* diff --git a/docker/docker-dev-custom-cfg-kafka/storage-schemas.conf b/docker/docker-dev-custom-cfg-kafka/storage-schemas.conf index ccd6eb803d..9925d4d64e 100644 --- a/docker/docker-dev-custom-cfg-kafka/storage-schemas.conf +++ b/docker/docker-dev-custom-cfg-kafka/storage-schemas.conf @@ -27,14 +27,14 @@ #y - year # # The final 3 fields are specific to metrictank and if unspecified, use sane defaults. -# See https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# See https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # # chunkspan: duration of chunks. e.g. 10min, 30min, 1h, 90min... -# must be valid value as described here https://github.com/raintank/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans +# must be valid value as described here https://github.com/grafana/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans # Defaults to a the smallest chunkspan that can hold at least 100 points. # # numchunks: number of raw chunks to keep in in-memory ring buffer -# See https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for details and trade-offs, especially when compared to chunk-cache +# See https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for details and trade-offs, especially when compared to chunk-cache # which may be a more effective method to cache data and alleviate workload for cassandra. # Defaults to 2 # diff --git a/docker/docker-dev/docker-compose.yml b/docker/docker-dev/docker-compose.yml index a8a6b7063a..a356c12798 100644 --- a/docker/docker-dev/docker-compose.yml +++ b/docker/docker-dev/docker-compose.yml @@ -3,7 +3,7 @@ version: '2' services: metrictank: hostname: metrictank - image: raintank/metrictank + image: grafana/metrictank ports: - "6060:6060" - "2003:2003" diff --git a/docker/docker-standard/docker-compose.yml b/docker/docker-standard/docker-compose.yml index 0d87e5ceea..91443b81f2 100644 --- a/docker/docker-standard/docker-compose.yml +++ b/docker/docker-standard/docker-compose.yml @@ -3,7 +3,7 @@ version: '2' services: metrictank: hostname: metrictank - image: raintank/metrictank + image: grafana/metrictank ports: - "6060:6060" - "2003:2003" diff --git a/docs/cassandra.md b/docs/cassandra.md index 897a984219..f7a5df83e2 100644 --- a/docs/cassandra.md +++ b/docs/cassandra.md @@ -31,7 +31,7 @@ CREATE TABLE IF NOT EXISTS metrictank.metric ( AND compression = {'sstable_compression': 'org.apache.cassandra.io.compress.LZ4Compressor'} ``` -If you are using the [cassandra-idx](https://github.com/raintank/metrictank/blob/master/docs/metadata.md) (Cassandra backed storage for the MetricDefinitions index), the following table will also be created. +If you are using the [cassandra-idx](https://github.com/grafana/metrictank/blob/master/docs/metadata.md) (Cassandra backed storage for the MetricDefinitions index), the following table will also be created. ``` CREATE TABLE IF NOT EXISTS metrictank.metric_idx ( @@ -89,7 +89,7 @@ You may also need to lower the cql-protocol-version value in the config to 3 or ## Data persistence saving of chunks is initiated whenever the current time reaches a timestamp that divides without remainder by a chunkspan. -Raw data has a certain chunkspan, and aggregated (rollup data) has chunkspans too (see [config](https://github.com/raintank/metrictank/blob/master/docs/config.md#data)) which is +Raw data has a certain chunkspan, and aggregated (rollup data) has chunkspans too (see [config](https://github.com/grafana/metrictank/blob/master/docs/config.md#data)) which is why periodically e.g. on the hour and on every 6th our you'll see a burst in chunks being added to the write queue. The write queue is then gradually drained by the persistence workers. @@ -100,7 +100,7 @@ Tuning the write queue is a bit tricky for now. Basically you have to make sure that `number of concurrent writers` times `write queue size` is enough to queue up all chunk writes that may occur at any given time. Chunk writes that may occur at any given time is usually `number of unique series you have` times (`number of rollups` * 4 + 1) There's also an upper bound for how large these queues can get. -See [this ticket](https://github.com/raintank/metrictank/issues/125) for more information and discussion. +See [this ticket](https://github.com/grafana/metrictank/issues/125) for more information and discussion. The advent of the new kafka input will probably resolve a lot of the constraints. Both for the lower and upper bound. diff --git a/docs/clustering.md b/docs/clustering.md index 1204d6c76f..6bbd13d612 100644 --- a/docs/clustering.md +++ b/docs/clustering.md @@ -29,8 +29,8 @@ One of the instances needs to have the primary role, which means it saves data c Configuration of primary vs secondary: -* statically in the [cluster section of the config](https://github.com/raintank/metrictank/blob/master/docs/config.md#clustering) for each instance. -* dynamically (see [http api docs](https://github.com/raintank/metrictank/blob/master/docs/http-api.md)) should your primary crash or you want to shut it down. +* statically in the [cluster section of the config](https://github.com/grafana/metrictank/blob/master/docs/config.md#clustering) for each instance. +* dynamically (see [http api docs](https://github.com/grafana/metrictank/blob/master/docs/http-api.md)) should your primary crash or you want to shut it down. ### Clustering transport and synchronisation @@ -38,13 +38,13 @@ The primary sends out persistence messages when it saves chunks to Cassandra. T If you want to be able to promote secondaries to primaries, it's important they have been ingesting and processing these messages, so that the moment they become primary, they don't start saving all the chunks it has in memory, which could be a significant sudden load on Cassandra. -Metrictank supports 2 transports for clustering (kafka and NSQ), configured in the [clustering transports section in the config](https://github.com/raintank/metrictank/blob/master/docs/config.md#clustering-transports) +Metrictank supports 2 transports for clustering (kafka and NSQ), configured in the [clustering transports section in the config](https://github.com/grafana/metrictank/blob/master/docs/config.md#clustering-transports) Instances should not become primary when they have incomplete chunks (though in worst case scenario, you might have to do just that). So they expose metrics that describe when they are ready to be upgraded. Notes: * all instances receive the same data and have a full copy in this case. -* primary role controls who writes *data* chunks to cassandra. *metadata* is updated by all instances independently and redundantly, see [metadata](https://github.com/raintank/metrictank/blob/master/docs/metadata.md). +* primary role controls who writes *data* chunks to cassandra. *metadata* is updated by all instances independently and redundantly, see [metadata](https://github.com/grafana/metrictank/blob/master/docs/metadata.md). ### Promoting a secondary to primary @@ -54,7 +54,7 @@ This procedure needs to be done carefully: 1) assure there is no primary running. Demote the primary to secondary if it's running. Make sure all the persistence messages made it through the clustering transport into the candidate. Synchronisation over the transport is usually near-instant so waiting a few seconds is usually fine. But if you want to be careful, assure that the primary stopped sending persistence messages (via the dashboard), and verify that the candidate caught up with the transport (by monitoring the consumption delay from the transport). -2) pick a node that has `cluster.promotion_wait` at zero. This means the instance has been consuming data long enough to have full data for all the recent chunks that will have to be saved - assuming the primary was able to persist its older chunks to Cassandra. If that's not the case, just pick the instance that has been consuming data the longest or has a full working set in RAM (e.g. has been for longer than [`chunkspan * numchunks`](https://github.com/raintank/metrictank/blob/master/docs/config.md#data). (note: when a metrictank process starts, it first does a few maintenance tasks before data consumption starts, such as filling its index when needed) +2) pick a node that has `cluster.promotion_wait` at zero. This means the instance has been consuming data long enough to have full data for all the recent chunks that will have to be saved - assuming the primary was able to persist its older chunks to Cassandra. If that's not the case, just pick the instance that has been consuming data the longest or has a full working set in RAM (e.g. has been for longer than [`chunkspan * numchunks`](https://github.com/grafana/metrictank/blob/master/docs/config.md#data). (note: when a metrictank process starts, it first does a few maintenance tasks before data consumption starts, such as filling its index when needed) The `cluster.promotion_wait` is automatically determined based on the largest chunkSpan (typically your coarsest aggregation) and the current time. From which an instance can derive when it's ready. 3) open the Grafana dashboard and verify that the secondary is able to save chunks diff --git a/docs/community.md b/docs/community.md index db5f898480..4ce199b173 100644 --- a/docs/community.md +++ b/docs/community.md @@ -1,6 +1,6 @@ # Community -* We have a [community slack: raintank.slack.com](https://raintank.slack.com). +* We have a [community slack: grafana.slack.com](https://grafana.slack.com). It has a `#metrictank` room (as well a room for all of our products, like grafana) [Get your invite](http://slack.raintank.io/). diff --git a/docs/config.md b/docs/config.md index e5c0cac048..4f6cfa07b4 100644 --- a/docs/config.md +++ b/docs/config.md @@ -1,8 +1,8 @@ # Config -Metrictank comes with an [example main config file](https://github.com/raintank/metrictank/blob/master/metrictank-sample.ini), -a [storage-schemas.conf file](https://github.com/raintank/metrictank/blob/master/scripts/config/storage-schemas.conf) and -a [storage-aggregation.conf file](https://github.com/raintank/metrictank/blob/master/scripts/config/storage-aggregation.conf) +Metrictank comes with an [example main config file](https://github.com/grafana/metrictank/blob/master/metrictank-sample.ini), +a [storage-schemas.conf file](https://github.com/grafana/metrictank/blob/master/scripts/config/storage-schemas.conf) and +a [storage-aggregation.conf file](https://github.com/grafana/metrictank/blob/master/scripts/config/storage-aggregation.conf) The files themselves are well documented, but for your convenience, they are replicated below. @@ -36,7 +36,7 @@ instance = default ## data ## ``` -# see https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # forego persisting of first received (and typically incomplete) chunk drop-first-chunk = false # max age for a chunk before to be considered stale and to be persisted to Cassandra @@ -54,7 +54,7 @@ warm-up-period = 1h ## metric data storage in cassandra ## ``` -# see https://github.com/raintank/metrictank/blob/master/docs/cassandra.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/cassandra.md for more details # comma-separated list of hostnames to connect to cassandra-addrs = # keyspace to use for storing the metric data table @@ -384,14 +384,14 @@ enabled = false #y - year # # The final 3 fields are specific to metrictank and if unspecified, use sane defaults. -# See https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# See https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # # chunkspan: duration of chunks. e.g. 10min, 30min, 1h, 90min... -# must be valid value as described here https://github.com/raintank/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans +# must be valid value as described here https://github.com/grafana/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans # Defaults to a the smallest chunkspan that can hold at least 100 points. # # numchunks: number of raw chunks to keep in in-memory ring buffer -# See https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for details and trade-offs, especially when compared to chunk-cache +# See https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for details and trade-offs, especially when compared to chunk-cache # which may be a more effective method to cache data and alleviate workload for cassandra. # Defaults to 2 # @@ -427,7 +427,7 @@ retentions = 1s:35d:10min:7 # When using multiple, the first one is used for reading. In the future, we will add capabilities to select the different archives for reading. # * the settings configured when metrictank starts are what is applied. So you can enable or disable archives by restarting metrictank. # -# see https://github.com/raintank/metrictank/blob/master/docs/consolidation.md for related info. +# see https://github.com/grafana/metrictank/blob/master/docs/consolidation.md for related info. [default] pattern = .* @@ -435,5 +435,5 @@ xFilesFactor = 0.1 aggregationMethod = avg,min,max ``` -This file is generated by [config-to-doc](https://github.com/raintank/metrictank/blob/master/scripts/config-to-doc.sh) +This file is generated by [config-to-doc](https://github.com/grafana/metrictank/blob/master/scripts/config-to-doc.sh) diff --git a/docs/consolidation.md b/docs/consolidation.md index 7b8aacf0f3..79263cd4c9 100644 --- a/docs/consolidation.md +++ b/docs/consolidation.md @@ -3,7 +3,7 @@ When you request a larger number of points then what is in `maxDataPoints`, the data needs to be consolidated (aggregated) There's two pieces to this puzzle - rollups and runtime consolidation - explained below. -In metrictank, runtime consolidation works in concert with the rollup archives (in contrast to whisper and other more limited backends where you can configure only one given roll-up function for each series which [often leads to nonsense when combined with runtime consolidation](https://blog.raintank.io/25-graphite-grafana-and-statsd-gotchas/#runtime.consolidation)) +In metrictank, runtime consolidation works in concert with the rollup archives (in contrast to whisper and other more limited backends where you can configure only one given roll-up function for each series which [often leads to nonsense when combined with runtime consolidation](https://grafana.com/blog/2016/03/03/25-graphite-grafana-and-statsd-gotchas/#runtime.consolidation)) By default, metrictank will consolidate (at query time) like so: @@ -11,7 +11,7 @@ By default, metrictank will consolidate (at query time) like so: * avg for everything else. But you can override this -(see [HTTP api](https://github.com/raintank/metrictank/blob/master/docs/http-api.md)) to use avg, min, max, sum. +(see [HTTP api](https://github.com/grafana/metrictank/blob/master/docs/http-api.md)) to use avg, min, max, sum. Which ever function is used, metrictank will select the appropriate rollup band, and if necessary also perform runtime consolidation to further reduce the dataset. @@ -26,7 +26,7 @@ We don't just store the raw data, but also statistical summaries, computed over (sum and count are used to compute the average on the fly) -Configure them using the [agg-settings in the data section of the config](https://github.com/raintank/metrictank/blob/master/docs/config.md#data) +Configure them using the [agg-settings in the data section of the config](https://github.com/grafana/metrictank/blob/master/docs/config.md#data) ## Runtime consolidation @@ -94,7 +94,7 @@ However, if a rollup band is available with higher resolution than this outcome, ## Configuration considerations -Some considerations as you configure [the data options in the config, such as ttl and agg-settings](https://github.com/raintank/metrictank/blob/master/docs/config.md#data) +Some considerations as you configure [the data options in the config, such as ttl and agg-settings](https://github.com/grafana/metrictank/blob/master/docs/config.md#data) * avoid doing too many bands of data and having their TTL's be too similar, because they will all contain the most recent data and overlap. Aim to achieve about 10x or more reduction from one level to the next @@ -108,7 +108,7 @@ must cleanly multiply between one another (why again?) try to minimize storage overhead of each band SPAN CHOICE -As described in the page [Memory server](https://github.com/raintank/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans), only a finite set of values are valid chunk spans. This applies to rolled up chunks as well. +As described in the page [Memory server](https://github.com/grafana/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans), only a finite set of values are valid chunk spans. This applies to rolled up chunks as well. RETENTION: should at the minimum be maxT otherwise what's the point diff --git a/docs/development.md b/docs/development.md index abd65df76d..a029f76e37 100644 --- a/docs/development.md +++ b/docs/development.md @@ -2,4 +2,4 @@ * [govendor](https://github.com/kardianos/govendor) for managing vendored depedencies * `go build` to build -* [metrics2docs](https://github.com/Dieterbe/metrics2docs) generates the metrics documentation for the [metrics page](https://github.com/raintank/metrictank/blob/master/docs/metrics.md) +* [metrics2docs](https://github.com/Dieterbe/metrics2docs) generates the metrics documentation for the [metrics page](https://github.com/grafana/metrictank/blob/master/docs/metrics.md) diff --git a/docs/graphite.md b/docs/graphite.md index 1ee513e3fb..e947d09bf1 100644 --- a/docs/graphite.md +++ b/docs/graphite.md @@ -22,8 +22,8 @@ of implementing [Graphite's extensive processing api](http://graphite.readthedoc We're only just getting started, which is why metrictank will automatically proxy requests to graphite if functions are requested that it cannot provide. You can also choose to enable unstable functions via process=any See also: -* [HTTP api docs for render endpoint](https://github.com/raintank/metrictank/blob/master/docs/http-api.md#graphite-query-api) -* [HTTP api configuration](https://github.com/raintank/metrictank/blob/master/docs/config.md#http-api). Note the `fallback-graphite-addr` setting. +* [HTTP api docs for render endpoint](https://github.com/grafana/metrictank/blob/master/docs/http-api.md#graphite-query-api) +* [HTTP api configuration](https://github.com/grafana/metrictank/blob/master/docs/config.md#http-api). Note the `fallback-graphite-addr` setting. Here are the currently included functions: diff --git a/docs/http-api.md b/docs/http-api.md index bfd2514601..7453d227ad 100644 --- a/docs/http-api.md +++ b/docs/http-api.md @@ -2,7 +2,7 @@ This documents endpoints aimed to be used by users. For internal clustering http endpoints, which may change, refer to the source. -- Note that some of the endpoints rely on being a fed a proper Org-Id. See [Multi-tenancy](https://github.com/raintank/metrictank/blob/master/docs/multi-tenancy.md). +- Note that some of the endpoints rely on being a fed a proper Org-Id. See [Multi-tenancy](https://github.com/grafana/metrictank/blob/master/docs/multi-tenancy.md). - For GET requests, any parameters not specified as a header can be passed as an HTTP query string parameter. @@ -35,7 +35,7 @@ POST /metrics/index.json * header `X-Org-Id` required -Returns metrics stored under the given org, as well as public data under org -1 (see [multi-tenancy](https://github.com/raintank/metrictank/blob/master/docs/multi-tenancy.md)) +Returns metrics stored under the given org, as well as public data under org -1 (see [multi-tenancy](https://github.com/grafana/metrictank/blob/master/docs/multi-tenancy.md)) If orgId is -1, returns the metrics for all orgs. (but you can't neccessarily distinguish which org a metric is from) #### Example @@ -57,7 +57,7 @@ POST /metrics/find * format: json, treejson, completer. (defaults to json) * jsonp -Returns metrics which match the query and are stored under the given org or are public data under org -1 (see [multi-tenancy](https://github.com/raintank/metrictank/blob/master/docs/multi-tenancy.md)) +Returns metrics which match the query and are stored under the given org or are public data under org -1 (see [multi-tenancy](https://github.com/grafana/metrictank/blob/master/docs/multi-tenancy.md)) the completer format is for completion UI's such as graphite-web. json and treejson are the same. @@ -101,7 +101,7 @@ POST /render * target: mandatory. one or more metric names or patterns, like graphite. note: **no graphite functions are currently supported** except that you can use `consolidateBy(id, '')` or `consolidateBy(id, "")` where fn is one of `avg`, `average`, `min`, `max`, `sum`. see - [Consolidation](https://github.com/raintank/metrictank/blob/master/docs/consolidation.md) + [Consolidation](https://github.com/grafana/metrictank/blob/master/docs/consolidation.md) * from: see [timespec format](#tspec) (default: 24h ago) (exclusive) * to/until : see [timespec format](#tspec)(default: now) (inclusive) * format: json or msgp (default: json) @@ -113,7 +113,7 @@ POST /render If metrictank doesn't have a requested function, it always proxies to graphite, irrespective of this setting. -Data queried for must be stored under the given org or be public data under org -1 (see [multi-tenancy](https://github.com/raintank/metrictank/blob/master/docs/multi-tenancy.md)) +Data queried for must be stored under the given org or be public data under org -1 (see [multi-tenancy](https://github.com/grafana/metrictank/blob/master/docs/multi-tenancy.md)) #### Example diff --git a/docs/installation-deb.md b/docs/installation-deb.md index ba65cb4cb8..1f3b6a21ff 100644 --- a/docs/installation-deb.md +++ b/docs/installation-deb.md @@ -5,18 +5,18 @@ We'll go over these in more detail below. * Cassandra. We run and recommend 3.8 or newer - See [Cassandra](https://github.com/raintank/metrictank/blob/master/docs/cassandra.md) + See [Cassandra](https://github.com/grafana/metrictank/blob/master/docs/cassandra.md) * The latest (1.0.1 or newer) version of [Graphite](http://graphite.readthedocs.io/en/latest/install.html) * Optional: [statsd](https://github.com/etsy/statsd) or something compatible with it. For instrumentation of graphite. * Optional: Kafka, if you want to buffer data in case metrictank goes down. Kafka 0.10.0.1 is highly recommended. - [more info](https://github.com/raintank/metrictank/blob/master/docs/kafka.md) + [more info](https://github.com/grafana/metrictank/blob/master/docs/kafka.md) Note: Cassandra and Kafka require Java, which will be automatically installed by apt as a dependency when we install Cassandra. ## How things fit together metrictank ingest metrics data. The data can be sent into it, or be read from a queue (see -[Inputs](https://github.com/raintank/metrictank/blob/master/docs/inputs.md)). +[Inputs](https://github.com/grafana/metrictank/blob/master/docs/inputs.md)). Metrictank will compress the data into chunks in RAM, a configurable number of the most recent data is kept in RAM, but the chunks are being saved to Cassandra as well. You can use a single Cassandra instance or a cluster. Metrictank will also respond to queries: if the data is recent, it'll come out of @@ -41,7 +41,7 @@ You need to install these packages: * metrictank -Releases are simply tagged versions like `0.5.1` ([releases](https://github.com/raintank/metrictank/releases)), +Releases are simply tagged versions like `0.5.1` ([releases](https://github.com/grafana/metrictank/releases)), whereas commits in master following a release will be named `version-commit-after` for example `0.5.1-20` for the 20th commit after `0.5.1` @@ -102,7 +102,7 @@ EOF * Run `apt-get update && apt-get install cassandra cassandra-tools` For basic setups, you can just start it with default settings. -To tweak schema and settings, see [Cassandra](https://github.com/raintank/metrictank/blob/master/docs/cassandra.md) +To tweak schema and settings, see [Cassandra](https://github.com/grafana/metrictank/blob/master/docs/cassandra.md) * Start cassandra: @@ -217,7 +217,7 @@ EOF ### Kafka -Kafka 0.10.0.1 is highly recommended. 0.10.0.0 and 0.9 should work too, with some caveats [explained here](https://github.com/raintank/metrictank/blob/master/docs/kafka.md) +Kafka 0.10.0.1 is highly recommended. 0.10.0.0 and 0.9 should work too, with some caveats [explained here](https://github.com/grafana/metrictank/blob/master/docs/kafka.md) * Download kafka. Find a mirror at https://www.apache.org/dyn/closer.cgi?path=/kafka/0.10.0.1/kafka_2.11-0.10.0.1.tgz, and download kafka to your server. @@ -242,19 +242,19 @@ Now edit the file at `/etc/metrictank/metrictank.ini`. It should be commented e You may have to adjust `statsd-addr`, `cassandra-addrs`, `cassandra-idx`'s `hosts` option and `kafka-mdm-in`'s `brokers` option if you run any of these services on different locations then the localhost defaults. -Out of the box, one input is enabled: the [Carbon line input](https://github.com/raintank/metrictank/blob/master/docs/inputs.md#carbon) +Out of the box, one input is enabled: the [Carbon line input](https://github.com/grafana/metrictank/blob/master/docs/inputs.md#carbon) It uses a default storage-schemas to coalesce every incoming metric into 1 second resolution. You may want to fine tune this for your needs at `/etc/metrictank/storage-schemas.conf`. (or simply what you already use in a pre-existing Graphite install). See the input plugin documentation referenced above for more details. If you want to use Kafka, you should enable the Kafka-mdm input plugin. See the `kafka-mdm-in` section, set `enabled` to true. -See [the Inputs docs for more details](https://github.com/raintank/metrictank/blob/master/docs/inputs.md). +See [the Inputs docs for more details](https://github.com/grafana/metrictank/blob/master/docs/inputs.md). Finally, by default `memory-idx` `enabled` is true, while `cassandra-idx` has `enabled` as false. This will use the non-persistent index, starting with a fresh index at every start of metrictank. You probably want to disable the memory index an enable `cassandra-idx` instead. (just switch the enabled values around). -See [metadata](https://github.com/raintank/metrictank/blob/master/docs/metadata.md) for more details. +See [metadata](https://github.com/grafana/metrictank/blob/master/docs/metadata.md) for more details. ## Run it! diff --git a/docs/installation-rpm.md b/docs/installation-rpm.md index c5bb417b53..3adb32b169 100644 --- a/docs/installation-rpm.md +++ b/docs/installation-rpm.md @@ -5,18 +5,18 @@ We'll go over these in more detail below. * Cassandra. We run and recommend 3.8 or newer. - See [Cassandra](https://github.com/raintank/metrictank/blob/master/docs/cassandra.md) + See [Cassandra](https://github.com/grafana/metrictank/blob/master/docs/cassandra.md) * The latest (1.0.1 or newer) version of [Graphite](http://graphite.readthedocs.io/en/latest/install.html) * Optional: [statsd](https://github.com/etsy/statsd) or something compatible with it. For instrumentation of graphite. * Optional: Kafka, if you want to buffer data in case metrictank goes down. Kafka 0.10.0.1 is highly recommended. - [more info](https://github.com/raintank/metrictank/blob/master/docs/kafka.md) + [more info](https://github.com/grafana/metrictank/blob/master/docs/kafka.md) Note: Cassandra and Kafka require Java. We recommend using Oracle Java 8. ## How things fit together metrictank ingest metrics data. The data can be sent into it, or be read from a queue (see -[Inputs](https://github.com/raintank/metrictank/blob/master/docs/inputs.md)). +[Inputs](https://github.com/grafana/metrictank/blob/master/docs/inputs.md)). Metrictank will compress the data into chunks in RAM, a configurable number of the most recent data is kept in RAM, but the chunks are being saved to Cassandra as well. You can use a single Cassandra instance or a cluster. Metrictank will also respond to queries: if the data is recent, it'll come out of @@ -41,7 +41,7 @@ You need to install these packages: * metrictank -Releases are simply tagged versions like `0.5.1` ([releases](https://github.com/raintank/metrictank/releases)), +Releases are simply tagged versions like `0.5.1` ([releases](https://github.com/grafana/metrictank/releases)), whereas commits in master following a release will be named `version-commit-after` for example `0.5.1-20` for the 20th commit after `0.5.1` @@ -115,7 +115,7 @@ EOF * Run `yum install cassandra30` For basic setups, you can just install it and start it with default settings. -To tweak schema and settings, see [Cassandra](https://github.com/raintank/metrictank/blob/master/docs/cassandra.md) +To tweak schema and settings, see [Cassandra](https://github.com/grafana/metrictank/blob/master/docs/cassandra.md) * Start cassandra: @@ -223,7 +223,7 @@ EOF ### Kafka -Kafka 0.10.0.1 is highly recommended. 0.10.0.0 and 0.9 should work too, with some caveats [explained here](https://github.com/raintank/metrictank/blob/master/docs/kafka.md) +Kafka 0.10.0.1 is highly recommended. 0.10.0.0 and 0.9 should work too, with some caveats [explained here](https://github.com/grafana/metrictank/blob/master/docs/kafka.md) * Download kafka. Find a mirror at https://www.apache.org/dyn/closer.cgi?path=/kafka/0.10.0.1/kafka_2.11-0.10.0.1.tgz, and download kafka to your server. @@ -248,19 +248,19 @@ Now edit the file at `/etc/metrictank/metrictank.ini`. It should be commented e You may have to adjust `statsd-addr`, `cassandra-addrs`, `cassandra-idx`'s `hosts` option and `kafka-mdm-in`'s `brokers` option if you run any of these services on different locations then the localhost defaults. -Out of the box, one input is enabled: the [Carbon line input](https://github.com/raintank/metrictank/blob/master/docs/inputs.md#carbon) +Out of the box, one input is enabled: the [Carbon line input](https://github.com/grafana/metrictank/blob/master/docs/inputs.md#carbon) It uses a default storage-schemas to coalesce every incoming metric into 1 second resolution. You may want to fine tune this for your needs at `/etc/metrictank/storage-schemas.conf`. (or simply what you already use in a pre-existing Graphite install). See the input plugin documentation referenced above for more details. If you want to use Kafka, you should enable the Kafka-mdm input plugin. See the `kafka-mdm-in` section, set `enabled` to true. -See [the Inputs docs for more details](https://github.com/raintank/metrictank/blob/master/docs/inputs.md). +See [the Inputs docs for more details](https://github.com/grafana/metrictank/blob/master/docs/inputs.md). Finally, by default `memory-idx` `enabled` is true, while `cassandra-idx` has `enabled` as false. This will use the non-persistent index, starting with a fresh index at every start of metrictank. You probably want to disable the memory index an enable `cassandra-idx` instead. (just switch the enabled values around). -See [metadata](https://github.com/raintank/metrictank/blob/master/docs/metadata.md) for more details. +See [metadata](https://github.com/grafana/metrictank/blob/master/docs/metadata.md) for more details. ## Run it! diff --git a/docs/installation-source.md b/docs/installation-source.md index 4a24335a76..4ea7c017ef 100644 --- a/docs/installation-source.md +++ b/docs/installation-source.md @@ -2,7 +2,7 @@ This approach is not recommended, because it just gives you the metrictank binary, no dependencies, and no configuration for an init system. -To install dependencies or for more complete guides, see [installation guides](https://github.com/raintank/metrictank/blob/master/docs/installation.md). +To install dependencies or for more complete guides, see [installation guides](https://github.com/grafana/metrictank/blob/master/docs/installation.md). ## The build environment @@ -22,10 +22,10 @@ You may want to make the `GOPATH` setting persistent, by putting that export lin ## Build metrictank ``` -go get github.com/raintank/metrictank +go get github.com/grafana/metrictank ``` -Take the file from `go/src/github.com/raintank/metrictank/metrictank-sample.ini`, put it in `/etc/metrictank/metrictank.ini` and make any changes. +Take the file from `go/src/github.com/grafana/metrictank/metrictank-sample.ini`, put it in `/etc/metrictank/metrictank.ini` and make any changes. ## Run it! diff --git a/docs/installation.md b/docs/installation.md index 8ab323c5fc..cb95372142 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -1,15 +1,15 @@ # Installation guide If you want a quick and easy way to get started with a pre-configured environment, consider the -[Quick start using docker](https://github.com/raintank/metrictank/blob/master/docs/quick-start-docker.md). +[Quick start using docker](https://github.com/grafana/metrictank/blob/master/docs/quick-start-docker.md). In-depth guides that guide you you through setting things up component by component (metrictank and its dependencies): -* [Installation guide For Debian/Ubuntu](https://github.com/raintank/metrictank/blob/master/docs/installation-deb.md) -* [Installation guide for RPM-based Linux (CentOS, Fedora, OpenSuse, RedHat)](https://github.com/raintank/metrictank/blob/master/docs/installation-rpm.md) +* [Installation guide For Debian/Ubuntu](https://github.com/grafana/metrictank/blob/master/docs/installation-deb.md) +* [Installation guide for RPM-based Linux (CentOS, Fedora, OpenSuse, RedHat)](https://github.com/grafana/metrictank/blob/master/docs/installation-rpm.md) There are also some alternative approaches, such as: -* [Installation from source](https://github.com/raintank/metrictank/blob/master/docs/installation-source.md) +* [Installation from source](https://github.com/grafana/metrictank/blob/master/docs/installation-source.md) diff --git a/docs/kafka.md b/docs/kafka.md index 01bfa89d6f..8a0ddd3865 100644 --- a/docs/kafka.md +++ b/docs/kafka.md @@ -1,6 +1,6 @@ # why -Kafka can be used as an [ingestion option](https://github.com/raintank/metrictank/blob/master/docs/inputs.md) as well as a [clustering transport](https://github.com/raintank/metrictank/blob/master/docs/clustering.md) for metrictank. +Kafka can be used as an [ingestion option](https://github.com/grafana/metrictank/blob/master/docs/inputs.md) as well as a [clustering transport](https://github.com/grafana/metrictank/blob/master/docs/clustering.md) for metrictank. # Kafka version diff --git a/docs/memory-server.md b/docs/memory-server.md index 98a9854c0c..0715da9908 100644 --- a/docs/memory-server.md +++ b/docs/memory-server.md @@ -30,7 +30,7 @@ The goal of the chunk cache is to offload as much read workload from cassandra a Any data chunks fetched from Cassandra are added to the chunk cache. But also, more interestingly, chunks expired out of the ring buffers will automatically be added to the chunk cache if the chunk before it is also in the cache. In other words, for series we know to be "hot" (queried frequently enough so that their data is kept in the chunk cache) we will try to avoid a roundtrip to Cassandra before adding the chunks to the cache. This can be especially useful when it takes long for the primary to save data to cassandra, or when there is a cassandra outage. -The chunk cache has a configurable [maximum size](https://github.com/raintank/metrictank/blob/master/docs/config.md#chunk-cache), +The chunk cache has a configurable [maximum size](https://github.com/grafana/metrictank/blob/master/docs/config.md#chunk-cache), within that size it tries to always keep the most often queried data by using an LRU mechanism that evicts the Least Recently Used chunks. The effectiveness of the chunk cache largely depends on the common query patterns and the configured `max-size` value: @@ -40,7 +40,7 @@ then Metrictank will need to fallback to Cassandra more often. ## Configuration guidelines -See [the example config](https://github.com/raintank/metrictank/blob/master/metrictank-sample.ini) for an overview and basic explanation of what the config values are. +See [the example config](https://github.com/grafana/metrictank/blob/master/metrictank-sample.ini) for an overview and basic explanation of what the config values are. Some of the values related to chunking and compression are a bit harder to tune, so this section will explain in more detail. @@ -104,7 +104,7 @@ However: If you roll-up data for archival storage, those chunks will also be in memory as per your configuration. Querying for large timeframes will use the consolidated chunks in RAM, and keeping extra raw (or higher-resolution) data in RAM becomes pointless, putting an upper bound on how many chunks to keep. -See [Consolidation](https://github.com/raintank/metrictank/blob/master/docs/consolidation.md) +See [Consolidation](https://github.com/grafana/metrictank/blob/master/docs/consolidation.md) ### Configuration examples diff --git a/docs/metadata.md b/docs/metadata.md index 220ab118f0..7b9abcb8f0 100644 --- a/docs/metadata.md +++ b/docs/metadata.md @@ -29,7 +29,7 @@ This is the recommended option because it persists. * efficiency: On low end hardware the index rebuilds at about 70000 metricDefinitions per second. Saving new metrics works pretty fast. Metrictank will initialize Cassandra with the needed keyspace and tabe. However if you are running a Cassandra cluster then you should tune the keyspace to suit your deployment. -Refer to the [cassandra guide](https://github.com/raintank/metrictank/blob/master/docs/cassandra.md) for more details. +Refer to the [cassandra guide](https://github.com/grafana/metrictank/blob/master/docs/cassandra.md) for more details. #### Configuration ``` @@ -75,9 +75,9 @@ type MetricDefinition struct { } ``` -See [the schema spec](https://github.com/raintank/schema/blob/master/metric.go#L78) for more details +See [the schema spec](https://github.com/grafana/schema/blob/master/metric.go#L78) for more details ## Developers' guide to index plugin writing New indexes just need to implement the MetricIndex interface. -See [the Interface spec](https://github.com/raintank/metrictank/blob/master/idx/idx.go#L22) for more details +See [the Interface spec](https://github.com/grafana/metrictank/blob/master/idx/idx.go#L22) for more details diff --git a/docs/operations.md b/docs/operations.md index c2cb07435b..e4587d417f 100644 --- a/docs/operations.md +++ b/docs/operations.md @@ -5,9 +5,9 @@ You should monitor the dependencies according to their best practices. In particular, pay attention to delays in your kafka queue, if you use it. Especially for metric persistence messages which flow from primary to secondary nodes: if those have issues, chunks may be saved multiple times -when you move around the primary role. (see [clustering transport](https://github.com/raintank/metrictank/blob/master/docs/clustering.md)) +when you move around the primary role. (see [clustering transport](https://github.com/grafana/metrictank/blob/master/docs/clustering.md)) -Metrictank uses statsd to report metrics about itself. See [the list of documented metrics](https://github.com/raintank/metrictank/blob/master/docs/metrics.md) +Metrictank uses statsd to report metrics about itself. See [the list of documented metrics](https://github.com/grafana/metrictank/blob/master/docs/metrics.md) ### Dashboard @@ -42,13 +42,13 @@ Metrictank crashed. What to do? 1) Check `dmesg` to see if it was killed by the kernel, maybe it was consuming too much RAM If it was, check the grafana dashboard which may explain why. (sudden increase in ingested data? increase in requests or the amount of data requested? slow requests?) Tips: - * The [profiletrigger](https://github.com/raintank/metrictank/blob/master/docs/config.md#profiling-instrumentation-and-logging) functionality can automatically trigger + * The [profiletrigger](https://github.com/grafana/metrictank/blob/master/docs/config.md#profiling-instrumentation-and-logging) functionality can automatically trigger a memory profile and save it to disk. This can be very helpful if suddently memory usage spikes up and then metrictank gets killed in seconds or minutes. It helps diagnose problems in the codebase that may lead to memory savings. The profiletrigger looks at the `bytes_sys` metric which is the amount of memory consumed by the process. - * Use [rollups](https://github.com/raintank/metrictank/blob/master/docs/consolidation.md#rollups) to be able to answer queries for long timeframes with less data + * Use [rollups](https://github.com/grafana/metrictank/blob/master/docs/consolidation.md#rollups) to be able to answer queries for long timeframes with less data 2) Check the metrictank log. - If it exited due to a panic, you should probably open a [ticket](https://github.com/raintank/metrictank/issues) with the output of `metrictank --version`, the panic, and perhaps preceeding log data. + If it exited due to a panic, you should probably open a [ticket](https://github.com/grafana/metrictank/issues) with the output of `metrictank --version`, the panic, and perhaps preceeding log data. If it exited due to an error, it could be a problem in your infrastructure or a problem in the metrictank code (in the latter case, please open a ticket as described above) ### Recovery @@ -56,12 +56,12 @@ Metrictank crashed. What to do? #### If you run multiple instances * If the crashed instance was a secondary, you can just restart it and after it warmed up, it will ready to serve requests. Verify that you have other instances who can serve requests, otherwise you may want to start it with a much shorter warm up time. It will be ready to serve requests sooner, but may have to reach out to Cassandra more to load data. -* If the crashed instance was a primary, you have to bring up a new primary. Based on when the primary was able to last save chunks, and how much data you keep in RAM (using [chunkspan * numchunks](https://github.com/raintank/metrictank/blob/master/docs/memory-server.md), you can calculate how quickly you need to promote an already running secondary to primary to avaid dataloss. If you don't have a secondary up long enough, pick whichever was up the longest. +* If the crashed instance was a primary, you have to bring up a new primary. Based on when the primary was able to last save chunks, and how much data you keep in RAM (using [chunkspan * numchunks](https://github.com/grafana/metrictank/blob/master/docs/memory-server.md), you can calculate how quickly you need to promote an already running secondary to primary to avaid dataloss. If you don't have a secondary up long enough, pick whichever was up the longest. #### If you only run once instance -If you use the kafka-mdm input (at raintank we do), before restarting check your [offset option](https://github.com/raintank/metrictank/blob/master/docs/config.md#kafka-mdm-input-optional-recommended). Most of our customers who run a single instance seem to prefer the `last` option: preferring immidiately getting realtime insights back, at the cost of missing older data. +If you use the kafka-mdm input (at grafana we do), before restarting check your [offset option](https://github.com/grafana/metrictank/blob/master/docs/config.md#kafka-mdm-input-optional-recommended). Most of our customers who run a single instance seem to prefer the `last` option: preferring immidiately getting realtime insights back, at the cost of missing older data. ## Metrictank hangs @@ -84,30 +84,30 @@ See [behavior of signals in Go programs](https://golang.org/pkg/os/signal/#hdr-D * promote the candidate to primary: `curl -X POST -d primary=true http://:6060/node` * you can verify the cluster status through `curl http://:6060/node` or on the Grafana dashboard (see above) -For more information see [Clustering: Promoting a secondary to primary](https://github.com/raintank/metrictank/blob/master/docs/clustering.md#promoting-a-secondary-to-primary) +For more information see [Clustering: Promoting a secondary to primary](https://github.com/grafana/metrictank/blob/master/docs/clustering.md#promoting-a-secondary-to-primary) -See [HTTP api docs](https://github.com/raintank/metrictank/blob/master/docs/http-api.md) +See [HTTP api docs](https://github.com/grafana/metrictank/blob/master/docs/http-api.md) ## Ingestion stalls & backpressure If metrictank ingestion speed is lower than expected, or decreased for seemingly no reason, it may be due to: -1) [Indexing of metadata](https://github.com/raintank/metrictank/blob/master/docs/metadata.md) puts backpressure on the ingest stream. +1) [Indexing of metadata](https://github.com/grafana/metrictank/blob/master/docs/metadata.md) puts backpressure on the ingest stream. New metrics (including metrics with new settings such as interval, unit, or tags) need to get indexed into: * an in-memory index (which seems to always be snappy and not exert any backpressure) * Cassandra - if enabled - which may not keep up with throughput, resulting in backpressure, and a lowered ingestion rate. See the `pressure.idx` metric in the 'metrics in' graph of the metrictank dashboard. For more details, look at the various index stats further down the dashboard. -2) Saving of chunks. Metrictank saves chunks at the rhythm of your [chunkspan](https://github.com/raintank/metrictank/blob/master/docs/memory-server.md) (10 minutes in the default docker image) +2) Saving of chunks. Metrictank saves chunks at the rhythm of your [chunkspan](https://github.com/grafana/metrictank/blob/master/docs/memory-server.md) (10 minutes in the default docker image) When this happens, it will need to save a bunch of chunks and - [based on the configuration of your write queues and how many series you have](https://github.com/raintank/metrictank/issues/125) the queues may run full and + [based on the configuration of your write queues and how many series you have](https://github.com/grafana/metrictank/issues/125) the queues may run full and provide ingestion backpressure, also lowering ingestion speed. Store (cassandra) saving backpressure is also visualized on the 'metrics in' graph of the dashboard. Additionally, the 'write workers & queues' graph shows the queue limit and how many items are in the queues. The queues are drained by saving chunks, but populated by new chunks that need to be saved. Backpressure is active is when the queues are full (when number of items equals the limit). It's possible for the queues to stay at the limit for a while, despite chunks being saved (when there's new chunks that also need to be saved). - However you should probably tune your queue sizes in this case. See [our Cassandra page](https://github.com/raintank/metrictank/blob/master/docs/cassandra.md) + However you should probably tune your queue sizes in this case. See [our Cassandra page](https://github.com/grafana/metrictank/blob/master/docs/cassandra.md) Of course, if metrictank is running near peak capacity, The added workload of saving data may also lower ingest speed. 3) golang GC runs may cause ingest drops. Look at 'golang GC' in the Grafana dashboard and see if you can get the dashboard zoom right to look at individual GC runs, and see if they correspond to the ingest drops. (shared cursor is really handy here) diff --git a/docs/overview.md b/docs/overview.md index c02d828cb5..6f58d7ea16 100644 --- a/docs/overview.md +++ b/docs/overview.md @@ -1,6 +1,6 @@ # Overview -![Overview](https://raw.githubusercontent.com/raintank/metrictank/master/docs/assets/metrictank-highlevel.png) +![Overview](https://raw.githubusercontent.com/grafana/metrictank/master/docs/assets/metrictank-highlevel.png) Note: * You can use any, or multiple of the input mechanisms diff --git a/docs/quick-start-docker.md b/docs/quick-start-docker.md index 19e47fa999..37c8d8f442 100644 --- a/docs/quick-start-docker.md +++ b/docs/quick-start-docker.md @@ -11,18 +11,18 @@ You will also need to install version >=1.6 of [docker-compose](https://docs.doc If you already have go installed, you can just: ``` -go get github.com/raintank/metrictank -cd $GOPATH/src/github.com/raintank/metrictank +go get github.com/grafana/metrictank +cd $GOPATH/src/github.com/grafana/metrictank ``` If you don't, you can just use git: ``` -git clone https://github.com/raintank/metrictank.git +git clone https://github.com/grafana/metrictank.git cd metrictank ``` -If you have neither, just [download the zip](https://github.com/raintank/metrictank/archive/master.zip), extract it somewhere and cd into the metrictank directory. +If you have neither, just [download the zip](https://github.com/grafana/metrictank/archive/master.zip), extract it somewhere and cd into the metrictank directory. ## Bring up the stack @@ -90,7 +90,7 @@ Add a new data source with with these settings: When you hit save, Grafana should succeed in talking to the data source. -![Add data source screenshot](https://raw.githubusercontent.com/raintank/metrictank/master/docs/assets/add-datasource-docker.png) +![Add data source screenshot](https://raw.githubusercontent.com/grafana/metrictank/master/docs/assets/add-datasource-docker.png) -Note: it also works with `direct` mode but then you have to enter `http://localhost:6060` as url. @@ -123,7 +123,7 @@ echo "hits:1|c" | nc -w 1 -u localhost 8125 Now for something neat! There is an extensive [dashboard on grafana.net](https://grafana.net/dashboards/279) that displays all vital metrictank stats. -![Dashboard screenshot](https://raw.githubusercontent.com/raintank/metrictank/master/docs/assets/dashboard-screenshot.png) +![Dashboard screenshot](https://raw.githubusercontent.com/grafana/metrictank/master/docs/assets/dashboard-screenshot.png) So go to the dashboard dropdown -> import -> and paste in `https://grafana.net/dashboards/279` into the Grafana.net url field. It will show a dialog with a choice of which graphite datasource to use, for which you can enter `metrictank`. @@ -138,7 +138,7 @@ of the plethora of [tools that can send data in carbon format](http://graphite.r , create dashboards (or import them from [grafana.net](https://grafana.net)), etc. If anything doesn't work, please let us know via a ticket on github or reach out on slack. See -[Community](https://github.com/raintank/metrictank/blob/master/docs/community.md) +[Community](https://github.com/grafana/metrictank/blob/master/docs/community.md) ## Shut down the stack diff --git a/docs/roadmap.md b/docs/roadmap.md index c96261b5a7..43fd8aed24 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -4,9 +4,9 @@ While Metrictank takes in tag metadata in the form of [metrics2.0](http://metrics20.org/) and indexes it, it is not exposed yet for querying. There will be various benefits in adopting metrics2.0 fully (better choices for consolidation, data conversion, supplying unit information to Grafana, etc) -see [Tags](https://github.com/raintank/metrictank/blob/master/docs/tags.md) +see [Tags](https://github.com/grafana/metrictank/blob/master/docs/tags.md) ## More advanced clustering Current limitations: manual promotions, statically defined peers, per-instance primary status instead of per-shard, so you can't shuffle shard replicas across nodes. -see [clustering](https://github.com/raintank/metrictank/blob/master/docs/clustering.md) for more info) +see [clustering](https://github.com/grafana/metrictank/blob/master/docs/clustering.md) for more info) diff --git a/docs/tools.md b/docs/tools.md index 8cbf76ebd1..ca186daf17 100644 --- a/docs/tools.md +++ b/docs/tools.md @@ -4,7 +4,7 @@ Metrictank comes with a bunch of helper tools. Here is an overview of them all. -This file is generated by [tools-to-doc](https://github.com/raintank/metrictank/blob/master/scripts/tools-to-doc.sh) +This file is generated by [tools-to-doc](https://github.com/grafana/metrictank/blob/master/scripts/tools-to-doc.sh) --- diff --git a/expr/NOTES b/expr/NOTES index 243faba261..49ca66c284 100644 --- a/expr/NOTES +++ b/expr/NOTES @@ -83,11 +83,11 @@ So: Note: some functions combine multiple series into a new one (e.g. sumSeries, avgSeries, ...). Your input series may use different consolidateBy settings, some may be explicitly specified while others are not. In this scenario, the output series will be given the first explicitly defined consolidateBy found by iterating the inputs, or the first default otherwise. By combining the pass-down and pass-up we can give the user max power and correctness. In particular it also solves the problem with Graphite where data can be read from a different consolidation archive than what it used for runtime consolidation. While this is sometimes desirable (e.g. using special* functions), often - for most/simple requests - it is not. See -(see https://blog.raintank.io/25-graphite-grafana-and-statsd-gotchas/#runtime.consolidation) +(see https://grafana.com/blog/2016/03/03/25-graphite-grafana-and-statsd-gotchas/#runtime.consolidation) [*] Special functions: e.g. summarize, perSecond, derivative, intergral. passing consolidate settings across these function calls would lead to bad results. -see also https://github.com/raintank/metrictank/issues/463#issuecomment-275199880 +see also https://github.com/grafana/metrictank/issues/463#issuecomment-275199880 diff --git a/expr/func_alias.go b/expr/func_alias.go index 2565319b33..b6d6e5cc0c 100644 --- a/expr/func_alias.go +++ b/expr/func_alias.go @@ -1,7 +1,7 @@ package expr import ( - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" ) type FuncAlias struct { diff --git a/expr/func_alias_test.go b/expr/func_alias_test.go index 21586d6bcf..d7ccbf5d02 100644 --- a/expr/func_alias_test.go +++ b/expr/func_alias_test.go @@ -5,7 +5,7 @@ import ( "strconv" "testing" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_aliasbynode.go b/expr/func_aliasbynode.go index 441e736abc..cb1568a2c8 100644 --- a/expr/func_aliasbynode.go +++ b/expr/func_aliasbynode.go @@ -3,7 +3,7 @@ package expr import ( "strings" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" ) type FuncAliasByNode struct { diff --git a/expr/func_aliassub.go b/expr/func_aliassub.go index 9279554016..f8a9f95df0 100644 --- a/expr/func_aliassub.go +++ b/expr/func_aliassub.go @@ -3,7 +3,7 @@ package expr import ( "regexp" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" ) var groupPython = regexp.MustCompile(`\\(\d+)`) diff --git a/expr/func_aliassub_test.go b/expr/func_aliassub_test.go index 6f21be8674..e0c4dc9ebb 100644 --- a/expr/func_aliassub_test.go +++ b/expr/func_aliassub_test.go @@ -5,7 +5,7 @@ import ( "regexp" "testing" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" ) func TestAliasSub(t *testing.T) { diff --git a/expr/func_avgseries.go b/expr/func_avgseries.go index 10e5b16087..4e939723b1 100644 --- a/expr/func_avgseries.go +++ b/expr/func_avgseries.go @@ -5,7 +5,7 @@ import ( "math" "strings" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_avgseries_test.go b/expr/func_avgseries_test.go index 93ca47d81a..da7d9ab10a 100644 --- a/expr/func_avgseries_test.go +++ b/expr/func_avgseries_test.go @@ -5,8 +5,8 @@ import ( "strconv" "testing" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/test" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/test" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_consolidateby.go b/expr/func_consolidateby.go index 0805238fb7..a972d8d763 100644 --- a/expr/func_consolidateby.go +++ b/expr/func_consolidateby.go @@ -3,8 +3,8 @@ package expr import ( "fmt" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/consolidation" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/consolidation" ) type FuncConsolidateBy struct { diff --git a/expr/func_divideseries.go b/expr/func_divideseries.go index 69a96bce72..ac08f38947 100644 --- a/expr/func_divideseries.go +++ b/expr/func_divideseries.go @@ -5,7 +5,7 @@ import ( "fmt" "math" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_get.go b/expr/func_get.go index 07f21d740f..0a789197cc 100644 --- a/expr/func_get.go +++ b/expr/func_get.go @@ -1,6 +1,6 @@ package expr -import "github.com/raintank/metrictank/api/models" +import "github.com/grafana/metrictank/api/models" // internal function just for getting data type FuncGet struct { diff --git a/expr/func_mock_test.go b/expr/func_mock_test.go index 1a6d12691e..7d12c7c4b3 100644 --- a/expr/func_mock_test.go +++ b/expr/func_mock_test.go @@ -1,6 +1,6 @@ package expr -import "github.com/raintank/metrictank/api/models" +import "github.com/grafana/metrictank/api/models" // internal function just for getting data type FuncMock struct { diff --git a/expr/func_movingaverage.go b/expr/func_movingaverage.go index a81e237d4a..79fd7e3e38 100644 --- a/expr/func_movingaverage.go +++ b/expr/func_movingaverage.go @@ -1,7 +1,7 @@ package expr import ( - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" ) type FuncMovingAverage struct { diff --git a/expr/func_persecond.go b/expr/func_persecond.go index d18eb76c95..347656074c 100644 --- a/expr/func_persecond.go +++ b/expr/func_persecond.go @@ -4,7 +4,7 @@ import ( "fmt" "math" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_persecond_test.go b/expr/func_persecond_test.go index d4fc611984..c8bbb25255 100644 --- a/expr/func_persecond_test.go +++ b/expr/func_persecond_test.go @@ -4,7 +4,7 @@ import ( "math" "testing" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_scale.go b/expr/func_scale.go index cb415e8fb3..7e60b31a0b 100644 --- a/expr/func_scale.go +++ b/expr/func_scale.go @@ -3,7 +3,7 @@ package expr import ( "fmt" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_smartsummarize.go b/expr/func_smartsummarize.go index 4f97964eeb..841d2fd150 100644 --- a/expr/func_smartsummarize.go +++ b/expr/func_smartsummarize.go @@ -1,6 +1,6 @@ package expr -import "github.com/raintank/metrictank/api/models" +import "github.com/grafana/metrictank/api/models" type FuncSmartSummarize struct { in GraphiteFunc diff --git a/expr/func_sumseries.go b/expr/func_sumseries.go index 1064731ad4..f32367f0d7 100644 --- a/expr/func_sumseries.go +++ b/expr/func_sumseries.go @@ -5,7 +5,7 @@ import ( "math" "strings" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_sumseries_test.go b/expr/func_sumseries_test.go index 85564d61a0..1224545406 100644 --- a/expr/func_sumseries_test.go +++ b/expr/func_sumseries_test.go @@ -5,8 +5,8 @@ import ( "strconv" "testing" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/test" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/test" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/func_transformnull.go b/expr/func_transformnull.go index a49308fd44..dc98757823 100644 --- a/expr/func_transformnull.go +++ b/expr/func_transformnull.go @@ -4,7 +4,7 @@ import ( "fmt" "math" - "github.com/raintank/metrictank/api/models" + "github.com/grafana/metrictank/api/models" "gopkg.in/raintank/schema.v1" ) diff --git a/expr/funcs.go b/expr/funcs.go index 156512dc19..619f3a67f7 100644 --- a/expr/funcs.go +++ b/expr/funcs.go @@ -1,8 +1,8 @@ package expr import ( - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/consolidation" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/consolidation" ) type Context struct { diff --git a/expr/plan.go b/expr/plan.go index 27ca71c068..487537464e 100644 --- a/expr/plan.go +++ b/expr/plan.go @@ -6,8 +6,8 @@ import ( "io" "sort" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/consolidation" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/consolidation" ) // Req represents a request for one/more series diff --git a/expr/plan_test.go b/expr/plan_test.go index d91383c5a6..1b964af95c 100644 --- a/expr/plan_test.go +++ b/expr/plan_test.go @@ -4,8 +4,8 @@ import ( "reflect" "testing" - "github.com/raintank/metrictank/api/models" - "github.com/raintank/metrictank/consolidation" + "github.com/grafana/metrictank/api/models" + "github.com/grafana/metrictank/consolidation" ) // here we use smartSummarize because it has multiple optional arguments which allows us to test some interesting things @@ -325,7 +325,7 @@ func TestNamingChains(t *testing.T) { expOut []string }{ // the first two are cases that we've seen in the wild - // see https://github.com/raintank/metrictank/issues/648 + // see https://github.com/grafana/metrictank/issues/648 { `aliasSub(perSecond(metrictank.stats.*.*.input.*.metric_invalid.counter32),'.*\.([^\.]+)\.metric_invalid.*', '\1 metric invalid')`, []string{ diff --git a/expr/test.go b/expr/test.go index 1d80beaf32..99488cd261 100644 --- a/expr/test.go +++ b/expr/test.go @@ -1,5 +1,5 @@ package expr -import "github.com/raintank/metrictank/api/models" +import "github.com/grafana/metrictank/api/models" var results []models.Series diff --git a/idx/cassandra/cassandra.go b/idx/cassandra/cassandra.go index 86faf37cce..231fdb82e1 100644 --- a/idx/cassandra/cassandra.go +++ b/idx/cassandra/cassandra.go @@ -8,11 +8,11 @@ import ( "time" "github.com/gocql/gocql" - "github.com/raintank/metrictank/cassandra" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/idx/memory" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/cassandra" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/idx/memory" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" "gopkg.in/raintank/schema.v1" diff --git a/idx/cassandra/cassandra_test.go b/idx/cassandra/cassandra_test.go index 2f70863ac7..f91a35b33c 100644 --- a/idx/cassandra/cassandra_test.go +++ b/idx/cassandra/cassandra_test.go @@ -8,8 +8,8 @@ import ( "testing" "time" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/idx" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/idx" . "github.com/smartystreets/goconvey/convey" "gopkg.in/raintank/schema.v1" ) diff --git a/idx/memory/memory.go b/idx/memory/memory.go index e8c58ca386..c022316e89 100644 --- a/idx/memory/memory.go +++ b/idx/memory/memory.go @@ -8,9 +8,9 @@ import ( "sync" "time" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" "gopkg.in/raintank/schema.v1" diff --git a/idx/memory/memory_find_test.go b/idx/memory/memory_find_test.go index b88bf1ac62..4a34c10fdf 100644 --- a/idx/memory/memory_find_test.go +++ b/idx/memory/memory_find_test.go @@ -5,7 +5,7 @@ import ( "strconv" "testing" - "github.com/raintank/metrictank/idx" + "github.com/grafana/metrictank/idx" "gopkg.in/raintank/schema.v1" ) diff --git a/idx/memory/memory_test.go b/idx/memory/memory_test.go index 9882754d20..7a2dd3cd2a 100644 --- a/idx/memory/memory_test.go +++ b/idx/memory/memory_test.go @@ -8,7 +8,7 @@ import ( "testing" "time" - "github.com/raintank/metrictank/idx" + "github.com/grafana/metrictank/idx" . "github.com/smartystreets/goconvey/convey" "gopkg.in/raintank/schema.v1" ) diff --git a/input/carbon/carbon.go b/input/carbon/carbon.go index a9428a77a7..fff7a75ca7 100644 --- a/input/carbon/carbon.go +++ b/input/carbon/carbon.go @@ -9,10 +9,10 @@ import ( "net" "sync" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/input" + "github.com/grafana/metrictank/stats" "github.com/metrics20/go-metrics20/carbon20" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/input" - "github.com/raintank/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" "gopkg.in/raintank/schema.v1" diff --git a/input/carbon/intervalgetter.go b/input/carbon/intervalgetter.go index db6840f412..313679f9c9 100644 --- a/input/carbon/intervalgetter.go +++ b/input/carbon/intervalgetter.go @@ -1,8 +1,8 @@ package carbon import ( - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/mdata" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/mdata" ) //IntervalGetter is anything that can return the interval for the given path diff --git a/input/input.go b/input/input.go index 65b6af0926..26a8fc9011 100644 --- a/input/input.go +++ b/input/input.go @@ -6,9 +6,9 @@ import ( "fmt" "time" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "gopkg.in/raintank/schema.v1" ) diff --git a/input/input_test.go b/input/input_test.go index 99cd542a4e..197dc813de 100644 --- a/input/input_test.go +++ b/input/input_test.go @@ -5,11 +5,11 @@ import ( "testing" "time" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/idx/memory" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/cache" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/idx/memory" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/cache" "gopkg.in/raintank/schema.v1" ) diff --git a/input/kafkamdm/kafkamdm.go b/input/kafkamdm/kafkamdm.go index 8cbf922737..cd0f468ce5 100644 --- a/input/kafkamdm/kafkamdm.go +++ b/input/kafkamdm/kafkamdm.go @@ -12,10 +12,10 @@ import ( "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/input" - "github.com/raintank/metrictank/kafka" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/input" + "github.com/grafana/metrictank/kafka" + "github.com/grafana/metrictank/stats" "gopkg.in/raintank/schema.v1" ) diff --git a/mdata/aggmetric.go b/mdata/aggmetric.go index 7bd826779d..2df48f0bfd 100644 --- a/mdata/aggmetric.go +++ b/mdata/aggmetric.go @@ -6,11 +6,11 @@ import ( "sync" "time" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/consolidation" - "github.com/raintank/metrictank/mdata/cache" - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/consolidation" + "github.com/grafana/metrictank/mdata/cache" + "github.com/grafana/metrictank/mdata/chunk" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/mdata/aggmetric_test.go b/mdata/aggmetric_test.go index b620b2d253..9c463190fa 100644 --- a/mdata/aggmetric_test.go +++ b/mdata/aggmetric_test.go @@ -7,10 +7,10 @@ import ( "testing" "time" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/mdata/cache" - "github.com/raintank/metrictank/test" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/mdata/cache" + "github.com/grafana/metrictank/test" ) var dnstore = NewDevnullStore() diff --git a/mdata/aggmetrics.go b/mdata/aggmetrics.go index 55ccf7f14b..5d48a44a6f 100644 --- a/mdata/aggmetrics.go +++ b/mdata/aggmetrics.go @@ -4,7 +4,7 @@ import ( "sync" "time" - "github.com/raintank/metrictank/mdata/cache" + "github.com/grafana/metrictank/mdata/cache" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/mdata/aggregator.go b/mdata/aggregator.go index 9a9753ed19..b8cbdb4ab9 100644 --- a/mdata/aggregator.go +++ b/mdata/aggregator.go @@ -3,8 +3,8 @@ package mdata import ( "fmt" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/mdata/cache" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/mdata/cache" ) // AggBoundary returns ts if it is a boundary, or the next boundary otherwise. diff --git a/mdata/aggregator_test.go b/mdata/aggregator_test.go index a7f4b069a0..275ee24278 100644 --- a/mdata/aggregator_test.go +++ b/mdata/aggregator_test.go @@ -4,9 +4,9 @@ import ( "testing" "time" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/mdata/cache" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/mdata/cache" "gopkg.in/raintank/schema.v1" ) diff --git a/mdata/cache/accnt/stats.go b/mdata/cache/accnt/stats.go index 64f9886d91..03598e1a19 100644 --- a/mdata/cache/accnt/stats.go +++ b/mdata/cache/accnt/stats.go @@ -1,6 +1,6 @@ package accnt -import "github.com/raintank/metrictank/stats" +import "github.com/grafana/metrictank/stats" var ( diff --git a/mdata/cache/cache_mock.go b/mdata/cache/cache_mock.go index d12809fe9d..7757a8b65a 100644 --- a/mdata/cache/cache_mock.go +++ b/mdata/cache/cache_mock.go @@ -1,7 +1,7 @@ package cache import ( - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" "sync" ) diff --git a/mdata/cache/ccache.go b/mdata/cache/ccache.go index 87595e0ccb..5c19b846de 100644 --- a/mdata/cache/ccache.go +++ b/mdata/cache/ccache.go @@ -6,11 +6,11 @@ import ( "runtime" "sync" + "github.com/grafana/metrictank/mdata/cache/accnt" + "github.com/grafana/metrictank/mdata/chunk" + "github.com/grafana/metrictank/stats" + "github.com/grafana/metrictank/tracing" opentracing "github.com/opentracing/opentracing-go" - "github.com/raintank/metrictank/mdata/cache/accnt" - "github.com/raintank/metrictank/mdata/chunk" - "github.com/raintank/metrictank/stats" - "github.com/raintank/metrictank/tracing" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" ) diff --git a/mdata/cache/ccache_chunk.go b/mdata/cache/ccache_chunk.go index 1515a0a5c7..6ea94dbc28 100644 --- a/mdata/cache/ccache_chunk.go +++ b/mdata/cache/ccache_chunk.go @@ -1,7 +1,7 @@ package cache import ( - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" ) type CCacheChunk struct { diff --git a/mdata/cache/ccache_metric.go b/mdata/cache/ccache_metric.go index ed15d41b00..a14d0e3223 100644 --- a/mdata/cache/ccache_metric.go +++ b/mdata/cache/ccache_metric.go @@ -5,9 +5,9 @@ import ( "sort" "sync" + "github.com/grafana/metrictank/mdata/cache/accnt" + "github.com/grafana/metrictank/mdata/chunk" opentracing "github.com/opentracing/opentracing-go" - "github.com/raintank/metrictank/mdata/cache/accnt" - "github.com/raintank/metrictank/mdata/chunk" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/mdata/cache/ccache_test.go b/mdata/cache/ccache_test.go index 79261d631f..62581fac29 100644 --- a/mdata/cache/ccache_test.go +++ b/mdata/cache/ccache_test.go @@ -5,8 +5,8 @@ import ( "encoding/binary" "testing" - "github.com/raintank/metrictank/mdata/chunk" - "github.com/raintank/metrictank/test" + "github.com/grafana/metrictank/mdata/chunk" + "github.com/grafana/metrictank/test" ) func getItgen(t *testing.T, values []uint32, ts uint32, spanaware bool) chunk.IterGen { diff --git a/mdata/cache/if.go b/mdata/cache/if.go index 88ffcb7701..39524b8fd0 100644 --- a/mdata/cache/if.go +++ b/mdata/cache/if.go @@ -3,7 +3,7 @@ package cache import ( "context" - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" ) type Cache interface { diff --git a/mdata/chunk/archive/archive.go b/mdata/chunk/archive/archive.go index 6d5dac01da..bc9b42c3d8 100644 --- a/mdata/chunk/archive/archive.go +++ b/mdata/chunk/archive/archive.go @@ -8,7 +8,7 @@ import ( "io" "io/ioutil" - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" "gopkg.in/raintank/schema.v1" ) diff --git a/mdata/chunk/archive/archive_gen.go b/mdata/chunk/archive/archive_gen.go index ac14e82d3d..57a8d36074 100644 --- a/mdata/chunk/archive/archive_gen.go +++ b/mdata/chunk/archive/archive_gen.go @@ -5,7 +5,7 @@ package archive // DO NOT EDIT import ( - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" "github.com/tinylib/msgp/msgp" ) diff --git a/mdata/chunk/chunk.go b/mdata/chunk/chunk.go index fd53f3801c..00e84b8b28 100644 --- a/mdata/chunk/chunk.go +++ b/mdata/chunk/chunk.go @@ -4,7 +4,7 @@ import ( "fmt" "github.com/dgryski/go-tsz" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/stats" ) // metric tank.total_points is the number of points currently held in the in-memory ringbuffer diff --git a/mdata/cwr.go b/mdata/cwr.go index 2d3629a571..eea3b8c873 100644 --- a/mdata/cwr.go +++ b/mdata/cwr.go @@ -3,7 +3,7 @@ package mdata import ( "time" - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" ) type ChunkReadRequest struct { diff --git a/mdata/ifaces.go b/mdata/ifaces.go index cc90fe2512..45127ad243 100644 --- a/mdata/ifaces.go +++ b/mdata/ifaces.go @@ -1,7 +1,7 @@ package mdata import ( - "github.com/raintank/metrictank/consolidation" + "github.com/grafana/metrictank/consolidation" ) type Metrics interface { diff --git a/mdata/init.go b/mdata/init.go index 4b746a9d9a..062c41a2b7 100644 --- a/mdata/init.go +++ b/mdata/init.go @@ -7,8 +7,8 @@ import ( "flag" "io/ioutil" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" ) diff --git a/mdata/notifier.go b/mdata/notifier.go index 24e8293a33..ea363f2194 100644 --- a/mdata/notifier.go +++ b/mdata/notifier.go @@ -5,9 +5,9 @@ import ( "strconv" "strings" - "github.com/raintank/metrictank/consolidation" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/consolidation" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/mdata/notifierKafka/cfg.go b/mdata/notifierKafka/cfg.go index d736d08813..b45f17b00f 100644 --- a/mdata/notifierKafka/cfg.go +++ b/mdata/notifierKafka/cfg.go @@ -8,9 +8,9 @@ import ( "time" "github.com/Shopify/sarama" - part "github.com/raintank/metrictank/cluster/partitioner" - "github.com/raintank/metrictank/kafka" - "github.com/raintank/metrictank/stats" + part "github.com/grafana/metrictank/cluster/partitioner" + "github.com/grafana/metrictank/kafka" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" ) diff --git a/mdata/notifierKafka/notifierKafka.go b/mdata/notifierKafka/notifierKafka.go index f5005dbf18..8b4e97b4a9 100644 --- a/mdata/notifierKafka/notifierKafka.go +++ b/mdata/notifierKafka/notifierKafka.go @@ -9,10 +9,10 @@ import ( "time" "github.com/Shopify/sarama" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/kafka" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/util" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/kafka" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/util" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/mdata/notifierNsq/cfg.go b/mdata/notifierNsq/cfg.go index c003e78308..085d5666cf 100644 --- a/mdata/notifierNsq/cfg.go +++ b/mdata/notifierNsq/cfg.go @@ -11,8 +11,8 @@ import ( "log" "strings" + "github.com/grafana/metrictank/stats" "github.com/nsqio/go-nsq" - "github.com/raintank/metrictank/stats" "github.com/raintank/misc/app" "github.com/rakyll/globalconf" ) diff --git a/mdata/notifierNsq/instrumented_nsq/consumer.go b/mdata/notifierNsq/instrumented_nsq/consumer.go index e06c9018ea..560ac171ef 100644 --- a/mdata/notifierNsq/instrumented_nsq/consumer.go +++ b/mdata/notifierNsq/instrumented_nsq/consumer.go @@ -4,8 +4,8 @@ import ( "fmt" "time" + "github.com/grafana/metrictank/stats" "github.com/nsqio/go-nsq" - "github.com/raintank/metrictank/stats" ) type Consumer struct { diff --git a/mdata/notifierNsq/notifierNsq.go b/mdata/notifierNsq/notifierNsq.go index 42eb16fc17..e275b036ac 100644 --- a/mdata/notifierNsq/notifierNsq.go +++ b/mdata/notifierNsq/notifierNsq.go @@ -7,11 +7,11 @@ import ( "time" "github.com/bitly/go-hostpool" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/notifierNsq/instrumented_nsq" + "github.com/grafana/metrictank/stats" "github.com/nsqio/go-nsq" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/notifierNsq/instrumented_nsq" - "github.com/raintank/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/mdata/result.go b/mdata/result.go index 886d2d92d9..afe148e557 100644 --- a/mdata/result.go +++ b/mdata/result.go @@ -1,7 +1,7 @@ package mdata import ( - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" "gopkg.in/raintank/schema.v1" ) diff --git a/mdata/schema.go b/mdata/schema.go index 0cd2ff6105..cf2f9cc6cc 100644 --- a/mdata/schema.go +++ b/mdata/schema.go @@ -1,7 +1,7 @@ package mdata import ( - "github.com/raintank/metrictank/conf" + "github.com/grafana/metrictank/conf" ) func MaxChunkSpan() uint32 { diff --git a/mdata/store.go b/mdata/store.go index 995baf55fb..9d025b3cbc 100644 --- a/mdata/store.go +++ b/mdata/store.go @@ -3,7 +3,7 @@ package mdata import ( "context" - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" ) type Store interface { diff --git a/mdata/store_cassandra.go b/mdata/store_cassandra.go index c99701643b..493c2bc050 100644 --- a/mdata/store_cassandra.go +++ b/mdata/store_cassandra.go @@ -12,13 +12,13 @@ import ( "time" "github.com/gocql/gocql" + "github.com/grafana/metrictank/cassandra" + "github.com/grafana/metrictank/mdata/chunk" + "github.com/grafana/metrictank/stats" + "github.com/grafana/metrictank/tracing" "github.com/hailocab/go-hostpool" opentracing "github.com/opentracing/opentracing-go" tags "github.com/opentracing/opentracing-go/ext" - "github.com/raintank/metrictank/cassandra" - "github.com/raintank/metrictank/mdata/chunk" - "github.com/raintank/metrictank/stats" - "github.com/raintank/metrictank/tracing" "github.com/raintank/worldping-api/pkg/log" ) diff --git a/mdata/store_devnull.go b/mdata/store_devnull.go index 9b7fc2b3d0..9be3ef95d8 100644 --- a/mdata/store_devnull.go +++ b/mdata/store_devnull.go @@ -3,7 +3,7 @@ package mdata import ( "context" - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" ) type devnullStore struct { diff --git a/mdata/store_mock.go b/mdata/store_mock.go index 5278be3d25..47394897ac 100644 --- a/mdata/store_mock.go +++ b/mdata/store_mock.go @@ -4,7 +4,7 @@ import ( "context" "errors" - "github.com/raintank/metrictank/mdata/chunk" + "github.com/grafana/metrictank/mdata/chunk" ) // MockStore is an in-memory Store implementation for unit tests diff --git a/metrictank-sample.ini b/metrictank-sample.ini index df18bc9afe..e77f1e0d81 100644 --- a/metrictank-sample.ini +++ b/metrictank-sample.ini @@ -8,7 +8,7 @@ instance = default ## data ## -# see https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # forego persisting of first received (and typically incomplete) chunk drop-first-chunk = false @@ -26,7 +26,7 @@ warm-up-period = 1h ## metric data storage in cassandra ## -# see https://github.com/raintank/metrictank/blob/master/docs/cassandra.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/cassandra.md for more details # comma-separated list of hostnames to connect to cassandra-addrs = # keyspace to use for storing the metric data table diff --git a/metrictank.go b/metrictank.go index 29fc1cb1a9..f36774a4e0 100644 --- a/metrictank.go +++ b/metrictank.go @@ -17,23 +17,23 @@ import ( "github.com/Dieterbe/profiletrigger/heap" "github.com/Shopify/sarama" + "github.com/grafana/metrictank/api" + "github.com/grafana/metrictank/cluster" + "github.com/grafana/metrictank/conf" + "github.com/grafana/metrictank/idx" + "github.com/grafana/metrictank/idx/cassandra" + "github.com/grafana/metrictank/idx/memory" + "github.com/grafana/metrictank/input" + inCarbon "github.com/grafana/metrictank/input/carbon" + inKafkaMdm "github.com/grafana/metrictank/input/kafkamdm" + "github.com/grafana/metrictank/mdata" + "github.com/grafana/metrictank/mdata/cache" + "github.com/grafana/metrictank/mdata/notifierKafka" + "github.com/grafana/metrictank/mdata/notifierNsq" + "github.com/grafana/metrictank/stats" + statsConfig "github.com/grafana/metrictank/stats/config" opentracing "github.com/opentracing/opentracing-go" "github.com/raintank/dur" - "github.com/raintank/metrictank/api" - "github.com/raintank/metrictank/cluster" - "github.com/raintank/metrictank/conf" - "github.com/raintank/metrictank/idx" - "github.com/raintank/metrictank/idx/cassandra" - "github.com/raintank/metrictank/idx/memory" - "github.com/raintank/metrictank/input" - inCarbon "github.com/raintank/metrictank/input/carbon" - inKafkaMdm "github.com/raintank/metrictank/input/kafkamdm" - "github.com/raintank/metrictank/mdata" - "github.com/raintank/metrictank/mdata/cache" - "github.com/raintank/metrictank/mdata/notifierKafka" - "github.com/raintank/metrictank/mdata/notifierNsq" - "github.com/raintank/metrictank/stats" - statsConfig "github.com/raintank/metrictank/stats/config" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" ) diff --git a/scripts/Dockerfile b/scripts/Dockerfile index 79abbc6054..60e01543d7 100644 --- a/scripts/Dockerfile +++ b/scripts/Dockerfile @@ -1,5 +1,5 @@ FROM alpine -MAINTAINER Anthony Woods awoods@raintank.io +MAINTAINER Dieter Plaetinck dieter@grafana.com RUN apk add -U tzdata diff --git a/scripts/build.sh b/scripts/build.sh index e3c123fa88..96c962467c 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -17,7 +17,7 @@ rm -rf $BUILDDIR/* export CGO_ENABLED=0 # Build binary -cd $GOPATH/src/github.com/raintank/metrictank +cd $GOPATH/src/github.com/grafana/metrictank OUTPUT=$BUILDDIR/metrictank diff --git a/scripts/build_docker.sh b/scripts/build_docker.sh index 43182ae63c..fedab2c541 100755 --- a/scripts/build_docker.sh +++ b/scripts/build_docker.sh @@ -10,7 +10,7 @@ VERSION=`git describe --always` mkdir -p build cp ../build/* build/ -docker build -t raintank/metrictank . -docker tag raintank/metrictank raintank/metrictank:latest -docker tag raintank/metrictank raintank/metrictank:$VERSION +docker build -t grafana/metrictank . +docker tag grafana/metrictank grafana/metrictank:latest +docker tag grafana/metrictank grafana/metrictank:$VERSION diff --git a/scripts/build_tools.sh b/scripts/build_tools.sh index 4e4fe8351e..32c2816757 100755 --- a/scripts/build_tools.sh +++ b/scripts/build_tools.sh @@ -19,7 +19,7 @@ function fail () { } # Build binary -cd $GOPATH/src/github.com/raintank/metrictank/cmd +cd $GOPATH/src/github.com/grafana/metrictank/cmd for tool in *; do cd $tool if [ "$1" == "-race" ] diff --git a/scripts/config-to-doc.sh b/scripts/config-to-doc.sh index 3fa5b692d2..e757cf2e48 100755 --- a/scripts/config-to-doc.sh +++ b/scripts/config-to-doc.sh @@ -52,9 +52,9 @@ fi cat << EOF # Config -Metrictank comes with an [example main config file](https://github.com/raintank/metrictank/blob/master/metrictank-sample.ini), -a [storage-schemas.conf file](https://github.com/raintank/metrictank/blob/master/scripts/config/storage-schemas.conf) and -a [storage-aggregation.conf file](https://github.com/raintank/metrictank/blob/master/scripts/config/storage-aggregation.conf) +Metrictank comes with an [example main config file](https://github.com/grafana/metrictank/blob/master/metrictank-sample.ini), +a [storage-schemas.conf file](https://github.com/grafana/metrictank/blob/master/scripts/config/storage-schemas.conf) and +a [storage-aggregation.conf file](https://github.com/grafana/metrictank/blob/master/scripts/config/storage-aggregation.conf) The files themselves are well documented, but for your convenience, they are replicated below. @@ -101,6 +101,6 @@ cat scripts/config/storage-aggregation.conf cat << EOF \`\`\` -This file is generated by [config-to-doc](https://github.com/raintank/metrictank/blob/master/scripts/config-to-doc.sh) +This file is generated by [config-to-doc](https://github.com/grafana/metrictank/blob/master/scripts/config-to-doc.sh) EOF diff --git a/scripts/config/metrictank-docker.ini b/scripts/config/metrictank-docker.ini index 9a830428fc..04e58a8f1c 100644 --- a/scripts/config/metrictank-docker.ini +++ b/scripts/config/metrictank-docker.ini @@ -5,7 +5,7 @@ instance = default ## data ## -# see https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # forego persisting of first received (and typically incomplete) chunk drop-first-chunk = false @@ -23,7 +23,7 @@ warm-up-period = 1h ## metric data storage in cassandra ## -# see https://github.com/raintank/metrictank/blob/master/docs/cassandra.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/cassandra.md for more details # comma-separated list of hostnames to connect to cassandra-addrs = cassandra:9042 # keyspace to use for storing the metric data table diff --git a/scripts/config/metrictank-package.ini b/scripts/config/metrictank-package.ini index 76366f1a9d..9d16328fc3 100644 --- a/scripts/config/metrictank-package.ini +++ b/scripts/config/metrictank-package.ini @@ -5,7 +5,7 @@ instance = default ## data ## -# see https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # forego persisting of first received (and typically incomplete) chunk drop-first-chunk = false @@ -23,7 +23,7 @@ warm-up-period = 1h ## metric data storage in cassandra ## -# see https://github.com/raintank/metrictank/blob/master/docs/cassandra.md for more details +# see https://github.com/grafana/metrictank/blob/master/docs/cassandra.md for more details # comma-separated list of hostnames to connect to cassandra-addrs = localhost:9042 # keyspace to use for storing the metric data table diff --git a/scripts/config/storage-aggregation.conf b/scripts/config/storage-aggregation.conf index f3c0947509..201e5041b5 100644 --- a/scripts/config/storage-aggregation.conf +++ b/scripts/config/storage-aggregation.conf @@ -9,7 +9,7 @@ # When using multiple, the first one is used for reading. In the future, we will add capabilities to select the different archives for reading. # * the settings configured when metrictank starts are what is applied. So you can enable or disable archives by restarting metrictank. # -# see https://github.com/raintank/metrictank/blob/master/docs/consolidation.md for related info. +# see https://github.com/grafana/metrictank/blob/master/docs/consolidation.md for related info. [default] pattern = .* diff --git a/scripts/config/storage-schemas.conf b/scripts/config/storage-schemas.conf index 93fee450ef..2d12a1d74b 100644 --- a/scripts/config/storage-schemas.conf +++ b/scripts/config/storage-schemas.conf @@ -27,14 +27,14 @@ #y - year # # The final 3 fields are specific to metrictank and if unspecified, use sane defaults. -# See https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for more details +# See https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for more details # # chunkspan: duration of chunks. e.g. 10min, 30min, 1h, 90min... -# must be valid value as described here https://github.com/raintank/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans +# must be valid value as described here https://github.com/grafana/metrictank/blob/master/docs/memory-server.md#valid-chunk-spans # Defaults to a the smallest chunkspan that can hold at least 100 points. # # numchunks: number of raw chunks to keep in in-memory ring buffer -# See https://github.com/raintank/metrictank/blob/master/docs/memory-server.md for details and trade-offs, especially when compared to chunk-cache +# See https://github.com/grafana/metrictank/blob/master/docs/memory-server.md for details and trade-offs, especially when compared to chunk-cache # which may be a more effective method to cache data and alleviate workload for cassandra. # Defaults to 2 # diff --git a/scripts/config/systemd/metrictank.service b/scripts/config/systemd/metrictank.service index d523def627..626a65ec15 100644 --- a/scripts/config/systemd/metrictank.service +++ b/scripts/config/systemd/metrictank.service @@ -1,6 +1,6 @@ [Unit] Description=Starts and stops a single metrictank instance on this system -Documentation=https://github.com/raintank/metrictank/tree/master/docs +Documentation=https://github.com/grafana/metrictank/tree/master/docs Wants=network-online.target After=network-online.target @@ -9,7 +9,7 @@ User=root Group=root Type=simple Restart=on-failure -WorkingDirectory=/var/run/raintank +WorkingDirectory=/var/run/metrictank ExecStart=/usr/sbin/metrictank -config=/etc/metrictank/metrictank.ini LimitNOFILE=102400 TimeoutStopSec=60 diff --git a/scripts/depends.sh b/scripts/depends.sh index 55ec5eb3f0..8f75cc6df8 100755 --- a/scripts/depends.sh +++ b/scripts/depends.sh @@ -5,7 +5,7 @@ DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) cd ${DIR} : ${GOPATH:="${HOME}/.go_workspace"} -: ${ORG_PATH:="github.com/raintank"} +: ${ORG_PATH:="github.com/grafana"} : ${REPO_PATH:="${ORG_PATH}/metrictank"} if [ ! -z ${CIRCLECI} ] ; then diff --git a/scripts/deploy_docker.sh b/scripts/deploy_docker.sh index fd9dd08962..5504c91223 100755 --- a/scripts/deploy_docker.sh +++ b/scripts/deploy_docker.sh @@ -7,5 +7,5 @@ cd ${DIR} VERSION=`git describe --always` -docker push raintank/metrictank:$VERSION -docker push raintank/metrictank:latest +docker push grafana/metrictank:$VERSION +docker push grafana/metrictank:latest diff --git a/scripts/package.sh b/scripts/package.sh index 47702834a6..ae020dc0fe 100755 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -57,7 +57,7 @@ BUILD=${BUILD_ROOT}/systemd mkdir -p ${BUILD}/usr/sbin mkdir -p ${BUILD}/lib/systemd/system/ mkdir -p ${BUILD}/etc/metrictank -mkdir -p ${BUILD}/var/run/raintank +mkdir -p ${BUILD}/var/run/metrictank cp ${BASE}/config/metrictank-package.ini ${BUILD}/etc/metrictank/metrictank.ini cp ${BASE}/config/storage-schemas.conf ${BUILD}/etc/metrictank/ @@ -69,7 +69,7 @@ PACKAGE_NAME="${BUILD}/metrictank-${VERSION}_${ARCH}.deb" fpm -s dir -t deb \ -v ${VERSION} -n metrictank -a ${ARCH} --description "metrictank, the gorilla-inspired timeseries database backend for graphite" \ --config-files /etc/metrictank/ \ - -m "Raintank Inc. " --vendor "raintank.io" \ + -m "Raintank Inc. " --vendor "grafana.com" \ --license "Apache2.0" -C ${BUILD} -p ${PACKAGE_NAME} . BUILD=${BUILD_ROOT}/systemd-centos7 @@ -77,7 +77,7 @@ BUILD=${BUILD_ROOT}/systemd-centos7 mkdir -p ${BUILD}/usr/sbin mkdir -p ${BUILD}/lib/systemd/system/ mkdir -p ${BUILD}/etc/metrictank -mkdir -p ${BUILD}/var/run/raintank +mkdir -p ${BUILD}/var/run/metrictank cp ${BASE}/config/metrictank-package.ini ${BUILD}/etc/metrictank/metrictank.ini cp ${BASE}/config/storage-schemas.conf ${BUILD}/etc/metrictank/ @@ -89,7 +89,7 @@ PACKAGE_NAME="${BUILD}/metrictank-${VERSION}.el7.${ARCH}.rpm" fpm -s dir -t rpm \ -v ${VERSION} -n metrictank -a ${ARCH} --description "metrictank, the gorilla-inspired timeseries database backend for graphite" \ --config-files /etc/metrictank/ \ - -m "Raintank Inc. " --vendor "raintank.io" \ + -m "Raintank Inc. " --vendor "grafana.com" \ --license "Apache2.0" -C ${BUILD} -p ${PACKAGE_NAME} . ## CentOS 6 diff --git a/scripts/tools-to-doc.sh b/scripts/tools-to-doc.sh index e4ae5f2bdd..aa73aa727f 100755 --- a/scripts/tools-to-doc.sh +++ b/scripts/tools-to-doc.sh @@ -11,7 +11,7 @@ Metrictank comes with a bunch of helper tools. Here is an overview of them all. -This file is generated by [tools-to-doc](https://github.com/raintank/metrictank/blob/master/scripts/tools-to-doc.sh) +This file is generated by [tools-to-doc](https://github.com/grafana/metrictank/blob/master/scripts/tools-to-doc.sh) --- diff --git a/scripts/tools_gitignore.sh b/scripts/tools_gitignore.sh index eafccdc720..68606a32d4 100755 --- a/scripts/tools_gitignore.sh +++ b/scripts/tools_gitignore.sh @@ -6,7 +6,7 @@ cd ${DIR} SOURCEDIR=${DIR}/.. file=$SOURCEDIR/.gitignore -cd $GOPATH/src/github.com/raintank/metrictank/cmd +cd $GOPATH/src/github.com/grafana/metrictank/cmd declare -a missing for tool in *; do rule="/cmd/$tool/$tool" diff --git a/stats/config/init.go b/stats/config/init.go index db7c97ed73..91142b769a 100644 --- a/stats/config/init.go +++ b/stats/config/init.go @@ -4,7 +4,7 @@ import ( "flag" "strings" - "github.com/raintank/metrictank/stats" + "github.com/grafana/metrictank/stats" "github.com/raintank/worldping-api/pkg/log" "github.com/rakyll/globalconf" ) diff --git a/vendor/github.com/metrics20/go-metrics20/carbon20/validate.go b/vendor/github.com/metrics20/go-metrics20/carbon20/validate.go index df4b5430d8..c5665e20cf 100644 --- a/vendor/github.com/metrics20/go-metrics20/carbon20/validate.go +++ b/vendor/github.com/metrics20/go-metrics20/carbon20/validate.go @@ -216,8 +216,8 @@ func ValidatePacket(buf []byte, levelLegacy ValidationLevelLegacy, levelM20 Vali // graphite graciously allows a leading dot by pretending it's not there. // (e.g. send ".foo" -> metric will become "foo") so we do the same. - // see https://github.com/raintank/metrictank/issues/668 and - // https://github.com/raintank/metrictank/issues/694 + // see https://github.com/grafana/metrictank/issues/668 and + // https://github.com/grafana/metrictank/issues/694 if len(fields[0]) != 0 && fields[0][0] == '.' { fields[0] = fields[0][1:] } diff --git a/vendor/vendor.json b/vendor/vendor.json index 09e9f15aeb..952a9362c5 100644 --- a/vendor/vendor.json +++ b/vendor/vendor.json @@ -597,5 +597,5 @@ "revisionTime": "2017-01-12T12:37:55Z" } ], - "rootPath": "github.com/raintank/metrictank" + "rootPath": "github.com/grafana/metrictank" }