강의

멘토링

커뮤니티

BEST
Programming

/

Web Development

開発者に必要なログ管理

どのようなログを残すべきかという点から始まり、ログを収集し活用するまでの全体的なサイクルについて扱います。

難易度 初級

受講期間 無制限

  • foo
Elasticsearch
Elasticsearch
logback
logback
Logstash
Logstash
Kibana
Kibana
Spring Boot
Spring Boot
Elasticsearch
Elasticsearch
logback
logback
Logstash
Logstash
Kibana
Kibana
Spring Boot
Spring Boot

学習した受講者のレビュー

学習した受講者のレビュー

4.9

5.0

Sang Do Park

100% 受講後に作成

3時間ほどで髪を冷やすのにちょうどいい時間なので週末に教養を聞く気持ちで見ようと受講を始めました。 ^^ ジュニア時代にlog4j、logback、slf4jの区分も大変で難しく設定して苦労していた記憶が思い浮かび、多くの開発者が見てほしいという考えに購入してみました。試行錯誤を多く経験する内容をこのようによくまとめて活用し、モニタリング段階までストーリー方式で説明してくれたので、それぞれを説明する他の講義よりも没入度が高かった。 まるで射手の経験を学ぶジュニアの立場で見ると思って中間途中出てくる開発のヒントを見てみると3時間がぐっと過ぎましたね。 開発を始めた方〜みんな見て二度見てください^^ ログは時々あなたのライフラインを守ります。 (時々途切れることもありますが…)

5.0

요니

100% 受講後に作成

講義、とても勉強になりました! logback, @Sl4jf についてよく知らずに使っていたのですが 今になって概念について知ることができました! しかし、この講義の場合、単純な原理や知識で終わらずに ログを加工してみたり、 CS対応などを目的としてログを扱った経験があるならば 本当に共感しながら聞けるポイントが多かったです そのため、非常に頷きながら講義を聞いたように思います とにかく、大変役立ちましたし、 より多様なテーマについて講義を制作していただければと思います 😊😊 (あるいは複数の技術が集約された、特定のドメイン全体に関する講義であればさらに良いかと思います)

5.0

smh1205

100% 受講後に作成

ログ管理をより積極的にできるようになるかと思います。

受講後に得られること

  • アプリケーションでどのようなログを残すべきかに関するノウハウ

  • ELKスタックを活用したログ収集および活用

まだSSHでサーバーに接続してログを見ますか?

サーバーに直接ログインしてログファイルを確認する方法にはいくつかの制限があります。まず、複数のサーバーを運用する場合は、各サーバーに毎日アクセスする必要があるため、時間がかかり、管理が複雑になります。第二に、リアルタイムでログを監視するのは難しく、問題が発生したときに迅速に対応するのが難しくなります。さらに、ログの検索と分析が手動で行われるため、重要な情報を見逃したり、エラーを検出するのに時間がかかる場合があります。この方法は、特に大規模な分散システムでは非効率的であり、サービスの信頼性とユーザーエクスペリエンスに悪影響を及ぼす可能性があります。したがって、より体系的で自動化されたログ管理方法を導入する必要があります。

ログ管理は、単にエラーを記録することを超えて、アプリケーションの心拍数を理解し、問題を事前に予測する重要なツールです。特に、現代の複雑な分散システムでは、ログ管理はサービスの信頼性とユーザーエクスペリエンスに依存します。実務では、数多くのデータやトラフィックの中で迅速に問題を特定し解決する能力が不可欠です。

今回の講義「開発者に必要なログ管理」では、どのログを残すべきかからログ活用まで、実務ですぐに適用できるさまざまな戦略とヒントを取り上げます。最初から最後まで、ログ管理の全過程を体系的に学び、ログがどのようにサービス運用に活用できるかを直接経験することになります。

まず、ログに関する基礎知識について説明します。このレッスンでは、ログの基本的な概念と重要性を理解し、どの情報をログとして残すべきか、例外処理のログの活用方法、さまざまなログレベルの意味と活用方法を学びます。これにより、開発中のログの重要性を認識し、効果的にログを残す方法を学びます。

