From 0f40b2d206410309e6866d420882a373b98c16fb Mon Sep 17 00:00:00 2001 From: Marcus Efraimsson Date: Fri, 8 Feb 2019 17:28:15 +0100 Subject: [PATCH] devenv: trying to make fluentd with inoffical fluent-plugin-loki work --- devenv/docker/ha_test/docker-compose.yaml | 26 ++++++++++++++++ devenv/docker/ha_test/fluentd/Dockerfile | 30 +++++++++++++++++++ devenv/docker/ha_test/fluentd/Gemfile | 1 + devenv/docker/ha_test/fluentd/fluent.conf | 19 ++++++++++++ .../provisioning/datasources/datasources.yaml | 7 ++++- 5 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 devenv/docker/ha_test/fluentd/Dockerfile create mode 100644 devenv/docker/ha_test/fluentd/Gemfile create mode 100644 devenv/docker/ha_test/fluentd/fluent.conf diff --git a/devenv/docker/ha_test/docker-compose.yaml b/devenv/docker/ha_test/docker-compose.yaml index 8087894c56e..91f5eead697 100644 --- a/devenv/docker/ha_test/docker-compose.yaml +++ b/devenv/docker/ha_test/docker-compose.yaml @@ -7,6 +7,10 @@ services: - "80:80" volumes: - /var/run/docker.sock:/tmp/docker.sock:ro + logging: + driver: "fluentd" + options: + tag: nginx db: image: mysql:5.6 @@ -73,6 +77,10 @@ services: depends_on: db: condition: service_healthy + logging: + driver: "fluentd" + options: + tag: grafana prometheus: image: prom/prometheus:v2.4.2 @@ -82,3 +90,21 @@ services: - VIRTUAL_HOST=prometheus.loc ports: - 9090 + + loki: + image: grafana/loki:master + environment: + - VIRTUAL_HOST=loki.loc + ports: + - 3100 + command: -config.file=/etc/loki/local-config.yaml + + fluentd: + build: ./fluentd + volumes: + - ./fluentd/fluent.conf:/fluentd/etc/fluent.conf + links: + - loki + ports: + - "24224:24224" + - "24224:24224/udp" diff --git a/devenv/docker/ha_test/fluentd/Dockerfile b/devenv/docker/ha_test/fluentd/Dockerfile new file mode 100644 index 00000000000..75956b7d572 --- /dev/null +++ b/devenv/docker/ha_test/fluentd/Dockerfile @@ -0,0 +1,30 @@ +FROM fluent/fluentd:v1.3.3-debian-1.0 + +# USER root + +# RUN apk add --no-cache --update --virtual .build-deps \ +# sudo build-base ruby-dev \ +# && sudo gem install bundler \ +# && gem 'loki', git: 'https://github.com/grafana/loki.git', glob: 'fluentd/fluent-plugin-loki/*.gemspec' \ +# && sudo gem sources --clear-all \ +# && apk del .build-deps \ +# && rm -rf /home/fluent/.gem/ruby/2.5.0/cache/*.gem + +# USER fluent + +USER root + +COPY Gemfile . +RUN ["gem", "install", "fluent-plugin-loki"] + +# RUN apt-get -y update \ +# && apt-get -y install git \ +# && apt-get clean \ +# && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/man/?? /usr/share/man/??_* + +# RUN gem install bundler \ +# && bundler install + +# COPY fluent.conf /fluentd/etc + +USER fluent diff --git a/devenv/docker/ha_test/fluentd/Gemfile b/devenv/docker/ha_test/fluentd/Gemfile new file mode 100644 index 00000000000..20b4d4aebec --- /dev/null +++ b/devenv/docker/ha_test/fluentd/Gemfile @@ -0,0 +1 @@ +source 'https://rubygems.org' diff --git a/devenv/docker/ha_test/fluentd/fluent.conf b/devenv/docker/ha_test/fluentd/fluent.conf new file mode 100644 index 00000000000..44091934be1 --- /dev/null +++ b/devenv/docker/ha_test/fluentd/fluent.conf @@ -0,0 +1,19 @@ + + @type forward + port 24224 + bind 0.0.0.0 + + + + @type stdout + format json + + + + @type loki + endpoint_url "http://loki:3100" + labels {"env":"dev"} + flush_interval 10s + flush_at_shutdown true + buffer_chunk_limit 1m + \ No newline at end of file diff --git a/devenv/docker/ha_test/grafana/provisioning/datasources/datasources.yaml b/devenv/docker/ha_test/grafana/provisioning/datasources/datasources.yaml index 8d59793be16..3cf02b6a9b6 100644 --- a/devenv/docker/ha_test/grafana/provisioning/datasources/datasources.yaml +++ b/devenv/docker/ha_test/grafana/provisioning/datasources/datasources.yaml @@ -8,4 +8,9 @@ datasources: jsonData: timeInterval: 10s queryTimeout: 30s - httpMethod: POST \ No newline at end of file + httpMethod: POST + + - name: Loki + type: loki + access: proxy + url: http://loki:3100