forked from nique_372/MQLArticles
51 lines
2.5 KiB
MQL5
51 lines
2.5 KiB
MQL5
|
|
//+------------------------------------------------------------------+
|
||
|
|
//| LoggerDef.mqh |
|
||
|
|
//| Copyright 2026, Niquel Mendoza |
|
||
|
|
//| https://www.mql5.com |
|
||
|
|
//+------------------------------------------------------------------+
|
||
|
|
#property copyright "Copyright 2026, Niquel Mendoza"
|
||
|
|
#property link "https://www.mql5.com"
|
||
|
|
#property strict
|
||
|
|
|
||
|
|
#ifndef MQLARTICLES_UTILS_FA_LOGGERDEF_MQH
|
||
|
|
#define MQLARTICLES_UTILS_FA_LOGGERDEF_MQH
|
||
|
|
|
||
|
|
//+------------------------------------------------------------------+
|
||
|
|
//| Defines |
|
||
|
|
//+------------------------------------------------------------------+
|
||
|
|
//--- Macro
|
||
|
|
#define FUNCION_ACTUAL __FUNCTION__
|
||
|
|
|
||
|
|
//--- Log Flags
|
||
|
|
#define LOG_LEVEL_ERROR 1 // 0001 - Critical errors
|
||
|
|
#define LOG_LEVEL_WARNING 2 // 0010 - Warnings
|
||
|
|
#define LOG_LEVEL_INFO 4 // 0100 - General information
|
||
|
|
#define LOG_LEVEL_CAUTION 8 // 1000 - Cautions
|
||
|
|
#define LOG_ALL LOG_LEVEL_CAUTION|LOG_LEVEL_INFO|LOG_LEVEL_WARNING
|
||
|
|
|
||
|
|
//---
|
||
|
|
enum ENUM_VERBOSE_LOG_LEVEL
|
||
|
|
{
|
||
|
|
VERBOSE_LOG_LEVEL_ERROR_ONLY = LOG_LEVEL_ERROR, // Only Errors
|
||
|
|
VERBOSE_LOG_LEVEL_WARNINGS = LOG_LEVEL_WARNING, // Warnings + Errors
|
||
|
|
VERBOSE_LOG_LEVEL_INFO = LOG_LEVEL_INFO, // Info + Errors
|
||
|
|
VERBOSE_LOG_LEVEL_CAUTION = LOG_LEVEL_CAUTION, // Caution + Errors
|
||
|
|
VERBOSE_LOG_LEVEL_WARNINGS_INFO = LOG_LEVEL_WARNING | LOG_LEVEL_INFO, // Warnings + Info + Errors
|
||
|
|
VERBOSE_LOG_LEVEL_WARNINGS_CAUTION = LOG_LEVEL_WARNING | LOG_LEVEL_CAUTION, // Warnings + Caution + Errors
|
||
|
|
VERBOSE_LOG_LEVEL_INFO_CAUTION = LOG_LEVEL_INFO | LOG_LEVEL_CAUTION, // Info + Caution + Errors
|
||
|
|
VERBOSE_LOG_LEVEL_ALL = (LOG_LEVEL_WARNING | LOG_LEVEL_INFO | LOG_LEVEL_CAUTION) // All: Warnings + Info + Caution + Errors
|
||
|
|
};
|
||
|
|
|
||
|
|
#define WARNING_TEXT "WARNING"
|
||
|
|
#define CAUTION_TEXT "CAUTION"
|
||
|
|
#define INFO_TEXT "INFO"
|
||
|
|
#define ERROR_TEXT "ERROR"
|
||
|
|
#define CRITICAL_ERROR_TEXT "CRITICAL ERROR"
|
||
|
|
#define FATAL_ERROR_TEXT "FATAL ERROR"
|
||
|
|
|
||
|
|
//+------------------------------------------------------------------+
|
||
|
|
//| Método principal de logging |
|
||
|
|
//+------------------------------------------------------------------+
|
||
|
|
#define FastLog(function, class_info, message) ::Print("[", class_info, "] ", function, " | ", message)
|
||
|
|
|
||
|
|
#endif // MQLARTICLES_UTILS_FA_LOGGERDEF_MQH
|