ionic-logging-service
Version:
Logging functionalities for apps built with Ionic framework
85 lines (84 loc) • 2.91 kB
TypeScript
import { EventEmitter } from "@angular/core";
import { LogMessage } from "./log-message.model";
import { Logger } from "./logger.model";
import { LoggingServiceConfiguration } from "./logging-service.configuration";
import * as i0 from "@angular/core";
/**
* Service for logging functionality.
*
* By default, the following settings are used:
* - logger: root with level WARN
* - appender: BrowserConsoleAppender with threshold DEBUG and MemoryAppender with threshold ALL
*
* Via [configure](#configure), it is possible to amend these settings.
*/
export declare class LoggingService {
/**
* Event triggered when the log messages got (potentially) change.
* This can happen when:
* - new message was added
* - all message where removed from memory
* - all massages where removed for one spcific LocalStorageAppender
*/
logMessagesChanged: EventEmitter<void>;
/**
* Event triggered when ajax appender could not send log messages to the server.
*
* @param message error message
*/
ajaxAppenderFailed: EventEmitter<string>;
private memoryAppender;
private browserConsoleAppender;
/**
* Creates a new instance of the service.
*/
constructor();
/**
* Configures the logging depending on the given configuration.
*
* @param configuration configuration data.
*/
configure(configuration?: LoggingServiceConfiguration): void;
/**
* Gets the root logger from which all other loggers derive.
*
* @return root logger
*/
getRootLogger(): Logger;
/**
* Gets a logger with the specified name, creating it if a logger with that name does not already exist.
*
* @param loggerName name of the logger
* @return logger
*/
getLogger(loggerName: string): Logger;
/**
* Gets the last log messages.
*
* The log messages are retrieved from the internal [MemoryAppender](../memoryappender.html).
* That means you will get only the most current messages. The number of the messages is limited
* by its maxMessages value.
*
* @return log messages
*/
getLogMessages(): LogMessage[];
/**
* Loads the log messages written by the LocalStorageAppender with the given key.
*
* @param localStorageKey key for the local storage
* @returns log messages
*/
getLogMessagesFromLocalStorage(localStorageKey: string): LogMessage[];
/**
* Remove all log messages.
*/
removeLogMessages(): void;
/**
* Removes the log messages written by the LocalStorageAppender with the given key.
*
* @param localStorageKey key for the local storage
*/
removeLogMessagesFromLocalStorage(localStorageKey: string): void;
static ɵfac: i0.ɵɵFactoryDeclaration<LoggingService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<LoggingService>;
}