This is an automated email from the ASF dual-hosted git repository.
wu-sheng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-horizon-ui.git
The following commit(s) were added to refs/heads/main by this push:
new 0fb700f fix(i18n): polish Korean locale follow-up (#31)
0fb700f is described below
commit 0fb700f2983ab7d2687f6eb2e70ebec725c686d7
Author: Daniel Jeong <[email protected]>
AuthorDate: Fri May 29 12:37:36 2026 +0900
fix(i18n): polish Korean locale follow-up (#31)
---
apps/ui/src/i18n/locales/ko.json | 32 ++++++++++++++++----------------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/apps/ui/src/i18n/locales/ko.json b/apps/ui/src/i18n/locales/ko.json
index baa30dd..481270a 100644
--- a/apps/ui/src/i18n/locales/ko.json
+++ b/apps/ui/src/i18n/locales/ko.json
@@ -1,5 +1,5 @@
{
- "_comment": "한국어 번역. 고유명사 (SkyWalking, Horizon, Apache, LDAP, OAP, BFF)는 원문
그대로 표기한다. {placeholder} 형식의 자리표시자는 번역하지 않는다.",
+ "_comment": "한국어 번역. 고유명사 (SkyWalking, Horizon, Apache, LDAP, OAP, BFF)는 원문
그대로 표기한다. `placeholder` 형식의 자리표시자는 번역하지 않는다.",
"Welcome to SkyWalking": "SkyWalking에 오신 것을 환영합니다",
"Horizon": "Horizon",
"SkyWalking Horizon": "SkyWalking Horizon",
@@ -257,7 +257,7 @@
"what's live now (operator-edited)": "현재 라이브 (오퍼레이터 편집본)",
"Reset to bundled": "빌드 포함본으로 재설정",
"This overwrites": "다음을 덮어씁니다:",
- "on OAP with the bundled JSON shown on the left. The operator's edits on OAP
are lost. The bundle is considered the source of truth after this action.":
"을(를) 왼쪽에 표시된 빌드 포함 JSON으로 OAP에서 덮어씁니다. OAP의 오퍼레이터 편집 내용은 사라집니다. 이 작업 이후 빌드
포함본이 원본으로 간주됩니다.",
+ "on OAP with the bundled JSON shown on the left. The operator's edits on OAP
are lost. The bundle is considered the source of truth after this action.":
"을(를) OAP에서 왼쪽에 표시된 빌드 포함 JSON으로 덮어씁니다. OAP의 오퍼레이터 편집 내용은 사라집니다. 이 작업 이후 빌드
포함본이 원본으로 간주됩니다.",
"Type": "유형",
"to arm the Reset button:": "을(를) 입력해 재설정 버튼을 활성화하세요:",
"close": "닫기",
@@ -524,9 +524,9 @@
"{n} selectors off": "{n}개 셀렉터 비활성",
"reachable": "연결 가능",
"Zipkin endpoint unreachable": "Zipkin 엔드포인트에 연결할 수 없음",
- "Tried {url}. Confirm the OAP admin-server module is on
(SW_ADMIN_SERVER=default) and the port is exposed on the network / k8s Service
/ ingress.": "{url}을(를) 시도했습니다. OAP의 admin-server 모듈이 켜져
있는지(SW_ADMIN_SERVER=default), 포트가 네트워크 / k8s Service / ingress 를 통해 노출되어 있는지
확인하세요.",
+ "Tried {url}. Confirm the OAP admin-server module is on
(SW_ADMIN_SERVER=default) and the port is exposed on the network / k8s Service
/ ingress.": "{url}을(를) 시도했습니다. OAP의 admin-server 모듈이 켜져
있는지(SW_ADMIN_SERVER=default), 포트가 네트워크 / k8s Service / ingress를 통해 노출되어 있는지
확인하세요.",
"OAP's Zipkin v2 endpoint, source for the OpenTelemetry & Zipkin trace menu
(shown when a layer's trace source is zipkin or both). This is the only page
affected — if it's unreachable, native traces and every other observability
page keep working.": "OAP의 Zipkin v2 엔드포인트로, OpenTelemetry 및 Zipkin 트레이스 메뉴의
데이터 소스입니다(레이어의 trace 소스가 zipkin 또는 both일 때 표시). 영향을 받는 페이지는 이 페이지뿐이며, 연결 불가
상태여도 네이티브 트레이스와 다른 모든 옵저버빌리티 페이지는 정상 동작합니다.",
- "Tried {url}. Confirm OAP's Zipkin receiver / query is enabled and the
oap.zipkinUrl in horizon's config points at the right host:port (shared GraphQL
port → <queryUrl>/zipkin; standalone → :9412/zipkin). Only the Zipkin trace
menu is affected.": "{url}을(를) 시도했습니다. OAP의 Zipkin receiver / query가 활성화되어 있고,
horizon 설정의 oap.zipkinUrl 이 올바른 host:port를 가리키는지 확인하세요(공유 GraphQL 포트 →
<queryUrl>/zipkin, 독립 → :9412/zipkin). 영향을 받는 것은 Zipkin 트레이스 메뉴뿐입니다.",
+ "Tried {url}. Confirm OAP's Zipkin receiver / query is enabled and the
oap.zipkinUrl in horizon's config points at the right host:port (shared GraphQL
port → <queryUrl>/zipkin; standalone → :9412/zipkin). Only the Zipkin trace
menu is affected.": "{url}을(를) 시도했습니다. OAP의 Zipkin receiver / query가 활성화되어 있고,
horizon 설정의 oap.zipkinUrl이 올바른 host:port를 가리키는지 확인하세요(공유 GraphQL 포트 →
<queryUrl>/zipkin, 독립 → :9412/zipkin). 영향을 받는 것은 Zipkin 트레이스 메뉴뿐입니다.",
"Everything Studio does against the admin port. Without admin-server, the
other three modules fail at boot with ModuleNotFoundException.": "Studio가 관리
포트에서 수행하는 모든 작업입니다. admin-server가 없으면 나머지 세 모듈은 ModuleNotFoundException으로 부팅에
실패합니다.",
"DSL Management (Catalog, OAL catalog), Editor save/load, Cluster status
rule matrix, Live debugger rule picker, and the Inspect drawer's source
attribution.": "DSL 관리(Catalog, OAL catalog), 에디터 저장/불러오기, Cluster Status 규칙
매트릭스, Live Debugger 규칙 선택기, Inspect 드로어의 소스 출처.",
"Live debugger across MAL / LAL / OAL (start / poll / stop) and the
DSL-debugging health pane on Cluster status.": "MAL / LAL / OAL 전반의 Live
Debugger(시작 / 폴링 / 중지)와 Cluster Status의 DSL-debugging 상태 패널.",
@@ -814,7 +814,7 @@
"for password hashes.": "비밀번호 해시용.",
"function": "함수",
"hidden": "숨김",
- "in horizon.yaml to arm": "활성화하려면 horizon.yaml 에서",
+ "in horizon.yaml to arm": "활성화하려면 horizon.yaml에서",
"in horizon.yaml. Edits to the file are picked up on hot-reload. Add users
via the YAML +": "horizon.yaml. 파일 편집은 핫 리로드로 반영됩니다. YAML +",
"in horizon.yaml. To add or remove a user, change their group in the
directory — they'll appear here on next login. Local accounts shown below are
break-glass only and ignored while LDAP is reachable.": "horizon.yaml. 사용자를
추가하거나 제거하려면 디렉터리에서 해당 그룹을 변경하세요 — 다음 로그인 시 여기에 표시됩니다. 아래의 로컬 계정은 break-glass 용도
전용이며 LDAP에 연결 가능한 동안에는 무시됩니다.",
"inputs are browser-local · sent to OAP in": "입력은 브라우저 로컬 시간 · OAP로 전송 시
단위:",
@@ -849,7 +849,7 @@
"no entity for {metric} in this range": "이 범위에서 {metric}에 대한 엔터티 없음",
"no metric matches the current filters": "현재 필터와 일치하는 메트릭이 없습니다",
"no metrics on the board — use {action} to open the catalog drawer.": "보드에
메트릭이 없습니다 — {action}으로 카탈로그 드로어를 여세요.",
- "no metricsRules found in file": "파일에서 metricsRules 를 찾을 수 없습니다",
+ "no metricsRules found in file": "파일에서 metricsRules를 찾을 수 없습니다",
"no node accepted": "수락한 노드 없음",
"no peers reported": "보고된 피어 없음",
"no records from this node": "이 노드의 레코드 없음",
@@ -860,8 +860,8 @@
"node": "노드",
"none": "없음",
"normal": "보통",
- "not": "not",
- "not MQE-queryable · /inspect/entities accepts REGULAR_VALUE +
LABELED_VALUE": "MQE 쿼리 불가 · /inspect/entities는 REGULAR_VALUE + LABELED_VALUE 만
허용",
+ "not": "받지 않습니다",
+ "not MQE-queryable · /inspect/entities accepts REGULAR_VALUE +
LABELED_VALUE": "MQE 쿼리 불가 · /inspect/entities는 REGULAR_VALUE + LABELED_VALUE만
허용",
"not allowed": "허용되지 않음",
"note": "참고",
"now": "지금",
@@ -932,7 +932,7 @@
"username": "사용자 이름",
"value": "값",
"visible": "표시됨",
- "where execExpression fires · resolved via /debugging/config/dump on the
admin server": "execExpression 이 발화하는 위치 · admin 서버의 /debugging/config/dump를 통해
해석",
+ "where execExpression fires · resolved via /debugging/config/dump on the
admin server": "execExpression이 실행되는 위치 · admin 서버의 /debugging/config/dump를 통해
해석",
"which sidebar items each role sees · gated by the read verb in the last
column (UI hides; the BFF enforces the same server-side)": "각 역할이 보는 사이드바 항목 ·
마지막 열의 읽기 권한으로 제어됨(UI에서 숨김 처리, BFF가 서버 측에서 동일하게 강제 적용)",
"with": "with",
"{field} is required for scope {scope}": "{field}은(는) 범위 {scope}에 필수입니다",
@@ -957,7 +957,7 @@
"{n}m": "{n}분",
"{n}m window": "{n}분 범위",
"{shown} shown of {total} total · {ldap} from LDAP, {local} local ·
refreshed {when}": "전체 {total}개 중 {shown}개 표시 · LDAP {ldap}개, 로컬 {local}개 ·
{when}에 새로 고침",
- "{triage} (alarms / traces / logs / live-debugger) own their own time range
and always query at {sec} precision — they are {not} affected by this
setting.": "{triage} (경보 / 트레이스 / 로그 / 라이브 디버거)는 자체 시간 범위를 가지며 항상 {sec} 정밀도로
쿼리합니다 — 이 설정의 {not} 영향을 받습니다.",
+ "{triage} (alarms / traces / logs / live-debugger) own their own time range
and always query at {sec} precision — they are {not} affected by this
setting.": "{triage}(경보 / 트레이스 / 로그 / 라이브 디버거)는 자체 시간 범위를 가지며 항상 {sec} 정밀도로
쿼리합니다 — 이 설정의 영향을 {not}.",
"· narrow:": "· 좁히기:",
"· over OAP cap ({cap})": "· OAP 상한 초과 ({cap})",
"→ destination": "→ 대상",
@@ -998,7 +998,7 @@
"Normal": "보통",
"OAL hot-update is upstream-deferred. Each": "OAL 핫 업데이트는 업스트림에서 보류 중입니다. 각",
"OAP doesn't expose a restore endpoint yet. Operators recover from a dump by
looping {endpoint} over each YAML file in the archive. A restore upload
affordance will land here when the upstream API ships — see Studio's
deferred-features memory.": "OAP는 아직 복원 엔드포인트를 제공하지 않습니다. 운영자는 아카이브의 각 YAML 파일에
대해 {endpoint}를 반복 호출하여 덤프에서 복구합니다. 복원 업로드 기능은 업스트림 API 출시 시 여기에 추가됩니다 — Studio의
deferred-features 메모를 참조하세요.",
- "OAP drops the existing measure’s data on BanyanDB and orphans rows on JDBC
/ Elasticsearch.": "OAP는 BanyanDB에서 기존 measure의 데이터를 삭제하고, JDBC / Elasticsearch
에서는 행을 고아 상태로 만듭니다.",
+ "OAP drops the existing measure’s data on BanyanDB and orphans rows on JDBC
/ Elasticsearch.": "OAP는 BanyanDB에서 기존 measure의 데이터를 삭제하고, JDBC /
Elasticsearch에서는 행을 고아 상태로 만듭니다.",
"OAP runs the standard apply pipeline against the bundled YAML — this is a
schema change.": "OAP는 번들 YAML에 대해 표준 apply 파이프라인을 실행합니다 — 이는 스키마 변경입니다.",
"Observability Analysis Language": "Observability Analysis Language",
"Operate · Data retention": "운영 · 데이터 보존",
@@ -1012,7 +1012,7 @@
"Runtime config": "런타임 설정",
"Runtime-only metrics that the bundled rule does not define will be dropped
from BanyanDB.": "번들 규칙이 정의하지 않은 런타임 전용 메트릭은 BanyanDB에서 제거됩니다.",
"Storage change required": "스토리지 변경 필요",
- "Stream a {tar} snapshot of the runtime-rule rows currently in OAP. ACTIVE
rows go under {active}, INACTIVE under {inactive}, and a top-level {manifest}
records sha256 + status + updateTime per row.": "현재 OAP의 런타임 규칙 행을 {tar} 스냅샷으로
스트리밍합니다. ACTIVE 행은 {active} 아래, INACTIVE는 {inactive} 아래에 들어가며, 최상위 {manifest}가
행마다 sha256 + status + updateTime 을 기록합니다.",
+ "Stream a {tar} snapshot of the runtime-rule rows currently in OAP. ACTIVE
rows go under {active}, INACTIVE under {inactive}, and a top-level {manifest}
records sha256 + status + updateTime per row.": "현재 OAP의 런타임 규칙 행을 {tar} 스냅샷으로
스트리밍합니다. ACTIVE 행은 {active} 아래, INACTIVE는 {inactive} 아래에 들어가며, 최상위 {manifest}가
행마다 sha256 + status + updateTime을 기록합니다.",
"The connected OAP's resolved configuration, read from the admin port's
{endpoint} and grouped by module. Secret values (passwords, tokens, access
keys) are masked to {mask} by OAP itself. Read-only — change config on the OAP
side and restart.": "연결된 OAP의 확정된 구성으로, admin 포트의 {endpoint}에서 읽어 모듈별로 그룹화됩니다.
비밀 값(비밀번호, 토큰, 액세스 키)은 OAP 자체에서 {mask}로 마스킹됩니다. 읽기 전용이며 — 설정을 변경하려면 OAP 측에서 수정한
후 재시작하세요.",
"The topbar {coldPill} pill swaps the read from {hotWarm} to {cold} —
{note}, so only enable it when the time range you're looking at is older than
the hot+warm boundary.": "상단의 {coldPill} 칩은 읽기 대상을 {hotWarm}에서 {cold}로 전환합니다 —
{note}. 따라서 보고 있는 시간 범위가 hot+warm 경계보다 오래된 경우에만 활성화하세요.",
"This deployment has no cold lifecycle stage configured — only the hot +
warm window is queryable.": "이 배포에는 cold 라이프사이클 단계가 구성되어 있지 않습니다 — hot + warm
범위만 쿼리할 수 있습니다.",
@@ -1066,7 +1066,7 @@
"push a STRUCTURAL change to": "다음에 STRUCTURAL 변경 푸시:",
"re-pull /runtime/oal/files": "/runtime/oal/files 다시 가져오기",
"re-pull this catalog from OAP": "OAP에서 이 카탈로그 다시 가져오기",
- "re-runs apply on byte-identical content (subsumes the old {fix} route).
Requires {verb}.": "바이트 단위로 동일한 콘텐츠에 대해 apply 를 다시 실행합니다(이전 {fix} 경로를 포함).
{verb} 권한 필요.",
+ "re-runs apply on byte-identical content (subsumes the old {fix} route).
Requires {verb}.": "바이트 단위로 동일한 콘텐츠에 대해 apply를 다시 실행합니다(이전 {fix} 경로를 포함).
{verb} 권한 필요.",
"read-only · change on the OAP side": "읽기 전용 · OAP 측에서 변경",
"records": "레코드",
"recovery: {force} on save": "복구: 저장 시 {force}",
@@ -1103,13 +1103,13 @@
"OAP has {count} OAL source classes registered across {files} .oal files.
Browse them in {link} — every {syntax} line has a green ▶ that deep-links here
with the picker pre-filled.": "OAP에는 {files}개의 .oal 파일에 걸쳐 {count}개의 OAL source
클래스가 등록되어 있습니다. {link}에서 탐색할 수 있으며 — 모든 {syntax} 줄에는 녹색 ▶가 있어 선택기가 미리 채워진 채로
이곳으로 딥링크됩니다.",
"No saved captures yet — run a session in the {link}; finished sessions
auto-save here.": "아직 저장된 캡처가 없습니다 — {link}에서 세션을 실행하세요; 완료된 세션은 여기에 자동 저장됩니다.",
"Your sidebar adapts to your role: anything you can't use is simply not
shown. The sections below group SkyWalking's capabilities by feature area. For
each area you'll see {menuScope} (which sidebar entries fall in the area) and
{actions} (the concrete things you can do, marked per role). Multiple roles add
up — a user holding more than one role gets every permission any of their roles
grant.": "사이드바는 역할에 맞춰 자동으로 조정됩니다: 사용할 수 없는 항목은 표시되지 않습니다. 아래 섹션은 SkyWalking의
기능을 영역별로 분류합니다. 각 영역에서는 [...]
- "This list is read-only. Roles are resolved from LDAP group membership via
{groupMappings} in horizon.yaml. To add or remove a user, change their group in
the directory — they'll appear here on next login. Local accounts shown below
are break-glass only and ignored while LDAP is reachable.": "이 목록은 읽기 전용입니다.
역할은 horizon.yaml 의 {groupMappings}를 통해 LDAP 그룹 멤버십에서 해석됩니다. 사용자를 추가하거나 제거하려면
디렉터리에서 해당 그룹을 변경하세요 — 다음 로그인 시 여기에 표시됩니다. 아래의 로컬 계정은 break-glass 용도 전용이며 LDAP에
연결 가능한 동안에는 무시됩니다.",
- "This list mirrors {localUsers} in horizon.yaml. Edits to the file are
picked up on hot-reload. Add users via the YAML + {hashCli} for password
hashes.": "이 목록은 horizon.yaml 의 {localUsers}를 미러링합니다. 파일 편집은 핫 리로드로 반영됩니다. 비밀번호
해시는 YAML + {hashCli}를 통해 사용자를 추가하세요.",
+ "This list is read-only. Roles are resolved from LDAP group membership via
{groupMappings} in horizon.yaml. To add or remove a user, change their group in
the directory — they'll appear here on next login. Local accounts shown below
are break-glass only and ignored while LDAP is reachable.": "이 목록은 읽기 전용입니다.
역할은 horizon.yaml의 {groupMappings}를 통해 LDAP 그룹 멤버십에서 해석됩니다. 사용자를 추가하거나 제거하려면
디렉터리에서 해당 그룹을 변경하세요 — 다음 로그인 시 여기에 표시됩니다. 아래의 로컬 계정은 break-glass 용도 전용이며 LDAP에
연결 가능한 동안에는 무시됩니다.",
+ "This list mirrors {localUsers} in horizon.yaml. Edits to the file are
picked up on hot-reload. Add users via the YAML + {hashCli} for password
hashes.": "이 목록은 horizon.yaml의 {localUsers}를 미러링합니다. 파일 편집은 핫 리로드로 반영됩니다. 비밀번호
해시는 YAML + {hashCli}를 통해 사용자를 추가하세요.",
"Last-seen & Active (24h) are tracked per BFF node (in-memory, not
cluster-shared) — served by {node}. In a multi-replica deploy these reflect
this node only.": "마지막 접속 및 활성(24시간)은 BFF 노드별로 추적됩니다(메모리 기반, 클러스터 간 공유 안 됨) —
제공 노드: {node}. 다중 복제본 배포 환경에서는 이 값이 현재 노드에만 해당됩니다.",
"See what each role can do → {link}": "각 역할이 할 수 있는 작업 보기 → {link}",
"{title} {localUsers} is populated but the active backend is LDAP — local
users are ignored except as a break-glass source.": "{title} {localUsers}이(가)
채워져 있지만 활성 백엔드는 LDAP입니다 — 로컬 사용자는 break-glass 소스 외에는 무시됩니다.",
"username {name}": "사용자 이름 {name}",
- "add {key} in horizon.yaml to arm": "활성화하려면 horizon.yaml 에 {key}를 추가하세요",
+ "add {key} in horizon.yaml to arm": "활성화하려면 horizon.yaml에 {key}를 추가하세요",
"section {key}": "섹션 {key}",
"No user entry found for {username}": "{username}에 대한 사용자 항목을 찾을 수 없습니다",
"{range} → {step} step (one bucket per minute)": "{range} → {step} 단계 (분당 버킷
1개)",