Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Event Log - сбор логов на центральный сервер

Автор: kibkalo
Дата сообщения: 18.06.2003 07:44
Events Log - сбор на сервер, анализ и оповещение



Существует несколько основных подходов:

1. программа клиент отправляет Event'ы на цетральный сервер в котором происходит сбор логов со всех клиентов. на сервере так же возможна настройка оповещений по критическим событиям.

2. программа клиент-сервер сама по сети собирает Event'ы со всех машин и складывает их к себе в базу. на ней же возможна настройка оповещения по событиям.

GFI EventsManager
ELM System Monitoring & Event Log Management solution

Microsoft Operations Manager http://www.microsoft.com/mom/
Event to Syslog - http://ntsyslog.sourceforge.net/
NetIQ (ex Webtrends) - http://www.netiq.com/solutions/security/incident.asp
CA Etrust solutions - http://www3.ca.com/Solutions/Solution.asp?ID=271
Security Management Simplified - http://www.secnology.com/products/index.asp
EventSentry - http://www.isdecisions.com/en/software/eventrigger/
EventLog Translation Service - http://www.winagents.com/en/products/eventlog-syslog/index.php

Event Log Monitoring - интересная подборка ссылок


Автор: Ducky
Дата сообщения: 15.10.2003 10:58
Неужто никто не подскажет ?
Может какая-нибудь прога есть, которая собирает евенты, например ошибки, в одну базу ? И например еще сообщает об ошибках администратору в ненавязчивой форме ?
Автор: naPmu3aH
Дата сообщения: 15.10.2003 11:27
А вот такую шьуку никто не щупал?

Цитата:
Microsoft Operations Manager it's a tool designed to manage events and performance from a Web console, create sophisticated rules to respond to events, generate custom reports, or handle operational tasks using one of the add-on management packs. Microsoft Operations Manager has a full set of features that help administrators monitor and manage the events and performance of Windows–based server systems. The Application Management Pack, the extensive product support knowledge base included in Microsoft Operations Manager, is the key to helping reduce the day-to-day support costs associated with running applications and services in a Microsoft Windows®–based IT infrastructure. As an important part of any successful Windows 2000 Server or Microsoft Windows Server System™ deployment, Microsoft Operations Manager Management Packs provide the operational knowledge necessary to keep mission-critical applications and systems running smoothly.

Насколько оно будет удовлетворять тому что вас интересует я не имею не малейшего представления, но вдруг?
http://www.microsoft.com/mom/
Автор: trisen
Дата сообщения: 16.10.2003 04:26
у меня реализовано все вот так

