Jobs/schedulers page

This commit is contained in:
Jan Kvetina 2021-12-27 22:49:29 +01:00
parent 4738d78722
commit df1a218bea
5 changed files with 2051 additions and 5 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,25 @@
CREATE OR REPLACE VIEW scheduler_details AS
WITH x AS (
SELECT
app.get_app_id() AS app_id,
app.get_date_item('G_TODAY') AS today
FROM users u
WHERE u.user_id = app.get_user_id()
)
SELECT
d.log_id,
d.job_name,
d.actual_start_date AS start_date,
app.get_duration(d.run_duration) AS run_duration,
app.get_duration(d.cpu_used) AS cpu_used,
d.status,
--d.session_id,
d.error#,
d.errors AS error_desc,
d.output,
d.additional_info
FROM user_scheduler_job_run_details d
JOIN x
ON d.actual_start_date >= x.today
AND d.actual_start_date < x.today + 1;

View File

@ -0,0 +1,30 @@
CREATE OR REPLACE VIEW scheduler_history AS
WITH x AS (
SELECT
app.get_app_id() AS app_id,
app.get_date_item('G_TODAY') AS today
FROM users u
WHERE u.user_id = app.get_user_id()
)
SELECT
MAX(d.log_id) AS log_id,
d.job_name,
--
NULLIF(SUM(CASE WHEN d.status = 'SUCCEEDED' THEN 1 ELSE 0 END), 0) AS count_succeeded,
NULLIF(SUM(CASE WHEN d.status != 'SUCCEEDED' THEN 1 ELSE 0 END), 0) AS count_failed,
--
MAX(d.errors) AS error_desc,
--
MIN(CAST(d.actual_start_date AS DATE)) AS first_run,
NULLIF(MAX(CAST(d.actual_start_date AS DATE)),
MIN(CAST(d.actual_start_date AS DATE))) AS last_run,
--
NULL AS avg_run_duration,
NULL AS avg_cpu_used
--
FROM user_scheduler_job_run_details d
JOIN x
ON d.actual_start_date >= x.today
AND d.actual_start_date < x.today + 1
GROUP BY d.job_name;

View File

@ -0,0 +1,13 @@
CREATE OR REPLACE VIEW scheduler_running AS
SELECT
j.log_id,
j.job_name,
j.job_style,
j.elapsed_time,
j.cpu_used,
j.destination,
j.session_id,
j.resource_consumer_group,
j.credential_name
FROM user_scheduler_running_jobs j;

View File

@ -0,0 +1,24 @@
CREATE OR REPLACE VIEW scheduler_scheduled AS
SELECT
j.job_name,
j.job_type,
j.job_priority,
j.job_action,
j.number_of_arguments AS job_args,
j.repeat_interval,
--
NULLIF(j.run_count, 0) AS run_count,
NULLIF(j.failure_count, 0) AS failure_count,
NULLIF(j.retry_count, 0) AS retry_count,
--
j.next_run_date,
j.last_start_date,
--
app.get_duration(j.last_run_duration) AS last_run_duration,
--
CASE WHEN j.auto_drop = 'TRUE' THEN 'Y' END AS is_autodrop,
CASE WHEN j.state = 'SCHEDULED' AND j.enabled = 'TRUE' THEN 'Y' END AS is_enabled,
--
j.comments
FROM user_scheduler_jobs j;