## Configuration Commands

SICS has a command for changing the user rights of the current client server connection, control the amount of output a client receives and to specify additional logfiles where output will be placed. All this is accessed through the following commands:

The SICS server logs all its activities to a logfile, regardless of what the user requested. This logfile is mainly intended to help in server debugging. However, clients may register an interest in certain server events and can have them displayed. This facility is accessed via the GetLog command. It needs to be stressed that this log receives messages from all active clients. GetLog understands the following messages:

- GetLog All achieves that all output to the server logfile is also written to the client which issued this command.
- GetLog Kill stops all logging output to the client.
- GetLog OutCode request that only certain events will be logged to the client issuing this command. Enables only the level specified. Multiple calls are possible.

Possible values for OutCode in the last option are:

- Internal internal errors such as memory errors etc.
- Command all commands issued from any client to the server.
- HWError all errors generated by instrument hardware. The SICS server tries hard to fix HW errors in order to achieve stable operations and may not generate an error message if it was able to fix the problem. This option may be very helpful when tracking dodgy devices.
- InError All input errors found on any clients input.
- Error All error messages generated by all clients.
- Status some commands send status messages to the client invoking the command in order to monitor the state of a scan.
- Value Some commands return requested values to a user. These messages have an output code of Value.

The config command configures various aspects of the current client server connection. Basically three things can be manipulated: The connections output class, the user rights associated with it, and output files.

- The command config OutCode val sets the output code for the connection. By default all output is sent to the client. But a graphical user interface client might want to restrict message to only those delivering requested values and error messages and suppressing anything else. In order to achieve this, this command is provided. Possible values Values for val are Internal,Command, HWError,InError,Status, Error, Value. This list is hierarchical. For example specifying InError for val lets the client receive all messages tagged InError, Status, Error and Value, but not HWError, Command and Internal messages.
- Each connection between a client and the SICS server has user rights assocociated with it. These user rights can be configured at runtime with the command config Rights Username Password . If a matching entry can be found in the servers password database new rights will be set.
- Scientists are not content with having output on the screen. In order to check results a log of all output may be required. The command config File name makes all output to the client to be written to the file specified by name as well. The file must be a file accessible to the server, i.e. reside on the same machine as the server. Up to 10 logfiles can be specified. Note, that a directly connected line printer is only a special filename in unix.
- config close num closes the log file denoted by num again.
- config list lists the currently active values for outcode and user rights.
- config myname retruns the name of the connection.
- config myrights prints the rights associated with your connection.
- config listen 0 or 1switches listening to the commandlog on or off for this conenction. If this on, all output to the commandlog, i.e. all interesting things happening in SICS, is printed to your connection as well.