Reviewing reports and error messages
ArcGIS 10 is the last release of the stand-alone ArcGIS Image Server product. The image service definition (.ISDef) has been replaced by an improved geodatabase data model—the mosaic dataset—which can be published as an image service using the ArcGIS Server Image extension.
ArcGIS Image Server outputs summary text for certain operations. The textual output is formatted as pipe-delimited strings, making it easy for an administrator to use grep-like tools and import the results to a database for complex analysis. Each component of the ArcGIS Image Server outputs a report that details all the actions performed by the component. These reports can be used for
- Analyzing the cause of errors—If an error occurs in a component, details of what may have caused it can be displayed in the reports.
- Analysis for optimization—By analyzing the requests and time taken for different operations, it is possible to determine what features put the maximum load on the system. After a feature is identified, different methods exist to optimize it.
- Creation of usage reports—Reports can be used to determine usage of the system and different datasets.
Reports created by the different ArcGIS Image Server components
Service Editor
The Service Editor component of ArcGIS Image Server generates log reports during the build and compile operations. These reports notify you of any errors that have occurred while building or compiling your image service definition. This enables you to find the cause of an error and try to solve it.
When you compile an image service definition using Service Editor, a YYYYMMDD-ClientObject.log report is generated and placed in C:\Documents and Settings\All Users\Application Data\ESRI\Image Server\Logs\Clients for Microsoft Windows Server 2003 and Windows XP and in C:\ProgramData\ESRI\ImageServer\Logs\Clients folder for Windows Vista, Windows Server 2008 and Windows 7.
Log reports are generated when you optimize your service by creating derived tiles, service overviews, and derived rasters in ArcGIS Image Server. These logs are created in C:\Documents and Settings\All Users\Application Data\ESRI\Image Server\Logs\ServiceEditor\YYYYMMDD-ServiceEditor.log and C:\Documents and Settings\All Users\Application Data\ESRI\Image Server\Logs\Clients\YYYYMMDD-ClientObject.log for Windows Server 2003 and Windows XP.
For Windows Vista, Windows Server 2008 and Windows 7, these logs are created in C:\ProgramData\ESRI\Image Server\Logs\ServiceEditor\YYYYMMDD-ServiceEditor.log and C:\ProgramData\ESRI\Image Server\Logs\Clients\YYYYMMDD-ClientObject.log.
These log files list the actions, such as create, add, merge, and delete, that were performed while optimizing an image service definition.
Service provider
The service provider component of ArcGIS Image Server creates log reports. These reports are placed in the C:\Documents and Settings\All Users\Application Data\ESRI\Image Server\Logs\ServiceProvider folder for Microsoft Windows Server 2003 and Windows XP and in C:\ProgramData\ESRI\ImageServer\Logs\ServiceProvider for Windows Vista, Windows Server 2008 and Windows 7. The format of the log file is YYYYMMDD-ServiceProvider.log.
You can use the ArcGIS Image Server Reporter window to view the live service provider reports as they are generated. For your visual convenience, different text colors are used in the window to represent the different parts of the request, such as the incoming request, a message stating what is done, and then what is being sent back to the client. Red text represents an error. To open the Image Server Reporter, click Start > Programs > ArcGIS > Image Server > Reporter 10.
Server
The server component of ArcGIS Image Server also creates logs. For Windows Server 2003 and Windows XP, these reports are placed in C:\Documents and Settings\All Users\Application Data\ESRI\Image Server\Logs\Server, and for Windows Vista, Windows Server 2008 and Windows 7, the log reports are placed in C:\ProgramData\ESRI\Image Server\Logs\Server. The format of the log file is YYYYMMDD-Server.log.
The following is a sample server log report:
<Item> <Time>2006-03-21T10:16:29.533</Time> <ID>00245C</ID> <Source></Source> <Message>Could not Start the Server on '127.0.0.1' at port '3982'; The Image Server is not licensed. Please ensure that an appropriate value (greater than zero) is specified in the 'CPULicenses' property of the Server Configuration file.</Message> <Details></Details></Item>
In the above example, note that the message tag encloses some of the commonly found error messages and tasks, such as "Could not start the server."
About viewing, analyzing, and managing the different reports
The report structure
The ArcGIS Image Server components generally output one log report per day except for the Derived Raster Generator. The time in the log reports is recorded in seconds. Time and date follow the ISO standards. The component log files are usually placed in C:\Documents and Settings\All Users\Application Data\ESRI\Image Server\Logs (for Windows 2003 Server and Windows XP) and in C:\ProgramData\ESRI\ImageServer\Logs (for Windows Vista, Windows Server 2008 and Windows 7).
The log file names are of the following format—yyyymmdd-ComponentName.log, where yyyy is the year of log creation, mm is the month of log creation, dd is the date of log creation, and ComponentName is the name of the image server component. For example, 20060404-Server.log is a log created by the server component on April 4, 2006.
All log reports created by Image Server components are written in XML and have the following standard structure:
<Item> <Time></Time> <Time></ID> <Source></Source> <Message></Message> <Details></Details> </Item>
- Item—Denotes the log item.
- Time—Denotes the time when the item is logged.
- ID—Denotes the error ID. All IDs that are 000000 are normal log items. If the ID is anything other than 000000, it denotes an error.
- Source—The module that writes the item.
- Message—Description of the log.
- Details—Additional details about the message.
Viewing reports
The log reports can be viewed on the Log Viewer dialog box in the Image Server Manager. To view the reports as XML within an XML viewer, a root node must be added. To add such a node, use a text editor to add the following line at the start of the file:
<Report>
Add the following line at the end of the report:
</Report>
You can also view all the reported information as it is recorded using Reporter.
Analyzing reports
To analyze log reports, you need to extract a specific section of the log. The reports are specifically formatted in a standard manner such that they can be loaded into different applications for analysis. You can extract the log reports to spreadsheet applications, such as Microsoft Excel, Lotus 1-2-3, or OpenOffice.
The following command can be used to extract specific information from a report:
findstr "Summary" (LogFile) > (Text File),
- Summary—Details of the log report.
- LogFile—Name of the log report, for example, 20060404-Server.log.
- Text File—Location the log file is extracted to initially. This text file can be loaded into a spreadsheet application. For this, you need to open the text file and set the delimiter as a pipe(|).
Managing reports
The size of reports can become large over time, especially if the Verbose Reporting option is checked on the Image Service Definition Properties dialog box. In such a case, you can delete the log files using the Image Server Manager. Log reports from the Service Editor need to be deleted manually.
Service provider log action summary items
1. Load service
This summary item appears after an image service is loaded by the module. This item is always reported.
Syntax
SummaryLoadService|InstanceID|ServiceSource|ServiceName|StartTime|EndTime|NRasterDatasets|TimeToLoad
Node |
Description |
---|---|
SummaryLoadService |
Text placeholder |
InstanceID |
A UUID created for each service provider instance |
ServiceSource |
Full path to the source of the service definition (.ISCDef) |
ServiceName |
Fully qualified name of the image service |
StartTime |
Time in ISO format at which the loading began |
EndTime |
Time in ISO format at which the loading ended |
NRasterDatasets |
Number of raster datasets loaded for this service |
TimeToLoad |
Time taken (in seconds) to load the image service |
2. Session start
This summary item appears when a new connection is made. This item is always reported.
Syntax
SummarySessionStart|SessionID|InstanceID|SessionStartTime|ServiceName|ClientUserName|ClientMachineName|ClientApplicationName
Node |
Description |
---|---|
SummarySessionStart |
Text placeholder |
SessionID |
A unique user ID created for each client connection thatidentifies the connection |
InstanceID |
The unique user ID that identifies this service provider instance |
SessionStartTime |
Time in ISO format when the client connection was made |
ServiceName |
Name of the service selected for this session |
ClientUserName |
User name of the client |
ClientMachineName |
Machine name of the client |
ClientApplicationName |
Name of the application that made the client connection |
3. AOI start
This summary item lists the crucial pieces of information obtained at the start of an area of interest (AOI) request to the service. This item is always reported.
Syntax
SummaryAoiStart|SessionID|RequestID|RequestStartTime|AoiXMin|AoiYMin| AoiXMax|AoiYMax|AoiNCols|AoiNRows|AoiXDim|AoiYDim|NRastersToMerge| TimeFindItems
Node |
Description |
---|---|
SummaryAoiStart |
Text placeholder |
SessionID |
A unique ID created for each client session thatidentifies the connection |
RequestID |
A unique user ID created for each client connection |
RequestStartTime |
Time in ISO format when the request was made |
AoiXMin |
Minimum x-coordinate of the area of interest envelope (in client spatial reference system) |
AoiYMin |
Minimum y-coordinate of the area of interest envelope (in client spatial reference system) |
AoiXMax |
Maximum x-coordinate of the area of interest envelope (in client spatial reference system) |
AoiYMax |
Maximum y-coordinate of the area of interest envelope (in client spatial reference system) |
AoiNCols |
Number of columns of pixels in the area of interest image |
AoiNRows |
Number of rows of pixels in the area of interest image |
AoiXDim |
X pixel size of the area of interest envelope (in meters) |
AoiYDim |
Y pixel size of the area of interest envelope (in meters) |
NRastersToMerge |
Number of raster items selected by the database that will be merged to create the mosaicked image |
TimeFindItems |
Time taken to find all raster items intersecting with the area of interest envelope |
4. Area of interest properties
This summary item lists all client-side properties of the area of interest request. This item is always reported.
Syntax
SummaryAoiProperties|SessionID|RequestID|<Key>:"<value>"|<Key>:"<value>"|<Key>:"<value>"|…
Node |
Description |
---|---|
SummaryAoiProperties |
Text placeholder |
SessionID |
A unique user ID created for each client connection thatidentifies the connection |
RequestID |
A unique user ID created for each request |
Key |
Name and value of the property |
5. Selected raster
This summary item enumerates all raster items selected by the Raster Item module prior to any filtering or visibility elimination. It is logged only when verbose reporting is enabled in the service definition.
Syntax
SummarySelectedRaster|SessionID|RequestID|RasterIDs
Node |
Description |
---|---|
SummarySelectedRaster |
Text placeholder |
SessionID |
A unique ID for the client connection |
RequestID |
A unique user ID created for each request |
RasterIDs |
Fully qualified raster IDs of all the selected raster items (semicolon-separated list) |
6. Processed raster
This summary item appears for each raster item that is merged to create the area of interest mosaic. It lists all the pieces of information pertaining to the raster item. This item is always reported.
Syntax:
SummaryProcessedRaster|SessionID|RequestID|ItemOrderIndex|RasterID|SourceName|LayerName|TimePrepBlob|TimeCreateFormat|TimeInitPChain|TimeLoad|TimeMerge|GridNCols|GridNRows|FormatStartCol|FormatStartRow|FormatEndCol|FormatEndRow
Node |
Description |
---|---|
SummaryProcessedRaster |
Text placeholder |
SessionID |
A unique ID for the client connection |
RequestID |
A unique user ID created for each request |
ItemOrderIndex |
A zero-based number signifying the order in which this raster item is merged with the area of interest image |
RasterID |
Fully qualified raster ID of the selected raster item |
SourceName |
Source name that refers to the underlying raster dataset for this raster item |
LayerName |
Layer name within the source of the raster dataset |
TimePrepBlob |
Time taken to prepare the raster item BLOB |
TimeCreateFormat |
Time taken to create the Raster Format Reader object |
TimeInitPChain |
Time taken to initialize the Process Chain object |
TimeLoad |
Total time taken to load the raster item |
TimeMerge |
Total time taken to merge the raster item with the mosaic buffer |
GridNCols |
Number of columns in the warp grid |
GridNRows |
Number of rows in the warp grid |
FormatStartCol |
Start pixel column requested from the underlying raster dataset |
FormatStartRow |
Start pixel row requested from the underlying raster dataset |
FormatEndCol |
End pixel column requested from the underlying raster dataset |
FormatEndRow |
End pixel row requested from the underlying raster dataset |
7. AOI end
This summary item is output upon completion of the AOI request. This item is always reported.
Syntax
SummaryAoiEnd|SessionID|RequestID|TotalAoiTime|TimeFindItems|TimeServiceProc|CodecName|CodecQuality|TimeByCodec|PreCodecBufferSize|PostCodecBufferSize|TimeCreateMosaic|TimeTransmit|TimeOverhead|RequestEndTime
Node |
Description |
---|---|
SummaryAoiEnd |
Text placeholder |
SessionID |
A unique ID for the client connection |
RequestID |
A unique user ID created for each request |
TotalAoiTime |
Total time taken to complete the AOI request: formula TotalAoiTime = TimeFindItems + TimeServiceProc + TimeByCodec + TimeCreateMosaic + TimeTransmit + TimeOverhead |
TimeFindItems |
Time taken to find all raster items intersecting with the AOI envelope |
TimeServiceProc |
Time taken to apply the service process |
CodecName |
Name of the codec used on the mosaic buffer prior to transmission |
CodecQuality |
Quality factor used by the codec |
TimeByCodec |
Time taken by the codec to compress the buffer |
PreCodecBufferSize |
Size of the mosaic buffer in kilobytes before the codec was run |
PostCodecBufferSize |
Size of the mosaic buffer in kilobytes after the codec was run |
TimeCreateMosaic |
Total time taken to create the mosaicked image |
TimeTransmit |
Estimated time taken to transmit the mosaic buffer to the client |
TimeOverhead |
The difference between TotalAoiTime and the sum of all the other time values reported |
RequestEndTime |
Time in ISO format at which the request ends |
8. Metadata request
This summary item appears when the client requests metadata. This item is reported only when the metadata request is received.
Syntax
SummaryMetadataRequest|SessionID|RequestID|MetadataType|MetadataSize|TotalMetadataTime
Node |
Description |
---|---|
SummaryMetadataRequest |
Text placeholder |
SessionID |
A unique ID for the client connection |
RequestID |
A unique user ID created for each request |
MetadataType |
The type of metadata requested |
MetadataSize |
Size of the metadata string in bytes |
TotalMetadataTime |
Total time taken in seconds for the metadata request |
9. Session end
This summary item appears when the session ends after a client disconnection. This item is always reported.
Syntax
SummarySessionEnd|SessionID|SessionEndTime|Duration|Reason
Node |
Description |
---|---|
SummarySessionEnd |
Text placeholder |
SessionID |
A unique ID for the client connection |
SessionEndTime |
Time in ISO format at which the session ends |
Duration |
Specifies how long the session was active (in seconds) |
Reason |
The reason for client disconnection |
The client logs are similar to the service provider logs.
Service Editor log action summary items
1. Search rasters
This summary item reports the time taken by the raster process definition (RPDef) generator to search for files. This item is reported while using the wizards to add rasters or while using the AddRaster ISCommand.
Syntax:
SummarySearchRasters|NRasters|SearchTime
Node |
Description |
---|---|
SummarySearchRasters |
Text placeholder |
NRasters |
The number of rasters found |
SearchTime |
Time taken (in seconds) to search the rasters of a particular type |
2. Create raster process definition files
This summary item reports the time taken by the raster process definition (RPDef) generator to generate .RPDefs for the searched files. This item is reported while using the wizards to add rasters or while using the AddRaster ISCommand.
Syntax
SummaryCreateRPDefs|NRPDefs|GenerationTime
Node |
Description |
---|---|
SummaryCreateRPDefs |
Text placeholder |
NRPDefs |
The number of raster process definition files generated |
GenerationTime |
Time taken (in seconds) to generate the raster process definition files |
3. Add raster process definition files
This summary item reports the time taken to add the generated raster process definition files. This item is always reported.
Syntax
SummaryAddRPDefs|NRPDefs|TotalTime|ValidationTime|TransformationTime|CreateShapeTime|UpdateAttributesTime|AddRecordTime
Node |
Description |
---|---|
SummaryAddRPDefs |
Text placeholder |
NRPDefs |
The number of rasters that are added |
TotalTime |
Total time taken (in seconds) to add rasters |
ValidationTime |
Time taken (in seconds) to validate the rasters |
TransformationTime |
Time taken (in seconds) to transform raster footprint from raster SRS to service SRS |
CreateShapeTime |
Time taken (in seconds) to create ArcGIS geometry shapes from the GML strings |
UpdateAttributesTime |
Time taken (in seconds) to update the attributes of all the records |
AddRecordTime |
Time taken (in seconds) to add all records to the service table |
4. Build
This summary item appears after an image service definition is run through the build process. This item is always reported.
Syntax
SummaryBuild|NRPDefs|TotalTime|ValidateServiceTime|ComputePixelSizeRangesTime|DeriveBoundaryTime|ExtractMetaFieldsTime|OutputPropertiesTime|DeriveImagesTime|ValidateRPDefTime|CompileServiceTime
Node |
Description |
---|---|
SummaryBuild |
Text placeholder |
NRPDefs |
The number of rasters selected for the build process |
TotalTime |
Total time taken (in seconds) to build an image service definition |
ValidateServiceTime |
Time taken (in seconds) to validate the image service definition |
ComputePixelSizeRangesTime |
Time taken (in seconds) to compute pixel size range |
DeriveBoundaryTime |
Time taken (in seconds) to create boundary for all rasters |
ExtractMetaFieldsTime |
Time taken (in seconds) to extract metadata of all the records |
OutputPropertiesTime |
Time taken (in seconds) to compute output properties |
DeriveImagesTime |
Time taken (in seconds) to derive images |
ValidateRPDefTime |
Time taken (in seconds) to validate rasters |
CompileServiceTime |
Time taken (in seconds) to compile the image service definition |
5. Compile
This summary item appears after an image service definition is compiled. This item is always reported.
Syntax
SummaryCompile|ISCDefFilePath|CompileServiceTime
Node |
Description |
---|---|
SummaryCompile |
Text placeholder |
ISCDefFilePath |
The name of the compiled image service definition |
CompileServiceTime |
Total time taken (in seconds) to compile an image service definition |