Belirli olay günlüklerine sahip sunucuları bulun


0

Windows servisini güncellememi gerektiren bir görevim var. Bu hizmet farklı adlar altında olabilir - hizmetin yüklenmesinden sonra yükleme adını sorar ... ancak Windows Olay Günlükleri C # ile belirli bir ada sabit kodlanır:

if (!EventLog.SourceExists("MySuperSpecialEventLog"))
    EventLog.CreateEventSource("MySuperSpecialEventLog", "MyLog");

Bu özel günlüğe kaydedilen olaylarla birlikte tüm sunucuları nasıl bulabilirim?

Powershell ile oynuyordum:

clear

import-module ActiveDirectory;
$servers = Get-ADComputer -Filter {OperatingSystem -Like "Windows Server*"} -Property Name | Sort-Object name | Format-Table Name; #,OperatingSystem,OperatingSystemServicePack;
$servers

foreach($server in $servers){
   echo "Get-Eventlog -List -ComputerName $server"
}

Bu bana bir sunucu listesi veriyor ... sonra da Services ForEach sunucusunun bir listesini çıkarmaya çalışıyorum ... o zaman sadece ...

Ama tüm silindirlere tıklayacak bir şey bulamıyorum.

Powershell doğru araç değilse - o belirli EventLog'a sahip tüm sunucuları bulmak için başka ne işe yarar?


foreach olmalıforeach($server in $servers)
LotPings

evet, bu bir çeviri
hatasıydı

Tam olarak ne arıyorsunuz? Olay günlüklerinden (MyLog) ve olay günlük kaynaklarından (MySuperSpecialEventLog) bahsettiniz, ardından her sunucudan hizmetlerin bir listesini almaya çalıştığınızı söylüyorsunuz.
Patrick Seymour

Yanıtlar:


1
$source = "MySuperSpecialEventLog"
import-module ActiveDirectory
$servers = Get-ADComputer -Filter {OperatingSystem -Like "Windows Server*"} | % { $_.Name }

$servers | % {
    Try {
        $eventlog = get-eventlog -Source $source -ComputerName $_ -newest 1 -ErrorAction Stop
        Write-Host $_ , ":", "has $source entries" 
    } Catch {
        Write-Host $_ , ":", $_.Exception.Message
    }
}

Bu yankı computer : has MySuperSpecialEventLog entriesya dacomputer : exceptionmessage

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.