| 104 | * if `debugFile` is set. Debug is off by default. |
| 105 | */ |
| 106 | export function configureDebug(opts: { debug?: boolean; debugFile?: string }): void { |
| 107 | enabled = opts.debug === true |
| 108 | if (opts.debugFile) { |
| 109 | logFile = opts.debugFile |
| 110 | logDirReady = false |
| 111 | } |
| 112 | if (!enabled) return |
| 113 | // Handle rotation at config time so a long-lived log doesn't survive forever |
| 114 | // if a user only hits low-frequency code paths during a session. |
| 115 | rotateIfNeeded() |
| 116 | write( |
| 117 | `${new Date().toISOString()} [opentrace:plugin] debug enabled logFile=${JSON.stringify(logFile)} pid=${process.pid}\n`, |
| 118 | ) |
| 119 | } |