Table of Contents |
---|
Scope
- Provide technical information on the standard data model that is available for reports.
- Users can use this information to create their own reports from the data model, see JobScheduler Reporting Interface (1.9.x, 1.10.x) - Technical Information - Data Model Customization
- SQL scripts in this article are provided for PostgreSQL. The SQL scrpts for the respective DBMS are provided by the JobScheduler installer.
Standard Data Model
Standard Tables
Inventory Tables
- The following tables are managed by reporting inventory jobs that create an inventory of existing jobs, job chains and orders.
- Records are overwritten by each run of the reporting inventory jobs.
- SQL Scripts
- Tables: inventory.sql
Expandexpand | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||
|
Expand | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
...
Expand | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Expand | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Expand | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Fact Tables
- The following tables are used to collect facts from the JobScheduler history.
- No standalone jobs are given. Fact tables contain job chain starts exclusively.
- These tables can be used to create individual reports.
- SQL Scripts
- Tables: report.sql
Expand | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Expand | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Aggregation Tables
- The following tables contain aggregations for
- job steps per order
- triggers and executions per day, week, month, quarter, year
- SQL Scripts
- Tables: report.sql
Expand | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Expand | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Mapping Tables
- The following tables are used for the mapping of report data. Users can add individual records that are used for the mapping of results in individual reports:
- Mapping of start causes for jobs
- Contents in these tables is optional, however, their existence is required.
- SQL Scripts
- Tables: report.sql
- Sample contentData: report_map_insert.sql
Expand | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||
|
Customization
- The standard data model can be customized by use of additional tables and procedures.
- Such tables are not required by the JobScheduler Reporting Interface.
Sample Custom Tables
- The following tables implement samples for the customization of reports:
- Assigning applications to jobs
- Assigning mandators to jobs
- Samples are presented for instructional use only.
Assigning Applications to Jobs
- Should a report present information on a number of jobs that are used for the same application then the following tables could be used:
Application Master Data
Expand | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||
|
Application Joins to Jobs
Expand | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||
|
Assigning Mandators to Jobs
Mandator Master Data
Expand | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||
|
Mandator Joins to Jobs
Expand | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||
|
...
|
Standard Procedures
- For most DBMS it is recommended to use views or procedures in order to speed up queries by pre-compiled statements.
- The following procedures implement the use of the above custom standard tables for reporting results that are aggregated per application and mandator.
Report about Installed Objects
- The standard procedure is improved to map installed objects to applications and mandators.
...
- SQL Scripts
- Procedures: report_procedure.sql
Report about Installed Objects
- Report about jobs, job chains and orders as collected from disk.
Expand | ||
---|---|---|
| ||
CREATE OR REPLACE FUNCTION REPORT_CUSTOM _INSTALLED_OBJECTS(start_date DATE, end_dateDATE) RETURNS TABLE ( "ID" BIGINT, DATE) RETURNS TABLE ("JOB_CHAIN" "JOB_CHAIN" VARCHAR(255),"JOB_TITLE" "JOB_TITLE" VARCHAR(255),DATE TIMESTAMP,DATE, "MANDATOR_NAME" VARCHAR(100), "APPLICATION_NAME" VARCHAR(100) ) |
Report about Executions
...
TIMESTAMP |
Report about Execution Summary
- Report about executions of jobs and job chains.
Expand | ||
---|---|---|
| ||
CREATE OR REPLACE FUNCTION REPORT_CUSTOM _EXECUTION_SUMMARY(start_date DATE, end_date DATE) RETURNS TABLE (VARCHAR(100), "HOSTNAME" VARCHAR(100),"JOB_BASENAME" "JOB_BASENAME" VARCHAR(100),"CAUSE" "CAUSE" VARCHAR(100),TIMESTAMP, "START_DATE" DATE, "END_DATE" DATE, "MIN_START_DATE" DATE, "MAX_START_DATE" DATE, "MANDATOR_NAME" VARCHAR(100), "APPLICATION_NAME" VARCHAR(100) TIMESTAMP, |