Home

User Documentation

Getting Started
Learn More
Explore in Detail
Get Inspired

Contributor Documentation

Getting Started
Learn More
Explore in Detail
Get Inspired

Quick Links

Software Manual
AstroDiscuss
GitHub
API Reference

Documentation Versions

Public Release
8.2.0
8.1.0
8.0.0
7.2.0
7.1.0
7.0.0
6.0.0
3.9.0
3.5.0

ISIS 2

Documentation
Tutorials
Technical Documents
USGS

ISIS Documentation


Session Logs

Guide to understanding, controlling, and reading Session Logs

Home

Introduction

Session logs are a mechanism for users to keep track of work they have done. It is a record of the execution of an ISIS program or sequence of ISIS programs. Information written to the log includes:

Control of session logs can be handled via user preferences. For specific information on these preferences see the ISIS Preference Dictionary.

Group = SessionLog
  TerminalOutput = On | Off
  FileOutput = On | Off
  FileName = print.prt
  FileAccess = Append | Overwrite
EndGroup

Format

The output format for session logs is the Parameter Value Language. An example log file for a program would be as follows:

Object = Highpass
  IsisVersion        = 3.0
  ProgramVersionDate = 2003-05-16
  ExecutionDateTime  = 2003-06-25T12:18:45
  ComputerName       = char
  UserName           = janderso
  ProgramDescription = "Apply a high pass filter to a cube"

  Group = UserParameters
    From      = input.cub
    To        = output.cub
    Samples   = 5
    Lines     = 5
    Low       = "Use all pixels" 
    High      = "Use all pixels"
    Minimum   = 0
    Propagate = True
  EndGroup

  Group = Results
    PixelsChanged  = 1024000
    PercentChanged = 100.0
  EndGroup

  Group = Accounting
    ConnectTime  = 0:00:05.2
    CpuTime      = 0:00:04.1
    DirectIO     = 0
    PageFaults   = 2673
    ProcessSwaps = 0
  EndGroup
EndObject

If an error occurred during the processing the file may look like,

Object = Highpass
  IsisVersion        = 3.0
  ProgramVersionDate = 2003-05-16
  ExecutionDateTime  = 2003-06-25T12:18:45
  ComputerName       = char
  UserName           = janderso
  ProgramDescription = "Apply a high pass filter to a cube"

  Group = UserParameters
    From      = moon.cub
    To        = output.cub
    Samples   = 5
    Lines     = 5
    Low       = "Use all pixels" 
    High      = "Use all pixels"
    Minimum   = 0
    Propagate = True
  EndGroup

  Group = Error
    Program = Highpass
    Class   = "I/O ERROR"
    Code    = -3
    Message = "Unable to open cube [moon.cub]"
    Source  = IsisCube.cpp
    Line    = 203
  EndGroup
EndObject

Controlling Terminal Output

One method of session logging is writing the information to STDOUT , that is, the terminal. This can be turned on or off with user preferences:

Group = SessionLog
  TerminalOutput = On | Off
EndGroup

The user can utilize standard Unix constructs to redirect the output if desired. For example,

stats from=moon.cub > stats.log

Controlling File Output

Another method of session logging is writing information to a file. Again control of this mechanism is through the user preferences:

Group = SessionLog
  FileOutput = On | Off
  FileName = print.prt
  FileAccess = Append | Overwrite
EndGroup