<> <> <> <> <<>> DIRECTORY BasicTime, Rope; ComputeServerStatistics: CEDAR DEFINITIONS = BEGIN <> TimeUpThisIncarnation: INT; <> <<>> RequestesThisIncarnation: INT; <> <<>> TimeBusyThisIncarnation: INT; <> <<>> <> TotalTimeUp: INT; <<>> TotalRequestes: INT; <<>> TotalTimeBusy: INT; <<>> <> ServerEventType: TYPE = {startService, doneService, serverEnabled, serverDisabled}; <<>> ServerEvent: TYPE = RECORD [ type: ServerEventType, -- type of event <> command: Rope.ROPE, -- command name started startTime: BasicTime.GMT, -- command start time endTime: BasicTime.GMT, -- command end time (meaningful for done events only) remoteMachineName: Rope.ROPE, -- name of user's machine remoteUser: Rope.ROPE, -- name of user chain: REF ServerEvent -- used internally to chain events together ]; <<>> NextServerEvent: PROC [REF READONLY ServerEvent _ NIL] RETURNS [REF READONLY ServerEvent]; <> <<>> <<>> END. <<>> <<>> <<>> <> <> <<>>