fix: replaced user path from app log (#2238)

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
This commit is contained in:
NamH 2024-03-05 14:03:39 +07:00 committed by GitHub
parent 02013639a4
commit 8ecd93661d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 35 additions and 31 deletions

View File

@ -1,26 +1,37 @@
import {
fs,
joinPath,
openFileExplorer,
getJanDataFolderPath,
} from '@janhq/core'
import { useCallback } from 'react'
import { fs, joinPath, openFileExplorer } from '@janhq/core'
import { useAtomValue } from 'jotai'
import { janDataFolderPathAtom } from '@/helpers/atoms/AppConfig.atom'
export const useLogs = () => {
const getLogs = async (file: string) => {
const janDataFolderPath = useAtomValue(janDataFolderPathAtom)
const getLogs = useCallback(
async (file: string) => {
const path = await joinPath(['file://logs', `${file}.log`])
if (!(await fs.existsSync(path))) return {}
if (!(await fs.existsSync(path))) return ''
const logs = await fs.readFileSync(path, 'utf-8')
return logs
}
const openServerLog = async () => {
const janDataFolderPath = await getJanDataFolderPath()
const sanitizedLogs = logs.replace(
new RegExp(`${janDataFolderPath}\\/`, 'g'),
'jan-data-folder/'
)
return sanitizedLogs
},
[janDataFolderPath]
)
const openServerLog = useCallback(async () => {
const fullPath = await joinPath([janDataFolderPath, 'logs', 'server.log'])
return openFileExplorer(fullPath)
}
}, [janDataFolderPath])
const clearServerLog = async () => {
const clearServerLog = useCallback(async () => {
await fs.writeFileSync(await joinPath(['file://logs', 'server.log']), '')
}
}, [])
return { getLogs, openServerLog, clearServerLog }
}

View File

@ -1,16 +1,13 @@
import {
openFileExplorer,
joinPath,
getJanDataFolderPath,
baseName,
} from '@janhq/core'
import { openFileExplorer, joinPath, baseName } from '@janhq/core'
import { useAtomValue } from 'jotai'
import { selectedModelAtom } from '@/containers/DropdownListSidebar'
import { janDataFolderPathAtom } from '@/helpers/atoms/AppConfig.atom'
import { activeThreadAtom } from '@/helpers/atoms/Thread.atom'
export const usePath = () => {
const janDataFolderPath = useAtomValue(janDataFolderPathAtom)
const activeThread = useAtomValue(activeThreadAtom)
const selectedModel = useAtomValue(selectedModelAtom)
@ -18,7 +15,6 @@ export const usePath = () => {
// TODO: this logic should be refactored.
if (type !== 'Model' && !activeThread) return
const userSpace = await getJanDataFolderPath()
let filePath = undefined
const assistantId = activeThread?.assistants[0]?.assistant_id
switch (type) {
@ -40,7 +36,7 @@ export const usePath = () => {
}
if (!filePath) return
const fullPath = await joinPath([userSpace, filePath])
const fullPath = await joinPath([janDataFolderPath, filePath])
openFileExplorer(fullPath)
}
@ -48,7 +44,6 @@ export const usePath = () => {
// TODO: this logic should be refactored.
if (type !== 'Model' && !activeThread) return
const userSpace = await getJanDataFolderPath()
let filePath = undefined
const assistantId = activeThread?.assistants[0]?.assistant_id
switch (type) {
@ -74,31 +69,29 @@ export const usePath = () => {
}
if (!filePath) return
const fullPath = await joinPath([userSpace, filePath])
const fullPath = await joinPath([janDataFolderPath, filePath])
openFileExplorer(fullPath)
}
const onViewFile = async (id: string) => {
if (!activeThread) return
const userSpace = await getJanDataFolderPath()
let filePath = undefined
id = await baseName(id)
filePath = await joinPath(['threads', `${activeThread.id}/files`, `${id}`])
if (!filePath) return
const fullPath = await joinPath([userSpace, filePath])
const fullPath = await joinPath([janDataFolderPath, filePath])
openFileExplorer(fullPath)
}
const onViewFileContainer = async () => {
if (!activeThread) return
const userSpace = await getJanDataFolderPath()
let filePath = undefined
filePath = await joinPath(['threads', `${activeThread.id}/files`])
if (!filePath) return
const fullPath = await joinPath([userSpace, filePath])
const fullPath = await joinPath([janDataFolderPath, filePath])
openFileExplorer(fullPath)
}