Added log audit table & sp. Update pipeline to use diff role for dev envs

This commit is contained in:
Umang Mistry
2024-02-22 15:25:47 -06:00
parent c6ddf21c76
commit 360ed5ccb2
4 changed files with 43 additions and 17 deletions
+3 -3
View File
@@ -17,9 +17,9 @@ definitions:
- pip install snowflake-connector-python
- pip install schemachange --upgrade
# Setting the database name dynamically based on the branch name
- if [ "$BITBUCKET_BRANCH" == "DEV" ]; then export SNOWFLAKE_DATABASE=$DEV_SNOWFLAKE_DATABASE; fi
- if [ "$BITBUCKET_BRANCH" == "UAT" ]; then export SNOWFLAKE_DATABASE=$UAT_SNOWFLAKE_DATABASE; fi
- if [ "$BITBUCKET_BRANCH" == "PROD" ]; then export SNOWFLAKE_DATABASE=$PROD_SNOWFLAKE_DATABASE; fi
- if [ "$BITBUCKET_BRANCH" == "DEV" ]; then export SNOWFLAKE_DATABASE=$DEV_SNOWFLAKE_DATABASE; export SNOWFLAKE_ROLE=$DEV_SNOWFLAKE_ROLE; fi
- if [ "$BITBUCKET_BRANCH" == "UAT" ]; then export SNOWFLAKE_DATABASE=$UAT_SNOWFLAKE_DATABASE; export SNOWFLAKE_ROLE=$UAT_SNOWFLAKE_ROLE; fi
- if [ "$BITBUCKET_BRANCH" == "PROD" ]; then export SNOWFLAKE_DATABASE=$PROD_SNOWFLAKE_DATABASE; export SNOWFLAKE_ROLE=$PROD_SNOWFLAKE_ROLE; fi
- schemachange -a $SNOWFLAKE_ACCOUNT -u $SNOWFLAKE_USER -r $SNOWFLAKE_ROLE -w $SNOWFLAKE_WAREHOUSE -d $SNOWFLAKE_DATABASE -c $SNOWFLAKE_DATABASE.SCHEMACHANGE.CHANGE_HISTORY --create-change-history-table -v
trigger: automatic # uncomment after testing
# trigger: manual
+29
View File
@@ -0,0 +1,29 @@
CREATE OR REPLACE PROCEDURE STG.LOG_AUDIT("PROC_NAME" VARCHAR(255), "SUB_SECTION_NAME" VARCHAR(255), "AUDIT_SID" FLOAT, "ACTION_FLAG" VARCHAR(255))
RETURNS VARCHAR(16777216)
LANGUAGE SQL
EXECUTE AS CALLER
AS
'
BEGIN
BEGIN TRANSACTION;
IF (:ACTION_FLAG = ''START'') THEN
INSERT INTO STG.LOG_AUDIT (EXECUTION_DT, START_DT, PROCEDURE_NAME, SUB_SECTION_NAME, AUDIT_SID)
VALUES (CURRENT_DATE(), CURRENT_TIMESTAMP(), :PROC_NAME, :SUB_SECTION_NAME, :AUDIT_SID);
END IF;
IF (:ACTION_FLAG = ''END'') THEN
UPDATE STG.LOG_AUDIT
SET QUERY_ID = LAST_QUERY_ID(-2), END_DT = CURRENT_TIMESTAMP(), TOTAL_MIN = DATEDIFF(Minute, START_DT, CURRENT_TIMESTAMP())
WHERE PROCEDURE_NAME = :PROC_NAME AND SUB_SECTION_NAME = :SUB_SECTION_NAME AND AUDIT_SID = :AUDIT_SID AND END_DT IS NULL;
ELSE
COMMIT;
RETURN ''Incorrect Action Flag Used'';
END IF;
COMMIT;
RETURN ''Completed'';
END;'
;
@@ -0,0 +1,11 @@
create or replace TABLE STG.LOG_AUDIT (
UNIQUE_KEY NUMBER(38,0) NOT NULL autoincrement start 1 increment 1 order,
EXECUTION_DT DATE,
QUERY_ID VARCHAR(100) COLLATE 'en-ci',
START_DT TIMESTAMP_NTZ(9),
END_DT TIMESTAMP_NTZ(9),
PROCEDURE_NAME VARCHAR(255) COLLATE 'en-ci',
SUB_SECTION_NAME VARCHAR(255) COLLATE 'en-ci',
AUDIT_SID NUMBER(38,0),
TOTAL_MIN NUMBER(38,0)
);
-14
View File
@@ -1,14 +0,0 @@
CREATE TABLE IF NOT EXISTS CHC_DW.DIM_DATE
(
DATE_KEY INT NOT NULL,
DATE_VALUE DATE NOT NULL,
DAY_OF_WEEK INT NOT NULL,
DAY_NAME VARCHAR(10) NOT NULL,
DAY_OF_MONTH INT NOT NULL,
DAY_OF_YEAR INT NOT NULL,
WEEK_OF_YEAR INT NOT NULL,
MONTH_NAME VARCHAR(10) NOT NULL,
MONTH_OF_YEAR INT NOT NULL,
QUARTER INT NOT NULL,
PRIMARY KEY (DATE_KEY)
);