Computer >> Máy Tính >  >> Lập trình >> Cơ sở dữ liệu

Phân tích nhật ký dễ dàng với mô-đun Filebeat

Phân tích nhật ký dễ dàng với mô-đun Filebeat

Kể từ Elastic {on} 17, chúng tôi đã rất vui mừng về tất cả các tính năng sắp có trong Elastic Stack, đặc biệt là khái niệm mô-đun Filebeat mới. Thông thường, khi bạn muốn bắt đầu lấy dữ liệu với Filebeat, bạn cần phải định cấu hình Filebeat, tạo mẫu ánh xạ Elasticsearch, tạo và kiểm tra đường ống nhập hoặc bản sao Logstash, sau đó tạo trực quan hóa Kibana cho tập dữ liệu đó. Nhóm Beats hiện đã làm cho quá trình thiết lập đó dễ dàng hơn rất nhiều với khái niệm mô-đun.

Một mô-đun Filebeat cuộn tất cả các bước cấu hình đó thành một gói mà sau đó có thể được kích hoạt bằng một lệnh duy nhất. Filebeat 5.3.0 trở lên đi kèm với các mô-đun cho mysql, nginx, apache và nhật ký hệ thống, nhưng cũng dễ dàng tạo của riêng bạn.

Các mô-đun Filebeat đã có sẵn trong khoảng vài tuần nay, vì vậy tôi muốn tạo một blog nhanh về cách sử dụng chúng với các cụm Elasticsearch không cục bộ, như trên dịch vụ ObjectRocket. Chúng tôi vừa khởi chạy Elasticsearch phiên bản 5.4 trên dịch vụ ObjectRocket, vì vậy bạn có thể dùng thử mô-đun Filebeat ngay hôm nay và tận dụng lợi thế của mô-đun kiểm toán mới và tập tin hệ thống Linux system.auth.

Thiết lập

Các bước bên dưới tham chiếu đến ObjectRocket cho các phiên bản Elasticsearch và giao diện người dùng của chúng tôi, nhưng phải đủ dễ dàng để sửa đổi cho các dịch vụ khác hoặc các cụm của riêng bạn. Ngoài ra, chúng tôi sẽ sử dụng mô-đun “hệ thống” trong ví dụ này, nhưng việc bao gồm các mô-đun khác rất đơn giản.

Những gì bạn cần là phiên bản Elasticsearch 5.3 trở lên (tôi đã thử một số phiên bản Elasticsearch 5.x trước đó và nó hoạt động tốt, nhưng không đảm bảo), Kibana cùng phiên bản, (các) tên máy chủ để kết nối với cụm Elasticsearch, thông tin đăng nhập của người dùng với khả năng ghi vào cụm và tạo chỉ mục cũng như phiên bản 5.3 trở lên của Filebeat.

Giả sử cụm Elasticsearch của bạn và Kibana đã được thiết lập, trước tiên bạn cần tải xuống Filebeat cho bất kỳ loại hệ thống nào bạn đang chạy, tại đây, sau đó giải nén nó trên hệ thống nơi bạn muốn thu thập nhật ký. Đối với ví dụ này, tôi chỉ đang sử dụng Macbook chạy MacOS và kết nối với cụm Elasticsearch 5.4.0, vì vậy tôi sẽ sử dụng gói filebeat-5.4.0-darwin-x86_64.tar.gz. Giải nén kho lưu trữ đó và sau đó chúng tôi đã sẵn sàng thiết lập Filebeat.

Thiết lập Filebeat

