ฉันค่อนข้างประทับใจกับSplunkโดยเฉพาะเวอร์ชัน 4 กราฟสวย การแจ้งเตือน (สำหรับองค์กรเท่านั้น) และการค้นหาที่รวดเร็ว แม่นยำ มันเป็นผลิตภัณฑ์ที่ยอดเยี่ยม

อย่างไรก็ตาม ค่าใช้จ่ายสูงเกินไปที่จะพิจารณาสำหรับการใช้การผลิตอย่างเต็มรูปแบบสำหรับบริษัทของเรา ทั้งหมดที่เราต้องการจริงๆ ก็คือสามารถจัดทำดัชนีบันทึกต่างๆ ในตำแหน่งศูนย์กลาง และทำการค้นหาอย่างสมเหตุสมผล การมีการแจ้งเตือนตามการค้นหาที่บันทึกไว้ก็ดีมากเช่นกัน เราไม่ได้ไปไกลกว่านั้น

อันที่จริง การใช้งานที่ใหญ่ที่สุดของเราคือการปรับใช้แอปพลิเคชันใหม่ ทุกอย่างได้รับการบันทึกผ่าน log4net ไปยังบันทึกเหตุการณ์บน Windows หรือไฟล์ข้อความบน Linux Splunk ทำให้การค้นหาอย่างรวดเร็วในสิ่งเหล่านั้นทำได้อย่างรวดเร็ว เพื่อให้แน่ใจว่าทุกส่วนของแอปทำงานได้ดี ซึ่งช่วยเราประหยัดเวลาได้มากเมื่อเทียบกับการค้นหาแหล่งที่มาของการบันทึกแต่ละรายการ

มีทางเลือกอะไรบ้างในตลาดนี้? ฉันรู้สึกว่าราคาของ Splunk นั้นสูงมากเพราะพวกเขามีผลิตภัณฑ์ที่ดีที่สุด และพวกเขารู้ดี เราต้องการให้เซิร์ฟเวอร์ทำงานบน Windows

ฉันจะเปิดรับโมเดลแยก โดยใช้ผลิตภัณฑ์เดียวสำหรับบันทึกทั่วไป (รวบรวมผ่าน syslog/Snare) และผลิตภัณฑ์เฉพาะสำหรับแอปที่กำหนดเองของเรา (เช่นLog4Net Dashboard )

การใช้เซิร์ฟเวอร์ syslog อย่างง่าย เช่น Kiwi ส่งไปยัง SQL Server (อาจเปิดใช้งาน fulltext) ได้หรือไม่

ฉันหวังว่าค่าใช้จ่ายควรจะต่ำกว่า 5 หลัก USD (และใช่ ฉันรู้ เราถูก เรากำลังเริ่มต้นธุรกิจด้วยเงินเพียงเล็กน้อย และ BizSpark จะดูแลการอนุญาตให้ใช้สิทธิ MS ทั้งหมดของเรา)

แก้ไข: ฉันควรเพิ่ม เรามีเซิร์ฟเวอร์จริงประมาณ 10 เซิร์ฟเวอร์ VM 20 ตัว และไฟร์วอลล์และสวิตช์อีกสองสามตัว 90% เป็นวินโดว์

answer

หมายเหตุ : ทั้งหมดนี้เกี่ยวกับ Linux และซอฟต์แวร์ฟรีเนื่องจากเป็นสิ่งที่ฉันใช้เป็นส่วนใหญ่ แต่คุณควรจะใช้ไคลเอ็นต์ syslog บน Windows เพื่อส่งบันทึกไปยังเซิร์ฟเวอร์ Linux syslog

การบันทึกไปยังเซิร์ฟเวอร์ SQL: ด้วยเครื่องเพียงประมาณ 30 เครื่อง คุณน่าจะใช้ได้กับ syslog-alike ที่รวมศูนย์และแบ็กเอนด์ของ SQL ฉันใช้syslog-ngและ MySQL บน Linux สำหรับสิ่งนี้

