Server configuration files

The Server.dat file maintains the server's properties. The server object manager (SOM) reads the contents of this file at its startup. The server reports a successful start once this file has been successfully read and any initialization detailed in it completed. If there are errors in the file, the SOM logs an error and attempts to start using default values for the missing or invalid properties.

When the SOM is first installed on a machine, the Server.dat file does not exist. Server.dat is created after the SOM is started, and either a server object container (SOC) machine or a server directory is added to the GIS server.

Avoid editing the Server.dat file manually for properties that can be changed using Manager or the Catalog window in ArcGIS Desktop.

CautionCaution:

You must stop the ArcGIS Server Object Manager service before making manual edits to the Server.dat file. Consider making a backup of the Server.dat file at this point in case the file is inadvertently corrupted during editing.

The following is an example of a Server.dat file for a GIS server with a single container machine (padisha) and a single output directory (\\padisha\images) whose logging level is 3.

<Server>
 <SecurityEnabled>false</SecurityEnabled>                  
 <ServerMachines>
  <Machine>
   <Name>padisha</Name>
   <Description>Server container machine 1</Description>
   <Capacity>-1</Capacity>
  </Machine>
 </ServerMachines>
 <ServerDirectories>
  <Directory>
   <Path>\\padisha\arcgisserver\arcgiscache</Path>
   <URL>http://padisha/arcgiscache</URL> 
   <Description>Cache location</Description>
   <Type>cache</Type>
  </Directory>
  <Directory>
   <Path>\\padisha\arcgisserver\arcgisjobs</Path>
   <URL>http://padisha/arcgisjobs</URL>
   <Description>Geoprocessing jobs location</Description> 
   <Type>jobs</Type>
   <Cleaning>sliding</Cleaning>
   <MaxFileAge>21600</MaxFileAge>
  </Directory>
  <Directory>
   <Path>\\padisha\arcgisserver\arcgisoutput</Path>
   <URL>http://padisha/arcgisoutput</URL>
   <Description>Output directory location</Description>
   <Type>output</Type>
   <Cleaning>sliding</Cleaning>
   <MaxFileAge>600</MaxFileAge>
  </Directory>
 </ServerDirectories>
 <Properties>
  <LogPath>C:\Program Files\ArcGIS\Server\user\log\</LogPath>
  <LogSize>10</LogSize>
  <LogLevel>3</LogLevel>
  <ConfigurationStartTimeout>300</ConfigurationStartTimeout>
  <EngineContextTimeout>600</EngineContextTimeout>
  <AISServer>127.0.0.1:3982</AISServer>
 </Properties>
 <ErrorReportMode>2</ErrorReportMode>  
 <ErrorReportModeSOM>3</ErrorReportModeSOM>
 <ErrorReportDir>\\padisha\ErrorReports</ErrorReportDir>
 <ErrorReportEnableUpload>True</ErrorReportEnableUpload>
 <ErrorReportEmailAddress>myAdmin@myCompany.com</ErrorReportEmailAddress>
 <ErrorReportInterval>3600</ErrorReportInterval>
 <ErrorReportCacheSize>10</ErrorReportCacheSize>
</Server>

Server.dat tags

The following are the tags, their meanings, and example values in a Server.dat file.

<SecurityEnabled>

Determines whether security rules that you've set on your services will be enforced. By default, this tag is set to false. Enabling security for services in Manager sets this tag to true. The only way to set it back to false is to manually edit the Server.dat file. Stop the ArcGIS Server Object Manager service before you manually perform this edit.

<CrashDetectorFrequency>

The SOM periodically pings the SOC processes to see if they are still responsive. After the CrashDetectorFrequency elapses, the SOM pings every SOC process. The time for this check to finish depends on the number of SOC processes running on all the SOC machines. When the check finishes, the SOM will wait this interval before starting the check again. This interval defaults to 5000 milliseconds (5 seconds).

<ServerMachines>

The list of server object container machines. This tag contains <Machine> subtags for each server machine.

<Machine>

A server object container machine. This tag contains three subtags: <Name>, <Description>, and <Capacity>.

<Name>

A string that represents the name of the server object container machine. If this tag is missing, the rest of the <Machine> tag is ignored. On startup, the SOM does not validate that the value of this tag is a valid server object container machine. If it's invalid, errors are logged as the SOM attempts to create services on it. The machine names must be unique. Duplicate machine names are ignored.

<Description>

An optional string that describes the server object container machine.

<Capacity>

An integer representing the maximum number of service instances that can run on the machine. A value of -1 indicates that there is no limit on the number of instances.

The following is an example of the <ServerMachine> tag, <Machine> tag, and its subtags.

