강의

멘토링

커뮤니티

BEST
Programming

/

Web Development

Quản lý log cần thiết cho nhà phát triển

Từ việc nên ghi lại loại log nào, đến khi thu thập và tận dụng log, bao quát toàn bộ chu trình.

(4.9) 68 đánh giá

1,103 học viên

  • foo
3시간 만에 완강할 수 있는 강의 ⏰
이론 실습 모두
로그
log
Elasticsearch
logback
Logstash
Kibana
Spring Boot

Đánh giá từ những học viên đầu tiên

Bạn sẽ nhận được điều này sau khi học.

  • Bí quyết về việc cần ghi lại loại log nào trong ứng dụng.

  • Thu thập và khai thác log với ELK Stack

Bạn có còn kết nối với máy chủ qua SSH để xem nhật ký không?

Phương pháp đăng nhập trực tiếp vào máy chủ và kiểm tra tệp nhật ký có một số hạn chế. Đầu tiên, nếu bạn vận hành nhiều máy chủ, bạn phải truy cập từng máy chủ riêng lẻ, điều này tốn nhiều thời gian và khiến việc quản lý trở nên phức tạp. Thứ hai, khó có thể theo dõi nhật ký theo thời gian thực, khiến việc phản hồi nhanh chóng khi có sự cố trở nên khó khăn. Ngoài ra, vì tìm kiếm và phân tích nhật ký được thực hiện thủ công nên thông tin quan trọng có thể bị bỏ sót hoặc mất thời gian để tìm lỗi. Phương pháp này đặc biệt không hiệu quả trong các hệ thống phân tán quy mô lớn và có thể ảnh hưởng tiêu cực đến tính ổn định của dịch vụ và trải nghiệm của người dùng. Do đó, cần phải giới thiệu một phương pháp quản lý nhật ký có hệ thống và tự động hơn.

Quản lý nhật ký là một công cụ quan trọng không chỉ đơn thuần ghi lại lỗi mà còn hiểu được nhịp đập của ứng dụng và dự đoán trước các vấn đề. Đặc biệt trong các hệ thống phân tán phức tạp hiện đại, quản lý nhật ký có thể xác định tính ổn định của dịch vụ và trải nghiệm của người dùng. Trong thực tế, khả năng nhanh chóng xác định và giải quyết các vấn đề giữa một lượng lớn dữ liệu và lưu lượng truy cập là điều cần thiết.

Trong bài giảng này, "Quản lý nhật ký cho nhà phát triển", chúng tôi sẽ đề cập đến nhiều chiến lược và mẹo khác nhau có thể áp dụng ngay vào thực tế, từ việc để lại nhật ký nào cho đến cách sử dụng nhật ký. Bạn sẽ học một cách có hệ thống toàn bộ quy trình quản lý nhật ký từ đầu đến cuối và trải nghiệm trực tiếp cách sử dụng nhật ký trong hoạt động dịch vụ.

Đầu tiên, chúng ta sẽ tìm hiểu kiến ​​thức cơ bản về nhật ký. Trong bài giảng này, bạn sẽ hiểu khái niệm cơ bản và tầm quan trọng của nhật ký, tìm hiểu thông tin nào cần được ghi lại, cách sử dụng nhật ký trong xử lý ngoại lệ và tìm hiểu ý nghĩa và cách sử dụng các cấp nhật ký khác nhau. Thông qua đó, bạn sẽ nhận ra tầm quan trọng của nhật ký trong quá trình phát triển và tìm hiểu cách để lại nhật ký hiệu quả.

Thứ hai, chúng ta sẽ tìm hiểu về cấu hình Logback. Chúng ta sẽ giải thích các khái niệm cơ bản về Logback và kết nối của nó với Slf4j, và tìm hiểu cách viết tệp cấu hình Logback thực tế thông qua thực hành. Bạn có thể tìm hiểu các kỹ thuật cấu hình cần thiết trong thực hành, chẳng hạn như phân tách nhật ký thành nhiều tệp bằng nhiều Appender khác nhau, quản lý nhật ký theo ngày và nén tệp nhật ký. Bạn cũng sẽ tìm hiểu cách triển khai quản lý nhật ký linh hoạt bằng cách áp dụng các thiết lập Logback khác nhau cho từng môi trường phát triển.