ส่วนหน้าที่สวยงามสำหรับการสร้างกราฟเป็นปัญหาหลัก -- ดูเหมือนว่ามีส่วนหน้าที่ถูกแฮ็กจำนวนมากซึ่งจะดึงรายการจากบันทึกและแสดงจำนวนการเข้าชม การแจ้งเตือน ฯลฯ แต่ฉันไม่พบสิ่งใดที่ผสานรวมและเรียบร้อย เป็นที่ยอมรับว่านี่คือสิ่งสำคัญที่คุณกำลังมองหา... (หากฉันพบอะไรดีๆ ฉันจะอัปเดตส่วนนี้ให้!)

การแจ้งเตือน : ฉันใช้SECบนเซิร์ฟเวอร์ Linux เพื่อค้นหาสิ่งเลวร้ายที่เกิดขึ้นในบันทึกและแจ้งเตือนฉันด้วยวิธีการต่างๆ มีความยืดหยุ่นอย่างเหลือเชื่อและไม่คลิกเหมือน Splunk มีบทช่วยสอนที่ดีที่นี่ซึ่งจะแนะนำคุณสมบัติที่เป็นไปได้มากมาย

ฉันยังใช้Nagiosสำหรับกราฟของสถิติต่างๆ และการแจ้งเตือนบางอย่างที่ฉันไม่ได้รับจากบันทึก (เช่น เมื่อบริการหยุดทำงาน ฯลฯ) นี้สามารถปรับแต่งได้อย่างง่ายดายเพื่อเพิ่มกราฟของสิ่งที่คุณต้องการ ฉันได้เพิ่มกราฟของรายการต่างๆ เช่น จำนวน Hit ที่ทำในเซิร์ฟเวอร์ http โดยให้ตัวแทนใช้ปลั๊กอินcheck_logfilesเพื่อนับจำนวน Hit ในบันทึก (จะบันทึกตำแหน่งที่ได้รับสำหรับช่วงเวลาตรวจสอบแต่ละครั้ง)

โดยรวมแล้วขึ้นอยู่กับว่าคุณจะต้องเสียเวลาตั้งค่าเท่าใดในการตั้งค่านี้เนื่องจากมีตัวเลือกมากมายที่คุณสามารถใช้ได้ แต่ตัวเลือกเหล่านี้ไม่ได้ผสานรวมเป็น Splunk และอาจต้องใช้ความพยายามมากขึ้นเพื่อให้ได้สิ่งที่คุณต้องการ กราฟ Nagios นั้นง่ายต่อการตั้งค่า แต่ไม่ได้ให้ข้อมูลประวัติก่อนที่คุณจะเพิ่มกราฟ ในขณะที่ Splunk (และส่วนหน้าอื่น ๆ ที่สันนิษฐานได้) คุณสามารถดูบันทึกที่ผ่านมาและกราฟสิ่งที่คุณเพิ่งทำ คิดว่าจะดูจากพวกเขา

โปรดทราบด้วยว่ารูปแบบฐานข้อมูล SQL และการจัดทำดัชนีจะมีผลอย่างมากต่อความเร็วของข้อความค้นหา ดังนั้นแนวคิดของคุณในการจัดทำดัชนีข้อความแบบเต็มจะเพิ่มความเร็วในการค้นหาอย่างมาก ฉันไม่แน่ใจว่า MySQL หรือ PostgreSQL จะทำอะไรที่คล้ายกัน

แก้ไข : MySQL จะทำดัชนีข้อความแบบเต็ม แต่เฉพาะในตาราง MyISAMก่อน MySQL 5.6 5.6 การสนับสนุนได้รับการเพิ่มสำหรับ InnoDB

แก้ไข : Postgresql สามารถค้นหาข้อความแบบเต็มได้แน่นอน: http://www.postgresql.org/docs/9.0/static/textsearch.html

มุ่งเป้าไปที่ *nix มากกว่า windows แต่octopussyรองรับ windows และดูเหมือนว่าจะมุ่งไปที่สิ่งเดียวกันกับ splunk

ฉันกำลังทดลองใช้โซลูชันการตรวจสอบหลายอย่าง - แต่ฉันต้องการตรวจสอบหน้าต่างเป็นหลัก ระบบส่วนใหญ่มุ่งสู่การตรวจสอบ SNMP ซึ่งสามารถดึงข้อมูลจำนวนมากออกมาได้โดยไม่ต้องใช้เอเจนต์

