Đơn vị 3 / 11

Phân tích nhật ký và phân tích nguyên nhân gốc rễ: Tìm tín hiệu trong tiếng ồn

Lợi nhuận:

  • Nhanh chóng tìm thấy tín hiệu trong vùng nhiễu bằng cách sử dụng AI để tóm tắt, nhóm và ghi nhật ký theo dòng thời gian
  • Khả năng tách biệt mối tương quan và quan hệ nhân quả, đồng thời coi các đề xuất nguyên nhân cốt lõi của trí tuệ nhân tạo là những giả thuyết cần được xác minh
  • Khả năng đi đến nguyên nhân gốc rễ thực sự bằng cách vận hành phương pháp '5 Tại sao' bằng trí tuệ nhân tạo và hỗ trợ từng bước bằng bằng chứng thực tế

Phân tích nhật ký và phân tích nguyên nhân gốc rễ: Tìm tín hiệu nhiễu bằng AI

Khi hệ thống gặp sự cố, nơi đầu tiên bạn nhìn vào là nhật ký. Nhật ký là một luồng văn bản lưu giữ bản ghi có dấu thời gian về "những gì tôi đã làm, những gì đã xảy ra, những gì đã hỏng" của một hệ thống hoặc ứng dụng. Nhưng cơ sở hạ tầng hiện đại tạo ra hàng triệu dòng nhật ký mỗi giờ; nó không phải là một biển thông tin mà thường là một đại dương ồn ào. Phân tích nhật ký là nghệ thuật tìm ra tín hiệu quan trọng (lỗi, bất thường, mẫu) trong tiếng ồn này. Quá trình trả lời câu hỏi “nguyên nhân thực sự là gì” sau một sự kiện được gọi là phân tích nguyên nhân gốc rễ (RCA - Root Cause Analysis). Ở đây, AI rất mạnh trong việc tóm tắt hàng nghìn dòng mỗi giây, trích xuất các mẫu, thiết lập các mốc thời gian và liệt kê các nguyên nhân có thể xảy ra. Nhưng hãy cẩn thận: AI tạo ra những nguyên nhân có thể xảy ra; Bạn là người xác minh trong hệ thống cái nào là thật và đưa ra quyết định.

Trong phần này, bạn sẽ học cách tóm tắt nhật ký một cách tự tin bằng AI, cách thiết lập dòng thời gian của một sự kiện, cách phân biệt giữa mối tương quan (thay đổi cùng nhau) và quan hệ nhân quả (cái này gây ra cái kia) và cách chạy phương pháp RCA chẳng hạn như "5 Whys" với AI.

Tại sao tương quan không phải là nhân quả?

Đây là khái niệm quan trọng nhất của đơn vị này. Chỉ vì hai sự kiện xảy ra cùng một lúc nên cái này không gây ra cái kia. Lưu lượng truy cập mạng và CPU của máy chủ có thể tăng cùng lúc; nhưng cái này không phải là kết quả của cái kia, cả hai đều có thể là kết quả của sự kiện thứ ba (ví dụ: bắt đầu một công việc hàng loạt). Khi AI thấy các số liệu thay đổi cùng nhau, nó sẽ đưa ra giả thuyết “có thể X gây ra Y”. Đây là điểm khởi đầu, không phải là kết luận. Để xác minh quan hệ nhân quả, bạn cần cô lập biến (kích hoạt X trong môi trường thử nghiệm và xem liệu Y có xảy ra hay không) hoặc chứng minh cơ chế (hiển thị phương tiện kỹ thuật mà X tạo ra Y).

Thận trọng: Hãy lấy câu của AI "điều này có thể gây ra điều này" như một giả thuyết chứ không phải một phát hiện. Trong RCA, nguyên nhân gốc không chính xác dẫn đến việc điều chỉnh không chính xác và sự kiện tái diễn. Bạn đã tìm ra nghi phạm đầu tiên, không phải nguyên nhân; Công việc bắt đầu từ đó.

