RAKUS Developers Blog | ラクス エンジニアブログ

株式会社ラクスのITエンジニアによる技術ブログです。

ローカル環境でGrafana Lokiをためしてみた

f:id:tech-rakus:20200707121229p:plain

はじめまして。新規サービスの開発チームに所属しているkarabishです。 前から気になっていたGrafana Lokiをローカルで試してみました。

Grafana Lokiはログ集約システムで、似たものとしてはElasticsearchSplunkになるのかと思います。 公式ドキュメントでもElasticsearchとの比較が記載されています。

環境構築

今回は、docker-composeでローカルにLokiを構築した手順になります。 PostgreSQLのログを転送させるようにしています。

1. ロギングプラグインのインストール

PostgreSQLのログをLokiに直接転送するためにdocker pluginをインストールします。 docker pluginについてはDocker Driver Clientに記載されています。

$ docker plugin install grafana/loki-docker-driver:latest --alias loki --grant-all-permissions
latest: Pulling from grafana/loki-docker-driver
0974501310e6: Download complete 
Digest: sha256:436fb0e17e7dde023398b539b03d91d902d5293da199a6ef6bb0b8262b8801e7
Status: Downloaded newer image for grafana/loki-docker-driver:latest
Installed plugin grafana/loki-docker-driver:latest
$ 

2. docker-compose.ymlにLokiを追加

ドキュメントに紹介されていたdocker-compose.ymlを参考に記載したものです。 PostgreSQLのログをLokiに転送するためにloggingプロパティでLokiの接続情報を記載しています。

version: "3.8"
networks:
  loki:
services:
  postgres:
    image: postgres:12.3
    container_name: postgresql
    ports:
      - 5432:5432
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
      - POSTGRES_DB=sample
    restart: always
    logging:
      driver: loki
      options:
        loki-url: http://localhost:3100/loki/api/v1/push
    volumes:
      - postgresdata:/var/lib/postgresql/data
  loki:
    image: grafana/loki:1.5.0
    container_name: loki
    ports:
      - 3100:3100
    command: -config.file=/etc/loki/local-config.yaml
    networks:
      - loki
  grafana:
    image: grafana/grafana:master
    container_name: grafana
    ports:
      - 3000:3000
    networks:
      - loki
volumes:
  postgresdata:
    driver: local

3. docker-composeの起動

$ docker-compose up -d
Creating network "grafana-loki_default" with the default driver
Creating network "grafana-loki_loki" with the default driver
Creating volume "grafana-loki_postgresdata" with local driver
Creating loki       ... done
Creating grafana    ... done
Creating postgresql ... done
$ 

ログの閲覧と検索

初期設定

Grafanaにログインします。 URLはhttp://localhost:3000/です。
初回はEmail or username: admin、Password: adminでログインできます。

Add your first data sourceからLokiを選択して、URL欄にhttp://loki:3100を入力の上、[Save&Test]ボタンを押せば初期設定は完了です。

ログの閲覧

サイドメニューからExploreにアクセスします。あとは、Log lablesを設定するとログが閲覧できます。 下の画像はcontainer_nameラベルでpostgresqlコンテナのログを閲覧した結果です。

f:id:karabish:20200701183130p:plain

最後に

比較的少ない作業でPostgreSQLのログをLokiで集約してGrafanaで閲覧するまでの構築はできました。PostgreSQLのログを見るだけであればdocker logsで問題ないのですが、他のログもあわせてみたい時があるので今後は集約するログを増やしていければと思います。

レガシーなアプリケーションにこそTypeScriptを採用するべき4つの理由

f:id:tech-rakus:20200709095730p:plain

皆さんこんにちは。ラクスのフジサワです。
以前、TypeScriptを始める前は 「学習コストが高そう」「今動いているサービスに導入するのは難しいんだろうなあ」 というイメージが強かったのですが、なんてことはなく、タイトルにある通り、 「TypeScript使わないという選択肢なくね?むしろレガシーなアプリケーションこそ、使っていくべきじゃね?」 と手のひらがグリングリン回転したので、ぜひ皆さんに紹介させてもらいたいと思い、この記事を書くことにしました。

続きを読む

新メンバーjoin時の学習に最適!「実装過去問」のススメ

f:id:tech-rakus:20200707124011p:plain

はじめに

こんにちは、@rs_tukkiです。
新型コロナウイルスの影響で大分ドタバタしていましたが、弊社ではようやく社員研修を終えた新卒社員の配属の話が本格化してきました。

新しい開発メンバーを受け入れるとき、まずやってもらうのは部署ごとの開発フローと、実際に開発するプロダクトの中身を学んでもらうことかと思います。
そこで今回は、その2点を一気に解決できる「実装過去問」について話していきたいと思います。

  • はじめに
  • 実装過去問とは
  • 実装過去問の実施手順
    • 問題集から取り組む問題を決める
    • プロジェクトのgitブランチから、問題を修正する前のブランチをcheckoutする
    • 問題を解き、テスト項目書に沿ってテストを行う
    • レビュー担当者がレビューを行う
  • 過去問を行うメリット
  • まとめ
  • おまけ
続きを読む

【Meetup】SaaSを支える開発原則/DDD、心理的安全性、Twelve-Factor

f:id:itoken1013:20200707165311p:plain

はじめに

技術広報のitoken1013です。こんにちは。
定期開催させていただいていますラクスMeetup、2月に大阪で盛況でしたSaaSを支える開発原則/DDD、心理的安全性、Twelve-Factor』をテーマに、登壇者と発表内容を新たに刷新して6/24(水)に開催しました。
今回で2回目のオンライン開催となりましたが、60名の方にご参加いただき(満員!)、Twitter や Zoom上にはコメントが溢れる盛況のイベントとなりました。
今回は当日の発表をご紹介させていただきます!

rakus.connpass.com

続きを読む

コードリーディングの肝は? ~ 「コードを読もうぜ!~Laravel編~」参加レポート~

f:id:tech-rakus:20200707114207p:plain

はじめに

こんにちは、MasaKuです。

昨今、コロナウイルスの影響により、オフラインで開催される勉強会が自粛の流れになっており、逆にオンライン開催される勉強会が増えてきていると思います。

そこで先日、以下のイベントに参加しましたので、参加した感想について述べていきたいと思います。

nrs-seminar.connpass.com

YouTube Live のアーカイブはこちら

続きを読む

Scrum Fest Osaka 2020 に登壇してきました!

はじめに

f:id:tech-rakus:20200707131525p:plain

技術広報のitoken1013です。こんにちは。
今回はScrum Fest Osaka 2020に登壇しました新卒エンジニアの樋口(@YokoHiguchi1)からの登壇レポートを紹介させていただきます!

confengine.com

www.slideshare.net

続きを読む

オンラインのアジャイルな体験 ~スクラムフェス大阪2020イベントレポート~ #scrumosaka

id:radiocat です。6/26、27に開催されたScrum Fest Osaka 2020に参加し、登壇させて頂きました。イベントをレポートします。

  • Scrum Fest Osaka 2020とは?
  • どんなイベント?
    • 会場はDiscord
    • セションはZoom
    • 数々の企業・団体スポンサーが支援
  • 基調講演
    • ちょっとした「うっ」は成長のチャンス
  • 登壇レポート
    • スクラムちゃうがなと言われてもやってみぃひん?
    • ふりかえりが重要ではない!?ふりかえりの活用方法について
  • 非秩序を乗りこなすアジャイルなイベントでした
続きを読む
Copyright © RAKUS Co., Ltd. All rights reserved.