นี่คือระบบบางส่วนที่ฉันได้ลองไปแล้ว:

Nagios - โอเพ่นซอร์ส หมูที่จะกำหนดค่า แต่ได้รับการจัดอันดับสูงและดูเหมือนยืดหยุ่นมาก ดูเหมือนว่าโดยพื้นฐานแล้วจะเป็นตัวบันทึกเคาน์เตอร์และไม่อนุญาตให้เรียกใช้สคริปต์ระยะไกล ดังนั้นจึงไม่สามารถใช้เพื่อรับทราบปัญหาการกำหนดค่า, ศูนย์ระบบ ala MS หรือ Kaseya ไม่มีเอเจนต์แต่ไร้ประโยชน์โดยพื้นฐานแล้วหากไม่มีเครื่องมือ NSclient ติดตั้งบนไคลเอนต์แต่ละราย

Cacti - เครื่องมือสร้างกราฟที่สวยงามและตรงไปตรงมาโดยอิงจากการดึงสถิติ snmp ไม่มีตัวแทน

OpsView - อิงตาม Nagios แต่กำหนดค่าได้ง่ายกว่าและมีส่วนหน้าที่ดีกว่า

HypericHQ - ง่ายต่อการใช้งานภายใต้ Windows เวอร์ชันพื้นฐานนั้นฟรีและมีมากมาย มีองค์กร HypericHQ เชิงพาณิชย์ ต้องติดตั้งเอเจนต์ในไคลเอนต์แต่ละราย

Zabbix - อีกหนึ่งเครื่องมือตรวจสอบที่ดี ใช้งานง่ายกว่านาจิโอส มีตัวแทนที่คุณสามารถติดตั้งบน windows และเครื่องไคลเอนต์ ฉันได้สำรวจสิ่งนี้เพียงเล็กน้อยเท่านั้น

Zenoss - โอเพ่นซอร์ส ฉันประทับใจมากกับความเป็นมืออาชีพของ Zenoss เป็นมอนิเตอร์ที่ใช้ SNMP และมีส่วนขยายจำนวนมากเพื่ออนุญาตให้ตรวจสอบ HP proliants, windows services, ms sql server, mysql ส่วนขยายทั้งหมดทำงานผ่าน SNMP ดังนั้นจึงไม่จำเป็นต้องติดตั้งในเครื่องไคลเอ็นต์ ฉันยังไม่ได้สำรวจมันทั้งหมด และดูเหมือนว่าจะมีฟังก์ชันมากมายที่ฉันยังไม่ได้ใช้ประโยชน์ มันขึ้นอยู่กับ Zope ดังนั้นเว้นแต่คุณจะเร่งความเร็วในการติดตั้ง Zope ฉันขอแนะนำให้ดาวน์โหลด VM ที่เตรียมไว้ล่วงหน้า - มันใช้งานได้เหมือนความฝันที่ออกมาจากกล่อง

ในด้านการค้า คุณสามารถดูเครื่องมือสองสามอย่าง:

Kaseya - ค่าใช้จ่ายประมาณ 6k ต่อปีสำหรับ 250 nodes ถ้าฉันจำไม่ผิด แต่เป็นเครื่องมือที่ยอดเยี่ยมและมีชุมชนผู้ใช้ที่กระตือรือร้นมาก มุ่งเป้าไปที่ตลาด msp และอนุญาตให้ตรวจสอบระบบหลายบริษัท สามารถใช้ภายในได้โดยไม่มีปัญหา

GFI Hounddog - ง่ายกว่า Kaseya แต่ราคาถูกมากในขณะนี้ คุ้มค่าแก่การดูอย่างแน่นอน

มีวิธีแก้ปัญหามากมายที่ขายเป็นระบบ MSP แต่หลักๆ แล้วคือมอนิเตอร์ + ผู้ดูแลระบบระยะไกลรวมกัน

เอียน