第二に、Logbackの設定について説明します。 Logbackの基本概念とSlf4jとの連携を説明し、実際のLogback設定ファイルを作成する方法を実習を通じて学習します。さまざまな Appender を活用して、ログを複数のファイルに分割したり、日単位でログを管理したり、ログファイルを圧縮したりするなど、実務上必要なセットアップ技術を習得できます。また、開発環境ごとに異なるLogback設定を適用して柔軟なログ管理を実装する方法も学びます。

次に、ログ収集の重要性とそのためのツールであるElasticsearchとLogstashの使い方を紹介します。 Dockerを利用してElasticsearchとLogstashをインストールし、LogstashAppenderを介してログをElasticsearchに転送するプロセスを実践します。分散環境でログを効率的に収集および管理する方法を学び、Elasticsearchで収集されたログを効果的に確認する方法についても学びます。

最後に、ログの可視化と活用方法について説明します。 Kibanaを活用してログデータを視覚化し、ダッシュボードを介してリアルタイムでログを監視する方法を学びます。サービスとホスト情報をログデータに追加してログの読みやすさを向上させ、アラーム設定でエラーが発生したときに迅速に対応できるシステムを構築する方法を学びます。また、Jenkinsと連携してスラックでアラームを受け取る実習を通じて、実務ですぐに活用できるログ監視環境を構築できます。

この講義は、ログ管理の基礎から高度な設定まで体系的に学習したい開発者やエンジニアに必要な内容を提供します。効果的なログ管理により、システムの安定性を高め、問題が発生した場合に迅速に対応できる能力を育成したいすべての人に大いに役立ちます。


ログバック設定ファイルの例

<configuration> <プロパティ name = "LOG_FILE" value = "application.log" /> <アペンダー name = "LOGSTASH" class = "net.logstash.logback.appender.LogstashTcpSocketAppender" > <宛先> localhost:5044 destination > <エンコーダ class = "net.logstash.logback.encoder.LogstashEncoder" /> appender > <アペンダー name = "CONSOLE" class = "ch.qos.logback.core.ConsoleAppender" > <エンコーダ> < pattern > %d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n pattern > encoder > appender > <アペンダー name = "FILE" class = "ch.qos.logback.core.rolling.RollingFileAppender" > < file > ${LOG_FILE} file > < rollingPolicy class = "ch.qos.logback.core.rolling.TimeBasedRollingPolicy" > < fileNamePattern > application.%d{yyyy-MM-dd_HH-mm}.log.gz fileNamePattern > < maxHistory > 5 maxHistory > rollingPolicy > <エンコーダ> < pattern > %d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n pattern > encoder > appender > < root level = "trace" > < appender-ref ref = "CONSOLE" /> < appender-ref ref = "FILE" /> < appender-ref ref = "LOGSTASH" /> root > configuration >


ログ視覚化の例



このようなことを学びます。

ログ基礎の理解

どの情報をログに残すべきか、例外処理におけるログの役割、さまざまなログレベルの意味と活用方法を学習し、効果的なログ作成の基礎を築きます。

ログバック

Logbackのデフォルト設定から活用まで体系的に取り上げます。 Slf4jとの連携を通じてログを効率的に管理し、さまざまなAppenderを活用してログを複数のファイルに分けたり、日単位で管理する方法を実習を通じて習得します。

ELKスタック

Elasticsearch、Logstash、Kibanaで構成されたELKスタックを活用したログ収集と分析方法を学びます。 Dockerを使用したインストールから、LogstashAppenderを介してログをElasticsearchに渡し、Kibanaを使用してログデータを視覚化し、リアルタイムで監視する技術を習得します。

受講前の注意

練習環境

  • オペレーティングシステムとバージョン(OS):Windows 10

  • 使用ツール: Intellij Community 2023.2, Google Chrome

学習資料

選手の知識と注意事項

  • そのレッスンはJava、Spring Bootアプリケーションに基づいて行われます。ただし、講義の主な内容はコードレベルではなくログの概念説明中心なので、「Logback設定」セクションを除けば他の言語、フレームワークで実習を進行しても問題なく講義を受講することができるでしょう。

  • サーバーに載せて実習を進めるのではなく、ローカル開発環境でのみ実習を進めます。ローカルで実習を進めますが、実際のサーバーに上げたときは、どのように設定を変えればいいのかご案内していますので、サーバーに上げたときも同様の過程で設定が可能です。

  • 受講中に質問がある場合は、質問を残してください。更新する必要がある場合は、更新します。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • アプリケーションでどのようなログを残すべきか知りたい人

  • 毎回SSH経由でサーバーに接続してログを見るのに疲れた人

