Lightweight
Config Template
Hướng dẫn cách viết Config để định nghĩa cách Sensor thu thập.
Tổng quan
Config Template là cấu hình mẫu được thiết lập theo chuẩn OpenTelemetry để định nghĩa cách thức Lightweight Sensor thu thập, xử lý và vận chuyển log từ máy chủ về hệ thống SecOps.
Thành phần cốt lõi của Config Template
Một file cấu hình tiêu chuẩn bao gồm 4 khối thành phần chính sau:
2.1 Receivers (Bộ thu nhận log)
Định nghĩa nguồn log đầu vào cần thu thập (đường dẫn file, định dạng, vị trí bắt đầu đọc).
filelog: Thu thập log từ các file văn bản trên hệ thống.include: Đường dẫn tuyệt đối tới file log (Ví dụ: /var/log/syslog hoặc C:\Logs*.log).start_at: Vị trí bắt đầu đọc log khi Sensor khởi chạyend: chỉ đọc log mới phát sinhbeginning: đọc lại từ đầu file.
include file path: Thêm đường dẫn file vào mỗi logtrue: có gửi thêm đường dẫn filefalse: không gửi thêm đường dẫn file
include file name: Thêm tên file vào mỗi logtrue: có gửi thêm tên file vào mỗi logfalse: không gửi thêm tên file vào mỗi log
2.2 Processors (Bộ xử lý dữ liệu)
Định nghĩa cách thức xử lý, tối ưu hóa log trước khi gửi đi để tránh làm quá tải đường truyền.
batch: Gom các dòng log lại thành từng đợt (batch) để gửi đi cùng lúc.send_batch_size&send_batch_max_size: Định số lượng bản ghi tối thiểu/tối đa cho mỗi đợt gửi.
2.3 Exporters (Bộ xuất/gửi dữ liệu)
Định nghĩa đích đến và phương thức bảo mật để đẩy log về hệ thống tổng.
otlphttp/logs: Giao thức gửi log qua HTTP/HTTPS.endpoint&logs_endpoint: Địa chỉ URL nhận log của hệ thống SecOps. Lấy URL sau khi tạo xong Data connection.headers/x-api-key: Mã Token/Mã xác thực bảo mật để định danh quyền đẩy dữ liệu. Lấy mã này sau khi tạo Data connection thành công.
2.4 Extensions & Service (Tiện ích & Luồng vận hành)
health_check: Tiện ích kiểm tra trạng thái hoạt động (sống/chết) của Sensor để hệ thống theo dõi từ xa (mỗi 2 phút/lần).pipelines: Khối liên kết tất cả các thành phần trên lại với nhau thành một luồng xử lý hoàn chỉnh.
VD Confìg Template
receivers:
filelog:
include:
- /var/log/syslog
start_at: end
include_file_path: false
include_file_name: false
processors:
batch:
send_batch_size: 1
send_batch_max_size: 1
exporters:
otlphttp/logs:
endpoint: <YOUR_OTLP_HTTP_ENDPOINT>
logs_endpoint: <YOUR_OTLP_HTTP_ENDPOINT>
headers:
x-api-key: <YOUR_API_KEY>
Content-Type: "application/json"
timeout: 30s
encoding: json
extensions:
health_check:
service:
extensions: [health_check]
pipelines:
logs:
receivers: [filelog]
processors: [batch]
exporters: [otlphttp/logs]
Các kịch bản cấu hình phổ biến (Use Cases)
Tùy thuộc vào hạ tầng và nhu cầu phân tích, người dùng có thể linh hoạt tùy biến Template theo 4 trường hợp sau:
Kịch bản 1: 1 Nguồn nhận 1 Đích gửi
- Mô tả: Thu thập dữ liệu từ một nguồn log duy nhất trên máy chủ và đẩy thẳng về một điểm nhận của hệ thống.
- Khi nào dùng: Thiết lập đơn giản, giám sát một ứng dụng hoặc một dịch vụ độc lập.
- Ví dụ: Thu thập log phân quyền từ file /var/log/auth.log gửi trực tiếp về SecOps Platform.
Kịch bản 2: Nhiều nguồn nhận 1 Đích gửi
- Mô tả: Sensor thu thập đồng thời từ nhiều nguồn log khác nhau có trên máy chủ, gom toàn bộ lại rồi gửi tập trung về một đích.
- Khi nào dùng: Khi một máy chủ chạy nhiều dịch vụ/ứng dụng khác nhau và cần giám sát toàn diện hệ thống đó.
- Ví dụ: Thu thập song song /var/log/auth.log, /var/log/syslog và Windows Event Log hợp nhất gửi về SecOps Platform.
Kịch bản 3: 1 Nguồn nhận Nhiều đích gửi
- Mô tả: Log thu nạp từ một nguồn duy nhất nhưng sẽ được nhân bản để gửi đồng thời tới nhiều địa chỉ đích khác nhau.
- Khi nào dùng: Cần phân luồng dữ liệu nhằm mục đích sao lưu (Backup), lưu trữ dự phòng (Redundancy) hoặc phục vụ hai hệ thống phân tích song song.
- Ví dụ: Thu thập log của ứng dụng lõi Gửi 1 bản về SecOps Platform chính và 1 bản về máy chủ sao lưu độc lập (Archive/Backup Server).
Kịch bản 4: Định tuyến linh hoạt (Flexible Routing)
- Mô tả: Cấu hình logic nâng cao để phân loại log. Hệ thống dựa vào các bộ lọc điều kiện (Filter) để quyết định dòng log nào được đi tiếp, đi về đâu hoặc bị loại bỏ.
- Khi nào dùng: Tối ưu hóa băng thông và không gian lưu trữ, chỉ giữ lại log quan trọng hoặc chia cấp độ xử lý.
- Ví dụ:
- Log có mức độ ERROR Đẩy gấp về SecOps Platform để cảnh báo.
- Log có mức độ WARNING Đẩy vào hệ thống lưu trữ phân tích chậm (Archive).
- Log có mức độ INFO Hủy bỏ (discard) để tránh rác hệ thống.