Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I've got a development arcgis server machine configured with multiple mapservices, gp services and SOE's. Sometimes an arcgissoc.exe process gets hung. There also seem to be too many SOC's running based on what I can see in ArcCatalog.

How can I figure out which ArcSOC.exe (process id) goes with which service in arccatalog?

I'm running 10.0.

share|improve this question
    
I think the "bonus" ArcSOC processes are workers for the SOM, so you'll always have a few more that aren't associated with a running task. –  mwalker Dec 3 '10 at 19:39

1 Answer 1

up vote 4 down vote accepted

If you enable Info:Simple logging (still applies at 10), process IDs get put in your server log. You can view the logs via server manager or you can go to C:\Program Files\ArcGIS\Server10.0\server\user\log and dig through the .dat file. Here's a excerpt from my dev machine:

<Msg time='2010-12-01T12:18:43' type='INFO1' code='3007' target='Server' thread='5960'>Attempt to start configuration maps/stuff of type MapServer.</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='17004' target='maps/stuff.MapServer' methodName='GraphicFeatureServer.Construct' machine='blahblah' process='9276' thread='4168'>GraphicFeatureServer Construct started.</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='17002' target='maps/stuff.MapServer' methodName='GraphicFeatureServer.Construct' machine='blahblah' process='9276' thread='4168'>Default Map name is: Layers.</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='17002' target='maps/stuff.MapServer' methodName='GraphicFeatureServer.InitializeLayers' machine='blahblah' process='9276' thread='4168'>Layer Initialization Summary. Layers in Map: 2. Successful Initialization on: 2. Unsupported Layers count: 0. Failed Initialization on 0.</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='17002' target='maps/stuff.MapServer' methodName='GraphicFeatureServer.Construct' machine='blahblah' process='9276' thread='4168'>Initialized 2 Layer(s).</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='17002' target='maps/stuff.MapServer' methodName='GraphicFeatureServer.Construct' machine='blahblah' process='9276' thread='4168'>Initialized 0 Table(s).</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='17006' target='maps/stuff.MapServer' methodName='GraphicFeatureServer.Construct' machine='blahblah' process='9276' thread='4168' elapsed='0.01660'>GraphicFeatureServer Construct ended.</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='12002' target='maps/stuff.MapServer' methodName='KmlServer.Construct' machine='blahblah' process='9276' thread='4168'>Construct started.</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='12003' target='maps/stuff.MapServer' methodName='KmlServer.Construct' machine='blahblah' process='9276' thread='4168'>Construct ended.</Msg>
<Msg time='2010-12-01T12:18:44' type='INFO1' code='3013' target='maps/stuff.MapServer' thread='5960'>Configuration maps/stuff.MapServer is started.</Msg>

Process ID 9276 corresponds to the ArcSOC.exe for this map service.

share|improve this answer
1  
Thanks! Sure would be nice to have a UI to watch this during debugging. –  Kirk Kuykendall Dec 1 '10 at 20:44
    
Very good to know, and just as an aside, this works on 9.3.1 as well. –  Chad Cooper Dec 1 '10 at 20:55
    
I wonder if it is safe to assume that if an arcsoc.exe's pid is not listed in the log then it is an orphan that can safely be killed. –  Kirk Kuykendall Dec 1 '10 at 20:56
    
@Kirk: maybe, but you would need to check all logfiles...the log file will roll over once it hits a specific size. –  Derek Swingley Dec 1 '10 at 22:00

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.