Stream server logs to browser
Summary: Makes Flipper Logs tab functional for Flipper Browser Reviewed By: lblasa Differential Revision: D37459924 fbshipit-source-id: 4ebf3d47fbbf90bb367e01986b12dec782b03c34
This commit is contained in:
committed by
Facebook GitHub Bot
parent
c1d959d62e
commit
dcbc7c40bb
@@ -72,7 +72,7 @@ const rootDir = argv.bundler
|
||||
const staticDir = path.join(rootDir, 'static');
|
||||
|
||||
async function start() {
|
||||
initializeLogger(staticDir);
|
||||
const enhanceLogger = initializeLogger(staticDir);
|
||||
|
||||
let keytar: any = undefined;
|
||||
try {
|
||||
@@ -107,6 +107,11 @@ async function start() {
|
||||
keytar,
|
||||
'external',
|
||||
);
|
||||
|
||||
enhanceLogger((logEntry) => {
|
||||
flipperServer.emit('server-log', logEntry);
|
||||
});
|
||||
|
||||
const companionEnv = await initCompanionEnv(flipperServer);
|
||||
if (argv.failFast) {
|
||||
flipperServer.on('server-state', ({state}) => {
|
||||
|
||||
@@ -88,8 +88,15 @@ export function initializeLogger(staticDir: string) {
|
||||
const logger = createLogger();
|
||||
setLoggerInstance(logger);
|
||||
|
||||
let onConsoleEntry: ((entry: LoggerInfo) => void) | undefined;
|
||||
|
||||
const file = fs.createWriteStream(path.join(staticDir, loggerOutputFile));
|
||||
consoleProxy((entry: LoggerInfo) => {
|
||||
file.write(`${JSON.stringify(entry)}\n`);
|
||||
onConsoleEntry?.(entry);
|
||||
});
|
||||
|
||||
return (newOnConsoleEntry: (entry: LoggerInfo) => void) => {
|
||||
onConsoleEntry = newOnConsoleEntry;
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user