<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      PowerShell 2.0 實踐(六)管理Windows日志

      上一次我們對Windows注冊表進行了簡單的管理操作,重在理解"項"和"值"的概念。練習了新建、修改、刪除、查看注冊表項、值的命令,此外,借助于.NET框架,我們同樣可以遠程管理注冊表,前提是遠程計算機上的"Remote Registry"服務要啟動。本次我們來重點關注一下Windows日志,Windows日志記錄了各種軟件、硬件發生的變化,當計算機出現問題時,方便管理員快速排錯、恢復計算機等。尤其在一些軟件安裝失敗時,根據日志中的EventID和詳細信息能夠幫助我們查找解決方案。

       

      測試腳本下載

      本系列所有腳本均在Windows Server 2008 R2 DataCenter (PowerShell 2.0) + PowerGUI Script Editor Free Edition x64中測試通過。 

       

      1. Windows日志按嚴重程度區分有5種類型:

      Error

      Warning

      Information

      SuccessAudit

      FailureAudit

      從名稱就可以看出其相應含義,使用EventLogEntryType枚舉可以查看這些類型:

      [enum]::GetNames([System.Diagnostics.EventLogEntryType])

      運行結果:

      在【開始】à【運行】輸入:eventvwr調出事件查看器,這里以Windows Server 2008 R2上的事件查看器為例,可以看到Windows內置的事件分類:

      Windows按照程序、安全、安裝程序、系統等對日志進行了分類,對程序和服務還進行了更細粒度的分類,方便管理員查看特定應用程序的日志。當然,我們可以添加自定義的分類,稍后將練習這種操作。

       

      2、PowerShell 2.0中關于日志操作的命令有如下一些:

      Get-EventLog

      Get-WinEvent

      New-EventLog

      Clear-EventLog

      Remove-EventLog

      Show-EventLog

      Write-EventLog

      Limit-EventLog

       

      1. 查看日志分類列表。

      Get-EventLog –List

      運行結果:

      這里你可能會奇怪,怎么返回的分類這么少呢?剛才可是看到了很多的分類啊,這是因為從Windows Vista/2008開始,Windows使用了一種新的日志格式:.evtx,代替了之前的.evt,而Get-EventLog命令只能查看之前的日志格式。后面會看到如何查看.evtx格式的日志。

      Get-EventLog提供了查看遠程計算機上日志的能力,類似的,只需要添加-ComputerName參數即可:

      PS:今天的遠程測試有點杯具,本機連接VMWare中的虛擬機時老是有問題,一會提示RPC服務器不可用,一會認證失敗,于是用兩個虛擬機進行測試:

      操作系統

      IP

      作用

      Windows HPC Server 2008 R2

      192.168.220.133

      模擬本地計算機

      Hyper-V 2008 R2

      192.168.220.134

      模擬遠程計算機

       

      Get-EventLog -ComputerName 192.168.220.134 –List

      運行結果:

       

      1. 在Windows Vista/2008/7/2008R2中,可以使用Get-WinEvent查看.evtx格式的日志。

      Get-WinEvent -ListLog * | Select LogName,RecordCount

      運行結果:

      遠程調用時提示RPC服務器不可用,不知是哪里配置錯了:

       

      1. 查看指定類別的最新日志。

      Get-EventLog -LogName "Windows PowerShell" -Newest 10 | Format-Table Index,Source,Message –AutoSize

      運行結果:

      遠程調用結果:

       

      對于.evtx格式,這樣使用:

      Get-WinEvent -LogName "Windows PowerShell" -MaxEvents 10 | Format-Table EventID,Source,Message –AutoSize

      運行結果:

      .evtx格式遠程調用依然出錯:

       

      6、篩選日志信息,Windows日志存儲的內容非常多,如果不進行一些篩選,管理員難以獲取有價值的信息。

      如:篩選日志信息中包含【vmware】的日志,

      Get-EventLog -LogName System | Where {$_.Message -like "*vmware*"}

      運行結果:

       

      在【Windows PowerShell】類別中查詢EventID小于500的日志信息:

      Get-EventLog -LogName "Windows PowerShell" | Where {$_.EventID -lt 500}

      運行結果:

       

      使用Format-List可以查看詳細信息:

      Get-EventLog -LogName "Windows PowerShell" | Where {$_.EventID -lt 500} | Format-List

      運行結果:

       

      查詢自昨天這個時候到今天這個時候的日志,并按照EventID排序、分組:

      Get-EventLog -LogName "Windows PowerShell" | Where {$_.TimeWritten -gt ((Get-Date).AddDays(-1))} | Sort EventID | Group EventID

      運行結果:

       

      1. 使用Get-WinEvent命令還可以使用一些高級命令來進行篩選。

      使用Hashtable進行篩選,注意,只能在Win7/2008 R2上使用:

      Get-WinEvent -FilterHashtable @{LogName="Windows PowerShell";ProviderName="PowerShell"} | Where {$_.TimeCreated -gt (Get-Date).AddDays(-1)}

      運行結果:

      有效的鍵值對如下:

      -- LogName=<String[]>

      -- ProviderName=<String[]>

      -- Path=<String[]>

      -- Keywords=<Long[]>

      -- ID=<Int32[]>

      -- Level=<Int32[]>

      -- StartTime=<DateTime>

      -- EndTime=<DataTime>

      -- UserID=<SID>

      -- Data=<String[]>

      -- *=<String[]>

       

      通過XML來篩選。

      在事件查看器中可以自定義篩選規則:

      在Filter中填寫項篩選的規則:

      在XML選項卡中可以看到自動生成的代碼:

      將這段XML復制出來,在PowerShell中通過-FilterXml查詢:

      $xml = @'

      <QueryList>

      <Query Id="0" Path="Windows PowerShell">

      <Select Path="Windows PowerShell">*[System[(Level=3) and TimeCreated[timediff(@SystemTime) &lt;= 43200000]]]</Select>

      </Query>

      </QueryList>

      '@

       

      Get-WinEvent -FilterXml $xml

      運行結果:

       

      因為EventLog使用了內置的XML來存儲,還可以使用XPath表達式進行篩選:

      Get-WinEvent -LogName "System" -FilterXPath "*[System[EventID > 1000]]"

      運行結果:

       

      1. 導入、導出日志。

      Get-WinEvent -ListLog * | Export-Clixml -Path F:\PSTest\EventLog.clixml -Force

       

      Import-Clixml -Path F:\PSTest\EventLog.clixml | Group Source

      運行結果:

      Clixml要優于csv格式,它將對象序列化為xml格式,方便后續的查詢。

      使用記事本來查看其存儲結構:

       

      1. 讀寫日志。

      創建一個類別為Script,來源為PSScript的日志類別:

      New-EventLog -LogName Script -Source PSScript

      運行結果:

      向剛剛創建的這個類別中寫入一條日志:

      Write-EventLog -LogName Script -Source PSScript -Message "Test" -EntryType "Information" -EventId 1

      運行結果:

       

      限制日志的容量,避免單個日志文件太大:

      Limit-EventLog -LogName Script -MaximumSize 2MB

      運行結果:

       

      調用Event Viewer查看日志:

      Show-EventLog

      運行后將打開事件查看器。

       

      清空、刪除日志(慎用):

      Clear-EventLog -LogName Script

       

      Remove-EventLog -LogName Script

       

      小結:

      本次我們練習了WIdnows系統日志的相關操作,重在設置不同的篩選條件來查詢我們感興趣的日志,熟練掌握這些命令后,將大大提高解決問題的效率。Get-WInEvent提供了一些高級的刪選命令,如Hashtable、XPath、XML等,可酌情使用。類似的WIdnows日志同樣允許遠程操作,但是這次我遇到了很多問題,主要分為兩類:RPC服務器不可用、無訪問權限。關于PowerShell的遠程管理是個很大的話題,后續篇章我們再討論,現在我也在找原因。Windows自帶了一個日志管理的命令行工具:wevtutil.exe,功能也很強大,后面我們專門來測試一下這個工具。

      posted @ 2010-08-24 21:40  江蘇瑞步科技  閱讀(6062)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 精品一区二区三区女性色| 少妇人妻无码专区视频| 国产亚洲欧美精品久久久| 免费看国产曰批40分钟| 成人亚洲国产精品一区不卡| 仪征市| 免费无码va一区二区三区 | 国产日韩精品欧美一区灰| 丰满少妇高潮无套内谢| 亚洲肥熟女一区二区三区| 国产精品XXXX国产喷水| 深夜av免费在线观看| 涩涩爱狼人亚洲一区在线| 无码激情亚洲一区| 99精品国产综合久久久久五月天| 国内精品人妻一区二区三区| 免费无码AV一区二区波多野结衣| 国产99青青成人A在线| 久99久热这里只有精品| 久久精品国产亚洲av热一区| 精品无码三级在线观看视频| 精品偷自拍另类精品在线| 亚洲免费视频一区二区三区| 99久久婷婷国产综合精品青草漫画| 日韩精品一区二区三区人| 中文字幕va一区二区三区| 亚洲综合精品一区二区三区| 色欲久久人妻内射| 亚洲欧美偷国产日韩| 天堂亚洲免费视频| 国产熟女av一区二区三区| 国产成人一区二区三区在线| 色哟哟www网站入口成人学校| 久久热在线视频精品视频| 狠狠色综合久久狠狠色综合 | 久久一卡二卡三卡四卡| 丰满人妻一区二区三区色| 亚洲精品理论电影在线观看| 99久久精品国产一区二区暴力| 久久热精品视频在线视频| 国产午夜大地久久|