Từng bước: Phân tích nhật ký bằng AI

  1. Thu hẹp phạm vi. Cung cấp cửa sổ sự kiện chứ không phải toàn bộ nhật ký: "sự kiện bắt đầu lúc 14:05, quan trọng từ 14:00–14:20". Cho AI biết khoảng thời gian và dịch vụ liên quan.
  2. Mặt nạ. Nhật ký chứa IP nội bộ, tên máy chủ, người dùng và mã thông báo. Che dấu chúng (10.x.x.x, Host-A, user1, REDACTED) rồi xuất.
  3. Yêu cầu tóm tắt và nhóm. "Nhóm nhật ký này theo mức độ nghiêm trọng, đếm số lỗi lặp lại, tìm dấu thời gian của lỗi đầu tiên." Yêu cầu cấu trúc, không phải nhật ký thô.
  4. Thiết lập một dòng thời gian. "Sắp xếp những sự kiện này theo thứ tự thời gian và cho thấy những gì tiếp theo." Tìm ra quân domino đầu tiên là con đường dẫn tới nguyên nhân gốc rễ.
  5. Yêu cầu giả thuyết, không phải bằng chứng. “Liệt kê các nguyên nhân gốc có thể xảy ra theo thứ tự xác suất và đưa cho tôi lệnh xác minh để chạy trên hệ thống cho từng nguyên nhân.” Hỏi chẩn đoán, không phải kết quả.
  6. Xác minh trong hệ thống. Kiểm tra từng giả thuyết bằng các lệnh chẩn đoán chỉ đọc (log grep, truy vấn trạng thái, số liệu). Loại bỏ cho đến khi chỉ còn một nguyên nhân gốc rễ được xác nhận.

5 Tại sao phương pháp

Công cụ cổ điển và mạnh mẽ của RCA là "5 Whys": bắt đầu bằng một triệu chứng và hỏi "tại sao?" năm lần. Bằng cách hỏi, bạn sẽ tìm ra nguyên nhân gốc rễ bên dưới triệu chứng bề ngoài. Ví dụ: "Trang web bị lỗi. Tại sao? Ứng dụng chết vì hết bộ nhớ. Tại sao? Một truy vấn tiêu tốn hết bộ nhớ. Tại sao? Truy vấn không sử dụng chỉ mục. Tại sao? Chỉ mục đã bị xóa trong bản phát hành trước. Tại sao? Điều này không được nhận thấy trong quá trình xem xét thay đổi." Nguyên nhân cốt lõi không phải bề ngoài "trang web bị sập" mà là "quá trình xem xét thay đổi yếu kém". AI sẽ là đối tác tốt trong việc xây dựng chuỗi này - nhưng bạn phải sao lưu từng bước “tại sao” bằng bằng chứng xác thực, nếu không AI có thể đưa ra một chuỗi hợp lý nhưng sai lầm.

ba trường hợp nhỏ

Trường hợp 1 - 40.000 dòng, 3 phút. Một quản trị viên đã bắt đầu quét thủ công 40.000 dòng nhật ký ứng dụng trong thời gian ngừng hoạt động qua đêm. Anh ta đưa phần nhật ký đeo mặt nạ dài 20 phút có liên quan cho AI và yêu cầu tóm tắt và phân nhóm. AI đã gắn cờ lỗi OutOfMemory đầu tiên vào lúc 02:14, ngay sau khi lỗi hết thời gian chờ gia tăng. Kỹ sư nhận bảng chấm công trong 3 phút; đã xác nhận chẩn đoán ban đầu trên bảng số liệu của chính nó.

Trường hợp 2 - Trở về từ nguyên nhân gốc rễ sai lầm. Một nhóm cho rằng giả thuyết đầu tiên của AI ("nhật ký lấp đầy đĩa") là chính xác và đã xóa nhật ký. Nhưng sự việc lại lặp lại vào ngày hôm sau. Ở vòng thứ hai, họ triển khai "5 Whys" một cách kỷ luật: lý do thực sự là một lỗi ứng dụng đã ghi hàng trăm kết xuất lõi mỗi giây. Giả thuyết đầu tiên là mối tương quan; Lý do thực sự lại khác. Việc chấp nhận mà không cần xác minh chỉ mang lại thời gian hoãn lại một ngày.