стоит freebsd на ней крутится syslog-ng + mysql
на win 2000 установлен мелкий сервис NTsyslog (http://ntsyslog.sourceforge.net/)
который форвардит все сообдщения из eventloga на freebsd


PS
тут придется писать какой-то фронтенд для поиска и т.д.


вместо freebsd можно поставить виндовый syslog демон который умеет в базюльки пихать логи, названия к сожалению не пмню




насчет MOM-а он умеет собирать евент логи и умеет делать поиск
но слишком громоздок
Автор: Ducky
Дата сообщения: 16.10.2003 12:42
Спасибо большое !!!!
Очень реально получилось
На клиентах стоит NTsyslog а сервреом поставил кивишный сислог демон. И боле-мене.
И принтера тоже прикаянные стали.

Kibkalo - Это есть решение проблемы. A MOM мне тоже не понравился, громоздкий, для большой конторы (очень большой конторы) Как та же ИСА и ЕКСЧЕНДЖ
Автор: chemy
Дата сообщения: 28.10.2003 08:19
https://www.tntsoftware.com/Products/
Автор: jokerv
Дата сообщения: 28.10.2003 10:01
NetIQ (ex Webtrends)
http://www.netiq.com/solutions/security/incident.asp

CA Etrust solutions
http://www3.ca.com/Solutions/Solution.asp?ID=271
Автор: chemy
Дата сообщения: 28.10.2003 12:16
У меня есть скрипт `event log to smtp` .
Работает на W2000. отправляет эвенты на email.
Но мне кажется, что
Цитата:
https://www.tntsoftware.com/Products/
более функциональные.
Автор: DimKu
Дата сообщения: 29.10.2003 07:34
Ещё стоит посмотреть GFI LANguard S.E.L.M
Собирает события как в реалтайме, так и по расписанию. Кидает их в базу данных Access или SQL, при просмотре разбивает по категориям.
Автор: chemy
Дата сообщения: 29.10.2003 13:56
Согласен

Цитата:
стоит посмотреть GFI LANguard S.E.L.M

по описалову весьма функциональна....
Даже не подозревал что есть такие приятные вещи.
Может что-то еще присоветуете?

DimKu ты пользовался сам?
Автор: DimKu
Дата сообщения: 30.10.2003 09:47
chemy
Да, пользовался.
Не рекомендую работать в режиме реального времени при большом количестве опрашиваемых серверов и рабочих станций. Но если уж очень хочется реалтайм, то желательно отдельный компьютер со SCSI дисками.
Автор: 0wL
Дата сообщения: 23.04.2004 06:01
chemy

Цитата:
У меня есть скрипт `event log to smtp` .
Работает на W2000. отправляет эвенты на email.


Очень хотелось бы настроить нечто подобное! Нельзя ли поподробнее рассказать как это выглядит? От самого скрипта тоже не откажусь.
Автор: kibkalo
Дата сообщения: 23.04.2004 08:06
Тему эту я начинал год назад, хочу поделиться результатом..
Главной целью было собирать и инндексировать все логи с сотни серверов и security логи с пары тысяч ПК домена. Необходимо было настроить систему алертов с уведомлениями и систему отчетов.
Сейчас у меня крутится MOM 2005. В отличии от 2000, в нем вся отчетность на SQL 2000 Reporting Services (без тормозного Crystal), есть увдомления по sms, а не только e-mail.
ОГРОМНАЯ база плагинов к нему. В частности для управления специфическими сервисами, далеко не только от микрософта и не только виндовыми.
Крутится все на одном сервере с SMS 2003 и довольно тесно они друг в друга вплелись, - MOM берет информацию с SMS клиентов, т.к. у меня в организации все ПК это брендовые НР, то на них всех стоят HP Insight агенты. Так вот SMS и MOM черпают с них информацию! По всем внутренним алертам системы - открыт корпус, сбоит вентилятор, заменен модуль памяти (с p/n такого-то на другой)..
В общем я очень доволен.

naPmu3aH, - спасибо за совет.
Автор: 0wL
Дата сообщения: 24.04.2004 01:54
kibkalo

Цитата:
Сейчас у меня крутится MOM 2005

Насколько я понял - это бетка, из финального доступен только MOM 2000 и обновления к нему... насколько она глючная? были какието сложности в пользовании?

Цитата:
ОГРОМНАЯ база плагинов к нему

Где их можно найти? на microsoft не увидел...

как сильно эта красота грузит машины? я имею в виду и ПК с которого берутся логи и ПК на который они сбрасываются...

Если кому нужен Systems Management Server 2003 то вот ссылочка:
http://www.microsoft.com/smserver/downloads/2003/default.asp
оттуда можно скачать 120 дневный trial...

Вопрос - где можно взять MOM 2005?

Кто что может сказать про Microsoft System Center 2005?
Автор: kibkalo
Дата сообщения: 24.04.2004 10:40
0wL - третья бета совсем не сырая, я ее в продакшн запустил.

Комп оно не грузит.
Плагины на сайте мс называются MOM Management Packs
Для немикрософтовских систем на сайте этих систем (НР, делл, ибм,...)

Microsoft System Center 2005 = MOM 2005 + Systems Management Server 2003 with SP1 (now in beta)
Автор: 0wL
Дата сообщения: 04.05.2004 23:47
kibkalo

хм.. я так понимаю что преобнести это дело можно будет либо по отдельности (MOM и SMS) - либо единым пакетом (MSC)...

соответственно если MSC 2005 еще невышел - остается вопрос где взять его части (MOM и SMS)... желательно вместе с SP...
Автор: zzzolegzzz
Дата сообщения: 05.05.2004 05:12
chemy
Так что насчет скрипта ? Поделись, плз ...
Автор: mikas
Дата сообщения: 05.05.2004 07:12
Да хотелось бы что-нить попроще чем MSC 2005 и GFI LANguard.

Есть что-нить простое. Чтобы например предупреждения и ошибки периодически пересылала на 1 компьютер.
Автор: Raredemon
Дата сообщения: 07.06.2004 12:35
Не хочу открывать новую тему поэтому спрошу здесь. Вопрос не принципиальный, но все же...
В пятницу вечером вырубался свет (упс-а не хватило), и после этого не включился сервер баз данных, так и лежал до понедельника. За что получил нагоняй
Дано: домен из 100 компов, 2 контроллера домена + очень критичный сервер базы данных под SQL-ом. Все работает под Windows 2000 Server и Advanced Server.
Задача: Особо важные логи с серверов пересылать на емыл по SMTP, как-то включение/выключение/перезагрузка, ошибки жестких дисков, запуск/останов SQL-а, обновление NAV CE и т.д.
Вопрос: как это реализовать "малой кровью", то есть не устанавливая доп. софта, желательно средствами ОС, либо стороняя программа, но наиболее проверенная и не требующая гигантских ресурсов.
ЗЫ: почему на емыл? заранее отвечу, у моего gsm провайдера можно получать почту на телефон в виде смс.
Автор: chemy
Дата сообщения: 07.06.2004 14:51
zzzolegzzz

Цитата:
Так что насчет скрипта ? Поделись, плз ...


event_log_to_smtp.mof

#pragma namespace ("\\\\.\\Root\\cimv2")


instance of __EventFilter as $f1
{
Name = "Print events";

Query = "select * "
"from __InstanceCreationEvent "
"within 5 "
"where TargetInstance isa 'Win32_NTLogEvent' "
" and (TargetInstance.Type = 'error' "
" or TargetInstance.Type = 'warning' "
" ) "
" and not (TargetInstance.SourceName = 'DCOM' "
" and (TargetInstance.EventCode = 10006 "
" or TargetInstance.EventCode = 10009 "
" ) "
" ) "
;

QueryLanguage = "WQL";
};


instance of SMTPEventConsumer as $c1
{
Name = "NT Event Logs to SMTP";

SMTPServer = "mail";

ToLine = "admins@domen"
// ToLine = "userd@domen"

Subject = "%TargetInstance.Logfile% %TargetInstance.Type% (%TargetInstance.ComputerName%)";

Message =
"DateTime: %TargetInstance.TimeGenerated%\n"
"Type: %TargetInstance.Type%\n"
"User: %TargetInstance.User%\n"
"Computer: %TargetInstance.ComputerName%\n"
"Source: %TargetInstance.SourceName%\n"
"Category: %TargetInstance.CategoryString% (%TargetInstance.Category%)\n"
"Event ID: %TargetInstance.EventCode% (%TargetInstance.EventIdentifier%)\n\n"
"Description:\n"
"%TargetInstance.Message%";
};


instance of __FilterToConsumerBinding
{
Filter = $f1;
Consumer = $c1;
};


Добавлено
run.bat
_____________________________
mofcomp -N:root\cimv2 C:\WINNT\system32\wbem\SMTPCons.mof
mofcomp -N:root\cimv2 .\event_log_to_smtp.mof
_____________________________

Скрипт не мой. работает на W2K. Запускать надо run.bat

Добавлено

Цитата:
mofcomp -N:root\cimv2 C:\WINNT\system32\wbem\SMTPCons.mof

меняем на нужный путь для w2k3
Все работает средствами win как и просили никакого доп софта и доп загрузки.
Автор: Jovanotti
Дата сообщения: 07.06.2004 17:54
Эту весчь не кто не пробовал ? судя по описанию ОЧЕНЬ ....

IPSentry Network Monitoring Suite 4.6.5.5 мониторинг доступности различных TCP/IP сервисов (Web-серверы, FTP, POP, NNTP, SMTP и другие) устанавливается на рабочей станции под управлением Windows 9x/ME/NT/2000/XP/2003 и определяет доступность всех заданных сервисов через определенный интервал времени.
IPSentry отслеживает различные аспекты доступности работающих сервисов - возможность установить соединение, послать данные или получить правильный ответ на запрос.

IPSentry Network Monitoring Suite 4.6.5.5 - is network monitoring software is a Windows 9x/ME/NT/2k/XP/2003 based network monitoring software package used by thousands of Information System specialists, system administrators, and IT solution providers around the world.
IPSentry will monitor Web Servers, FTP, POP3, SMTP, Scripts, Routers, Drive Space, NT System Services, DNS, RADIUS, file sizes, NT Event Log, and even accurate system time. In the event of failure, IPSentry will notify you via any or all of several different methods including: Alphanumeric Pager, Numeric Beeper, Email, Audible Alert, Syslog Alert, X10 Control, Launch external application, and even attempt to restart a stopped service.
Автор: chemy
Дата сообщения: 08.06.2004 13:54
Copy Event Log Events to a Database

Description

Script Code

Set objConn = CreateObject("ADODB.Connection")
Set objRS = CreateObject("ADODB.Recordset")
objConn.Open "DSN=EventLogs;"
objRS.CursorLocation = 3
objRS.Open "SELECT * FROM EventTable" , objConn, 3, 3
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colRetrievedEvents = objWMIService.ExecQuery _
("Select * from Win32_NTLogEvent")
For Each objEvent in colRetrievedEvents
objRS.AddNew
objRS("Category") = objEvent.Category
objRS("ComputerName") = objEvent.ComputerName
objRS("EventCode") = objEvent.EventCode
objRS("Message") = objEvent.Message
objRS("RecordNumber") = objEvent.RecordNumber
objRS("SourceName") = objEvent.SourceName
objRS("TimeWritten") = objEvent.TimeWritten
objRS("Type") = objEvent.Type
objRS("User") = objEvent.User
objRS.Update
Next
objRS.Close
objConn.Close
Автор: Jovanotti
Дата сообщения: 08.06.2004 15:35
Да, можно еще примитивно создать оснастку Event Viewer и добавить в нее ряд компьютеров с которых хотим собрать логи.

Автор: leputain
Дата сообщения: 07.01.2005 07:23
я нашёл бесплатное решение.
не самое супер, но я им пользоваться буду.

http://www.systemtools.com/somarsoft -> качаем утилитку DUMPEVT, там же написано чем она лучше RESKIT'овского DUMPEL.

далее батник (или .cmd'шник):

Код:
DUMPEVT.exe /reg=local_machine /logfile=sys /outfile=local.txt /clear >> error.log
DUMPEVT.exe /reg=local_machine /logfile=app /outfile=local.txt /clear >> error.log
DUMPEVT.exe /reg=local_machine /logfile=sec /outfile=local.txt /clear >> error.log
DUMPEVT.exe /reg=local_machine /logfile=dns /outfile=local.txt /clear >> error.log
DUMPEVT.exe /reg=local_machine /logfile=dir /outfile=local.txt /clear >> error.log
DUMPEVT.exe /reg=local_machine /logfile=rpl /outfile=local.txt /clear >> error.log

DUMPEVT.exe /computer=другойIP /reg=local_machine /logfile=sys /outfile=local.txt /clear >> error.log
DUMPEVT.exe /computer=другойIP /reg=local_machine /logfile=app /outfile=local.txt /clear >> error.log
DUMPEVT.exe /computer=другойIP /reg=local_machine /logfile=sec /outfile=local.txt /clear >> error.log
DUMPEVT.exe /computer=другойIP /reg=local_machine /logfile=dns /outfile=local.txt /clear >> error.log
DUMPEVT.exe /computer=другойIP /reg=local_machine /logfile=dir /outfile=local.txt /clear >> error.log
DUMPEVT.exe /computer=другойIP /reg=local_machine /logfile=rpl /outfile=local.txt /clear >> error.log
Автор: Doug
Дата сообщения: 01.02.2005 15:29
И как оказалось - существует много ПО для обработки данной проблемы.
Бесплатная Ascella Log Monitor - www.aarsoftware.com (www.file-monitor.com) - тупо переправляющая заданные логи администратору.
Платная Ascella Log Monitor Plus - уже отслеживающая заданные события.
Наиболее понравилась EvenTrigger - www.eventrigger.com.

Хотя, все это можно сделать руками используя заготовки с www.microsoft.com/technet/scriptcenter/default.mspx. Замеччательное место.
Автор: leputain
Дата сообщения: 01.03.2005 16:13
у меня вот что вышло:

Код: On Error Resume Next

Const adOpenStatic = 3
Const adLockOptimistic = 3
Const adUseClient = 3
Const wbemFlagReturnImmediately = &h10
Const wbemFlagForwardOnly = &h20
arrComputers = Array("имя_компа")

Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")

objConnection.Open "DSN=DSN_имя;"

objRecordSet.Open "SELECT * FROM имя_таблицы" , _
objConnection, adOpenStatic, adLockOptimistic

For Each strComputer In arrComputers
Set objWMIService = GetObject("winmgmts:{(Security)}\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NTLogEvent", "WQL", _
wbemFlagReturnImmediately + wbemFlagForwardOnly)

For Each objItem In colItems

objRecordSet.AddNew

objRecordSet("Category") = objItem.Category
objRecordSet("CategoryString") = objItem.CategoryString
objRecordSet("ComputerName") = objItem.ComputerName
strData = Join(objItem.Data, ",")
objRecordSet("Data") = strData
objRecordSet("EventCode") = objItem.EventCode
objRecordSet("EventIdentifier") = objItem.EventIdentifier
objRecordSet("EventType") = objItem.EventType
strInsertionStrings = Join(objItem.InsertionStrings, ",")
objRecordSet("InsertionStrings") = strInsertionStrings
objRecordSet("Logfile") = objItem.Logfile
objRecordSet("Message") = objItem.Message
objRecordSet("RecordNumber") = objItem.RecordNumber
objRecordSet("SourceName") = objItem.SourceName
objRecordSet("TimeGenerated") = objItem.TimeGenerated
objRecordSet("TimeWritten") = objItem.TimeWritten
objRecordSet("Type") = objItem.Type
objRecordSet("User") = objItem.User

objRecordSet.Update

Next


Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Backup)}!\\" & _
strComputer & "\root\cimv2")
Set colLogFiles = objWMIService.ExecQuery _
("SELECT * FROM Win32_NTEventLogFile")