สำหรับ syslogging แบบรวมศูนย์พร้อมคุณสมบัติที่ยอดเยี่ยมมากมาย ฉันอดไม่ได้ที่จะแนะนำrsyslogให้เพียงพอ เป็นเซิร์ฟเวอร์ syslog แบบโอเพ่นซอร์สซึ่งสามารถทำงานได้อย่างมีความสุขแทน syslogd ปกติที่คุณรู้จักและชื่นชอบ ตอนนี้เป็น syslog daemon ที่เป็นตัวเลือกสำหรับ Ubuntu และฉันคิดว่า Red Hat & Fedora อาจเข้าสู่เส้นทางนั้นเช่นกัน ฉันพบว่ามันง่ายกว่ามากที่จะเริ่มต้นใช้งานและทำสิ่งที่คุณต้องการให้เป็น syslog-ng

ขณะนี้ในร้านค้าของเรา เรามีเซิร์ฟเวอร์ rsyslog กลางสองเครื่อง (หนึ่งเครื่องในแต่ละไซต์) ซึ่งรับบันทึกสำหรับเซิร์ฟเวอร์หลายร้อยเครื่อง ฉันได้รับอีเมลแจ้งเตือนอัตโนมัติทุกครั้งที่มีบางอย่างใน syslog triggers alert หรือสูงกว่า ฉันอาจจะทำอย่างอื่นได้มากกว่านี้ เช่น ส่งของไปให้นาจิออสหรืออย่างอื่น แต่ตอนนี้มันครอบคลุมเพียงพอสำหรับความต้องการของเราแล้ว

ทั้งหมดนี้เข้าสู่ฐานข้อมูล mysql เช่นกัน (นอกจากนี้ยังรองรับ Oracle หรือ postgresql หากคุณใช้วิธีนี้)

นอกจากนี้ยังมีส่วนหน้าของเว็บและตัวแทน windowsสำหรับส่งบันทึก Eventlog ไปยังเซิร์ฟเวอร์ rsyslog เช่นกัน เห็นได้ชัดว่าส่วนหน้าของเว็บไม่ลื่นไหลเท่า แต่ทำงานให้เสร็จในราคา 0 เหรียญ

ลองดูที่http://www.codeplex.com/polymon

โอเพ่นซอร์สใช้ SQL Server ที่แบ็กเอนด์และมี UI แฟนซี

ฉันยอมรับว่า Splunk นั้นยอดเยี่ยม สำหรับขนาดเล็กตระหง่านสภาพแวดล้อมลินุกซ์แม้ว่าคุณอาจต้องการที่จะมองไปที่สิ่งที่ต้องการepylog

เราใช้ในสถานที่แห่งหนึ่งที่ฉันเคยทำงาน และมันยอดเยี่ยมสำหรับสิ่งที่เราต้องการ

ไม่แน่ใจว่าจะจัดการกับข้อความ syslog ของ Windows ที่ส่งไปยังตัวรวบรวม syslog ของ Linux ได้ดีเพียงใด แต่อาจคุ้มค่าที่จะลอง

เพียงเชื่อมโยงไปยังคำตอบของฉันที่อื่น:

Splunk มีราคาแพงอย่างน่าอัศจรรย์: ทางเลือกคืออะไร?

แก้ไข (โครงการใหม่):

LogStashและGraylog2โครงการมีลักษณะที่น่าสนใจมาก

นี่คือคู่ของวิดีโอ: หนึ่ง สอง

บางอย่างเช่นGFI EventsManagerอาจทำเคล็ดลับได้ในราคาประมาณ $4k

  • การวิเคราะห์บันทึกเหตุการณ์รวมถึงกับดัก SNMP, บันทึกเหตุการณ์ของ Windows, บันทึก W3C และ Syslog
  • การแจ้งเตือนตามเวลาจริง รวมถึงการแจ้งเตือนกับดัก SNMPv2
  • ดูรายงานเกี่ยวกับข้อมูลความปลอดภัยที่สำคัญที่เกิดขึ้นในขณะนี้
  • การบันทึกเหตุการณ์แบบรวมศูนย์
  • ลบ “เสียงรบกวน” หรือเหตุการณ์เล็กๆ น้อยๆ ที่ประกอบขึ้นเป็นอัตราส่วนที่สูงของเหตุการณ์ด้านความปลอดภัยทั้งหมด
  • การตรวจสอบและแจ้งเตือนตลอด 24 x 7 x 365 วันแบบเรียลไทม์
  • ตรวจสอบสถานะของ GFI EventsManager และเครือข่ายของคุณแบบกราฟิกผ่านการตรวจสอบสถานะในตัว
  • รองรับสภาพแวดล้อมเสมือน