Tiếp theo, chúng ta sẽ giới thiệu tầm quan trọng của việc thu thập nhật ký và cách sử dụng Elasticsearch và Logstash, là những công cụ cho việc này. Chúng ta sẽ thực hành cài đặt Elasticsearch và Logstash bằng Docker và chuyển tiếp nhật ký đến Elasticsearch thông qua LogstashAppender. Chúng ta sẽ tìm hiểu cách thu thập và quản lý nhật ký hiệu quả trong môi trường phân tán và cũng tìm hiểu cách kiểm tra hiệu quả các nhật ký được thu thập trong Elasticsearch.

Cuối cùng, chúng ta sẽ tìm hiểu về phương pháp trực quan hóa và sử dụng nhật ký. Bạn sẽ học cách trực quan hóa dữ liệu nhật ký bằng Kibana và giám sát nhật ký theo thời gian thực thông qua bảng điều khiển. Bạn sẽ học cách thêm thông tin dịch vụ và máy chủ vào dữ liệu nhật ký để cải thiện khả năng đọc nhật ký và cách xây dựng hệ thống có thể phản hồi nhanh khi xảy ra lỗi thông qua cài đặt cảnh báo. Bạn cũng sẽ học cách nhận cảnh báo thông qua Slack kết hợp với Jenkins để xây dựng môi trường giám sát nhật ký có thể sử dụng ngay trong thực tế.

Khóa học này cung cấp nội dung thiết yếu cho các nhà phát triển và kỹ sư muốn học một cách có hệ thống từ những điều cơ bản về quản lý nhật ký đến các thiết lập nâng cao. Khóa học sẽ giúp ích rất nhiều cho bất kỳ ai muốn cải thiện tính ổn định của hệ thống thông qua quản lý nhật ký hiệu quả và phát triển khả năng phản hồi nhanh chóng khi có sự cố xảy ra.


Ví dụ về tệp cấu hình Logback

< cấu hình > < tài sản tên = "LOG_FILE" giá trị = "application.log" /> < người thêm vào tên = "LOGSTASH" class = "net.logstash.logback.appender.LogstashTcpSocketAppender" > < đích > localhost:5044 đích đến > < bộ mã hóa class = "net.logstash.logback.encoding.LogstashEncode" /> người thêm vào > < người thêm vào tên = "BÀN ĐIỀU KHIỂN" lớp = "ch.qos.logback.core.ConsoleAppender" > < mã hóa > < mẫu > %d{yyyy-MM-dd HH:mm:ss} %-5mức [%thread] %logger{36} - %msg%n mẫu > bộ mã hóa > người thêm vào > < người thêm vào tên = "TẬP TIN" lớp = "ch.qos.logback.core.rolling.RollingFileAppender" > < tập tin > ${LOG_FILE} tập tin > < chính sách lăn lớp = "ch.qos.logback.core.rolling.TimeBasedRollingPolicy" > < fileNamePattern > ứng dụng.%d{yyyy-MM-dd_HH-mm}.log.gz fileNamePattern > < lịch sử tối đa > 5 Lịch sử tối đa > rollingPolicy > < mã hóa > < mẫu > %d{yyyy-MM-dd HH:mm:ss} %-5mức [%thread] %logger{36} - %msg%n mẫu > bộ mã hóa > người thêm vào > < gốc mức độ = "dấu vết" > < tham chiếu phụ lục tham chiếu = "BÀN ĐIỀU KHIỂN" /> < tham chiếu phụ lục tham chiếu = "TẬP TIN" /> < tham chiếu phụ lục tham chiếu = "LOGSTASH" /> gốc > cấu hình >


Ví dụ trực quan hóa nhật ký



Tìm hiểu về những điều này

Hiểu về Nhật ký cơ bản

Tìm hiểu thông tin cần ghi nhật ký, vai trò của nhật ký trong việc xử lý ngoại lệ và ý nghĩa cũng như cách sử dụng các cấp nhật ký khác nhau để đặt nền tảng cho việc viết nhật ký hiệu quả.

Đăng nhập lại

Chúng tôi sẽ trình bày một cách có hệ thống mọi thứ từ các thiết lập cơ bản đến việc sử dụng Logback. Thông qua liên kết với Slf4j, bạn sẽ học cách quản lý nhật ký hiệu quả và cách tách nhật ký thành nhiều tệp hoặc quản lý chúng hàng ngày bằng cách sử dụng nhiều Appender khác nhau.

đống ELK

