Where can I find that whether iis job has been scheduled or last ran? I checked the task scheduler but it did not lead me to anything. any help will be appreciated.
Short Answer
Unfortunately, no short and fast way to see when IIS was reset last. This needs a monitoring system in your environment.
Long Answer
IIS as the service is controlled by WWW publishing service in Windows Services. Therefore, anytime the service is down, IIS is down (Server reboot, stopping the service manually etc.)
Service start\stops are logged in Windows event viewer as Service has stopped and Service has started.
IIS has application pools which are "containers" for websites to run in. These app pools may stop\restart due to variety of reasons.
Application Pool was manually reset at some point using IIS Manager.
Application Pools are by default set to restart ever 1740 minutes (29 hours). Therefore, any request at that moment of restart is going to receive an error.
At times application pools crash due to exceptions in website code.
Just as services Application pool restarts are logged in the Windows Event Viewer
Example:
A worker process with process id of '1234' serving application pool '{your apppool name}' was shutdown due to inactivity. Application Pool timeout configuration was set to 20 minutes. A new worker process will be started when needed.
You can also look at the IIS Logs (C:\inetpub\logs\LogFiles by default) When ever you see the log header, it means the process was started at that time.
Related
What are the reason when a stopped windows service starts automatically?
I know only few which are
When service start-up mode is automatic and someone re-start the server then service will also get started.
When someone forcefully start the service manually.
Is there any other way when a stopped service can start?
Service triggers. This can be hardware device added, internet connection discovered, group policy change or any ETW event.
Have you checked there is a service Dependence? If another service depends on its function, it will automatically come up even though you stop the service.
Since it keeps restarting, it means you are not suppose to disable or stop the service.
Locate the ASP.NET State Service and check the Startup Type property and click the recovery tab for your service configuration and check if the options there could be restarting it.
You can also run a virus scan on your system to be sure your pc is safe.
I have a IBM WebSphere 8.5.5.13 ND on Windows 2016 standard edition with JDK 1.7 enabled. I see that, node agent and server1 (application server) are getting stopped everyday but the deployment manager is still up and running (i.e. admin console can be accessed). So, I have to start nodeagent and the associated server manually everyday. Investigation done so far
Checked if the windows servers are getting restarted everyday? No they are not
Checked nodeagent start and stop server logs but there are no entries to see, some command was issued for stopping
Checked application server profile (server1) logs but nothing is there.
FYI, I don't have clustering done on WAS but it is planned for the future.
I don't no where else I can look for the reason the node agent and server1 is getting stopped everyday.
okay, this is what I found out. In my case I have
Dmgr01 - registered under windows service
Node agent - not registered under windows service
application server - no need or never register application server if you have deployment manager
Since my node agent was not registered under windows service, whenever I log-off or my session is killed due to in-activity, the default behavior is that, all running processes (jave.exe) associated with WebSphere will be crashed and there will not be any trace of it. This is why, I was unable to find the any logs.
I registered my node agent as windows service and everything worked.
I got a Glassfish 4.1.1 copy with two domains on Win2012R2 (no clusters, no instances). I've set a windows service for each of those.
Both services run regularly up until the moment when I restart either or both of them thru their admin web console (server (Admin Server) -> Restart). The following happens:
The domain-related service stops, but does not start again,
The allegedly stopped domain is perfectly functional (deployed apps and admin console are there) (!!!),
When I try to start the win service manually, I get Error 1067 (GF reports "something" is already listening on required ports and that's the domain itself that is now, somehow, NOT run as a service!),
I can start the service again only after I've stopped the domain thru server (Admin Server) -> Stop.
Why did I mention two domains? Because this does not happen when I have just one domain with its' service.
Domains do not share ports, only things in common are the JDK/JRE and general GF files.
Is this a bug in Glassfish or did I set something wrong?
This is a limitation, rather than a bug. The problem is that GlassFish has no way to tell whether or not it is running as a service (and, if it is, what the name of that service would be).
The restart command means that GlassFish is restarting itself, so Windows detects that the process it started has been terminated and shows the service as stopped, but GlassFish spawns a new JVM itself. It has no capability to tell Windows to start the service again.
Essentially, the behaviour you are seeing is expected.
After some more testing, I realized what was going on:
Glassfish is definitively capable of restarting its' own Windows service,
The thing that was happening is it takes GF a few seconds do this on its' own,
But, before GF domain could restart as a service, I clicked the URL to return to admin console, every time. That forced it to run as an ordinary executable.
It does seem like the restart happens faster with just one win service, but I won't claim that as an absolute truth without more testing, for which I have no time now.
I am trying to remote debug web application by using Remote debugger (msvsmon.exe)
I am connecting ok and can see processes problem is server is running multiple applications and I am not sure which one to attach debugger to. One that I am trying to debug is not listed in IIS APPPOOL\... (should it be?) which I have hidden from screencap.
How can I tell which process to attach to?
1. If you have RDC (Remote Desktop Connection) to the server machine, then in IIS Manager (Internet Information Services Manager) you can see which ones are Network Services and which ones are Local Services.
I was lucky to get one that was Local Services which I had only one running on that server...
2. user friendly way
On the server go to IIS Manager -> Worker Procesess -> then you can match IDs to the IDs in attach to debugger window in Visual Studio...
3. Another way that can give you some insight is to use IDs of processes - IDs in your VS attach to process window can be matched to remote machine IDs (they are also in Task Manager on the server...)
To match ID to application pools on server run Command Prompt - As Administrator and run from %windir%\system32\intesrv\ folder command - appcmd list wp to get process ID to application pool mapping, this might help to narrow it down....
When you know which app pool which process is running, you can map them to applications that are running on that app pool in IIS Manager and pray that they will be one-to-one application to pool...
I know this is old but I ran into this because I was researching something relative.
Although you should be able to identify the process by the UserName column. You should go onto the server and identify the app pool your app is running under. Then you can look for that App Pool name in the UserName column.
On the other hand, you can go onto your server and follow the instructions below to get a full list.
Go to C:\Windows\System32\inetsrv\ in your windows explorer. Enter the command “appcmd.exe list wp”. It will list all the process associated with the Application Pools.
I have a website that is hosted on Plesk in Shared Hosting. The session keeps on timing out because the app pool recycles after 5 minutes (even though session timeout is set to 30 min). The effect of session timeout is exaggerated because current user activity is quite low and for users testing the app, the session keeps on timing out every 5 minutes.
On plesk web hosting panel, I can see the AppPool settings but they are disabled. Is there a way to change this setting?
Unfortunately no you cannot change this. I heard that you can set up your webapp to ping periodically to try and keep it alive:
https://www.godaddy.com/community/Developer-Cloud-Portal/IIS-Application-Pool-Idle-Timeout/td-p/9158
Can you prevent your ASP.NET application from shutting down?
If you can't change IIS settings, you can use an external uptime monitor service to continuously query your website with GET requests, which will also keep it alive. Most uptime monitors don't send actual requests, however the Availability feature in Application Insights does and works perfectly for this.
I wrote more about it here.
It's possible in Plesk for Plesk admin and customers/resellers:
Permissions to manage IIS pool settings are granted on a service plan level. Contact Plesk admin to change permissions on a service plan that your domain is assigned.
If you login to Plesk under an 'admin' user, make sure your Plesk is opened in a Service Provider view as this view allows editing Service Plans.