humanemulator.net — справка.
Продукт, демо и покупка — на
хуманэмулятор.рф
|
Демо
|
Купить
|
API
|
Changelog
init
init($minLogLevelCode=LogLevel::DEBUG,$phpUseTroughShell=true,$writeLogToLogPanel=true,$logFilePath="",$logSQLiteDbFilePath="",$dateTimeFormat=self::DateTimeFormatDefault,$localizationCode="en",$isNeedTextTransliteration=false,$useXheApiToAction=true); - The default date and time format for logs unless a different format is specified during initialization */const DateTimeFormatDefault = "d-m-Y H:i:s";
#region Private members
/**
/
private int $minLogLevelCode = LogLevel::DEBUG;
/**
True - running not from a third-party IDE, otherwise from a third-party IDE
/
private bool $phpUseTroughShell = true;
/**
/
private bool $writeLogToLogPanel = true;
/**
/
private string $logFilePath = '';
/**
/
private string $logSQLiteDbFilePath;
/**
/
private string $dateTimeFormat = self::DateTimeFormatDefault;
/**
/
private string $localizationCode = "en";
/** @var bool Is need make text transliteration? */
private bool $isNeedTextTransliteration = false;
/** @var bool Use XHE API to execute actions? */
private bool $useXheApiToAction = true;
/**
/
private array $logLevelNameLocDictionaryRu = array(
'TRACE' => 'СЛЕД',
'DEBUG' => 'ОТЛАДКА',
'INFO' => 'ИНФО',
'WARNING' => 'ПРЕДУПРЕЖДЕНИЕ',
'ERROR' => 'ОШИБКА',
'CRITICAL' => 'КРИТИЧЕСКАЯ ОШИБКА'
);
/**
/
private array $logLevelNameLocDictionaryTr = array(
'TRACE' => '?ZLEME',
'DEBUG' => 'HATA AYIKLAMA',
'INFO' => 'B?LG?',
'WARNING' => 'UYARI',
'ERROR' => 'HATA',
'CRITICAL' => 'KR?T?K'
);
#endregion
/**
Init
Функция на вход принимает параметры:
После выполнения функции возвращаемое значение будет равно одному из двух :
Пример использования
<?php // Scenario: Tests XHELogger initialization functionality $xhe_host = getenv("RPABOT_HOST_URL"); // Connect functional objects if not already connected if (!isset($path)){ $path = "../../../Templates/init.php"; require($path); } // info echo "\n<span >logger->" . basename (__FILE__) . "</span>\n"; // Example 1: Test basic initialization echo "\n\n"; echo "1. Basic initialization test:\n"; // Test basic initialization with default parameters echo "Initializing logger with parameters:\n"; $minLogLevel = LogLevel::DEBUG; echo "- Min Log Level: DEBUG (value: $minLogLevel)\n"; $phpUseThroughShell = true; echo "- PHP Use Through Shell: " . ($phpUseThroughShell ? "true" : "false") . "\n"; $writeLogToLogPanel = false; echo "- Write Log To Log Panel: " . ($writeLogToLogPanel ? "true" : "false") . "\n"; $logFilePath = ""; echo "- Log File Path: ''\n"; $logSQLiteDbFilePath = ""; echo "- Log SQLite DB Path: ''\n"; $dateTimeFormat = "d-M-yyyy HH:mm:ss"; echo "- Date Time Format: $dateTimeFormat\n"; $localizationCode = "en"; echo "- Localization Code: $localizationCode\n"; $isNeedTextTransliteration = false; echo "- Need Text Transliteration: " . ($isNeedTextTransliteration ? "true" : "false") . "\n"; SYSTEM::$logger->init($minLogLevel, $phpUseThroughShell, $writeLogToLogPanel, $logFilePath, $logSQLiteDbFilePath, $dateTimeFormat, $localizationCode, $isNeedTextTransliteration); echo "Logger initialized with default parameters\n"; // Example 2: Test initialization with custom log level echo "\n"; echo "2. Custom log level test:\n"; // Test initialization with INFO log level (should filter out DEBUG and TRACE messages) echo "Initializing logger with parameters:\n"; $minLogLevel = LogLevel::INFO; echo "- Min Log Level: INFO (value: $minLogLevel)\n"; SYSTEM::$logger->init($minLogLevel); echo "Logger initialized with INFO log level\n"; // Example 3: Test initialization with file logging echo "\n"; echo "3. File logging test:\n"; // Test initialization with file logging echo "Initializing logger with parameters:\n"; $logFilePath = "test_log.txt"; echo "- Log File Path: '$logFilePath'\n"; $minLogLevel = LogLevel::DEBUG; echo "- Min Log Level: DEBUG (value: $minLogLevel)\n"; $phpUseThroughShell = true; echo "- PHP Use Through Shell: " . ($phpUseThroughShell ? "true" : "false") . "\n"; $writeLogToLogPanel = true; echo "- Write Log To Log Panel: " . ($writeLogToLogPanel ? "true" : "false") . "\n"; $logSQLiteDbFilePath = ""; echo "- Log SQLite DB Path: ''\n"; $dateTimeFormat = "d-M-yyyy HH:mm:ss"; echo "- Date Time Format: $dateTimeFormat\n"; $localizationCode = "en"; echo "- Localization Code: $localizationCode\n"; $isNeedTextTransliteration = false; echo "- Need Text Transliteration: " . ($isNeedTextTransliteration ? "true" : "false") . "\n"; SYSTEM::$logger->init($minLogLevel, $phpUseThroughShell, $writeLogToLogPanel, $logFilePath, $logSQLiteDbFilePath, $dateTimeFormat, $localizationCode, $isNeedTextTransliteration); echo "Logger initialized with file logging to '$logFilePath'\n"; // Example 4: Test initialization with Russian localization echo "\n"; echo "4. Russian localization test:\n"; // Test initialization with Russian localization echo "Initializing logger with parameters:\n"; $minLogLevel = LogLevel::DEBUG; echo "- Min Log Level: DEBUG (value: $minLogLevel)\n"; $phpUseThroughShell = true; echo "- PHP Use Through Shell: " . ($phpUseThroughShell ? "true" : "false") . "\n"; $writeLogToLogPanel = true; echo "- Write Log To Log Panel: " . ($writeLogToLogPanel ? "true" : "false") . "\n"; $logFilePath = ""; echo "- Log File Path: ''\n"; $logSQLiteDbFilePath = ""; echo "- Log SQLite DB Path: ''\n"; $dateTimeFormat = ""; echo "- Date Time Format: d-M-yyyy HH:mm:ss (default)\n"; $localizationCode = "ru"; echo "- Localization Code: $localizationCode\n"; SYSTEM::$logger->init($minLogLevel, $phpUseThroughShell, $writeLogToLogPanel, $logFilePath, $logSQLiteDbFilePath, $dateTimeFormat, $localizationCode); echo "Logger initialized with Russian localization\n"; // Example 5: Test initialization with Turkish localization echo "\n"; echo "5. Turkish localization test:\n"; // Test initialization with Turkish localization echo "Initializing logger with parameters:\n"; $minLogLevel = LogLevel::DEBUG; echo "- Min Log Level: DEBUG (value: $minLogLevel)\n"; $phpUseThroughShell = true; echo "- PHP Use Through Shell: " . ($phpUseThroughShell ? "true" : "false") . "\n"; $writeLogToLogPanel = true; echo "- Write Log To Log Panel: " . ($writeLogToLogPanel ? "true" : "false") . "\n"; $logFilePath = ""; echo "- Log File Path: ''\n"; $logSQLiteDbFilePath = ""; echo "- Log SQLite DB Path: ''\n"; $dateTimeFormat = ""; echo "- Date Time Format: d-M-yyyy HH:mm:ss (default)\n"; $localizationCode = "tr"; echo "- Localization Code: $localizationCode\n"; SYSTEM::$logger->init($minLogLevel, $phpUseThroughShell, $writeLogToLogPanel, $logFilePath, $logSQLiteDbFilePath, $dateTimeFormat, $localizationCode); echo "Logger initialized with Turkish localization\n"; // Example 6: Test initialization with custom date format echo "\n"; echo "6. Custom date format test:\n"; // Test initialization with custom date format echo "Initializing logger with parameters:\n"; $customDateFormat = "Y-m-d H:i:s"; echo "- Date Time Format: $customDateFormat\n"; $minLogLevel = LogLevel::DEBUG; echo "- Min Log Level: DEBUG (value: $minLogLevel)\n"; $phpUseThroughShell = true; echo "- PHP Use Through Shell: " . ($phpUseThroughShell ? "true" : "false") . "\n"; $writeLogToLogPanel = true; echo "- Write Log To Log Panel: " . ($writeLogToLogPanel ? "true" : "false") . "\n"; $logFilePath = ""; echo "- Log File Path: ''\n"; $logSQLiteDbFilePath = ""; echo "- Log SQLite DB Path: ''\n"; $localizationCode = "en"; echo "- Localization Code: $localizationCode\n"; $isNeedTextTransliteration = false; echo "- Need Text Transliteration: " . ($isNeedTextTransliteration ? "true" : "false") . "\n"; SYSTEM::$logger->init($minLogLevel, $phpUseThroughShell, $writeLogToLogPanel, $logFilePath, $logSQLiteDbFilePath, $customDateFormat, $localizationCode, $isNeedTextTransliteration); echo "Logger initialized with custom date format: '$customDateFormat'\n"; // Example 7: Test initialization with transliteration enabled echo "\n"; echo "7. Transliteration test:\n"; // Test initialization with transliteration enabled echo "Initializing logger with parameters:\n"; $minLogLevel = LogLevel::DEBUG; echo "- Min Log Level: DEBUG (value: $minLogLevel)\n"; $phpUseThroughShell = true; echo "- PHP Use Through Shell: " . ($phpUseThroughShell ? "true" : "false") . "\n"; $writeLogToLogPanel = true; echo "- Write Log To Log Panel: " . ($writeLogToLogPanel ? "true" : "false") . "\n"; $logFilePath = ""; echo "- Log File Path: ''\n"; $logSQLiteDbFilePath = ""; echo "- Log SQLite DB Path: ''\n"; $dateTimeFormat = ""; echo "- Date Time Format: d-M-yyyy HH:mm:ss (default)\n"; $localizationCode = "en"; echo "- Localization Code: $localizationCode\n"; $isNeedTextTransliteration = true; echo "- Need Text Transliteration: " . ($isNeedTextTransliteration ? "true" : "false") . "\n"; SYSTEM::$logger->init($minLogLevel, $phpUseThroughShell, $writeLogToLogPanel, $logFilePath, $logSQLiteDbFilePath, $dateTimeFormat, $localizationCode, $isNeedTextTransliteration); echo "Logger initialized with transliteration enabled\n"; // Example 8: Test initialization with invalid log level (should default to DEBUG) echo "\n"; echo "8. Invalid log level test:\n"; // Test initialization with invalid log level (should default to DEBUG) echo "Initializing logger with parameters:\n"; $minLogLevel = 999; echo "- Min Log Level: INVALID (value: $minLogLevel)\n"; SYSTEM::$logger->init($minLogLevel); // Invalid log level echo "Logger initialized with invalid log level (should default to DEBUG)\n"; // Quit the application WINDOW::$app->quit(); ?>
# Additional paths import sys sys.path.insert(0, '../../../Templates PY/') xhe_host = "127.0.0.1:7019" from xweb_human_emulator import * # start echo("<hr><font color=blue>logger.init</font><hr>") # 1 echo("1. Initializing logger with default parameters: ") if logger.init(): echo("вњ“ Success\n\n") else: echo("вњ— Failed\n\n") # 2 echo("2. Initializing logger with minimum logging level Debug(1): ") if logger.init(minLogLevelCode=1): echo("вњ“ Success\n\n") else: echo("вњ— Failed\n\n") # 3 echo("3. Initializing logger with log file path: ") if logger.init(logFilePath=debug.get_cur_script_folder()+"/test/logger.log"): echo("вњ“ Success\n\n") else: echo("вњ— Failed\n\n") # 4 echo("4. Initializing logger using SQLite for log storage: ") if logger.init(logSQLiteDbFilePath=debug.get_cur_script_folder()+"/logs/logger.db"): echo("вњ“ Success\n\n") else: echo("вњ— Failed\n\n") # end echo("<hr>\n") app.quit()
#region using using System; using System.Diagnostics; using System.Collections.Generic; using System.Linq; using System.IO; using System.Text; using System.Threading; using XHE; using XHE.XHE_DOM; using XHE.XHE_System; using XHE.XHE_Window; using XHE.XHE_Web; #endregion class Program:XHEScript { static void Main(string[] args) { // init XHE server = Environment.GetEnvironmentVariable("RPABOT_HOST_URL"); InitXHE(); echo("<hr><font color=blue>logger.init</font><hr>"); // 1 step echo("1. Initialize logger with default parameters: "); bool result1 = logger.init(); if(result1) echo("вњ“ Init with default params successful<br>"); else echo("вњ— Init with default params failed<br>"); // 2 step echo("\n2. Initialize logger with custom log level (0 - Trace): "); bool result2 = logger.init(0, true, true, "", "test\\logger_test.db"); if(result2) echo("вњ“ Init with log level 0 successful<br>"); else echo("вњ— Init with log level 0 failed<br>"); // 3 step echo("\n3. Initialize logger with log level 5 (Critical) and custom datetime format: "); bool result3 = logger.init(5, true, true, "", "test\\logger_test.db", "", "Y-m-d H:i:s"); if(result3) echo("вњ“ Init with log level 5 successful<br>"); else echo("вњ— Init with log level 5 failed<br>"); // 4 step echo("\n4. Initialize logger with localization and transliteration settings: "); bool result4 = logger.init(2, true, true, "", "test\\logger_test.db", "", "d-m-Y H:i:s", "en", true); if(result4) echo("вњ“ Init with localization successful<br>"); else echo("вњ— Init with localization failed<br>"); echo("\n\n"); app.quit(); } }
const xhe_host = "127.0.0.1:7019"; require("../../../Templates JS/init.js"); const path = require("path"); async function main() { let result = logger.init(1, true, true, "", "", "d-m-Y H:i:s", "en", false, true); if (result === true) console.log("вњ“ Test 1: Init with default parameters - PASSED"); else console.log("вњ— Test 1: Init with default parameters - FAILED"); result = logger.init(0, false, false, "", "", "d-m-Y H:i:s", "en", false, true); if (result === true) console.log("вњ“ Test 2: Init with min log level 0 - PASSED"); else console.log("вњ— Test 2: Init with min log level 0 - FAILED"); result = logger.init(5, true, false, "", "", "d-m-Y H:i:s", "en", false, true); if (result === true) console.log("вњ“ Test 3: Init with min log level 5 - PASSED"); else console.log("вњ— Test 3: Init with min log level 5 - FAILED"); var logFilePath = path.join(__dirname, "test.log"); result = logger.init(1, true, true, logFilePath, "", "d-m-Y H:i:s", "en", false, true); if (result === true) console.log("вњ“ Test 4: Init with log file path - PASSED"); else console.log("вњ— Test 4: Init with log file path - FAILED"); } main();
=============================================
logger Объекты DOM System Vision Web Window
=============================================
если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум
.