jan/web/hooks/useLogs.tsx
Louis f2e31874e1
fix: resolve state update loop infinitive rerendering (#2017)
* fix: resolve state update loop infinitive rerendering

* fix: thread creation issue
2024-02-14 19:40:18 +07:00

27 lines
749 B
TypeScript

import {
fs,
joinPath,
openFileExplorer,
getJanDataFolderPath,
} from '@janhq/core'
export const useLogs = () => {
const getLogs = async (file: string) => {
const path = await joinPath(['file://logs', `${file}.log`])
if (!(await fs.existsSync(path))) return {}
const logs = await fs.readFileSync(path, 'utf-8')
return logs
}
const openServerLog = async () => {
const janDataFolderPath = await getJanDataFolderPath()
const fullPath = await joinPath([janDataFolderPath, 'logs', 'server.log'])
return openFileExplorer(fullPath)
}
const clearServerLog = async () => {
await fs.writeFileSync(await joinPath(['file://logs', 'server.log']), '')
}
return { getLogs, openServerLog, clearServerLog }
}