For Each objLogfile in colLogFiles
objLogFile.ClearEventLog()
Next

Next

objRecordSet.Close
objConnection.Close
Автор: leputain
Дата сообщения: 08.03.2005 15:21
Ascella Log Monitor
не шлет описания эвентов, если они на русском

EMCO Log Audit Pro
требует MSDE (SQL), потом ещё не понимает русские буквы в эвентах (в описаниях) - меняет на ???



Автор: leputain
Дата сообщения: 09.03.2005 13:27
мне так понравился LogParser - бесплатный, от microsoft

вот этим скриптом собираем логи в расшаренную папку:

Код: On Error Resume Next

strLogsPath = "\\HOME\Logs\"

arrComputers = Array("HOME")
For Each strComputer In arrComputers

dtmThisDay = Day(Now)
dtmThisMonth = Month(Now)
dtmThisYear = Year(Now)
dtmThisHour = Hour(Now)
dtmThisMinute = Minute(Now)
dtmThisSecond = Second(Now)

strBackupName = dtmThisYear & "_" & dtmThisMonth & "_" & dtmThisDay & "_" & _
dtmThisHour & "_" & dtmThisMinute & "_" & dtmThisSecond

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Security,Backup)}!\\" & _
strComputer & "\root\cimv2")
Set colLogFiles = objWMIService.ExecQuery _
("SELECT * FROM Win32_NTEventLogFile")
For Each objLogfile in colLogFiles
objLogFile.BackupEventLog(strLogsPath & strBackupName & "_" & objLogFile.LogFileName & _
"_" & strComputer & ".evt")
objLogFile.ClearEventLog()
Next