Trường hợp 3 - Dòng thời gian đã tìm ra thủ phạm. Đã có nhật ký của hàng chục thiết bị trong thời gian ngừng hoạt động mạng không liên tục. Kỹ sư đã đưa nhật ký đeo mặt nạ cho AI và yêu cầu nó tạo ra một dòng thời gian thống nhất. Biểu đồ cho thấy mỗi lần ngừng hoạt động bắt đầu đúng 30 giây sau thông báo kiểm tra tình trạng của công tắc dự phòng. Mối tương quan này là một đầu mối chắc chắn; Nhóm đã xác minh lỗi firmware của key trên thiết bị và thay thế.

Bốn mẫu có thể sao chép

1) Tóm tắt và nhóm nhật ký:

Dưới đây là nhật ký bị che cho [dịch vụ] từ 14:00-14:20. Hãy cho tôi biết: (1) nhóm và đếm các dòng theo mức độ nghiêm trọng (ERROR/WARN/INFO), (2) liệt kê 5 mẫu lỗi thường xuyên xảy ra nhất, (3) tìm dấu thời gian của LỖI đầu tiên. Đừng viết lại nhật ký thô, chỉ đưa ra một bản tóm tắt có cấu trúc. Thêm một dòng trang điểm.Log: [nhật ký đeo mặt nạ]

2) Lập lịch trình:

Chúng tôi đã sắp xếp các bản ghi sự kiện được ẩn sau đây thành một dòng thời gian duy nhất (dấu thời gian + nguồn + sự kiện). Hiển thị những gì theo sau những gì và đánh dấu sự kiện có vẻ là sự kiện kích hoạt đầu tiên. Lưu ý rằng đây là GIẢ THUYẾT và quan hệ nhân quả cần được xác minh. Bản ghi: [bản ghi bị che]

3) 5 lý do đối tác RCA:

Vai trò của bạn: Người điều phối RCA. Triệu chứng: [triệu chứng]. Hãy cùng tôi nói “5 câu hỏi tại sao”: câu “tại sao?” ở mỗi bước. Hỏi đi, tôi sẽ trả lời bằng những bằng chứng tôi có, bạn hỏi câu tiếp theo. Nếu bằng chứng của tôi yếu, hãy cảnh báo tôi và cho tôi biết tôi cần thu thập dữ liệu gì. Đừng tuyên bố nguyên nhân gốc rễ mà không có bằng chứng.

4) Giả thuyết + lệnh kiểm chứng:

Liệt kê các nguyên nhân gốc rễ có thể gây ra [triệu chứng] này theo thứ tự xác suất. Vì mỗi lý do: (a) bạn nghi ngờ điều gì, (b) đưa cho tôi lệnh xác minh CHỈ ĐỌC để chạy trên hệ thống của tôi (không xóa/thay đổi). Giải thích kết quả nào xác nhận hoặc bác bỏ giả thuyết.

Dấu nhắc yếu / Dấu nhắc mạnh

Dấu nhắc yếu:

Có gì sai với nhật ký này? [10.000 dòng nhật ký thô]

Lời nhắc này vừa làm rò rỉ dữ liệu nhạy cảm vừa bị lộ và khiến AI không có ngữ cảnh. AI có thể vấp phải một dòng ngẫu nhiên và đưa ra lý do hời hợt hoặc thậm chí bịa đặt.

Lời nhắc mạnh mẽ:

Vai trò của bạn: SRE cấp cao. Sự kiện: dịch vụ thanh toán báo lỗi 50% trong khoảng thời gian từ 02:10-02:25. Dưới đây là nhật ký đeo mặt nạ của cửa sổ đó. Cung cấp cho tôi (1) bản tóm tắt được nhóm theo mức độ nghiêm trọng, (2) dấu thời gian của lỗi đầu tiên, (3) các nguyên nhân gốc rễ có thể xảy ra theo thứ tự xác suất và lệnh xác minh chỉ đọc cho mỗi lỗi. Đánh dấu các khẳng định về quan hệ nhân quả như là các giả thuyết. Nhật ký: [nhật ký bị che giấu]

bước

Mục đích

Vai trò của AI

vai trò của đàn ông

Tóm tắt/nhóm

giảm tiếng ồn

Định cấu hình hàng nghìn hàng

Xác định phạm vi và mặt nạ

dòng thời gian

Tìm quân domino đầu tiên

sắp xếp sự kiện

Xác thực tem

tạo giả thuyết

sắp xếp nghi phạm

liệt kê các khả năng

lọc theo ngữ cảnh