Theo mặc định, Filebeat cố gắng kết nối với phiên bản Elasticsearch trên máy cục bộ của bạn và đọc tất cả nhật ký trong /var/log/*.log bằng tệp filebeat.yml được bao gồm, vì vậy trước tiên chúng tôi cần sửa đổi điều đó để trỏ đến cụm và dải của bạn ra bất kỳ khách hàng tiềm năng nào khác. Nếu đang sử dụng dịch vụ ObjectRocket, bạn có thể bắt đầu chỉ bằng cách sao chép đoạn mã Beats từ giao diện người dùng của chúng tôi, đoạn mã này sẽ tự động điền các tên máy chủ cụ thể cho cụm của bạn.

Phân tích nhật ký dễ dàng với mô-đun Filebeat

Sau khi loại bỏ mọi thứ khác và điền tên người dùng / mật khẩu, toàn bộ tệp filebeat.yml của bạn sẽ trông giống như sau:

div class =”highlight”>

output:
  elasticsearch:
    # The Elasticsearch cluster
    hosts: ["https://dfw-xxxx-0.es.objectrocket.com:xxxx", "https://dfw-xxxx-1.es.objectrocket.com:xxxx", "https://dfw-xxxx-2.es.objectrocket.com:xxxx", "https://dfw-xxxx-3.es.objectrocket.com:xxxx"]

    # HTTP basic auth
    username: "elasticsearch"
    password: "supersecretpassword"

Đó là nó. Lưu ý rằng tất cả các đầu vào đã bị loại bỏ, vì vậy tệp chỉ bao gồm thông tin kết nối Elasticsearch. Tại thời điểm này, hãy đảm bảo rằng bạn có thể truy cập cụm tìm kiếm đàn hồi từ máy của mình, các ACL được thêm vào, v.v. Bây giờ, hãy sử dụng Filebeat để đưa mọi thứ vào chuyển động.

Chạy Filebeat

Bạn đã có mọi thứ được định cấu hình để nói chuyện với cụm của mình, vì vậy, miễn là bạn đã thực hiện tất cả các thay đổi của mình đối với filebeat.yml ở vị trí mặc định, bạn sẽ chỉ chạy lệnh sau từ thư mục filebeat:

./filebeat -e -modules =system -setup

-E làm cho Filebeat đăng nhập vào stderr thay vì syslog, -modules =system yêu cầu Filebeat sử dụng mô-đun hệ thống và -setup yêu cầu Filebeat tải lên bảng điều khiển Kibana của mô-đun. Bạn chỉ cần bao gồm phần -setup của lệnh lần đầu tiên hoặc sau khi nâng cấp Filebeat, vì nó chỉ tải trang tổng quan mặc định vào Kibana. Nếu bạn muốn chạy nhiều mô-đun, bạn có thể liệt kê tất cả chúng được phân tách bằng dấu phẩy (không có dấu cách).

Lưu ý:Có một lỗi trong Filebeat 5.4.0 có thể gây ra -setup một phần của lệnh bị lỗi trên một số hệ thống nhất định. Bạn có thể giải quyết vấn đề này bằng cách đặt ulimit thành cao hơn (chạy ulimit -n 2048 ) hoặc sử dụng filebeat 5.3.x.

Filebeat bây giờ sẽ làm được việc của nó. Miễn là bạn không thấy bất kỳ lỗi nào, hãy đến với Kibana và kiểm tra nó.

Xem xét dữ liệu

Khi bạn đã đăng nhập vào Kibana, sẽ có một mẫu chỉ mục filebeat- * mới cùng với một số hình ảnh và trang tổng quan mới có sẵn. Đi tới “Trang tổng quan” và mở “Trang tổng quan nhật ký hệ thống Filebeat”.

Voilà. Miễn là nhật ký hệ thống của bạn có nội dung nào đó, bây giờ bạn sẽ có một số hình dung đẹp về dữ liệu của mình.

Phân tích nhật ký dễ dàng với mô-đun Filebeat

Lưu ý:Nếu không có lỗi rõ ràng nào từ Filebeat và không có dữ liệu trong Kibana, hệ thống của bạn có thể chỉ có nhật ký hệ thống rất yên tĩnh. Tôi đã phải đặt bộ chọn ngày lùi lại xa hơn một chút so với mặc định là '15 phút qua' để xem một số dữ liệu.

Kết thúc

Đây là một bước tiến thực sự tuyệt vời để làm cho Beats thậm chí còn dễ sử dụng hơn cho các trường hợp sử dụng phổ biến nhất và những điều cơ bản của ví dụ này có thể dễ dàng được mở rộng cho các mô-đun khác hiện có sẵn. Ví dụ:rất nhiều ứng dụng web (như WordPress, Drupal, Magento, v.v.) có máy chủ web và một số mysql đằng sau chúng. Với một bộ mô-đun này và một lệnh duy nhất, bạn có thể bắt đầu gửi nhật ký cho máy chủ web, cơ sở dữ liệu và nhật ký hệ thống của ứng dụng đó, tất cả chỉ trong một bước.

Nếu bạn đang tìm kiếm thêm thông tin và muốn tìm hiểu cách các mô-đun này được xây dựng, hãy xem tài liệu dành cho nhà phát triển và xem qua thư mục mô-đun của cài đặt Filebeat của bạn. Bạn sẽ có thể đối sánh các khách hàng tiềm năng, đường ống, mẫu và hình ảnh trực quan mà mô-đun đang sử dụng với những gì bạn đang thấy trong Kibana.