UNPKG

ziti-sdk-c-nodejs

Version:

Node.js wrapper for OpenZiti C SDK

107 lines (88 loc) 4.21 kB
const { ZitiSDK, LOG_LEVELS } = require('./index.js'); const fs = require('fs'); const path = require('path'); async function testFileLogging() { console.log('🧪 Testowanie logowania do pliku'); console.log('================================\n'); const logFilePath = './ziti-test-logs.txt'; // Usuń stary plik logów jeśli istnieje if (fs.existsSync(logFilePath)) { fs.unlinkSync(logFilePath); console.log('🗑️ Usunięto stary plik logów'); } try { const sdk = new ZitiSDK(); console.log('✅ ZitiSDK utworzony'); await sdk.init(); console.log('✅ SDK zainicjalizowane'); // Ustaw logowanie do pliku sdk.setLogFile(logFilePath); console.log(`📁 Ustawiono plik logów: ${logFilePath}`); // Włącz natywne logi sdk.enableNativeLogs(true); console.log('🔧 Włączono natywne logi'); // Ustaw poziom logowania na DEBUG aby zobaczyć więcej wiadomości sdk.setLogLevel(LOG_LEVELS.DEBUG); console.log('📝 Ustawiono poziom logowania na DEBUG'); // Ustaw callback do logowania w konsoli sdk.setLogCallback((level, message) => { const levelNames = ['NONE', 'ERROR', 'WARN', 'INFO', 'DEBUG', 'VERBOSE', 'TRACE']; const levelName = levelNames[level] || 'UNKNOWN'; console.log(`[Console ${levelName}] ${message}`); }); console.log('🔄 Ustawiono callback logowania'); // Spróbuj załadować kontekst (to wygeneruje logi) console.log('\n🔄 Próba załadowania kontekstu...'); try { sdk.loadContext('./test-identity.json'); console.log('✅ Kontekst załadowany'); } catch (error) { console.log('⚠️ Błąd ładowania kontekstu (oczekiwany):', error.message); } // Spróbuj utworzyć socket (to też wygeneruje logi) console.log('\n🔄 Próba utworzenia socket...'); try { const socket = sdk.socket(); console.log(`✅ Socket utworzony: ${socket}`); // Spróbuj połączyć się z nieistniejącym serwisem (wygeneruje błędy) console.log('\n🔄 Próba połączenia z nieistniejącym serwisem...'); const error = sdk.connect(socket, 'non-existent-service'); console.log(`📝 Wynik połączenia: ${error}`); sdk.close(socket); console.log('✅ Socket zamknięty'); } catch (error) { console.log('⚠️ Błąd operacji socket (oczekiwany):', error.message); } // Zamknij SDK sdk.shutdown(); console.log('✅ SDK zamknięte'); // Sprawdź czy plik logów został utworzony console.log('\n📁 Sprawdzanie pliku logów...'); if (fs.existsSync(logFilePath)) { const stats = fs.statSync(logFilePath); console.log(`✅ Plik logów istnieje (${stats.size} bajtów)`); // Pokaż zawartość pliku const logContent = fs.readFileSync(logFilePath, 'utf8'); console.log('\n📄 Zawartość pliku logów:'); console.log('=' * 50); console.log(logContent); console.log('=' * 50); if (logContent.length > 0) { console.log('🎉 SUKCES! Logowanie do pliku działa!'); } else { console.log('⚠️ Plik logów jest pusty - może nie było wiadomości do zalogowania'); } } else { console.log('❌ Plik logów nie został utworzony'); } } catch (error) { console.error('❌ Błąd podczas testu:', error.message); console.error('Stack trace:', error.stack); } } // Uruchom test testFileLogging().then(() => { console.log('\n🏁 Test zakończony'); }).catch((error) => { console.error('❌ Test nie powiódł się:', error); });