前提知識、
必要でしょうか?

  • Spring Boot アプリケーション開発経験

こんにちは
です。

6,034

受講生

300

受講レビュー

117

回答

4.9

講座評価

9

講座

こんにちは。

メンタリングを通じて、ジュニア開発者が難しく感じる概念をいかに分かりやすく伝えられるかについて日々悩んでいる、フー(Foo)と申します。

よろしくお願いいたします。


経歴

  • 2019. 08 ~ 現在:カカオ Javaバックエンドエンジニア

  • 2021. 08 ~ 現在 : programmers バックエンドデブコース メンター

  • 2021. 12 ~ 現在 : F-Lab Javaバックエンドメンター

  • これが就職のためのバックエンド開発だ with Java(リンク)

その他の経歴や他プラットフォームでの講義は、以下のGitHubリンクからご確認いただけます。

GitHub - https://github.com/lleellee0

カリキュラム

全体

17件 ∙ (3時間 27分)

講座掲載日: 
最終更新日: 

受講レビュー

全体

82件

4.9

82件の受講レビュー

  • parksangdonews님의 프로필 이미지
    parksangdonews

    受講レビュー 17

    平均評価 4.8

    5

    100% 受講後に作成

    3時間ほどで髪を冷やすのにちょうどいい時間なので週末に教養を聞く気持ちで見ようと受講を始めました。 ^^ ジュニア時代にlog4j、logback、slf4jの区分も大変で難しく設定して苦労していた記憶が思い浮かび、多くの開発者が見てほしいという考えに購入してみました。試行錯誤を多く経験する内容をこのようによくまとめて活用し、モニタリング段階までストーリー方式で説明してくれたので、それぞれを説明する他の講義よりも没入度が高かった。 まるで射手の経験を学ぶジュニアの立場で見ると思って中間途中出てくる開発のヒントを見てみると3時間がぐっと過ぎましたね。 開発を始めた方〜みんな見て二度見てください^^ ログは時々あなたのライフラインを守ります。 (時々途切れることもありますが…)

    • foo
      知識共有者

      Sang Do Parkさん、ありがとうございます! 講義紹介文よりはるかに講義の強みをよくアピールしてくれたようですね 😊😊😊😊 講義よく聞いてくれて本当にありがとう! 書いてくれた内容も他の人にたくさん役立つと思います〜

  • khd16927573님의 프로필 이미지
    khd16927573

    受講レビュー 12

    平均評価 5.0

    修正済み

    5

    100% 受講後に作成

    講義、とても勉強になりました! logback, @Sl4jf についてよく知らずに使っていたのですが 今になって概念について知ることができました! しかし、この講義の場合、単純な原理や知識で終わらずに ログを加工してみたり、 CS対応などを目的としてログを扱った経験があるならば 本当に共感しながら聞けるポイントが多かったです そのため、非常に頷きながら講義を聞いたように思います とにかく、大変役立ちましたし、 より多様なテーマについて講義を制作していただければと思います 😊😊 (あるいは複数の技術が集約された、特定のドメイン全体に関する講義であればさらに良いかと思います)

    • foo
      知識共有者

      ヨニさんの講義をよくお聞きいただきありがとうございます! 講義を聞きながら良かった点をお話してくださり嬉しいです。:) おっしゃっていた様々な講義は、最近オープンした講義( https://inf.run/XHEvJ )も該当しそうですし、他のテーマでも講義を作ってみます! ありがとうございます〜!

  • smh12052571님의 프로필 이미지
    smh12052571

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    ログ管理をより積極的にできるようになるかと思います。

    • thirsthay님의 프로필 이미지
      thirsthay

      受講レビュー 3

      平均評価 4.7

      5

      41% 受講後に作成

      • foo
        知識共有者

        떨스티님 受講レビュー 残してくださって ありがとうございます!!

    • kduoh님의 프로필 이미지
      kduoh

      受講レビュー 36

      平均評価 5.0

      5

      100% 受講後に作成

      • foo
        知識共有者

        두두さん、受講レビューを残してくださりありがとうございます。^^ 良い一日をお過ごしください~

    ¥3,666

    fooの他の講座

    知識共有者の他の講座を見てみましょう!

    似ている講座

    同じ分野の他の講座を見てみましょう!