หากคุณกำลังมองหาทดแทน SysLog คุณอาจต้องการที่จะต้องพิจารณา syslog พาณิชย์ / ทดแทน rsyslog เช่น LogLogic, http://loglogic.com เรา (ที่ที่ฉันทำงาน) มีชุดอุปกรณ์บันทึก การจัดเก็บ และการรายงานที่มีคุณสมบัติครบถ้วน โดยพื้นฐานแล้ว ความสามารถในการรวบรวมข้อความ 100,000 ข้อความต่อวินาที เจ็บและจัดทำดัชนีเพื่อให้สามารถทำการค้นหาได้

คุณสามารถลองใช้ logscape จาก liquidlabs - คล้ายกับ splunk แต่มีคุณสมบัติที่แตกต่างกันเล็กน้อยเช่นกัน.... http://www.liquidlabs-cloud.com/products/logscape.html

ฉันทำแบ็กเอนด์ SQL ในงานก่อนหน้านี้ (มันเป็น MySQL) พร้อมด้วยสคริปต์ ส่วนต่อประสาน Drupal พร้อมสคริปต์ PHP แบบกำหนดเอง ผลงาน

พูดตามตรง มันใช้เวลาชั่วโมงทำงานมากเกินไป แต่ก็ยังไม่ใช่ Splunk

ขณะนี้ฉันกำลังทดสอบ Splunk แทน ใช่ มันไม่ฟรี แต่ดูภาพรวมแล้วอาจจะถูกกว่าจริงๆ

คุณลอง php-syslog-ng แล้วหรือยัง? http://code.google.com/p/php-syslog-ng/

ฉันโพสต์หัวข้อหลอกลวง: Splunk มีราคาแพงอย่างน่าอัศจรรย์: ทางเลือกอื่นคืออะไร?

xpolog และโซลูชันเชิงพาณิชย์ที่จริงจังทั้งหมดนั้นมีมูลค่ามหาศาล (ถึงแม้จะน้อยกว่า splunk ก็ตาม แต่ส่วนใหญ่เป็นตัวเลข 5 หลักอย่างง่าย!)

Sooooo ในที่สุดสิ่งที่เราทำ (เพราะ splunk มากเกินไป $):

1) เราต้องการ syslog อย่างง่ายไปยัง sql db ไปป์ไลน์

2) เราลอง kiwi syslog วิธีนี้ใช้ได้ผลดีเป็นเวลาหนึ่งสัปดาห์ หยุดทำงาน และการรองรับกีวีไม่สามารถแก้ไขได้ เราก็เลยกินกีวี

3) เราลอง winsyslog หมาแก่ของแอพ เราไม่อยากเรียนรู้มัน

4) เราใช้แอป .net ฟรีนี้: http://www.aonaware.com/syslog.htm

โว้ว. เรามีข้อความ syslog ในฐานข้อมูลของเรา

เรามีความสุขมาก. ใช้เวลา $ 0 บางชั่วโมง แต่ไม่มากเกินไป

เรากำลังใช้ Splunk ที่นี่ และฉันค่อนข้างตกใจกับราคาที่พวกเขาบอกคุณ รายละเอียดพื้นฐานที่เราได้รับนั้นอยู่ที่ประมาณ $1k US ต่อข้อมูล 1GB มีราคาแพง แต่ทรงพลังและรวดเร็วมากในการพัฒนาด้วย สคริปต์ python และ Perl บางตัวอาจให้ข้อมูลที่คล้ายกันมากมาย ทั้งนี้ขึ้นอยู่กับแหล่งข้อมูลของคุณและสิ่งที่คุณต้องการจะทำอย่างไรกับแหล่งข้อมูลเหล่านั้น ความแตกต่างที่สำคัญคือเวลา และการเรียนรู้ที่จะใช้ภาษาสำหรับการประมวลผลข้อความจริงๆ คุณจะไม่สามารถรับข้อมูล IP แบบเรียลไทม์ได้ (เช่น syslog) แม้ว่าคุณจะสามารถแก้ไขได้โดยรับ syslogger และส่งข้อมูลไปยังไฟล์ข้อความ ขออภัย ฉันไม่สามารถชี้ให้คุณเห็นถึงวิธีแก้ปัญหาเฉพาะใดๆ สิ่งที่เราไม่สามารถใช้ splunk ได้เพราะเราใช้สคริปต์ python, perl และ bash

