systemLog.d.ts 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. export interface SystemLog {
  2. id?: number;
  3. level: 'info' | 'warn' | 'error' | 'debug';
  4. message: string;
  5. source: string;
  6. module?: string;
  7. user_id?: number;
  8. username?: string;
  9. ip_address?: string;
  10. details?: string;
  11. created_at?: Date;
  12. }
  13. export declare class SystemLogModel {
  14. static getAll(limit?: number, offset?: number): Promise<SystemLog[]>;
  15. static getById(id: number): Promise<SystemLog | null>;
  16. static getByLevel(level: string, limit?: number, offset?: number): Promise<SystemLog[]>;
  17. static getBySource(source: string, limit?: number, offset?: number): Promise<SystemLog[]>;
  18. static getByModule(module: string, limit?: number, offset?: number): Promise<SystemLog[]>;
  19. static getByTimeRange(startTime: Date, endTime: Date, limit?: number, offset?: number): Promise<SystemLog[]>;
  20. static getCount(): Promise<number>;
  21. static getLevelStats(startTime?: Date, endTime?: Date): Promise<any[]>;
  22. static getSourceStats(startTime?: Date, endTime?: Date): Promise<any[]>;
  23. static getDailyStats(days?: number): Promise<any[]>;
  24. static create(systemLog: Omit<SystemLog, 'id' | 'created_at'>): Promise<SystemLog>;
  25. static search(searchTerm: string, limit?: number, offset?: number): Promise<SystemLog[]>;
  26. static getSearchCount(searchTerm: string): Promise<number>;
  27. static cleanup(daysToKeep?: number): Promise<number>;
  28. static getRecent(limit?: number): Promise<SystemLog[]>;
  29. static getByUserId(userId: number, limit?: number, offset?: number): Promise<SystemLog[]>;
  30. static getByUsername(username: string, limit?: number, offset?: number): Promise<SystemLog[]>;
  31. static getFullStats(): Promise<any>;
  32. static getCountByMultipleConditions(conditions: {
  33. [key: string]: any;
  34. }, startTime?: Date, endTime?: Date, fuzzyFields?: string[]): Promise<number>;
  35. static getByMultipleConditions(conditions: {
  36. [key: string]: any;
  37. }, startTime?: Date, endTime?: Date, limit?: number, offset?: number, fuzzyFields?: string[]): Promise<SystemLog[]>;
  38. static getCountByTimeRange(startTime: Date, endTime: Date): Promise<number>;
  39. static getCountByLevel(level: string): Promise<number>;
  40. static getCountBySource(source: string): Promise<number>;
  41. static getCountByModule(module: string): Promise<number>;
  42. static getCountByUserId(userId: number): Promise<number>;
  43. static getCountByUsername(username: string): Promise<number>;
  44. }
  45. //# sourceMappingURL=systemLog.d.ts.map