refactor(core): replace legacy logger with Effect logging (#31310)
This commit is contained in:
@@ -13,13 +13,11 @@ import type { SessionID } from "@/session/schema"
|
||||
import { Database } from "@opencode-ai/core/database/database"
|
||||
import { eq } from "drizzle-orm"
|
||||
import { Config } from "@/config/config"
|
||||
import * as Log from "@opencode-ai/core/util/log"
|
||||
import { SessionShareTable } from "@opencode-ai/core/share/sql"
|
||||
import { ProviderV2 } from "@opencode-ai/core/provider"
|
||||
import { ModelV2 } from "@opencode-ai/core/model"
|
||||
import { EventV2 } from "@opencode-ai/core/event"
|
||||
|
||||
const log = Log.create({ service: "share-next" })
|
||||
const disabled = process.env["OPENCODE_DISABLE_SHARE"] === "true" || process.env["OPENCODE_DISABLE_SHARE"] === "1"
|
||||
|
||||
export type Api = {
|
||||
@@ -141,9 +139,7 @@ export const layer = Layer.effect(
|
||||
yield* flush(sessionID).pipe(
|
||||
Effect.delay(1000),
|
||||
Effect.catchCause((cause) =>
|
||||
Effect.sync(() => {
|
||||
log.error("share flush failed", { sessionID, cause })
|
||||
}),
|
||||
Effect.logError("share flush failed", { sessionID: sessionID, cause: cause }),
|
||||
),
|
||||
Effect.forkIn(s.scope),
|
||||
)
|
||||
@@ -175,7 +171,7 @@ export const layer = Layer.effect(
|
||||
if (event.type !== def.type || event.location?.directory !== _ctx.directory) return Effect.void
|
||||
return fn(event.data as EventV2.Data<D>).pipe(
|
||||
Effect.catchCause((cause) =>
|
||||
Effect.sync(() => log.error("share subscriber failed", { type: def.type, cause })),
|
||||
Effect.logError("share subscriber failed", { type: def.type, cause: cause }),
|
||||
),
|
||||
)
|
||||
})
|
||||
@@ -267,12 +263,12 @@ export const layer = Layer.effect(
|
||||
)
|
||||
|
||||
if (res.status >= 400) {
|
||||
log.warn("failed to sync share", { sessionID, shareID: share.id, status: res.status })
|
||||
yield* Effect.logWarning("failed to sync share", { sessionID: sessionID, shareID: share.id, status: res.status })
|
||||
}
|
||||
})
|
||||
|
||||
const full = Effect.fn("ShareNext.full")(function* (sessionID: SessionID) {
|
||||
log.info("full sync", { sessionID })
|
||||
yield* Effect.logInfo("full sync", { sessionID: sessionID })
|
||||
const info = yield* session.get(sessionID)
|
||||
const diffs = yield* session.diff(sessionID)
|
||||
const messages = yield* session.messages({ sessionID })
|
||||
@@ -309,7 +305,7 @@ export const layer = Layer.effect(
|
||||
|
||||
const create = Effect.fn("ShareNext.create")(function* (sessionID: SessionID) {
|
||||
if (disabled) return { id: "", url: "", secret: "" }
|
||||
log.info("creating share", { sessionID })
|
||||
yield* Effect.logInfo("creating share", { sessionID: sessionID })
|
||||
const req = yield* request()
|
||||
const result = yield* HttpClientRequest.post(`${req.baseUrl}${req.api.create}`).pipe(
|
||||
HttpClientRequest.setHeaders(req.headers),
|
||||
@@ -330,9 +326,7 @@ export const layer = Layer.effect(
|
||||
s.shared.set(sessionID, result)
|
||||
yield* full(sessionID).pipe(
|
||||
Effect.catchCause((cause) =>
|
||||
Effect.sync(() => {
|
||||
log.error("share full sync failed", { sessionID, cause })
|
||||
}),
|
||||
Effect.logError("share full sync failed", { sessionID: sessionID, cause: cause }),
|
||||
),
|
||||
Effect.forkIn(s.scope),
|
||||
)
|
||||
@@ -341,7 +335,7 @@ export const layer = Layer.effect(
|
||||
|
||||
const remove = Effect.fn("ShareNext.remove")(function* (sessionID: SessionID) {
|
||||
if (disabled) return
|
||||
log.info("removing share", { sessionID })
|
||||
yield* Effect.logInfo("removing share", { sessionID: sessionID })
|
||||
const s = yield* InstanceState.get(state)
|
||||
const share = yield* getCached(sessionID)
|
||||
if (!share) {
|
||||
|
||||
Reference in New Issue
Block a user