# XLIB_LOG ## Package Specification ```sql PACKAGE "XLIB_LOG" IS /*========================================================================= Purpose : Application Logging License : Copyright (c) 2010 Dietmar Aust (opal-consulting.de) Licensed under a BSD style license (license.txt) https://github.com/daust/JasperReportsIntegration Date Author Comment ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 06.01.2010 D. Aust Initial creation 13.05.2012 D. Aust insert fails when created_by user value too large =========================================================================*/ PROCEDURE m ( p_module IN VARCHAR2, p_msg IN VARCHAR2, p_type IN VARCHAR2 DEFAULT 'DEBUG', p_level PLS_INTEGER DEFAULT 15 ); END;``` ## Package Body ```sql PACKAGE BODY "XLIB_LOG" IS PROCEDURE m ( p_module IN VARCHAR2, p_msg IN VARCHAR2, p_type IN VARCHAR2 DEFAULT 'DEBUG', p_level IN PLS_INTEGER DEFAULT 15 ) IS PRAGMA AUTONOMOUS_TRANSACTION; BEGIN INSERT INTO xlib_logs (log_module, log_msg, log_type, log_level, log_created_on, log_created_by ) values ( substr(p_module,1,100) , substr(p_msg,1,4000) , substr(p_type,1,20) , p_level , sysdate , substr(nvl(v('APP_USER'), user),1,100) ); COMMIT; END; END;```