Welcome 微信登录

首页 / 网页编程 / ASP.NET / 使用PowerShell获取网站运行时数据

使用PowerShell获取网站运行时数据2011-12-06 博客园 代震军介绍

站点的启动,停止, 应用程序池的回后或过期(time out), 接受的请求和发送的响应, AppDomains(应用程序域) 的大量

生成和关闭. IIS7 实现了一个所谓的 RSCA 接口(run-time state and control API) ,该接口允许您监视当前系统正在做的

工作.

IIS 7.0 PowerShell Provider 使用该接口并以IIS Provider 名空间来暴露其中一些数据信息. 通过Get-WebItemState,

Start-WebItem, Stop-WebItem 和 Restart-WebItem 等cmdlets来配置站点和应用程序池的状态. 通过IIS 名空间来暴露

出来的运行时状态比如:当前运行的工作者进程,当前执行的请求和被加载的应用程序域(loaded AppDomains )等.

本文使用的站点, applications 和虚拟目录在前一篇文章中已进行了创建.

站点和应用程序池状态

开始查询web站点的状态.

站点状态

PS IIS:> cd Sites
PS IIS:Sites> Get-WebItemState IIS:SitesDemoSite
Started

使用 Stop-WebItem cmdlet 来停止站点:

PS IIS:Sites> Stop-WebItem DemoSite
PS IIS:Sites> Get-WebItemState IIS:SitesDemoSite
Stopped

当然,启动站点的工作也差不多:

PS IIS:Sites> Start-WebItem DemoSite
PS IIS:Sites> Get-WebItemState IIS:sitesDemoSite
Started