配置 DataStage Operations Console
来源:互联网 发布:淘宝点点官网 编辑:程序博客网 时间:2024/06/03 01:51
版本:IBM InfoSphere DataStage V11.3.1
操作系统:linux redhat 6.4
查看是否注册DSODB 这个用户
/ds/informationServer/ASBServer/bin
-sh-4.1$ ./RepositoryAdmin.sh -listRepositoriesSep 22, 2016 10:42:16 AM com.ibm.xmeta.pm.orm.impl.LegacySessionManager cleanupLocksINFO: Clearing abandoned locks (2) ...QSSRDDBdsodb-sh-4.1$ DatabasePlatform.databaseType=ORACLEDatabasePlatform.version=11gDatabaseServer.host=dwtestDatabaseServer.port=1521Database.name=dsdb1Database.alias=dsdb1Database.location=Repository.name=dsodbRepository.description=Repository.tool=DataStageRepository.context=Repository.schema=dsodbRepositoryConnection.name=dsodbConnRepositoryConnection.userName=dsodbRepositoryConnection.password={iisenc}N2RHakj6gLz7fCJ2yknhIg==RepositoryConnection.connectionURL=jdbc:ibm:oracle://dwtest:1521;SID=dsdb1;batchPerformanceWorkaround=trueRepositoryConnection.managedDataSourceName=Tablespace.name=dsodb--./RepositoryAdmin.sh -displayRepository -rn QSSRDDBRepositoryAdmin.shDatabasePlatform.databaseType=ORACLEDatabasePlatform.version=11gDatabaseServer.host=report-dsDatabaseServer.port=1521Database.name=dsdbDatabase.alias=dsdbDatabase.location=Repository.name=DSODBRepository.description=Repository.tool=StandardizationRulesDesignerRepository.context=Repository.schema=DSODBRepositoryConnection.name=DSODBRepositoryConnection.userName=DSODBRepositoryConnection.password=DSODBRepositoryConnection.connectionURL=jdbc:ibm:oracle://report-ds:1521;SID=dsdb;batchPerformanceWorkaround=trueRepositoryConnection.managedDataSourceName=Tablespace.name=dsdbspace注册./RepositoryAdmin.sh -registerRepository -pf DSODB.properties
本文主要参考:
http://www.ibm.com/developerworks/cn/data/library/techarticle/dm-1205renyy/
为了使 Operation Console 能够监控作业与系统资源等,用户必须先在 IBM InfoSphere DataStage 的上做一些配置。配置工作由 5 个具体步骤组成:
- 创建 Operations 数据库及其模式和表
- 在 Engine 层上配置连接 operations 数据库
- 配置 Operations 数据库监控目标
- 检测配置信息
- 管理启动和停止 Operations Console 各服务进程
1:创建 Operations 数据库及其模式和表
--创建表空间:CREATE TABLESPACE dsodbspace LOGGING DATAFILE '/ds/oracle/oradata/dsdb/datafile/dsodb_01.dbf' SIZE 1024M AUTOEXTEND ON NEXT 2048M EXTENT MANAGEMENT LOCAL ONLINE SEGMENT SPACE MANAGEMENT AUTO;--创建用户并指定表空间:create user DSODB identified by DSODB default tablespace dsodbspace;--创建表脚本:-- Licensed Materials - Property of IBM-- Copyright IBM Corp. 2012, 2014---------------------------------------------------------------------------------- DataStage operations database: create tables-- for Oracle-------------------------------------------------------------------------------WHENEVER SQLERROR EXIT 1;CREATE TABLE DSODB.Host ( HOSTID NUMBER(19, 0) NOT NULL , HostName NVARCHAR2(80) NOT NULL , CreatedTimestamp TIMESTAMP NOT NULL , InstallationDir NVARCHAR2(255) NOT NULL -- '-' indicates no installation , MonStartTimestamp TIMESTAMP , PRIMARY KEY (HOSTID) , CONSTRAINT realkeyHost UNIQUE (HostName, InstallationDir))tablespace dsodbspace;CREATE TABLE DSODB.HostDetail ( CreatedTimestamp TIMESTAMP NOT NULL , HOSTID NUMBER(19, 0) NOT NULL , HEAD_HOSTID NUMBER(19, 0) NOT NULL , LastCheckedTimestamp TIMESTAMP NOT NULL , UTCOffsetMins NUMBER(11, 0) , TimezoneName NVARCHAR2(80) , PlatformName NVARCHAR2(80) , PlatformVersion NVARCHAR2(80) , NumCPUs NUMBER(11, 0) , CPUModel NVARCHAR2(80) , PhysicalMemoryKB NUMBER(19, 0) , VirtualMemoryKB NUMBER(19, 0) , PRIMARY KEY (CreatedTimestamp, HOSTID, HEAD_HOSTID) , CONSTRAINT host1HostDetail FOREIGN KEY (HOSTID) REFERENCES DSODB.Host(HOSTID) ON DELETE CASCADE , CONSTRAINT host2HostDetail FOREIGN KEY (HEAD_HOSTID) REFERENCES DSODB.Host(HOSTID) ON DELETE CASCADE)tablespace dsodbspace;CREATE TABLE DSODB.ParallelConfig ( CONFIGID NUMBER(19, 0) NOT NULL , HOSTID NUMBER(19, 0) NOT NULL , CreationTimestamp TIMESTAMP NOT NULL , NodeListHash NUMBER(11, 0) NOT NULL , NodeList XMLTYPE , PRIMARY KEY (CONFIGID) , CONSTRAINT hostParallelConfig FOREIGN KEY (HOSTID) REFERENCES DSODB.Host(HOSTID) ON DELETE CASCADE)tablespace dsodbspace XMLTYPE NodeList STORE AS CLOB;-- Format of XML in NodeList: ---- <nodes> ---- <node pname="xxxx" lnum="N"/> ---- </nodes> ---- Following lets you see the XML in NodeList as an embedded table --CREATE VIEW DSODB.ParallelConfigNodes AS SELECT c.CONFIGID , c.HOSTID , x.PhysicalName , x.NumLogicalNodes FROM DSODB.ParallelConfig c, xmltable('/nodes/node' passing c.NodeList columns PhysicalName NVARCHAR2(255) path '@pname' , NumLogicalNodes NUMBER(11, 0) path '@lnum' ) x;CREATE TABLE DSODB.JobExec ( JOBID NUMBER(19, 0) NOT NULL , HOSTID NUMBER(19, 0) NOT NULL , ProjectName NVARCHAR2(80) NOT NULL , JobName NVARCHAR2(255) NOT NULL , CompilationTimestamp TIMESTAMP NOT NULL , FolderPath NVARCHAR2(255) , JobType CHAR(3) NOT NULL , JobShortDescription NCLOB , JobLongDescription NCLOB , DesignHostName NVARCHAR2(80) , DesignProjectName NVARCHAR2(80) , IsMultiInstance NUMBER(6, 0) , WebServicesEnabled NUMBER(6, 0) , PRIMARY KEY (JOBID) , CONSTRAINT realkeyJobExec UNIQUE (HOSTID, ProjectName, JobName, CompilationTimestamp) , CONSTRAINT hostJobExec FOREIGN KEY (HOSTID) REFERENCES DSODB.Host(HOSTID) ON DELETE CASCADE)tablespace dsodbspace;CREATE TABLE DSODB.JobRun ( RUNID NUMBER(19, 0) NOT NULL , CONTROLLING_RUNID NUMBER(19, 0) , JOBID NUMBER(19, 0) NOT NULL , CONFIGID NUMBER(19, 0) , InvocationId NVARCHAR2(255) NOT NULL , CreationTimestamp TIMESTAMP NOT NULL , LastUpdateTimestamp TIMESTAMP NOT NULL , RunStartTimestamp TIMESTAMP , RunEndTimestamp TIMESTAMP , ElapsedRunSecs NUMBER(11, 0) , RunType CHAR(3) NOT NULL , RunMajorStatus CHAR(3) NOT NULL , RunMinorStatus CHAR(3) NOT NULL , UserStatus NVARCHAR2(40) , MasterPid NUMBER(19, 0) , ConductorPid NUMBER(19, 0) , NumMessagesTotal NUMBER(11, 0) , NumMessagesWarning NUMBER(11, 0) , NumMessagesFatal NUMBER(11, 0) , TotalRowsConsumed NUMBER(19, 0) , TotalRowsProduced NUMBER(19, 0) , TotalCPU NUMBER(19, 0) , ConfigFileName NVARCHAR2(255) , TotalPhysicalNodes NUMBER(11, 0) , TotalLogicalNodes NUMBER(11, 0) , ISUserName NVARCHAR2(40) , DSUserName NVARCHAR2(40) , CustomBatchId NVARCHAR2(40) , CustomJobType NVARCHAR2(40) , CustomContact NVARCHAR2(40) , CustomSequence NVARCHAR2(40) , CustomField1 NVARCHAR2(40) , CustomField2 NVARCHAR2(40) , QueueName NVARCHAR2(80) , PRIMARY KEY (RUNID) , CONSTRAINT realkeyJobRun UNIQUE (JOBID, InvocationId, CreationTimestamp) , CONSTRAINT jobJobRun FOREIGN KEY (JOBID) REFERENCES DSODB.JobExec(JOBID) ON DELETE CASCADE , CONSTRAINT controlJobRun FOREIGN KEY (CONTROLLING_RUNID) REFERENCES DSODB.JobRun(RUNID) ON DELETE CASCADE , CONSTRAINT configJobRun FOREIGN KEY (CONFIGID) REFERENCES DSODB.ParallelConfig(CONFIGID) ON DELETE CASCADE)tablespace dsodbspace;CREATE TABLE DSODB.JobRunLog ( RUNID NUMBER(19, 0) NOT NULL , EventId NUMBER(11, 0) NOT NULL , LogTimestamp TIMESTAMP NOT NULL , LogType CHAR(3) NOT NULL , MessageId NVARCHAR2(24) , ContentType NVARCHAR2(24) , MessageText NCLOB , PRIMARY KEY (RUNID, EventId) , CONSTRAINT runJobRunLog FOREIGN KEY (RUNID) REFERENCES DSODB.JobRun(RUNID) ON DELETE CASCADE)tablespace dsodbspace;CREATE TABLE DSODB.JobRunParams ( RUNID NUMBER(19, 0) NOT NULL , ParamList XMLTYPE , CONSTRAINT runJobRunParams FOREIGN KEY (RUNID) REFERENCES DSODB.JobRun(RUNID) ON DELETE CASCADE)tablespace dsodbspace XMLTYPE ParamList STORE AS CLOB;-- Format of XMLTYPE in ParamList: ---- <params> ---- <param name="xxxx" value="yyyy"/> ---- </params> ---- Following lets you see the XML in ParamsList as an embedded table --CREATE VIEW DSODB.JobRunParamsView AS SELECT p.RUNID , x.ParamName , x.ParamValue FROM DSODB.JobRunParams p, XMLTable('/params/param' passing p.ParamList columns ParamName NVARCHAR2(255) path '@name' , ParamValue NVARCHAR2(255) path '@value' ) x;CREATE TABLE DSODB.JobRunUsage ( StartTimestamp TIMESTAMP NOT NULL , RUNID NUMBER(19, 0) NOT NULL , EndTimestamp TIMESTAMP NOT NULL , ResourceInfo XMLTYPE , PRIMARY KEY (StartTimestamp, RUNID) , CONSTRAINT runJobRunUsage FOREIGN KEY (RUNID) REFERENCES DSODB.JobRun(RUNID) ON DELETE CASCADE)tablespace dsodbspace XMLTYPE ResourceInfo STORE AS CLOB;-- Format of XML in ResourceInfo: ---- <rows> ---- <snap e="nn" c="nn" p="nn" /> ---- <snap e="nn" c="nn" p="nn" /> ---- ...... ---- </rows> ---- Following lets you see the XML in ResourceInfo as as embedded table --CREATE VIEW DSODB.JobRunTotalRowsUsage AS SELECT u.RUNID , u.StartTimestamp , u.EndTimestamp , x.RunElapsedSecs , x.TotalRowsConsumed , x.TotalRowsProduced FROM DSODB.JobRunUsage u, XMLTable('/rows/snap' passing u.ResourceInfo columns RunElapsedSecs NUMBER(11,0) path '@e' , TotalRowsConsumed NUMBER(19,0) path '@c' , TotalRowsProduced NUMBER(19,0) path '@p' ) x;CREATE TABLE DSODB.DataLocator ( LOCATORID NUMBER(19, 0) NOT NULL , CreationTimestamp TIMESTAMP NOT NULL , ComputerName NVARCHAR2(80) NOT NULL , SoftwareProductName NVARCHAR2(60) NOT NULL , DataStoreSubClass NVARCHAR2(20) NOT NULL , DataStoreName NVARCHAR2(80) NOT NULL , DataSchemaSubClass NVARCHAR2(20) NOT NULL , DataSchemaName NVARCHAR2(80) NOT NULL , DataCollectionSubClass NVARCHAR2(20) NOT NULL , DataCollectionName NVARCHAR2(80) NOT NULL , PRIMARY KEY (LOCATORID) , CONSTRAINT realkeyDataLocator UNIQUE (ComputerName, SoftwareProductName, DataStoreSubClass, DataStoreName, DataSchemaSubClass, DataSchemaName, DataCollectionSubClass, DataCollectionName))tablespace dsodbspace;CREATE TABLE DSODB.JobStage ( STAGEID NUMBER(19, 0) NOT NULL , JOBID NUMBER(19, 0) NOT NULL , StageName NVARCHAR2(80) NOT NULL -- not 255 else key too long -- , ContainerPath NVARCHAR2(255) NOT NULL , StageDescription NCLOB , StageTypeName NVARCHAR2(40) NOT NULL , PRIMARY KEY (STAGEID) , CONSTRAINT realkeyJobStage UNIQUE (JOBID, StageName, ContainerPath) , CONSTRAINT jobJobStage FOREIGN KEY (JOBID) REFERENCES DSODB.JobExec(JOBID) ON DELETE CASCADE)tablespace dsodbspace;CREATE TABLE DSODB.JobRunStage ( RUNID NUMBER(19, 0) NOT NULL , STAGEID NUMBER(19, 0) NOT NULL , StageStartTimestamp TIMESTAMP , StageEndTimestamp TIMESTAMP , LastUpdateTimestamp TIMESTAMP NOT NULL , ElapsedRunSecs NUMBER(11, 0) , StageStatus CHAR(3) NOT NULL , NumInstances NUMBER(11, 0) , InstancePidList NVARCHAR2(512) , InstanceCPUList NVARCHAR2(512) , TotalCPU NUMBER(11, 0) , CONSTRAINT realkeyJobRunStage UNIQUE (RUNID, STAGEID) , CONSTRAINT runJobRunStage FOREIGN KEY (RUNID) REFERENCES DSODB.JobRun(RUNID) ON DELETE CASCADE , CONSTRAINT stageJobRunStage FOREIGN KEY (STAGEID) REFERENCES DSODB.JobStage(STAGEID) ON DELETE CASCADE)tablespace dsodbspace;CREATE TABLE DSODB.JobLink ( LINKID NUMBER(19, 0) NOT NULL , FROMSTAGEID NUMBER(19, 0) -- NB: One other of these -- , TOSTAGEID NUMBER(19, 0) -- may be null -- , LinkName NVARCHAR2(80) NOT NULL , LinkType CHAR(3) NOT NULL , LinkDescription NCLOB , IsSource NUMBER(6, 0) , IsTarget NUMBER(6, 0) , PRIMARY KEY (LINKID) , CONSTRAINT fromstageJobLink FOREIGN KEY (FROMSTAGEID) REFERENCES DSODB.JobStage(STAGEID) ON DELETE CASCADE , CONSTRAINT tostageJobLink FOREIGN KEY (TOSTAGEID) REFERENCES DSODB.JobStage(STAGEID) ON DELETE CASCADE)tablespace dsodbspace;CREATE TABLE DSODB.JobRunLink ( RUNID NUMBER(19, 0) NOT NULL , LINKID NUMBER(19, 0) NOT NULL , LOCATORID NUMBER(19, 0) , LastUpdateTimestamp TIMESTAMP NOT NULL , InstanceRowsList NVARCHAR2(512) , TotalRows NUMBER(19, 0) , CONSTRAINT realkeyJobRunLink UNIQUE (RUNID, LINKID) , CONSTRAINT runJobRunLink FOREIGN KEY (RUNID) REFERENCES DSODB.JobRun(RUNID) ON DELETE CASCADE , CONSTRAINT linkJobRunLink FOREIGN KEY (LINKID) REFERENCES DSODB.JobLink(LINKID) ON DELETE CASCADE , CONSTRAINT locatorJobRunLink FOREIGN KEY (LOCATORID) REFERENCES DSODB.DataLocator(LOCATORID))tablespace dsodbspace;---- DataStage operations database: create reference/lookup tables & views--WHENEVER SQLERROR EXIT 1;CREATE TABLE DSODB.MasterRef ( Enumeration VARCHAR2(20) NOT NULL , Code CHAR(3) NOT NULL , Name VARCHAR2(32) NOT NULL , Description NVARCHAR2(255) , PRIMARY KEY (Enumeration, Code))tablespace dsodbspace;CREATE VIEW DSODB.JobTypeRef ASSELECT Code AS JobTypeCode , Name AS JobTypeName , Description AS JobTypeDescriptionFROM DSODB.MasterRefWHERE Enumeration = 'JobType';CREATE VIEW DSODB.RunTypeRef ASSELECT Code AS RunTypeCode , Name AS RunTypeName , Description AS RunTypeDescriptionFROM DSODB.MasterRefWHERE Enumeration = 'RunType';CREATE VIEW DSODB.RunMajorStatusRef ASSELECT Code AS MajorStatusCode , Name AS MajorStatusName , Description AS MajorStatusDescriptionFROM DSODB.MasterRefWHERE Enumeration = 'RunMajorStatus';CREATE VIEW DSODB.RunMinorStatusRef ASSELECT Code AS MinorStatusCode , Name AS MinorStatusName , Description AS MinorStatusDescriptionFROM DSODB.MasterRefWHERE Enumeration = 'RunMinorStatus';CREATE VIEW DSODB.LogTypeRef ASSELECT Code AS LogTypeCode , Name AS LogTypeName , Description AS LogTypeDescriptionFROM DSODB.MasterRefWHERE Enumeration = 'LogType';CREATE VIEW DSODB.StageStatusRef ASSELECT Code AS StageStatusCode , Name AS StageStatusName , Description AS StageStatusDescriptionFROM DSODB.MasterRefWHERE Enumeration = 'StageStatus';CREATE VIEW DSODB.LinkTypeRef ASSELECT Code AS LinkTypeCode , Name AS LinkTypeName , Description AS LinkTypeDescriptionFROM DSODB.MasterRefWHERE Enumeration = 'LinkType';INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('Version', 'SCH', '2', 'Schema version from 2011-03-21');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('JobType', 'SRV', 'Server', 'Server job');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('JobType', 'PAR', 'Parallel', 'Parallel job');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('JobType', 'SEQ', 'Sequence', 'Job sequence');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('JobType', '?!?', 'Invalid value', 'A non-numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('JobType', '???', 'Unknown value', 'An out-of-range numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunType', 'RUN', 'Run', 'Normal run mode');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunType', 'VAL', 'Validate', 'Validation-only run');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunType', 'RES', 'Reset', 'Reset run');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunType', '?!?', 'Invalid value', 'A non-numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunType', '???', 'Unknown value', 'An out-of-range numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMajorStatus', 'SUB', 'Submitted', 'Run submitted but not yet started');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMajorStatus', 'STA', 'Started', 'Run has started');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMajorStatus', 'FIN', 'Finished', 'Run has finished');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMajorStatus', '?!?', 'Invalid value', 'A non-numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMajorStatus', '???', 'Unknown value', 'An out-of-range numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'QUE', 'Submitted - queued', 'Run is waiting in a queue');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'STR', 'Submitted - starting', 'Run is about to start');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'RUN', 'Running - no warnings', 'Running, and has not yet logged any warning or fatal messages');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'RNW', 'Running - with warnings', 'Running, and has logged at least one warning message but no fatals');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'RNF', 'Running - with fatals', 'Running, and has logged at least one fatal message');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'RNS', 'Running - stop requested', 'Running, but has received an external stop request');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'FOK', 'Finished - OK', 'Run has finished without logging any warning or fatal messages');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'FWW', 'Finished - with warnings', 'Run has finished and logged at least one warning message but no fatals');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'FWF', 'Finished - aborted', 'Run has finished and logged at least one fatal message');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'CRA', 'Finished - crashed', 'Run finished unexpectedly');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'STP', 'Finished - stopped by request', 'Run terminated due to external stop request');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', 'SYN', 'Finished - synchronized', 'Run forcibly set to finished state by maintenance check');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', '?!?', 'Invalid value', 'A non-numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('RunMinorStatus', '???', 'Unknown value', 'An out-of-range value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', 'INF', 'Info', 'Informational message only');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', 'WAR', 'Warning', 'Warning message');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', 'FAT', 'Fatal', 'Fatal message - job will be aborted');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', 'REJ', 'Reject', 'Stage reject message');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', 'CTL', 'Control', 'Job started/finished');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', 'PUR', 'Purge', 'Previous messages in the log file have been purged');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', 'RUN', 'RunJob', 'Job run started under control of sequence, or returning to caller');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', '?!?', 'Invalid value', 'A non-numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LogType', '???', 'Unknown value', 'An out-of-range value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('StageStatus', 'RDY', 'Ready', 'Stage is ready to run but has not yet started');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('StageStatus', 'RUN', 'Running', 'Stage is running');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('StageStatus', 'FIN', 'Finished', 'Stage has finished');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('StageStatus', '?!?', 'Invalid value', 'A non-numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('StageStatus', '???', 'Unknown value', 'An out-of-range value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LinkType', 'PRI', 'Primary', 'Primary link between two stages');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LinkType', 'REF', 'Reference', 'Reference input to a stage');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LinkType', 'REJ', 'Reject', 'Reject output from a stage');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LinkType', '?!?', 'Invalid value', 'A non-numeric value was found');INSERT INTO DSODB.MasterRef (Enumeration, Code, Name, Description)VALUES ('LinkType', '???', 'Unknown value', 'An out-of-range numeric value was found');---- DataStage operations database: create system resource tables & views--------------------------------------------------------- SNAPSHOT: Last monitored state of each resource -------------------------------------------------------WHENEVER SQLERROR EXIT 1;CREATE TABLE DSODB.ResourceSnap ( HOSTID NUMBER(19, 0) NOT NULL , HEAD_HOSTID NUMBER(19, 0) NOT NULL , LastUpdateTimestamp TIMESTAMP NOT NULL , CPUPctUser DECIMAL(4,1) , CPUPctPrivileged DECIMAL(4,1) , CPUPctIdle DECIMAL(4,1) , CPUPctStolen DECIMAL(4,1) , CPUPctIOWait DECIMAL(4,1) , ProcNumRunning NUMBER(11, 0) , ProcNumWaiting NUMBER(11, 0) , ProcNumSleeping NUMBER(11, 0) , ProcNumZombied NUMBER(11, 0) , ProcNumBlocked NUMBER(11, 0) , MemFreeKBPhysical NUMBER(11, 0) , MemFreeKBVirtual NUMBER(11, 0) , PageNumIn NUMBER(11, 0) , PageNumOut NUMBER(11, 0) , PageNumInterrupts NUMBER(11, 0) , PageNumSwitches NUMBER(11, 0) , DiskSnap XMLTYPE , PRIMARY KEY (HOSTID, HEAD_HOSTID) , CONSTRAINT host1ResourceSnap FOREIGN KEY (HOSTID) REFERENCES DSODB.Host(HOSTID) ON DELETE CASCADE , CONSTRAINT host2ResourceSnap FOREIGN KEY (HEAD_HOSTID) REFERENCES DSODB.Host(HOSTID) ON DELETE CASCADE)tablespace dsodbspace XMLTYPE DiskSnap STORE AS CLOB;-- Following is a view on ResourceSnap for non-disk stats --CREATE VIEW DSODB.ResourceSnapSystem AS select r.HOSTID , r.HEAD_HOSTID , r.LastUpdateTimestamp , r.CPUPctUser , r.CPUPctPrivileged , r.CPUPctIdle , r.CPUPctStolen , r.CPUPctIOWait , r.ProcNumRunning , r.ProcNumWaiting , r.ProcNumSleeping , r.ProcNumZombied , r.ProcNumBlocked , r.MemFreeKBPhysical , r.MemFreeKBVirtual , r.PageNumIn , r.PageNumOut , r.PageNumInterrupts , r.PageNumSwitches from DSODB.ResourceSnap r;-- Format of XMLTYPE in DiskSnap: ---- <dsn> ---- <dsk p="X" t="0" f="0" /> ---- .... ---- </dsn> ---- Following lets you see the XML in DiskSnap as table of file system stats --CREATE VIEW DSODB.ResourceSnapDisks AS select r.HOSTID , r.HEAD_HOSTID , r.LastUpdateTimestamp , x.DiskPathMonitored , x.DiskTotalKB , x.DiskFreeKB from DSODB.ResourceSnap r, xmltable('/dsn/dsk' passing r.DiskSnap columns DiskPathMonitored NVARCHAR2(255) path '@p' , DiskTotalKB NUMBER(19, 0) path '@t' , DiskFreeKB NUMBER(19, 0) path '@f' ) x;------------------------------------------------------------- USAGE: History of each resource, aggregated over time -------------------------------------------------------------CREATE TABLE DSODB.ResourceUsage ( StartTimestamp TIMESTAMP NOT NULL , HOSTID NUMBER(19, 0) NOT NULL , HEAD_HOSTID NUMBER(19, 0) NOT NULL , EndTimestamp TIMESTAMP NOT NULL , NumSamples NUMBER(11, 0) , CPUPctUserAvg DECIMAL(4,1) , CPUPctUserMax DECIMAL(4,1) , CPUPctUserMin DECIMAL(4,1) , CPUPctPrivilegedAvg DECIMAL(4,1) , CPUPctPrivilegedMax DECIMAL(4,1) , CPUPctPrivilegedMin DECIMAL(4,1) , CPUPctIdleAvg DECIMAL(4,1) , CPUPctIdleMax DECIMAL(4,1) , CPUPctIdleMin DECIMAL(4,1) , CPUPctStolenAvg DECIMAL(4,1) , CPUPctStolenMax DECIMAL(4,1) , CPUPctStolenMin DECIMAL(4,1) , CPUPctIOWaitAvg DECIMAL(4,1) , CPUPctIOWaitMax DECIMAL(4,1) , CPUPctIOWaitMin DECIMAL(4,1) , ProcNumRunningAvg NUMBER(11, 0) , ProcNumRunningMax NUMBER(11, 0) , ProcNumRunningMin NUMBER(11, 0) , ProcNumWaitingAvg NUMBER(11, 0) , ProcNumWaitingMax NUMBER(11, 0) , ProcNumWaitingMin NUMBER(11, 0) , ProcNumSleepingAvg NUMBER(11, 0) , ProcNumSleepingMax NUMBER(11, 0) , ProcNumSleepingMin NUMBER(11, 0) , ProcNumZombiedAvg NUMBER(11, 0) , ProcNumZombiedMax NUMBER(11, 0) , ProcNumZombiedMin NUMBER(11, 0) , ProcNumBlockedAvg NUMBER(11, 0) , ProcNumBlockedMax NUMBER(11, 0) , ProcNumBlockedMin NUMBER(11, 0) , MemFreeKBPhysicalAvg NUMBER(11, 0) , MemFreeKBPhysicalMax NUMBER(11, 0) , MemFreeKBPhysicalMin NUMBER(11, 0) , MemFreeKBVirtualAvg NUMBER(11, 0) , MemFreeKBVirtualMax NUMBER(11, 0) , MemFreeKBVirtualMin NUMBER(11, 0) , PageNumInAvg NUMBER(11, 0) , PageNumInMax NUMBER(11, 0) , PageNumInMin NUMBER(11, 0) , PageNumOutAvg NUMBER(11, 0) , PageNumOutMax NUMBER(11, 0) , PageNumOutMin NUMBER(11, 0) , PageNumInterruptsAvg NUMBER(11, 0) , PageNumInterruptsMax NUMBER(11, 0) , PageNumInterruptsMin NUMBER(11, 0) , PageNumSwitchesAvg NUMBER(11, 0) , PageNumSwitchesMax NUMBER(11, 0) , PageNumSwitchesMin NUMBER(11, 0) , DiskUsage XMLTYPE , PRIMARY KEY (StartTimestamp, HOSTID, HEAD_HOSTID) , CONSTRAINT host1ResourceUsage FOREIGN KEY (HOSTID) REFERENCES DSODB.Host(HOSTID) ON DELETE CASCADE , CONSTRAINT host2ResourceUsage FOREIGN KEY (HEAD_HOSTID) REFERENCES DSODB.Host(HOSTID) ON DELETE CASCADE)tablespace dsodbspace XMLTYPE DiskUsage STORE AS CLOB;-- Following is a view on ResourceUsage for non-disk stats --CREATE VIEW DSODB.ResourceUsageSystem AS select r.StartTimestamp , r.HOSTID , r.HEAD_HOSTID , r.EndTimestamp , r.NumSamples , r.CPUPctUserAvg , r.CPUPctPrivilegedAvg , r.CPUPctIdleAvg , r.CPUPctStolenAvg , r.CPUPctIOWaitAvg , r.CPUPctUserMax , r.CPUPctPrivilegedMax , r.CPUPctIdleMax , r.CPUPctStolenMax , r.CPUPctIOWaitMax , r.CPUPctUserMin , r.CPUPctPrivilegedMin , r.CPUPctIdleMin , r.CPUPctStolenMin , r.CPUPctIOWaitMin , r.ProcNumRunningAvg , r.ProcNumWaitingAvg , r.ProcNumSleepingAvg , r.ProcNumZombiedAvg , r.ProcNumBlockedAvg , r.ProcNumRunningMax , r.ProcNumWaitingMax , r.ProcNumSleepingMax , r.ProcNumZombiedMax , r.ProcNumBlockedMax , r.ProcNumRunningMin , r.ProcNumWaitingMin , r.ProcNumSleepingMin , r.ProcNumZombiedMin , r.ProcNumBlockedMin , r.MemFreeKBPhysicalAvg , r.MemFreeKBVirtualAvg , r.MemFreeKBPhysicalMax , r.MemFreeKBVirtualMax , r.MemFreeKBPhysicalMin , r.MemFreeKBVirtualMin , r.PageNumInAvg , r.PageNumOutAvg , r.PageNumInterruptsAvg , r.PageNumSwitchesAvg , r.PageNumInMax , r.PageNumOutMax , r.PageNumInterruptsMax , r.PageNumSwitchesMax , r.PageNumInMin , r.PageNumOutMin , r.PageNumInterruptsMin , r.PageNumSwitchesMin from DSODB.ResourceUsage r;-- Format of XML in DiskInfo: ---- <dus> ---- <dsk p="X" t="0" af="0" xf="0"nf="0"> ---- .... ---- </dus> ---- Following lets you see the XML in DiskUsage as table of file system stats --CREATE VIEW DSODB.ResourceUsageDisks AS select r.StartTimestamp , r.HOSTID , r.HEAD_HOSTID , r.EndTimestamp , r.NumSamples , x.DiskPathMonitored , x.DiskTotalKB , x.DiskFreeKBAvg , x.DiskFreeKBMax , x.DiskFreeKBMin from DSODB.ResourceUsage r, xmltable('/dus/dsk' passing r.DiskUsage columns DiskPathMonitored NVARCHAR2(255) path '@p' , DiskTotalKB NUMBER(19, 0) path '@t' , DiskFreeKBAvg NUMBER(19, 0) path '@af' , DiskFreeKBMax NUMBER(19, 0) path '@xf' , DiskFreeKBMin NUMBER(19, 0) path '@nf' ) x;-- Licensed Materials - Property of IBM-- Copyright IBM Corp. 2012, 2014---------------------------------------------------------------------------------- IBM InfoSphere DataStage operations database creation -- for Oracle-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- This file includes the definitions for all the user defined functions required-- for the DataStage operations database access---- User Defined Functions-- ======================-- Return a numeric value for the given major run status for ordering purposes--CREATE OR REPLACE FUNCTION DSODB.RunMajorStatus(runStatus IN VARCHAR)RETURN INTEGERDETERMINISTICISBEGIN RETURN CASE WHEN runStatus = 'FIN' THEN 2 WHEN runStatus = 'STA' THEN 1 ELSE 0 END;END;/-- Return a numeric value for the given minor run status for ordering purposes--CREATE OR REPLACE FUNCTION DSODB.RunMinorStatus(runStatus IN VARCHAR)RETURN INTEGERDETERMINISTICISBEGIN RETURN CASE WHEN runStatus = 'FOK' THEN 11 WHEN runStatus = 'FWF' THEN 8 WHEN runStatus = 'FWW' THEN 9 WHEN runStatus = 'RUN' THEN 5 WHEN runStatus = 'QUE' THEN 0 WHEN runStatus = 'STR' THEN 1 WHEN runStatus = 'RNF' THEN 2 WHEN runStatus = 'RNW' THEN 3 WHEN runStatus = 'RNS' THEN 4 WHEN runStatus = 'CRA' THEN 6 WHEN runStatus = 'SYN' THEN 7 WHEN runStatus = 'STP' THEN 10 ELSE 10 END;END;/-- Return a numeric value for the category of a given run based on its current state for ordering purposes--CREATE OR REPLACE FUNCTION DSODB.RunCategory(isWebEnabled SMALLINT, runMajorStatus VARCHAR, runMinorStatus VARCHAR)RETURN INTEGERDETERMINISTICISBEGIN RETURN CASE WHEN isWebEnabled <> 0 THEN 1 WHEN runMajorStatus = 'FIN' THEN 4 WHEN runMajorStatus = 'STA' THEN 3 WHEN runMajorStatus = 'SUB' THEN CASE WHEN runMinorStatus = 'QUE' THEN 2 WHEN runMinorStatus = 'STR' THEN 3 ELSE 5 END ELSE 5 END;END;/-- Return a timestamp value for a job run end date, making sure that a null value will be sorted-- later than any valid date. This is achieved by setting any null run end date to be 30 days in -- the future from the current time - this will always be later than a run end non-null value.--CREATE OR REPLACE FUNCTION DSODB.RunEndDate(runEndTimestamp IN TIMESTAMP)RETURN TIMESTAMPISBEGIN RETURN CASE WHEN runEndTimestamp IS NULL THEN current_timestamp + interval '30' day ELSE runEndTimestamp END;END;/-- Get the number of milliseconds since 0001-01-01 for the given timestamp--CREATE OR REPLACE FUNCTION DSODB.GetMilliseconds(thisTime TIMESTAMP)RETURN INTEGERDETERMINISTICIS epochTime TIMESTAMP := TO_TIMESTAMP('0001-01-01 00:00:00','YYYY-MM-DD HH24:MI:SS');BEGIN RETURN (EXTRACT(DAY FROM (thisTime - epochTime)) * 86400000) + (EXTRACT(HOUR FROM (thisTime - epochTime)) * 3600000) + (EXTRACT(MINUTE FROM (thisTime - epochTime)) * 60000) + TRUNC(EXTRACT(SECOND FROM (thisTime - epochTime)) * 1000);END;/-- Get the offset of a log entry timestamp compared to when the run was created. --CREATE OR REPLACE FUNCTION DSODB.JobRunCreatedOffset(logTimestamp TIMESTAMP, runCreationTimestamp TIMESTAMP)RETURN INTEGERDETERMINISTICISBEGIN RETURN CASE WHEN (DSODB.GetMilliseconds(logTimestamp) - DSODB.GetMilliseconds(runCreationTimestamp)) < 0 THEN 0 ELSE DSODB.GetMilliseconds(logTimestamp) - DSODB.GetMilliseconds(runCreationTimestamp) END;END;/-- Get the elapsed time of a job run. For a finished job get the time from the start and end timestamp-- fields. For a running job, use the current time as the comparitor against the start time.--CREATE OR REPLACE FUNCTION DSODB.RunElapsed(runStatus VARCHAR, endTime TIMESTAMP, startTime TIMESTAMP)RETURN INTEGERISBEGIN RETURN CASE WHEN runStatus = 'FIN' THEN CASE WHEN endTime IS NULL OR startTime IS NULL THEN -1 WHEN (DSODB.GetMilliseconds(endTime) - DSODB.GetMilliseconds(startTime)) < 0 THEN 0 ELSE DSODB.GetMilliseconds(endTime) - DSODB.GetMilliseconds(startTime) END WHEN runStatus = 'STA' THEN CASE WHEN startTime IS NULL THEN -1 WHEN (DSODB.GetMilliseconds(SYS_EXTRACT_UTC(CURRENT_TIMESTAMP)) - DSODB.GetMilliseconds(startTime)) < 0 THEN 0 ELSE DSODB.GetMilliseconds(SYS_EXTRACT_UTC(CURRENT_TIMESTAMP)) - DSODB.GetMilliseconds(startTime) END ELSE 0 END;END;/-- Get the total elapsed time of a job run. For a finished job get the time from the creation and end timestamp-- fields. For a running job, use the current time as the comparitor against the creation time.--CREATE OR REPLACE FUNCTION DSODB.TotalElapsed(runStatus VARCHAR, endTime TIMESTAMP, creationTime TIMESTAMP)RETURN INTEGERISBEGIN RETURN CASE WHEN runStatus = 'FIN' THEN CASE WHEN endTime IS NULL OR creationTime IS NULL THEN -1 WHEN (DSODB.GetMilliseconds(endTime) - DSODB.GetMilliseconds(creationTime)) < 0 THEN 0 ELSE DSODB.GetMilliseconds(endTime) - DSODB.GetMilliseconds(creationTime) END ELSE CASE WHEN creationTime IS NULL THEN -1 WHEN (DSODB.GetMilliseconds(SYS_EXTRACT_UTC(CURRENT_TIMESTAMP)) - DSODB.GetMilliseconds(creationTime)) < 0 THEN 0 ELSE DSODB.GetMilliseconds(SYS_EXTRACT_UTC(CURRENT_TIMESTAMP)) - DSODB.GetMilliseconds(creationTime) END END;END;/-- Calculate the rows per second for a job run based on the elapsed time of the run and the number-- of rows processed.--CREATE OR REPLACE FUNCTION DSODB.RowsPerSec(runStatus VARCHAR, endTime TIMESTAMP, startTime TIMESTAMP, jobType VARCHAR, rowCount INTEGER)RETURN FLOATISBEGIN RETURN CASE WHEN jobType = 'SEQ' THEN -1 WHEN DSODB.RunElapsed(runStatus, endTime, startTime) > 0 THEN TRUNC(rowCount / TRUNC(DSODB.RunElapsed(runStatus, endTime, startTime) / 1000), 4) WHEN DSODB.RunElapsed(runStatus, endTime, startTime) < 0 THEN -1 ELSE 0 END;END;/-- Substring the start of the log message text so we can sort by this field.--CREATE OR REPLACE FUNCTION DSODB.MessageTextSort(logMsg IN NCLOB)RETURN VARCHARDETERMINISTICISBEGIN RETURN SUBSTR(logMsg, 1, 256);END;/-- Licensed Materials - Property of IBM-- Copyright IBM Corp. 2013, 2014---------------------------------------------------------------------------------- IBM InfoSphere DataStage operations database index creation -- for Oracle-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- This file includes the definitions for all the indexes required-- for the DataStage operations database access---- Create indexes-- =============CREATE INDEX DSODB.JobExecHostID ON DSODB.JobExec (HOSTID);CREATE INDEX DSODB.JobRunJobID ON DSODB.JobRun (JOBID);CREATE INDEX DSODB.JobRunUsageRunID ON DSODB.JobRunUsage (RUNID);CREATE INDEX DSODB.ResourceUsageSTS ON DSODB.ResourceUsage (STARTTIMESTAMP);CREATE INDEX DSODB.JobRunControlRunID ON DSODB.JobRun (CONTROLLING_RUNID);CREATE INDEX DSODB.JobRunConfigID ON DSODB.JobRun (CONFIGID);CREATE INDEX DSODB.JobRunLogRunID ON DSODB.JobRunLog (RUNID);CREATE INDEX DSODB.JobRunParamsRunID ON DSODB.JobRunParams (RUNID);CREATE INDEX DSODB.PConfigHostID ON DSODB.ParallelConfig (HOSTID);CREATE INDEX DSODB.JobRunStageRunID ON DSODB.JobRunStage (RUNID);CREATE INDEX DSODB.JobRunStageStageID ON DSODB.JobRunStage (STAGEID);CREATE INDEX DSODB.JobRunLinkRunID ON DSODB.JobRunLink (RUNID);CREATE INDEX DSODB.JobRunLinkLinkID ON DSODB.JobRunLink (LINKID);CREATE INDEX DSODB.JobStageJobID ON DSODB.JobStage (JOBID);
2:配置 Operation 数据库监控目标
[root@report-etl1 DSODB]# cat DSODBConnect.cfg# Licensed Materials - Property of IBM# Copyright IBM Corp. 2012# DataStage Operations Database Connection Definition# ===================================================# The following parameters define the connection to the Operations Database.# "DBTYPE" must be set to identify which database manager is in use.DBTYPE=ORACLE# "Driver" is the Java class name for the JDBC driver to be used.Driver=com.ibm.isf.jdbc.oracle.OracleDriver# "Schema" is the user selected schema name that was provided during install.Schema=dsodb# "JAR" specifies the names of the jar files that are needed to run the driver.# The value is a semi-colon separated list of the jar file names required (or# specified as separate multiple "JAR=" properties if required)# The jar files must exist in the ASBNode/lib/java subdirectory of the# InformationServer installation directory on this Server system.JAR=ISoracle.jar;# "URL" is used to identify the database concerned.URL=jdbc:ibm:oracle://report-ds:1521;SID=DSDB# The following specify the username and password to connect to the DSODB schema.Username=DSODBPassword=DSODB
3.配置 Operation 数据库监控目标
[root@report-etl1 DSODB]# cat DSODBConfig.cfg# Licensed Materials - Property of IBM# (c) Copyright IBM Corp. 2010, 2014## DataStage Operations Database Monitor Configuration# ===================================================# Lines in this file are either comments, introduced by a # sign like this,# or of the form "key=value". Key lines may be commented out below. If this file is edited,# the data collection system must be stopped and restarted before changes take effect.## IMPORTANT:# Ensure when making changes to this file that it is saved with the encoding set to# UTF-8. Please be aware if the encoding isn't set to UTF-8 this may produce undesired# behaviour.# The following switches the whole data collection system on if set to 1, or off if 0.# A setting of 0 cannot be overridden at project level -# however individual projects can be switched off by setting this to 0# in a copy of this file placed in the project's directory.DSODBON=0# Job Log Events# ==============# Normally, all Fatal log messages, Control messages, and the first N Warning messages# of a run will be captured, except as modified by the following settings.# Note: The message severity is looked at AFTER any Message Handlers have been invoked,# which may adjust it or even discard the message altogether.# The following specifies how many warning messages are to be captured for each run.# Unless overridden by a "must capture" setting below, after this many warning log# messages have been turned into events any further warnings will not be sent to the ODB.# Default is 10. The value is capped at 1000.# MaxWarnings=10# The following key can be repeated, to specify any log messages that MUST be captured# in the ODB regardless of message type or whether the limit for that type has been reached.# Each value is a message ID or comma-delimited list of IDs associated with a log message.# IDs should only appear once in these lists or the IgnoreLog lists.# NOTE: IDs like "DSTAGE_XXX_X_nnnn" will actually be stored as "IIS-DSTAGE-XXX-X-nnnn"# in the database; in the lists below you may specify either format.# (Entries in IgnoreLog take precedence over entries in CaptureLog.)# IDs can be followed by a "content type" string of up to 20 chars, separated from the ID# by a slash. If present, these will be used to tag the log events in the database.# CaptureLog=IIS-DSTAGE-RUN-I-0126/ENV_VARS# CaptureLog=IIS-DSTAGE-RUN-I-0470/OSH_SCRIPT,IIS-DSEE-TFSU-00016/OSH_SCORE_DUMP# The following key can be repeated, to specify a log message that should NOT be captured# even if its type is Fatal or Warning.# Each value is a message ID or comma-delimited list of IDs associated with a log message.# NOTE: IDs like "DSTAGE_XXX_X_nnnn" will actually be stored as "IIS-DSTAGE-XXX-X-nnnn"# in the database; in the lists below you may specify either format.# IDs should only appear once in these lists or the CaptureLog lists.# (Entries in IgnoreLog take precedence over entries in CaptureLog.)# The strings following the / separator are purely descriptive in this case.IgnoreLog=IIS-DSTAGE-RUN-I-0180/Attempting to Cleanup after ABORTIgnoreLog=IIS-DSEE-TFSR-00019/Could not check all operators because of previous error(s)IgnoreLog=IIS-DSEE-TCOS-00029/Creation of a step finished with status = FAILED.# Job Run Statistics Monitoring# ============================# Specifies the time interval in seconds that should elapse between successive events# that update the overall run stats, such as total rows read/written. Default=10.# UpdateIntSecs=10# The following key switches on or off the capturing of stage-level and link-level stats,# and references to DataLocators, at the end of each job run. (1 = on, 0 = default/off)# MonitorLinks=1# Custom Job Parameters# =====================# The values of named job parameters can be extracted and used to tag job runs via custom fields.# To use this feature, un-comment one or more of the lines below, and replace "paramname" with# the actual job parameter name that is going to represent the appropriate custom field.# CustomBatchId=paramname1# CustomJobType=paramname2# CustomContact=paramname3# CustomSequence=paramname4# CustomField1=paramname5# CustomField2=paramname6################################################################## The keys that follow are ignored in project-level config files.################################################################## The following defines the directory where events files are to be landed.# It must be an absolute path, and must exist, with write access.# NOTE that the path MUST use forward-slashes as separators EVEN ON A WINDOWS SYSTEM.# It will be ignored at project level - only the system level setting is read.# If omitted, the default is the "events" sub-directory of the DSODB home directory.# EventsDir=C:/IBM/InformationServer/Server/DSODB/events# The following can be set to a number > 0 to enable tracing, and is the maximum# number of lines to be written to the trace file (between 1000 and 100000).# (Note that any number outside that range still switches tracing on.)# It will be ignored at project level - only the system level setting is read.# A file "JobRuntime.log" will be written to the "logs" sub-directory of DSODB home.# By default trace monitoring is disabled.# Tracing can adversely affect performance and should not be enabled except for problem diagnosis.# TraceMax=1000##################################################################[OPTIONS FOR RESOURCE MONITORING FOLLOW - DO NOT REMOVE THIS LINE]################################################################### Job Run Synchronization options# ===============================# The following specifies how often automatic validation of currently running jobs# is performed. At this interval, any jobs running will be checked that their running# status is correct, enabling any defunct jobs to be marked as no longer running.# This is not something that is expected to be performed frequently.# The value is specified in minutes, with a default of 60 (minimum 10)# Setting this value to 0 will turn off this functionality.# JobRunCheckInterval=60# Job Run Usage Parameters# ========================# Set the following property to 1 to enable the collection of job run resource# usage data (the default), or 0 to disable it.# JobRunUsage=1# The following property controls the number of snapshot values that are included# in a single row before a new one is started.# The default is 15 per row.# JobRunAggSnaps=15# System Resource Monitor - enable/disable# ========================================# The following switches on the collection of system resource data if set to 1 (the default),# or switches it off if 0. If set to 0, all options below related to resource tracking are ignored.# ResourceMonitor=1# Resource Tracking - connections# ===============================# The following specifies the port number that the resource tracking application (ResTrackApp)# will use on the local system. The default is 13450. (See also ODBQAPPPORTNUM below.)# ResourcePortNum=13450# The following specifies the port number that the resource tracking application (ResTrackApp)# will use on all remote nodes. The default is 13450.# ResourceRemotePortNum=13450# The following specifies the name of a remote node whose resources are to be monitored.# (The local system is always monitored if the resource tracker is running.)# The name given for each node should match that used in Parallel Job config files.# This property can be repeated any number of times to include multiple remote nodes.# ResourceNode=xxxxxx# ResourceNode=yyyyyy# NOTE: Where supplying non-ANSI characters below, ensure file encoding is set to UTF-8# Please see the full comment at the top on this subject for more details.# The following specifies a locally mounted file system to be monitored.# This property can be repeated any number of times to specify multiple file systems.# ResourceLocalFS=/localfilesystemA# ResourceLocalFS=/localfilesystemB# The following specifies a file system mounted on a remote node to be monitored.# Specify the node name and file system path separated by a plus (+)# The remote node name must match that specified in the corresponding ResourceNode entry above.# This property can be repeated any number of times to specify multiple file systems.# ResourceRemoteFS=node1+/remotefilesystem# ResourceRemoteFS=node2+/remotefilesystem# Resource Tracking - polling options# ===================================# The following specifies how often a resource snapshot is taken (in seconds).# The default value is 10.# ResourcePollPeriod=10# The following specifies how many snapshots are taken before an aggregated record of those# values is stored. The default value is 6.# Therefore, using the default values for poll period and sample size, an aggregated record# will be written every 60 seconds (10 * 6).# ResourceSampleSize=6# The following specifies whether to always store aggregated resource usage data. If set to 1# aggregated data will always be stored. If the value is set to 0, then resource usage data# will only be stored while there is any DataStage job activity.# This avoids storing large numbers of records when there is no such activity.# The default value is 1.# ResourceAllAggregatedUsage=1# The following property is used when a user is not storing all aggregated resource usage,# but only when there is any job activity. This value defines how many aggregated snapshots# are automatically stored before and after any job activity has been detected.# This number of aggregated values will be stored before a check for any job activity is made again.# The time period covered will be this value multiplied by the aggregated snapshot time.# The default value is 10. Using the defaults this means that the minimum time stored# around any job activity will be 10 minutes (= 10 * (10 * 6) seconds).# ResourceAggRunPollPeriod=10# The following property is used when a user is not storing all aggregated resource usage,# but only when there is any job activity. This value defines how often a check is made# for whether there is any job activity if there has been no recent job activity.# Snapshot data will always be stored according to the ResourceAggRunPollPeriod property above,# but this property will specify how often the activity check is made.# The time period will be this value multiplied by the aggregated snapshot time.# The default value is 1. Using the defaults this means that the activity check# will be made every 1 minute (= 1 * (10 * 6) seconds).# This value MUST be less than the value for ResourceAggRunPollPeriod.# ResourceAggNonRunPollPeriod=1# OpsConsole - connections# ========================# Following sets the port number used by the ODBQueryApp application to service requests from# the Operations Console. The default is 13451. (See also ResourcePortNum above.)# ODBQAPPPORTNUM=13451# DataStage Workload Manager Configuration# ===================================================# The following enables workload management if set to 1, or disabled if 0.WLMON=0# The following allows a job to run outside of WLM if communication between the DataStage runtime and WLM failed.# A setting of 0 will stop the job if communication with the WLM failed.# A setting of 1 will not send the job to the WLM. It will run immediately.WLM_CONTINUE_ON_COMMS_ERROR=0# The following sends a job to the default queue if the queue specified is no longer valid.# A setting of 0 will stop the job if the queue specified in invalid# A setting of 1 will send the job to the default WLM queue.WLM_CONTINUE_ON_QUEUE_ERROR=0# The following specifies the time a job will wait on the pending queue.# If this time has been exceeded, the job will be stopped and removed from the queue.# A value of 0 means do not time out.WLM_QUEUE_WAIT_TIMEOUT=0[root@report-etl1 DSODB]#
4.检测设置 - 错误配置显示
[root@ips156 bin]# ./DSAppWatcher.sh -test DSODB is turned ON in the DSODBConfig.cfg file. Link Monitoring is OFF. Job Run Usage is ON. Resource Monitoring is ON. Checking Database Connection: Successfully loaded the database driver. Successfully connected to the database. DB Schema version number: 1 Test Successful.
5.管理启动和停止 Operations Console 各服务进程
-sh-4.1$ sh DSAppWatcher.sh -statuswhich: no DSAppWatcher.sh in (/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin)AppWatcher:RUNNINGEngMonApp:STOPPEDODBQueryApp:RUNNINGResMonApp:RUNNING-sh-4.1$ sh DSAppWatcher.sh -start
6 实现前台监控:
0 0
- 配置 DataStage Operations Console
- datastage环境配置
- datastage
- DATASTAGE中ODBC连接的配置
- Operations
- Administrator Console repository配置
- Oracle10g EM Console配置
- jmx-console的配置
- MFC Console配置
- console口 - 配置口
- Console线配置交换机
- kvm console 配置
- 关于Datastage配置带参数的存储过程调度
- 【DataStage】DataStage Basic
- Oracle10g EM Console安装配置
- JMX-Console控制台安全配置
- 配置个性化PowerShell Console Profile
- Debian中配置serial console
- Spring WebSocket中403错误解决
- JPA 分页查询Pageable
- 支付服务集成-支付宝
- 为什么要用spring,springMVC?
- SpringMVC总结
- 配置 DataStage Operations Console
- mysql中排序再分页遇到的重复数据
- 【Unity Shader】第三节 纹理半透明---多个半透明面穿插
- 【Leetcode】78. Subsets
- 多线程详解
- ‘action’的存储大小未知
- Windows小技巧4——如何取消共享的文件夹
- git vim 保存退出
- PostMan-谷歌插件安装