Skip to content

Commit

Permalink
fix: Assign main kernel ID to kernel_id for correct log retrieval (#…
Browse files Browse the repository at this point in the history
…2820) (#2859)

Co-authored-by: Jeongseok Kang <jskang@lablup.com>
Co-authored-by: Kyujin Cho <kyujin.cho@lablup.com>
  • Loading branch information
3 people authored Sep 25, 2024
1 parent 5728169 commit ba32a22
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 4 deletions.
1 change: 1 addition & 0 deletions changes/2820.fix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix `kernel_id` assignment for main kernel log retrieval
10 changes: 6 additions & 4 deletions src/ai/backend/manager/api/session.py
Original file line number Diff line number Diff line change
Expand Up @@ -2135,6 +2135,7 @@ async def get_container_logs(
requester_access_key, owner_access_key = await get_access_key_scopes(
request, {"owner_access_key": params.owner_access_key}
)
# assume retrieving container log of main kernel when `params.kernel_id` is None
kernel_id = KernelId(params.kernel_id) if params.kernel_id is not None else None
log.info(
"GET_CONTAINER_LOG (ak:{}/{}, s:{}, k:{})",
Expand All @@ -2158,13 +2159,14 @@ async def get_container_logs(
)

if compute_session.status in DEAD_SESSION_STATUSES:
if kernel_id is not None:
if kernel_id is None:
# Get logs from the main kernel
kernel_id = compute_session.main_kernel.id
kernel_log = compute_session.main_kernel.container_log
else:
# Get logs from the specific kernel
kernel_row = compute_session.get_kernel_by_id(kernel_id)
kernel_log = kernel_row.container_log
else:
# Get logs from the main kernel
kernel_log = compute_session.main_kernel.container_log
if kernel_log is not None:
# Get logs from database record
log.debug("returning log from database record")
Expand Down

0 comments on commit ba32a22

Please sign in to comment.