¿Alguien está familiarizado con una forma de obtener el grupo de aplicaciones que está asociado con un ID de proceso? Estoy usando Win32_Process para consultar los servicios de W3WP y devolver el PID ahora estoy tratando de obtener el grupo de aplicaciones asociado a él.IIS grupo de aplicaciones PID
Respuesta
Si usted está usando la línea de comandos para averiguarlo ad-hoc con la que puede hacer esto también:
El guión ya está colocado en systemroot \ system32 en Windows Server 2003 para simplemente ir a su símbolo del sistema y el tipo en iisapp.vbs (el .vbs es opcional) y tendrá una lista instantánea de toda la información del conjunto de aplicaciones que siempre quiso saber. Es posible que necesite escribir cscript iisapp.vbs si CScript no es su host de script WSH predeterminado.
Veamos un ejemplo de la salida:
W3WP.exe PID: 1468 AppPoolId: AppPoolForSite1.com
W3WP.exe PID: 3056 AppPoolId: AppPoolForSite2.com
W3WP.exe PID: 1316 AppPoolId: AppPoolForSite3.com
directo desde la boca del caballo, documentos de Microsoft this.
ServerManager serverManager = new ServerManager();
ApplicationPoolCollection applicationPoolCollection = serverManager.ApplicationPools;
Trate de trabajar con esto y debe conseguirle lo que necesita.
En Windows Server 2008 esto ha cambiado.
en systemroot \ system32 \ inetsrv a encontrar la appcmd.exe
usando
lista appcmd wp
se obtiene una lista de todos los procesos de trabajo y los que son apppool servicio.
si se está ejecutando en Windows Server 2008 y sólo desea que el PID, para alimentar a otro script o comando, puede utilizar esto:
c:\windows\system32\inetsrv\appcmd list wps /apppool.name:"My Application Pool" /text:WP.NAME
Por ejemplo, para crear una secuencia de comandos por lotes que crea un volcado de memoria de un grupo de aplicación determinada, utilice esto:
c:\windows\system32\inetsrv\appcmd list wps /apppool.name:"My Application Pool" /text:WP.NAME > "%temp%\pid.txt"
for /F %%a in (%temp%\pid.txt) do c:\debugger\adplus.exe -hang -o d:\dumps -p %%a
pause
Esto me ayudó a comenzar, pero no me importa el archivo temporal. Lo modifiqué para extraer el PID en una variable con lo siguiente: para/F "tokens = 2" %% i in ('% SystemRoot%/system32/inetsrv/appcmd list wps /apppool.name:MyAppPool') do set pid = %% i. – Dono
puede utilizar el administrador de tareas para ver el nombre de usuario bajo el que se ejecuta el proceso (que en general es el mismo que el nombre del grupo de aplicaciones) y el proceso de ID, pero debe activar estas columnas en el administrador de tareas, y también asume el nombre de usuario que el proceso se ejecuta bajo es el mismo que el nombre del grupo de aplicaciones (que es el valor por defecto por lo que yo sé, a menos que uno está utilizando Sharepoint y similares).
También tenga en cuenta que todos los métodos mencionados en esta página sólo se pueden visualizar los procesos que se están ejecutando actualmente, lo que significa que si su proceso en particular se ha apagado debido a ralentí vez que tenga primero en utilizar el sitio con el fin de llevar el proceso en la lista, y en su caso significa que debe acceder primero todos los sitios para asegurarse de que el proceso asociado con ellos es runing.
¿Por qué el voto a favor? –
Porque al enumerar 10 procesos de W3WP y sus PID no se indica cuál es para qué grupo de aplicaciones ... – Shaamaan
@Shaamaan probablemente no fui lo suficientemente claro (he editado ahora la publicación para que quede más claro), pero es el "Nombre de usuario" bajo el que se ejecuta el proceso que suele ser el mismo que el nombre del grupo de aplicaciones, (compruébalo, debería ser cierto en la mayoría, si no en todas las situaciones). –
acabo de descubrir que también se puede encontrar esto en la interfaz de usuario para IIS 7. Seleccione el nodo de servidor web y "procesos de trabajo" abiertos. Esto mostrará el nombre de cada grupo de aplicaciones junto con su ID de proceso y detalles de utilización.
PID del grupo de aplicaciones y dando su nombre:
$AppPoolName = 'AppPoolForSite1'
(Get-ItemProperty IIS:\AppPools\$AppPoolName -Name WorkerProcesses).Collection.processId
Esto debe hacerlo.
public string getAppPoolName(int pid)
{
ServerManager serverManager = new ServerManager();
ApplicationPoolCollection apc = serverManager.ApplicationPools;
foreach (var app in apc)
{
var workers = app.WorkerProcesses;
foreach (var w in workers)
{
if (w.ProcessId == pid)
{
return app.Name;
}
}
}
return string.Empty;
}
Abra el Administrador de IIS (Ejecutar> Inetmgr), Seleccionar nivel de la raíz del árbol de navegación del sitio izquierda y de “Características Panel de vista” seleccionar “los procesos de trabajo”
clic en “procesos de trabajo” para obtener detalles de todos los procesos de trabajo que en la actualidad se están ejecutando
de esta lista obtendrá el nombre del grupo de aplicaciones, identificador de proceso
- 1. Detenga el reciclaje de grupo de aplicaciones de IIS 7.5
- 2. Reciclaje de grupo de aplicaciones IIS + programación de cuarzo
- 3. Grupo de aplicaciones de IIS/Reiniciar y ASP.NET
- 4. Bloqueo de grupo de aplicaciones IIS con excepción 0xc0000005
- 5. IIS 7.5: problema con el grupo de aplicaciones
- 6. Grupo de aplicaciones IIS 7.0 que recicla cada minuto
- 7. grupo de aplicaciones cerrando
- 8. ¿Cuál es la mejor práctica en IIS? ¿Un grupo de aplicaciones para cada aplicación o un grupo de aplicaciones compartido?
- 9. Android obtener PID de otras aplicaciones
- 10. Reiniciar (Reciclar) un grupo de aplicaciones
- 11. IIS: calentamiento de aplicaciones web
- 12. aplicaciones IIS: cambiar los ajustes programáticos
- 13. Detenga el grupo de aplicaciones de IIS 7 desde el script de compilación
- 14. Instalar certificado de cliente para la cuenta de grupo de aplicaciones IIS
- 15. Mejores prácticas para los límites de memoria en un grupo de aplicaciones IIS
- 16. Identidad del grupo de aplicaciones IIS frente a la cuenta de Windows
- 17. ¿Cuál es la relación entre el ASP clásico y un grupo de aplicaciones de IIS?
- 18. Uso de memoria alta con el grupo de aplicaciones w3wp IIS 7
- 19. ¿Qué causa el reciclado de un grupo de aplicaciones en IIS?
- 20. Cómo configurar la versión de .NET Framework 4.5 en el grupo de aplicaciones IIS 7
- 21. ¿Cuál es el grupo de aplicaciones correcto para Net 4.5 para la aplicación web en IIS?
- 22. IIS 7.5: Setting 'grupo de aplicaciones del usuario como el usuario anónimo mediante programación
- 23. Clonar/Duplicar/Copiar un grupo de aplicaciones existente en IIS 7
- 24. ¿Cómo obtener el usuario del grupo de aplicaciones actual en IIS cuando se usa impersonate = true?
- 25. Ejecute Application_Start inmediatamente cuando se reinicie el grupo de aplicaciones en IIS
- 26. El grupo de aplicaciones en IIS 7 no muestra .NET Framework 3.5
- 27. ¿Cómo configurar el grupo de aplicaciones en IIS 7.5 se reinicia automáticamente cuando se detuvo?
- 28. ¿Qué ocurre con el restablecimiento de un grupo de aplicaciones?
- 29. Grupos de aplicaciones de IIS: detener/iniciar frente a reciclar
- 30. identidad del grupo de aplicaciones frente a identidad de suplantación?
esto no parece a la lista piscinas aplicación que se ejecutan como un usuario de la máquina (SYSTEM/servicio de red) .. . ¿Alguna idea? – Doug
Puedo enumerar las funciones de w3wp de NETWORK SERVICE bien. ¿Quizás no ejecutó el comando con privilegios de administrador o el proceso W3WP fue reciclado? – Shaamaan