Store page request parameters as JSON in logs.arguments
This commit is contained in:
parent
69dc6e40b7
commit
3b7d25fba1
@ -413,7 +413,9 @@ CREATE OR REPLACE PACKAGE app AS
|
|||||||
--
|
--
|
||||||
-- Returns requested URL
|
-- Returns requested URL
|
||||||
--
|
--
|
||||||
FUNCTION get_request_url
|
FUNCTION get_request_url (
|
||||||
|
in_arguments_only BOOLEAN := FALSE
|
||||||
|
)
|
||||||
RETURN VARCHAR2;
|
RETURN VARCHAR2;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -933,15 +933,18 @@ CREATE OR REPLACE PACKAGE BODY app AS
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
FUNCTION get_request_url
|
FUNCTION get_request_url (
|
||||||
|
in_arguments_only BOOLEAN := FALSE
|
||||||
|
)
|
||||||
RETURN VARCHAR2
|
RETURN VARCHAR2
|
||||||
AS
|
AS
|
||||||
BEGIN
|
BEGIN
|
||||||
RETURN UTL_URL.UNESCAPE(
|
RETURN CASE WHEN NOT in_arguments_only
|
||||||
|
THEN UTL_URL.UNESCAPE (
|
||||||
OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME') ||
|
OWA_UTIL.GET_CGI_ENV('SCRIPT_NAME') ||
|
||||||
OWA_UTIL.GET_CGI_ENV('PATH_INFO') || '?' ||
|
OWA_UTIL.GET_CGI_ENV('PATH_INFO') || '?'
|
||||||
OWA_UTIL.GET_CGI_ENV('QUERY_STRING')
|
) END ||
|
||||||
);
|
UTL_URL.UNESCAPE(OWA_UTIL.GET_CGI_ENV('QUERY_STRING'));
|
||||||
EXCEPTION
|
EXCEPTION
|
||||||
WHEN OTHERS THEN
|
WHEN OTHERS THEN
|
||||||
RETURN NULL;
|
RETURN NULL;
|
||||||
@ -1491,12 +1494,31 @@ CREATE OR REPLACE PACKAGE BODY app AS
|
|||||||
FUNCTION log_request
|
FUNCTION log_request
|
||||||
RETURN logs.log_id%TYPE
|
RETURN logs.log_id%TYPE
|
||||||
AS
|
AS
|
||||||
|
v_args logs.arguments%TYPE;
|
||||||
BEGIN
|
BEGIN
|
||||||
map_tree := app.arr_map_tree();
|
map_tree := app.arr_map_tree();
|
||||||
|
|
||||||
|
-- parse arguments
|
||||||
|
v_args := app.get_request_url(in_arguments_only => TRUE);
|
||||||
--
|
--
|
||||||
|
BEGIN
|
||||||
|
SELECT JSON_OBJECTAGG (
|
||||||
|
REGEXP_REPLACE(REGEXP_SUBSTR(v_args, '[^&]+', 1, LEVEL), '[=].*$', '')
|
||||||
|
VALUE REGEXP_REPLACE(REGEXP_SUBSTR(v_args, '[^&]+', 1, LEVEL), '^[^=]+[=]', '')
|
||||||
|
) INTO v_args
|
||||||
|
FROM DUAL
|
||||||
|
CONNECT BY LEVEL <= REGEXP_COUNT(v_args, '&') + 1
|
||||||
|
ORDER BY LEVEL;
|
||||||
|
EXCEPTION
|
||||||
|
WHEN OTHERS THEN
|
||||||
|
app.log_error('JSON_ERROR');
|
||||||
|
END;
|
||||||
|
|
||||||
|
-- create log
|
||||||
RETURN app.log__ (
|
RETURN app.log__ (
|
||||||
in_flag => app.flag_request,
|
in_flag => app.flag_request,
|
||||||
in_action_name => app.get_request(),
|
in_action_name => app.get_request(),
|
||||||
|
in_arguments => v_args,
|
||||||
in_payload => app.get_request_url() || CHR(10)
|
in_payload => app.get_request_url() || CHR(10)
|
||||||
);
|
);
|
||||||
END;
|
END;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user