DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 6103 (0x17d7) Types: TextFile Names: »V«
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦458657fb6⟧ └─⟦a5bbbb819⟧ └─⟦this⟧ └─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦9b46a407a⟧ └─⟦eec0a994f⟧ └─⟦this⟧
with Simple_Status; with Time_Utilities; with Bounded_String; with System; -- cmg 03/06/92 with Job_Segment; -- cmg 03/06/92 package System_Information is -- Interfaces to extract information used to produce System_Report output. procedure Generate (Start_Time : String := ""; End_Time : String := ""; Log_Directory : String := "!Machine.Error_Logs"; Log_Time : out Duration; Status : in out Simple_Status.Condition); -- Must be called prior to using the following operations. They, then -- can be used to read the reduced data. Log_Time indicates the -- actual duration between the first and last entries used in this -- report. -- Each iterator has a type and returns certain information. -- General paradign for each is: -- -- I : xxx_Iterator; -- Info : xxx_Information; -- -- Initialize (I); -- while not Done (I) loop -- Info := Value (I); -- -- Do something with Info -- Next (I); -- end loop; type Usage_Iterator is private; type Outage_Iterator is private; type Event_Iterator is private; type Device_Iterator is private; type Daemon_Iterator is private; type Mount_Iterator is private; procedure Initialize (I : out Usage_Iterator); procedure Initialize (I : out Outage_Iterator); procedure Initialize (I : out Event_Iterator); procedure Initialize (I : out Device_Iterator); procedure Initialize (I : out Daemon_Iterator); procedure Initialize (I : out Mount_Iterator); procedure Next (I : in out Usage_Iterator); procedure Next (I : in out Outage_Iterator); procedure Next (I : in out Event_Iterator); procedure Next (I : in out Device_Iterator); procedure Next (I : in out Daemon_Iterator); procedure Next (I : in out Mount_Iterator); function Done (I : Usage_Iterator) return Boolean; function Done (I : Outage_Iterator) return Boolean; function Done (I : Event_Iterator) return Boolean; function Done (I : Device_Iterator) return Boolean; function Done (I : Daemon_Iterator) return Boolean; function Done (I : Mount_Iterator) return Boolean; Job_Heap : constant System.Segment := Job_Segment.Get; -- cmg 03/06/92 type Pstring is access String; -- Strings are accessed by dereferencing -- pointers. pragma Segmented_Heap (Pstring); -- cmg 03/06/92 -- Usage information is available for each half-hour during the -- report period. type Usage_Information is record Time : Time_Utilities.Time; -- Time of this sample Users : Natural; -- # users logged on Disk_Running : Boolean; -- Disk Daemon running Outage : Boolean; -- System is down end record; -- Outage information is available for each system service outage. type Outage_Information is record Time : Time_Utilities.Time; -- time of outage Length : Duration; -- length of outage Cause : Pstring; -- Cause entered Explanation : Pstring; -- Explanation entered end record; type Event_Class is (User_Operation, Exception_Cond, System_Boot, Other_Event); -- Event information is available for each "interesting" event. -- The Event_Class gives some idea of the what the event is. -- The Info is the log entry for the event and has the standard -- format for a log entry. type Event_Information is record Time : Time_Utilities.Time; Info : Pstring; Event_Kind : Event_Class; end record; type Device_Class is (Disk, Tape, Ethernet, Memory, Other_Device); -- Device information is available for each device error or other -- event of interest. Class indicates for which device it is, and -- Info is the log entry for the event. type Device_Information is record Time : Time_Utilities.Time; -- Time of entry Info : Pstring; -- Log entry for device Class : Device_Class; -- Class of device end record; -- Daemon information is available for each run of a daemon. -- The information is as listed below. type Daemon_Information is record Time : Time_Utilities.Time; -- time of start Name : Bounded_String.Variable_String (40);-- Daemon name Length : Duration; -- length of run Pre_Size : Natural; -- pages at start Post_Size : Natural; -- pages of state at end Explanation : Pstring; -- Other info end record; type Mount_Information is record Request_Time : Time_Utilities.Time; -- time of request Volume : Bounded_String.Variable_String (40); -- Volume Name Mount_Time : Time_Utilities.Time; -- Tape on-line Unload_Time : Time_Utilities.Time; -- Tape unloaded Density : Bounded_String.Variable_String (20); end record; -- The value functions return the actual information for -- each value of the iterator. function Value (I : Usage_Iterator) return Usage_Information; function Value (I : Outage_Iterator) return Outage_Information; function Value (I : Event_Iterator) return Event_Information; function Value (I : Device_Iterator) return Device_Information; function Value (I : Daemon_Iterator) return Daemon_Information; function Value (I : Mount_Iterator) return Mount_Information; private type Usage_Iterator is new Integer; type Outage_Iterator is new Integer; type Event_Iterator is new Integer; type Device_Iterator is new Integer; type Daemon_Iterator is new Integer; type Mount_Iterator is new Integer; end System_Information;