xác minh

tìm lý do thực sự

Đề xuất lệnh chẩn đoán

Chạy lệnh và bình luận nó

quyết định

Lựa chọn sửa chữa

lựa chọn cung cấp

Đưa ra quyết định và xác nhận

Những lỗi thường gặp

  • Nhầm lẫn mối tương quan với quan hệ nhân quả. Việc chấp nhận hai số liệu thay đổi cùng nhau là "cái này gây ra cái kia" sẽ tạo ra sự điều chỉnh sai.
  • Dán nhật ký thô mà không có mặt nạ. Cung cấp nhật ký chứa IP, mã thông báo và người dùng cho một công cụ mở là vi phạm bảo mật.
  • Tuyên bố giả thuyết đầu tiên là nguyên nhân gốc rễ. Chấp nhận đề xuất đầu tiên của AI mà không xác minh đó là lời mời lặp lại sự kiện.
  • Xuất toàn bộ nhật ký. Nhật ký khổng lồ không có ngữ cảnh sẽ cắm AI vào một dòng ngẫu nhiên; Thu gọn vào cửa sổ sự kiện.
  • 5 lý do không có bằng chứng. Nếu bạn không sao lưu từng bước "tại sao" bằng dữ liệu thực, bạn sẽ kết thúc với một chuỗi hợp lý nhưng bịa đặt.
Mẹo: Trước khi kết thúc RCA, hãy hỏi "nếu nguyên nhân cốt lõi này thực sự đã được khắc phục, liệu nó có xảy ra lần nữa không?" Đặt câu hỏi. Nếu câu trả lời là "có thể", bạn vẫn chưa tìm ra nguyên nhân gốc rễ; Hỏi một câu "tại sao" khác.

Tóm lại

Phân tích nhật ký là tìm kiếm tín hiệu trong một đại dương nhiễu; AI tóm tắt và cấu trúc đại dương này trong vài giây, thiết lập dòng thời gian và đưa ra các giả thuyết. Nhưng mối tương quan không phải là quan hệ nhân quả: nguyên nhân được AI gợi ý là sự nghi ngờ ban đầu, không phải là phát hiện cho đến khi được xác nhận. Thu gọn nhật ký vào cửa sổ sự kiện, che giấu nó, hỏi cấu trúc, tìm hiểu sâu với “5 Whys” và kiểm tra từng giả thuyết trên hệ thống bằng các lệnh chỉ đọc. Bạn là người tìm ra nguyên nhân gốc rễ và xác nhận cách khắc phục; AI là người bạn đồng hành của bạn.

Nhiệm vụ ứng dụng

Lấy nhật ký của một sự kiện trong quá khứ (hoặc một sự kiện thử nghiệm), thu gọn nó vào cửa sổ sự kiện và che đi mọi khu vực nhạy cảm. Yêu cầu tóm tắt và lên lịch từ AI với các mẫu “Tóm tắt nhật ký” và “Dòng thời gian” ở trên. Sau đó, chuyển từ triệu chứng sang nguyên nhân gốc rễ bằng mẫu “Đối tác RCA 5 lý do”; Viết bằng chứng của riêng bạn cho mỗi bước. Cuối cùng, kiểm tra giả thuyết ban đầu của AI bằng lệnh xác minh và ghi lại xem nó được xác nhận hay bị bác bỏ. Tóm tắt quá trình trong 6 mục.

danh sách kiểm tra

  • [ ] Tôi đã thu gọn nhật ký vào cửa sổ sự kiện và che các khu vực nhạy cảm chưa?
  • [ ] Tôi có yêu cầu AI cung cấp bản tóm tắt và dòng thời gian có cấu trúc chứ không phải nhật ký thô không?
  • [ ] Tôi đã đánh dấu các tuyên bố về quan hệ nhân quả của AI là giả thuyết chưa?
  • [ ] Tôi đã kiểm tra từng giả thuyết trên hệ thống bằng lệnh xác minh chỉ đọc chưa?
  • [ ] Tôi đã sao lưu từng bước của “5 Whys” bằng bằng chứng xác thực chưa?
  • [ ] Tôi có đặt câu hỏi và đưa ra quyết định liệu nguyên nhân gốc rễ có thực sự ngăn cản được sự kiện không?