เพื่อใช้ Grok Debugger ใน Kibana:
1. เข้าถึง Grok Debugger คุณสามารถค้นหา Grok Debugger ได้โดยการนำทางไปยังหน้าเครื่องมือนักพัฒนาโดยใช้เมนูการนำทางหรือช่องค้นหาทั่วโลก [1] สำหรับรุ่นเก่าเช่น 7.17 ให้เปิดเมนูหลักคลิกเครื่องมือ Dev จากนั้นคลิก Grok Debugger ** [3] โปรดทราบว่าหากคุณใช้คุณสมบัติการรักษาความปลอดภัยสแต็คแบบยืดหยุ่นคุณต้องได้รับอนุญาต `manage_pipeline` เพื่อใช้ตัวดีบัก Grok [1] [3]
2. ป้อนข้อมูลตัวอย่างในส่วนข้อมูลตัวอย่างป้อนข้อความที่เป็นตัวแทนของข้อมูลที่คุณต้องการแยกวิเคราะห์ [1] [3] ตัวอย่างเช่น: `55.3.244.1 get /index.html 15824 0.043` [1]
3. ป้อนรูปแบบ Grok ในส่วนรูปแบบ Grok ป้อนรูปแบบ Grok ที่คุณต้องการใช้กับข้อมูล [1] [3] ในการแยกวิเคราะห์บรรทัดบันทึกในตัวอย่างที่กำหนดให้ใช้: ` %{ip: ไคลเอนต์} %{word: method} %{uripathparam: คำขอ} %{จำนวน: ไบต์} %{หมายเลข: ระยะเวลา}` [1]
4. จำลองการคลิกจำลองและคุณจะเห็นเหตุการณ์จำลองที่เกิดจากการใช้รูปแบบ Grok [1] [3]
นอกจากนี้คุณยังสามารถทดสอบรูปแบบที่กำหนดเอง [3]:
1. ตัวอย่างข้อมูลป้อนข้อความตัวอย่างของคุณ [3] ตัวอย่างเช่น: `1 ม.ค. 06:25:43 MailServer14 Postfix/Cleanup [21403]: BEF25A72965: Message-id =` [3]
2. รูปแบบ Grok ป้อนรูปแบบ Grok ของคุณ [1] [3] ตัวอย่างเช่น: ` %{syslogbase} %{postfix_queueid: queue_id}: %{msg: syslog_message}` รูปแบบ Grok นี้อ้างอิงรูปแบบที่กำหนดเองที่เรียกว่า `postfix_queueid` และ` msg` [3]
3. รูปแบบที่กำหนดเองขยายส่วนรูปแบบที่กำหนดเองและป้อนคำจำกัดความรูปแบบสำหรับรูปแบบที่กำหนดเองที่คุณต้องการใช้ในนิพจน์ GROK ระบุคำจำกัดความแต่ละรูปแบบในบรรทัดของตัวเอง [1] [3] สำหรับตัวอย่างที่กำหนดให้ระบุคำจำกัดความรูปแบบสำหรับ `postfix_queueid` และ` msg`: `postfix_queueid [0-9a-f] {10,11} msg messg-id =` [1] [3]
4. จำลองการคลิกจำลอง ** [1] [3] คุณจะเห็นเหตุการณ์เอาท์พุทจำลองซึ่งเป็นผลมาจากการใช้รูปแบบ Grok ที่มีรูปแบบที่กำหนดเอง [1] หากเกิดข้อผิดพลาดคุณสามารถทำซ้ำรูปแบบที่กำหนดเองต่อไปจนกว่าผลลัพธ์จะตรงกับเหตุการณ์ที่คุณคาดหวัง [1] [3]
Grok ดีบักเกอร์ทำให้การวิเคราะห์บันทึกง่ายขึ้นช่วยให้คุณทดสอบและปรับแต่งรูปแบบ Grok ก่อนที่จะปรับใช้ [5] Grok เป็นไวยากรณ์การจับคู่รูปแบบที่คุณสามารถใช้เพื่อแยกวิเคราะห์ข้อความและโครงสร้างโดยพลการ [1] [3] เป็นการดีสำหรับการแยกวิเคราะห์ syslog, apache และบันทึกเว็บเซิร์ฟเวอร์อื่น ๆ บันทึก MySQL และโดยทั่วไปรูปแบบบันทึกใด ๆ ที่เขียนขึ้นสำหรับการบริโภคของมนุษย์ [1] [3]
การอ้างอิง:[1] https://www.elastic.co/guide/en/kibana/current/xpack-grokdebugger.html
[2] https://www.elastic.co/guide/en/elasticsearch/reference/current/grok.html
[3] https://www.elastic.co/guide/en/kibana/7.17/xpack-grokdebugger.html
[4] https://stackoverflow.com/questions/26679465/debugging-new-logstash-grok-filters-before-full-use
[5] https://latenode.com/blog/a-complete-guide-to-using-the-grok-debugger
[6] https://discuss.elastic.co/t/grok-filter-pattern-not-working/211780
[7] https://edgedelta.com/company/blog/what-are-grok-patterns
[8] https://www.elastic.co/guide/en/elasticsearch/reference/current/esql-process-data-with-dissect-and-grok.html
[9] https://www.elastic.co/blog/debugging-broken-grok-expressions-in-elasticsearch-ingest-processors
[10] https://stackoverflow.com/questions/38096827/querying-kibana-using-grok-pattern