XLog.ets 3.75 KB
import xlog from 'libmarsxlog.so';
import { LogImp, LogLevel } from './Log';

export class XLog implements LogImp {
  openLogInstance(level: number, mode: number, cacheDir: string, logDir: string, nameprefix: string,
    cacheDays: number): number {
    return 0;
  }

  getXlogInstance(nameprefix: string): number {
    return 0;
  }

  releaseXlogInstance(nameprefix: string): void {

  }

  appenderClose(): void {
    xlog.appenderClose();
  }

  appenderFlush(logInstancePtr: number, isSync: boolean): void {
    xlog.appenderFlush(logInstancePtr, isSync);
  }

  setAppenderMode(mode: number): void {

  }

  appenderOpen(level: number, mode: number, cacheDir: string, logDir: string, nameprefix: string,
    cacheDays: number): void {
    XLog.appenderOpen(level, mode, cacheDir, logDir, nameprefix, cacheDays, "", CompressMode.ZLIB_MODE,
      CompressLevel.COMPRESS_LEVEL0);
  }

  setConsoleLogOpen(logInstancePtr: number, isOpen: boolean): void {
    xlog.setConsoleLogOpen(logInstancePtr, isOpen);
  }

  setMaxFileSize(aliveSeconds: number): void {

  }

  setMaxAliveTime(aliveSeconds: number): void {

  }

  getLogLevel(logInstancePtr: number): number {
    return xlog.getLogLevel(logInstancePtr);
  }

  public static appenderOpen(level: number, mode: number, cacheDir: string, logDir: string, nameprefix: string,
    cacheDays: number, pubkey: string, compressmode: number, compresslevel: number): void {
    xlog.appenderOpen(level, mode, logDir, nameprefix, pubkey, compressmode, compresslevel, cacheDir, cacheDays);
  }

  logV(logInstancePtr: number, tag: string, filename: string, funcname: string, line: number, pid: number, tid: number,
    maintid: number, log: string): void {
    xlog.logWrite2(logInstancePtr, LogLevel.LEVEL_VERBOSE, tag, filename, funcname, line, pid, tid, maintid, log);
  }

  logI(logInstancePtr: number, tag: string, filename: string, funcname: string, line: number, pid: number,
    tid: number, maintid: number, log: string): void {
    xlog.logWrite2(logInstancePtr, LogLevel.LEVEL_INFO, tag, filename, funcname, line, pid, tid, maintid, log);
  }

  logD(logInstancePtr: number, tag: string, filename: string, funcname: string, line: number, pid: number,
    tid: number, maintid: number, log: string): void {
    xlog.logWrite2(logInstancePtr, LogLevel.LEVEL_DEBUG, tag, filename, funcname, line, pid, tid, maintid, log);
  }

  logW(logInstancePtr: number, tag: string, filename: string, funcname: string, line: number, pid: number,
    tid: number, maintid: number, log: string): void {
    xlog.logWrite2(logInstancePtr, LogLevel.LEVEL_WARNING, tag, filename, funcname, line, pid, tid, maintid, log);
  }

  logE(logInstancePtr: number, tag: string, filename: string, funcname: string, line: number, pid: number,
    tid: number, maintid: number, log: string): void {
    xlog.logWrite2(logInstancePtr, LogLevel.LEVEL_ERROR, tag, filename, funcname, line, pid, tid, maintid, log);
  }

  logF(logInstancePtr: number, tag: string, filename: string, funcname: string, line: number, pid: number, tid: number,
    maintid: number, log: string): void {
    xlog.logWrite2(logInstancePtr, LogLevel.LEVEL_FATAL, tag, filename, funcname, line, pid, tid, maintid, log);
  }
}

export class CompressLevel {
  static COMPRESS_LEVEL0: number = 0;
  static COMPRESS_LEVEL1: number = 1;
  static COMPRESS_LEVEL2: number = 2;
  static COMPRESS_LEVEL3: number = 3;
  static COMPRESS_LEVEL4: number = 4;
  static COMPRESS_LEVEL5: number = 5;
  static COMPRESS_LEVEL6: number = 6;
  static COMPRESS_LEVEL7: number = 7;
  static COMPRESS_LEVEL8: number = 8;
  static COMPRESS_LEVEL9: number = 9;
}

export class AppednerMode {
  static AppednerModeAsync: number = 0;
  static AppednerModeSync: number = 1;
}

export class CompressMode {
  static ZLIB_MODE: number = 0;
  static ZSTD_MODE: number = 1;
}