Next
Автор: leputain
Дата сообщения: 16.03.2005 14:10
портировал на любимый jscript:

Код: var wbemFlagReturnImmediately = 0x10;
var wbemFlagForwardOnly = 0x20;

var arrComputers = new Array("HOME","ADMIN1");
var strLogsPath = "\\\\HOME\\eventlog\\";

for (i = 0; i < arrComputers.length; i++)
{
var objWMIService = GetObject("winmgmts:{(Backup,Security)}\\\\" + arrComputers[i] + "\\root\\CIMV2");
WScript.Echo(arrComputers[i] + ": connected");
var colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NTEventlogFile", "WQL",
wbemFlagReturnImmediately | wbemFlagForwardOnly);
WScript.Echo(arrComputers[i] + ": WMI Query");
var enumItems = new Enumerator(colItems);
for (; !enumItems.atEnd(); enumItems.moveNext())
{
var objItem = enumItems.item();
WScript.Echo(arrComputers[i] + ": " + objItem.LogfileName);
var strBackupFile = strLogsPath + arrComputers[i] + "_" + TimeNow() + "_" + objItem.LogfileName + ".evt";

try { objItem.BackupEventLog(strBackupFile) }
catch(e) { WScript.Echo(strBackupFile + " couldn't be saved."); }

try { objItem.ClearEventLog() }
catch(e) { WScript.Echo(objItem.LogfileName + " couldn't be cleared."); }

}
}


function TimeNow()
{
d = new Date();
var strNow = "";
strNow += LeadingZero(d.getFullYear()) + "_";
strNow += LeadingZero((d.getMonth()) + 1) + "_";
strNow += LeadingZero(d.getDate()) + "_";
strNow += LeadingZero(d.getHours()) + "_";
strNow += LeadingZero(d.getMinutes()) + "_";
strNow += LeadingZero(d.getSeconds());
return(strNow);
}

function LeadingZero(intNum)
{
if (10 > intNum)
{ intNum = "0" + intNum;}
return(intNum);
}
Автор: leputain
Дата сообщения: 17.03.2005 03:10
я же не отстану.
теперь собирает дампы на шару.

http://forum.ru-board.com/topic.cgi?forum=8&topic=1908&start=500#8

Страницы: 12

Предыдущая тема: Программирование мини-АТС


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.