A server represents an Ice server process. It can be either regular server (with typically a single Ice communicator) or an IceBox server hosting a number of IceBox services.
On this page:
A server is always in one of the following states (the first icon is for regular servers, the second for IceBox servers):
- Unknown ( ): this state is shown when the parent IceGrid node is down.
- Inactive ( ): the server is not running.
- Activating ( ): the server is starting up. The IceGrid registry is waiting for the server to register all its object adapters with server lifetime.
- Active ( ): the server is running, and has registered all its object adapters with server lifetime with the IceGrid registry.
- Deactivating ( ): the server is shutting down. The IceGrid registry is waiting for the server process to exit.
Destroyed (): the server being removed of the IceGrid registry. This is a very transient state.
A server can also be either enabled or disabled; when disabled, the icons above are grayed-out. A disabled server cannot be started until it is re-enabled.
A server provides the following actions, from its contextual menu, from the
Tools > Server menu, and from buttons on the Server Properties panel:
Instruct the IceGrid node to start the server.
Instruct the IceGrid node to shutdown the server.
Mark the server as "enabled".
Mark the server as "disabled". A disabled server cannot be started; however an already running server can be marked "disabled".
- Patch Distribution
Patch the server's distribution, that is, instruct the IceGrid node to download the latest files from the server's distribution.
- Write Message
Open a dialog that allows you to write a message to the server's stdout or stderr.
- Retrieve Ice log
Retrieve the log messages sent to the server's logger into an Ice Log Dialog. The Ice Log Dialog attaches a remote logger to the server's logger.
- Retrieve stdout
Retrieve the stdout log file of this server into a Log File Dialog. This retrieval succeeds only when the server's stdout output has been redirected to a file using the
Ice.StdOutproperty. This is usually achieved by setting the IceGrid.Node.Output property in the IceGrid node configuration file.
- Retrieve stderr
Retrieve the stderr log file of this server into a Log File Dialog. This retrieval succeeds only when the server's stderr output has been redirected to a file using the
Ice.StdErrproperty. This is usually achieved by setting the IceGrid.Node.Output property in the IceGrid node configuration file.
- Retrieve log file
Retrieve a log file of this server into a Log File Dialog.
- Send Signal
Send a signal to a server, for example SIGQUIT. Available only for non-Windows servers.
The Server Properties panel shows first the Runtime Status of the server, i.e. "live" values retrieved from the server:
The state of the server (Active, Deactivating, Inactive etc., see above)
A checkbox that is checked when the server is enabled.
- Process Id
The process ID of the server.
- Build Id
The build Id of this server: this corresponds to the Ice property BuildId.
A table showing all the Ice properties currently set in this server. These properties are retrieved each time you select a new server in IceGrid GUI, and each time you click on the Refresh button next to the Build Id field.
The remaining Server Properties under Configuration come from the IceGrid descriptors associated with this server:
The name of the application containing this server's definition. The button on the right shows the server definition in an Application tab.
A free-text description of this server.
A table showing all the Ice properties of this server. These properties may come from template definitions, property sets, server-instance properties etc. They are all combined in this table.
- Path to Executable
The path to the server's executable, used by the IceGrid node to start the server.
- Ice Version
The Ice version of this server.
- Working Directory
The path to the server's working directory used by the IceGrid node when starting the server.
- Command Arguments
The command-line arguments given to the server when started by IceGrid.
- Run as
On Linux/Unix, a server may be started as a specific user when IceGrid node runs as root. Run as shows this username. When blank, the server runs as the IceGrid node user except if IceGrid node runs as root (on Linux/Unix); in this case, the server runs as nobody.
- Environment Variables
A server started by IceGrid node gets these environment variables in addition to the environment variables inherited from the IceGrid node.
- Activation Mode
The server's activation mode.
- Activation Timeout
The server's activation timeout.
- Deactivation Timeout
The server's deactivation timeout.
This checkbox Shows whether this server is allocatable or not.
- Depends on the application distribution
If this checkbox is checked, this server depends on the enclosing application's distribution: each time this distribution is patched, the server is automatically shut down before the patch.
- IcePatch2 Proxy
A stringified or well-known proxy for the IcePatch2 server than contains this server's distribution. When blank, this server does not have its own distribution.
List of directories included in the server distribution. When blank, the entire IcePatch2 server repository is used as the server distribution.
A regular server node can have the following types of children:
An IceBox server node can have the following types of children: