adminknecht
Goto Top

ActiveSync-Statistik mit Exchange 2010, letzte Sync-Zeit?

Hallo,

ich habe mir hier ein PS-Skript für die Exchange2010-Konsole gebaut, das die mobilen Geräte ermittelt und Daten wie Gerät, OS-Stand usw. abfragt und in eine CSV exportiert:

Get-ActiveSyncDevice | select devicetype,deviceos,userdisplayname,deviceuseragent,status,firstsynctime,lastsyncattempttime,lastsuccesssync | export-csv c:\activesync.csv -delimiter ";"

Funktioniert so weit prima, nur bekomme ich manche Spalten nicht gefüllt, bzw. leer zurück, wie STATUS, LASTSUCCESSSYNC und LASTSYNCATTEMPTTIME

Die Felder sind richtig geschrieben, existieren auch, oder mache ich da etwas anderes falsch?

Bin für jeden Tipp dankbar und wünsche euch noch eine guten Wochenstart!

Marcus

Content-ID: 234762

Url: https://administrator.de/contentid/234762

Ausgedruckt am: 24.11.2024 um 02:11 Uhr

Onitnarat
Lösung Onitnarat 07.04.2014, aktualisiert am 08.04.2014 um 09:03:21 Uhr
Goto Top
Servus Marcus,
die drei genannten Eigenschaften sind nicht Teil von "Get-ActiveSyncDevice" sondern von "Get-ActiveSyncDeviceStatistics", daher sind sie natürlich in Deiner Abfrage leer.

Gruß
Marcus
AdminKnecht
AdminKnecht 08.04.2014 um 08:31:01 Uhr
Goto Top
Hallo Marcus,

danke für den Tipp, hast du eine Idee, wie ich das in ein cmdlet hinein bekomme? Bin da mit dem "pipen" usw. nicht ganz so firm.....

Schöne Grüße

Marcus
AdminKnecht
AdminKnecht 08.04.2014 um 09:02:59 Uhr
Goto Top
Habe es hinbekommen, ein bisschen weitere Google-Recherche brachte mich auf diese einfache Änderung:

Get-ActiveSyncDevice | Get-ActiveSyncDeviceStatistics | select devicetype,deviceos,userdisplayname,deviceuseragent,status,firstsynctime,lastsyncattempttime,lastsuccesssync | export-csv c:\activesync.csv -delimiter ";"

Super, danke dir, Marcus, für den Hinweis!

Schönen Tag noch,

Marcus
Onitnarat
Onitnarat 08.04.2014 um 10:08:19 Uhr
Goto Top
Das kann nicht gehen, da fehlt ja jetzt dann "userdisplayname", richtig?
AdminKnecht
AdminKnecht 08.04.2014 um 10:38:39 Uhr
Goto Top
Zitat von @Onitnarat:

Das kann nicht gehen, da fehlt ja jetzt dann "userdisplayname", richtig?

Richtig, das habe ich dann kurz darauf gemerkt und es durch IDENTITY ersetzte, das enthält ja auch den Usernamen...!

Also nochmal komplett für alle Mitleser:

Get-ActiveSyncDevice | Get-ActiveSyncDeviceStatistics | select devicetype,deviceos,identity,deviceuseragent,status,firstsynctime,lastsyncattempttime,lastsuccesssync | export-csv c:\activesync.csv -delimiter ";"
Onitnarat
Onitnarat 08.04.2014 um 10:49:08 Uhr
Goto Top
Mhhh, weicht etwas von Deiner Grundidee von oben ab, aber funktioniert.

Hier mein Vorschlag:
$outputobject = @()

$devices = Get-ActiveSyncDevice

ForEach ($device in $devices) {

    $statistics = $device | Get-ActiveSyncDeviceStatistics

    $obj = New-Object System.Object
    $obj | Add-Member -MemberType NoteProperty -Name DeviceType -Value $device.DeviceType
    $obj | Add-Member -MemberType NoteProperty -Name DeviceOs -Value $device.DeviceOs
    $obj | Add-Member -MemberType NoteProperty -Name UserDisplayName -Value $device.UserDisplayName
    $obj | Add-Member -MemberType NoteProperty -Name DeviceUserAgent -Value $device.DeviceUserAgent
    $obj | Add-Member -MemberType NoteProperty -Name FirstSyncTime -Value $device.FirstSyncTime
    $obj | Add-Member -MemberType NoteProperty -Name Status -Value $statistics.Status
    $obj | Add-Member -MemberType NoteProperty -Name LastSyncAttemptTime -Value $statistics.LastSyncAttemptTime
    $obj | Add-Member -MemberType NoteProperty -Name LastSuccessSync -Value $statistics.LastSuccessSync

    $outputobject += $obj
}

Write-Output $outputobject | ft -AutoSize

und statt dem "| ft -AutoSize" kann man dann auch den CSV-Export machen...