<ServerMachines>
 <Machine>
  <Name>padisha</Name>
  <Description>Server container machine 1</Description>
  <Capacity>25</Capacity>
 </Machine>
 <Machine>
  <Name>melange</Name>
  <Description>Server container machine 1</Description>
  <Capacity>25</Capacity>
 </Machine>
</ServerMachines>

<ServerDirectories>

The list of server directories. This tag contains <Directory> subtags for each server directory.

<Directory>

A server directory. This tag contains the required subtag <Path> and a number of optional subtags.

<Path>

A string that represents the path of the server directory. This property is required and must be unique to each server. Directories with duplicate <Path> tags will be ignored. Note, however, that if a single location has multiple paths—for example, two shares with different names—the SOM will not recognize those as being the same directory.

<URL>

An optional string that represents the URL of a virtual directory that points to the physical location specified in the <Path> tag. The URL will be in the form http://padisha/images.

<Description>

An optional string that is a description of the server directory.

<Type>

A string that denotes the type of server directory, which can be cache, jobs, output, or index. You cannot specify a server input directory here. Instead, use the <InputDir> tag in the <Properties> section of the file.

<Cleaning>

An optional string that specifies how server output and jobs directories delete old files that they contain. Valid values are off, sliding, or absolute. If <Cleaning> is off, then the server will not delete files from the directory. If <Cleaning> is sliding, then the server will delete files for which the time specified by the <MaxFileAge> tag has elapsed since they were last accessed. If <Cleaning> is absolute, then the server will delete files for which the time specified by the <MaxFileAge> tag has elapsed since they were created. If this tag is missing, the default value is sliding.

The <Cleaning> tag is only used with server jobs and output directories. It is not used with server cache, index, or input directories.

In order for a file or folder to be cleaned from a server output directory, it must be prefixed with _ags_.

<MaxFileAge>

An optional positive integer that represents the amount of time in seconds that needs to elapse since a file was last accessed (sliding) or created (absolute) before the file is deleted. If this tag is missing, the default is 10.

The <MaxFileAge> tag is only used with server jobs and output directories. It is not used with server cache directories.

The following is an example of the <ServerDirectory> tag, <Directory> tag, and its subtags.

<ServerDirectories>
 <Directory>
  <Path>\\padisha\arcgisserver\arcgiscache</Path>
  <URL>http://padisha/arcgiscache</URL>
  <Description>Cache location</Description>
  <Type>cache</Type>
 </Directory>
 <Directory>
  <Path>\\padisha\arcgisserver\arcgisjobs</Path>
  <URL>http://padisha/arcgisjobs</URL>
  <Description>Geoprocessing jobs location</Description>
  <Type>jobs</Type>
  <Cleaning>sliding</Cleaning>
  <MaxFileAge>21600</MaxFileAge>
 </Directory>
 <Directory>
  <Path>\\padisha\arcgisserver\arcgisoutput</Path>
  <URL>http://padisha/arcgisoutput</URL>
  <Description>Output directory location</Description>
  <Type>output</Type>
  <Cleaning>sliding</Cleaning>
  <MaxFileAge>600</MaxFileAge>
 </Directory>
</ServerDirectories>

<Properties>

The list of properties of the GIS server, including the logging properties and service creation time-out. All the subtags of <Properties> are optional.

<AISServer>

An optional tag that appears only when you've registered an ArcGIS Image Server with ArcGIS Server. The tag structure is <Image Server IP address>:<port>

<ConfigurationStartTimeout>

An optional integer that represents the time in seconds that the GIS server will wait for a service instance to start. If a service takes longer to start than <ConfigurationStartTimeout>, then it will time out and an error will be logged. The default time-out is 300.

<EngineContextTimeout>

An optional integer that represents the maximum amount of time in seconds a client can hold on to a service that is no longer in use (empty server context) before it is automatically released. The default is 600.

<InputDir>

A string representing the path to the server input directory. This can be a local path or a UNC path.

<LogLevel>

An optional integer that indicates the level of detail to which the server writes in the log files. The levels are as follows:

0 (None)

1 (Error)

2 (Normal)

3 (Info:Simple)

4 (Info:Standard)

5 (Info:Detailed)

100 (Verbose)

The default log level is 2, or Normal. For more detailed descriptions of the log levels, see Interpreting log files.

<LogPath>

An optional string representing the path to the location on disk to which log files are written. The default is <install_location>\server\user\log. Note that the GIS server account must have Write access to this location.

<LogSize>

An optional integer representing the size to which a single log file can grow (in MB) before a new log file is created. The default is 10.

<LogMaxFiles>