ELSA - Enterprise Log Search and Archive

คุณสมบัติหลัก:


  • ค้นหาข้อความแบบเต็มในคำใดๆ ในข้อความหรือช่องที่แยกวิเคราะห์
  • จัดกลุ่มตามสาขาใด ๆ และจัดทำรายงานตามผลลัพธ์
  • กำหนดการค้นหา
  • แจ้งเตือนเมื่อมีการค้นหาบันทึกใหม่
  • บันทึกการค้นหา อีเมลที่บันทึกไว้ผลการค้นหา
  • สร้างตั๋วเหตุการณ์ตามผลการค้นหา (พร้อมปลั๊กอิน)
  • ระบบปลั๊กอินที่สมบูรณ์สำหรับผลลัพธ์
  • ส่งออกผลลัพธ์เป็นลิงก์ถาวรหรือใน Excel, PDF, CSV และ HTML
  • การรวม LDAP เต็มรูปแบบสำหรับการอนุญาต
  • สถิติการค้นหาตามผู้ใช้และขนาดบันทึกและจำนวน
  • สถาปัตยกรรมแบบกระจายอย่างสมบูรณ์ สามารถจัดการโหนด n ที่มีการสืบค้นข้อมูลทั้งหมดพร้อมกัน
  • ไฟล์บีบอัดที่มีอัตราส่วนดีกว่า 10:1

รายละเอียดประสิทธิภาพ:


สำหรับการกำหนดระบบ ตามลำดับความสำคัญ: ขนาดดิสก์, RAM, ความเร็วของดิสก์, จำนวน CPU ปัจจัยด้านประสิทธิภาพที่เหนือกว่าคือตัวสร้างดัชนีและดีมอนการค้นหาของสฟิงซ์ ดังนั้นโปรดอ้างอิง sphinxsearch.com สำหรับเอกสาร สถิติที่ฉันให้มานั้นนำมาจากระบบขนาดใหญ่ (16 CPU, 144 GB RAM, 12 TB HD) แต่คุณจะได้รับประสิทธิภาพที่เหมือนกันบนระบบที่มี 4 CPU, 8 GB RAM และ HD ขนาดใดก็ได้ตามที่ปรับขนาดเป็นเส้นตรง ระบบทำงานครั้งแรกบนเบลดของ IBM ที่มี RAM 4 GB และไดรฟ์ SAN ที่ช้า และทำงานที่อัตราเดียวกัน แต่ 4 GB กำลังลดความเร็วลงเล็กน้อย


รายละเอียดประสิทธิภาพและรายการคุณสมบัติหลัก พร้อมคำอธิบายของสถาปัตยกรรม: http://ossectools.blogspot.com/2011/03/fighting-apt-with-open-source-software.html

รหัส: https://code.google.com/p/enterprise-log-search-and-archive/

VM: http://ossectools.blogspot.com/2011/07/elsa-vmware-appliance-available.html

รายละเอียดเกี่ยวกับโครงการ: http://ossectools.blogspot.com/2011/03/comprehensive-log-collection.html

หากคุณกำลังมองหาทางเลือกอื่นที่ราคาไม่แพงสำหรับ Splunk ให้ลองใช้ LogZilla ( http://www.logzilla.pro ) ปรับขนาดได้ดีหรือดีกว่า Splunk (คุณสามารถค้นหาบันทึกได้มากกว่า 300 ล้านรายการในเวลาประมาณ 1-2 วินาที) และมีค่าใช้จ่ายเพียง 1/10 อย่างง่ายดาย พวกเขามีตัวอย่างที่ทำงานอยู่ที่http://demo.logzilla.pro