Tìm hiểu cách thu thập và phân tích nhật ký bằng ngăn xếp ELK bao gồm Elasticsearch, Logstash và Kibana. Tìm hiểu cách cài đặt bằng Docker, chuyển tiếp nhật ký đến Elasticsearch qua LogstashAppender và trực quan hóa và giám sát dữ liệu nhật ký theo thời gian thực bằng Kibana.

Những điều cần lưu ý trước khi tham gia lớp học

Môi trường thực hành

  • Hệ điều hành và Phiên bản (OS): Windows 10

  • Công cụ được sử dụng: Intellij Community 2023.2, Google Chrome

Tài liệu học tập

Kiến thức và ghi chú của người chơi

  • Bài giảng này dựa trên các ứng dụng Java và Spring Boot. Tuy nhiên, vì nội dung chính của bài giảng tập trung vào việc giải thích khái niệm về nhật ký hơn là cấp độ mã, nên bạn có thể tham gia bài giảng mà không gặp bất kỳ vấn đề nào ngay cả khi bạn thực hành với các ngôn ngữ và khuôn khổ khác, ngoại trừ phần 'Cài đặt Logback'.

  • Chúng tôi sẽ không tải nó lên máy chủ và tiến hành thực hành, mà sẽ chỉ tiến hành thực hành trong môi trường phát triển cục bộ. Mặc dù thực hành sẽ được tiến hành cục bộ, chúng tôi sẽ hướng dẫn bạn cách thay đổi cài đặt khi tải nó lên máy chủ thực tế, để bạn có thể thiết lập theo cách tương tự khi tải nó lên máy chủ.

  • Nếu bạn có bất kỳ câu hỏi nào trong khi học khóa học, vui lòng để lại câu hỏi. Tôi sẽ cập nhật nếu có bất kỳ điều gì cần cập nhật.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Người muốn biết log nào cần lưu trong ứng dụng.

  • Người chán việc cứ phải SSH vào server xem log.

Cần biết trước khi bắt đầu?

  • Kinh nghiệm phát triển ứng dụng Spring Boot

Xin chào
Đây là

5,779

Học viên

271

Đánh giá

116

Trả lời

4.9

Xếp hạng

9

Các khóa học

안녕하세요.

멘토링을 하면서 주니어 개발자들이 어려워 하는 개념들에 대해 어떻게 하면 쉽게 전달할 수 있을지에 대해서 많은 고민을 하고 있는 푸(Foo)라고 합니다.

잘 부탁 드리겠습니다.


이력

  • 2019. 08 ~ 현재 : 카카오 자바 백엔드 개발자

  • 2021. 08 ~ 현재 : programmers 백엔드 데브코스 멘토

  • 2021. 12 ~ 현재 : F-Lab 자바 백엔드 멘토

 

  • 이것이 취업을 위한 백엔드 개발이다 with 자바(링크)

 

기타 이력 및 타 플랫폼 강의들은 아래 GitHub 링크에서 확인할 수 있습니다.

GitHub - https://github.com/lleellee0

Chương trình giảng dạy

Tất cả

17 bài giảng ∙ (3giờ 27phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Tất cả

68 đánh giá

4.9

68 đánh giá

  • parksangdonews님의 프로필 이미지
    parksangdonews

    Đánh giá 17

    Đánh giá trung bình 4.8

    5

    100% đã tham gia

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

    • foo
      Giảng viên

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

  • khd16927573님의 프로필 이미지
    khd16927573

    Đánh giá 12

    Đánh giá trung bình 5.0

    Đã chỉnh sửa

    5

    100% đã tham gia

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

    • foo
      Giảng viên

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

  • smh12052571님의 프로필 이미지
    smh12052571

    Đánh giá 2

    Đánh giá trung bình 5.0

    5

    100% đã tham gia

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

    • oottagiya님의 프로필 이미지
      oottagiya

      Đánh giá 26

      Đánh giá trung bình 3.8

      3

      35% đã tham gia

      • thirsthay님의 프로필 이미지
        thirsthay

        Đánh giá 3

        Đánh giá trung bình 4.7

        5

        41% đã tham gia

        • foo
          Giảng viên

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

      626.232 ₫

      Khóa học khác của foo

      Hãy khám phá các khóa học khác của giảng viên!

      Khóa học tương tự

      Khám phá các khóa học khác trong cùng lĩnh vực!