An integer defining the maximum number of log file pairs (consisting of the companion .xml and .dat files) that can exist in a log directory. When the maximum is reached, the oldest log file pair will be deleted to make room for the newest one. The default value of -1 means that there is no maximum and no log files will be deleted.

<LogUser>

Boolean property indicating whether log messages should include the name of the user who initiated the corresponding server request. The default value is true. This tag is most useful when ArcGIS Server security is enabled.

<MachinePingAttempts>

An optional tag specifying the number of attempts to try to reach the SOC machine if a ping attempt fails. The SOM periodically pings its SOC machines every n milliseconds, n being the value of the <MachinePingInterval> tag. If a SOC machine does not respond, the SOM will continue trying to ping that SOC until MachinePingAttempts is reached, at which point the SOC will be marked as disabled. Disabled SOCs are still pinged, and if they are determined to be responsive later, they are validated and added back into the group of SOCs available to take requests from the SOM.

The default value of MachinePingAttempts is 2.

<MachinePingDelay>

An optional tag specifying the time in milliseconds between subsequent attempts to ping the SOC machine if the first ping attempt fails. See the definitions for <MachinePingInterval>, <MachinePingTimeout>, and <MachinePingAttempts> in this help topic for more information.

<MachinePingInterval>

The SOM periodically pings its SOC machines to determine if they're still available. This tag specifies the time in milliseconds that will elapse between the SOM's attempts to determine whether its SOC machines are still connected. Unresponsive machines may be marked as disabled. The default MachinePingInterval is 3000 (3 seconds); in other words, this is the value the SOM uses if you do not add this tag.

<MachinePingTimeout>

An optional tag specifying time in milliseconds to wait for a response from a SOC machine before considering the attempt a failure. The default is 1000 (1 second). If the attempt fails, the SOM will continue pinging the SOC n number of times, n being the value you specify in the <MachinePingAttempts> tag.

Below is an example of the <Properties> tag of Server.dat with its subtags.

<Properties>
 <LogPath>/cup1/arcgis/server/user/log/</LogPath>
 <LogSize>10</LogSize>
 <LogLevel>3</LogLevel>
 <ConfigurationStartTimeout>300</ConfigurationStartTimeout>
 <EngineContextTimeout>600</EngineContextTimeout>
 <AISServer>127.0.0.1:3982</AISServer>
 <MachinePingInterval>10000</MachinePingInterval>
 <MachinePingTimeout>2000</MachinePingTimeout>
 <MachinePingAttempts>3</MachinePingAttempts>
 <MachinePingDelay>500</MachinePingDelay>
</Properties>

<ErrorReportMode>

Specifies whether ArcSOC.exe processes are allowed to crash and what the server should do when a crash occurs. Following are the available values:

  • 0—ArcSOC.exe processes cannot crash.
  • 1—Allows ArcSOC.exe processes to crash with a message written to the log file.
  • 2—Allows ArcSOC.exe processes to crash with a message written to the log file and an error report written to the location specified in the <ErrorReportDir> tag.
<ErrorReportModeSOM>

Specifies whether the ArcSOM.exe process generates error reports. Following are the available values:

  • 0—The ArcSOM.exe processes does not generate error reports.
  • 3—The ArcSOM.exe process generates error reports.
NoteNote:

Values of 1 and 2 are not used with this property.

<ErrorReportDir>

The path on disk where ArcGIS Server error reports are written. This property must be set before any error reports can be generated.

You can choose any directory, but the SOM and SOC accounts must be able to write to it. If your ArcGIS Server configuration contains multiple machines, this path should be either a UNC path pointing to a shared location, or an identical local path on each SOC machine.

Learn more about ArcGIS Server error reports

<ErrorReportEnableUpload>

Specifies whether error reports will be automatically sent to ESRI through the Web. The default is False. A value of True enables error reports to be sent. Before enabling automatic error reports, you should read and be in agreement with the terms in the ESRI Privacy Policy.

<ErrorReportEmailAddress>

Optional property containing an e-mail address that ESRI can use to contact the system administrator for further information about error reports.

<ErrorReportReportInterval>

The interval in seconds at which you would like ArcGIS Server to check the error report directory for new reports. The default is 3600 (1 hour). Any reports found during the check will automatically be sent to ESRI if you have enabled automatic uploads (using the <ErrorReportEnableUpload> tag).

<ErrorReportCacheSize>

The number of error reports to keep in the error report output directory. The default is 10. If you are accumulating reports quickly with many ArcSOC.exe crashes, you may want to set this property to a higher value. If you have chosen to automatically send error reports to ESRI, the reports are removed from the directory after they are sent. However, you can always find the last 10 reports in the SOM account's user profile directory.


8/22/2012