오류 메시지
무언가 실패했을 때 Signal Lab이 표시할 수 있는 모든 메시지를 코드별로 정리했습니다. 실행 보고서, 명령줄, API가 알려 주는 것이 이 코드입니다. 중괄호 안의 값은 실패한 내용으로 바뀝니다.
api
| 코드 | 메시지 |
|---|---|
api.not_found | 서버에 그런 주소가 없습니다 — 인터페이스와 서버의 버전이 다릅니다 |
api.run_invalid | 실행 요청을 읽을 수 없습니다 |
api.run_source | 실험은 한 가지 방법으로만 지정하십시오: 문서 또는 템플릿 |
api.template_unknown | 내장 템플릿이 없습니다: {name} |
auth
| 코드 | 메시지 |
|---|---|
auth.host | 이 서버는 그 주소로 응답하지 않습니다 — 서버 자체의 이름으로 여십시오 |
auth.origin | 다른 사이트에서 온 요청이라 거부되었습니다 |
auth.required | 먼저 이 서버에 로그인하십시오 |
broadcast
| 코드 | 메시지 |
|---|---|
broadcast.cidr_invalid | CIDR 블록이 아닙니다: {value} — a.b.c.d/nn 형식을 사용하십시오(예: 192.168.1.0/24) |
broadcast.interface_invalid | IPv4 주소가 아닙니다: {value} — 인터페이스의 주소를 입력하거나, 아무 인터페이스나 쓰려면 비워 두십시오 |
broadcast.ipv6 | IPv6에는 브로드캐스트가 없습니다 — 대신 멀티캐스트를 사용하십시오 |
broadcast.join_failed | 멀티캐스트 그룹에 가입할 수 없습니다: {group} |
broadcast.not_broadcast | 브로드캐스트 주소가 아닙니다: {target} — 255.255.255.255:port 또는 x.x.x.255:port를 사용하십시오 |
broadcast.not_multicast | 멀티캐스트 그룹이 아닙니다: {target} — 224.0.0.0부터 239.255.255.255까지의 주소를 사용하십시오 |
broadcast.port_shared | {target}: 이미 사용 중입니다 — 함께 수신 대기하려면 “포트 공유”를 켜십시오 |
broadcast.prefix_invalid | /{value}: 프리픽스 길이가 아닙니다 — /0부터 /32까지 사용하십시오 |
broadcast.rate_invalid | 비컨 속도는 0보다 커야 합니다 |
broadcast.rate_limit | 대상 {targets}개에 걸친 {pps} 패킷/초는 제한 {max} pps를 넘습니다 — 속도를 낮추거나 대상을 좁히십시오 |
broadcast.reply_missing | 보낼 회신이 없습니다 — 회신을 설정하거나 “프로브에 응답”을 끄십시오 |
broadcast.sweep_port | 스윕할 포트를 설정하십시오 |
broadcast.sweep_too_large | /{prefix} 범위는 주소 {count}개에 걸치지만, 스윕은 최대 {max}개 호스트까지만 가능합니다 — /{limit} 또는 더 작은 블록으로 좁히십시오 |
broadcast.target_required | 대상을 하나 이상 입력하십시오 |
check
| 코드 | 메시지 |
|---|---|
check.body_missing | 응답에 다음 텍스트가 없습니다: {text} |
check.body_truncated | 응답({bytes} B)이 보관되는 256 KiB보다 길어서 텍스트를 검사할 수 없습니다 |
check.header_mismatch | 헤더 {name}의 값 {actual}에 다음이 포함되어 있지 않습니다: {text} |
check.header_missing | 응답에 {name} 헤더가 없습니다 |
check.latency_failed | 응답에 {actual} ms가 걸려 제한 {limit} ms를 넘었습니다 |
check.no_response | 이 단계 앞에 HTTP 응답이 없습니다 — 모든 경로에서 이 단계 앞에 HTTP 요청을 두십시오 |
check.status_failed | 기대값 HTTP {expected}, 실제 {actual} |
check.value_failed | 기대: {value} {op} {expected} |
cli
| 코드 | 메시지 |
|---|---|
cli.bind_one | --bind는 에뮬레이터 하나의 주소를 설정하는데, 여러 개가 지정되었습니다 |
cli.emulate_nothing | 에뮬레이션할 것이 없습니다: 파일에 에뮬레이터가 없습니다 |
cli.emulator_unknown | {name}: 파일이 아니며, {path}에도 그런 ID나 이름의 에뮬레이터가 없습니다 |
cli.file_unknown | {name}: 파일도 내장 템플릿도 아닙니다 — signallab templates로 목록을 볼 수 있습니다 |
cli.header_invalid | 헤더가 아닙니다: {value} — 'Name: value' 형식을 사용하십시오 |
cli.library_missing | {path}에 라이브러리가 없습니다. 앱이 처음 시작할 때 만들어 줍니다. 또는 --library로 다른 것을 지정하십시오 |
cli.matrix_conflict | {name}: 두 번 설정되었습니다 — --param과 매트릭스, 또는 --matrix와 파일에서. 한 번만 지정하십시오 |
cli.matrix_file_invalid | {path}: 매트릭스가 아닙니다. NAME: [값] 형태의 객체나, NAME: 값 형태 객체의 목록이어야 합니다 |
cli.matrix_invalid | NAME=V1,V2 형식이 아닙니다: {value} |
cli.matrix_too_large | 조합 {n}개 — 한 명령에서 최대 {max}개 |
cli.matrix_too_wide | 축 {axes}개의 곱이 셀 수 있는 범위를 넘습니다 — 한 명령에서 조합은 최대 {max}개입니다 |
cli.matrix_unknown | --matrix {name}: 지정한 실험 중 그런 이름의 매개변수가 있는 실험이 없습니다 |
cli.matrix_value_invalid | {name}: 매트릭스 값은 텍스트, 숫자 또는 true/false입니다 |
cli.osc_arg_invalid | OSC 인수가 아닙니다: {value} — i:3, f:0.5, d:1.5, h:64, s:text, b:hex, T, F, N 형식을 사용하십시오 |
cli.param_invalid | NAME=VALUE 형식이 아닙니다: {value} |
cli.server_ended | {url}의 응답이 실행보다 먼저 끝났습니다 |
cli.server_invalid | 서버 주소가 아닙니다: {url} — http://127.0.0.1:1430 같은 주소를 사용하십시오 |
cli.server_reply | {url}: Signal Lab의 응답이 아닌 응답을 보냈습니다(HTTP {status}) |
cli.server_unreachable | {url}의 서버에 연결할 수 없습니다 |
cli.signal_ambiguous | 이름이 {name}인 신호가 여러 개입니다 — ID로 지정하십시오: {ids} |
cli.signal_unknown | {path}에 없는 신호입니다: {name} |
cli.status_unexpected | 응답 상태: {actual}, 기대값: {expected} |
cli.token_empty | 토큰 파일이 비어 있습니다: {path} |
command
| 코드 | 메시지 |
|---|---|
command.args_invalid | 엔진이 {name}의 인수를 읽을 수 없습니다 — 인터페이스와 엔진의 버전이 다릅니다 |
command.json_required | 서버는 JSON 형식의 명령만 받습니다 |
command.reply_invalid | 엔진이 응답을 인코딩할 수 없습니다 |
command.unknown | 엔진에 {name} 명령이 없습니다 — 인터페이스가 엔진보다 최신입니다 |
compare
| 코드 | 메시지 |
|---|---|
compare.not_numbers | 이 비교를 하려면 두 값 모두 숫자여야 합니다: {value}, {expected} |
details
| 코드 | 메시지 |
|---|---|
details | 기술 세부 정보 |
doc
| 코드 | 메시지 |
|---|---|
doc.connection_duplicate | 같은 연결이 두 번 있습니다: {from} → {to} |
doc.connection_invalid | 연결 {from} → {to}: 없는 노드나 자기 자신으로 이어집니다 |
doc.name_required | 실험 이름을 지정하십시오 |
doc.node_count | 실험에는 노드가 1–{max}개 있어야 합니다 |
doc.node_id_duplicate | 두 노드의 ID가 같습니다: {id} |
doc.node_id_empty | ID가 비어 있는 노드가 있습니다 |
doc.port_invalid | 알 수 없는 출력: {port} |
doc.position_invalid | 노드의 위치가 올바르지 않습니다 |
doc.start_end_count | 실험에는 시작과 종료가 정확히 하나씩 있어야 합니다 |
doc.version_unsupported | 지원하지 않는 파일 버전 {version}입니다. 이 버전의 Signal Lab은 버전 {supported} 파일을 읽습니다 |
emulator
| 코드 | 메시지 |
|---|---|
emulator.accept_failed | {target}에서 연결 수락이 오류로 중지되었습니다 |
emulator.arg_value | {type} 타입의 값이 아닙니다: {value} |
emulator.args_too_many | 인수는 최대 {max}개입니다 |
emulator.bind_taken | {target}: 이 실험의 다른 에뮬레이터({other})가 이미 사용 중입니다 |
emulator.body_failed | 요청 본문을 읽을 수 없습니다 |
emulator.body_too_large | 요청 본문이 {max} KB보다 큽니다 |
emulator.busy | 대기 중인 회신이 {max}개를 넘어 이 회신은 버려졌습니다 |
emulator.conditions_too_many | 조건은 최대 {max}개입니다 |
emulator.failed | 에뮬레이터가 예기치 않게 중지되었습니다 |
emulator.header_value_invalid | 올바른 헤더 값이 아닙니다 — 줄바꿈을 포함할 수 없습니다 |
emulator.headers_too_many | 헤더는 최대 {max}개입니다 |
emulator.mqtt_client_id | ID 없이 세션 유지를 요청한 클라이언트를 거부했습니다 |
emulator.mqtt_login | {client} 거부: 사용자 이름이나 비밀번호가 틀렸습니다 |
emulator.mqtt_password_alone | MQTT 3.1.1은 사용자 이름 없이 비밀번호를 보낼 수 없으므로 어떤 클라이언트도 연결할 수 없습니다: 사용자 이름도 설정하십시오 |
emulator.mqtt_protocol | {protocol} 레벨 {level} 클라이언트를 거부했습니다: 이 브로커는 MQTT 3.1.1(레벨 4)을 사용합니다 |
emulator.name_unknown | 알 수 없는 이름 {{{name}}} — 회신에서는 {{request…}}와 매개변수를 읽을 수 있습니다 |
emulator.node_unknown | 이 실험에 없는 에뮬레이터입니다: {id} |
emulator.not_in_run | 에뮬레이터 {id}: 이 실행에 포함되어 있지 않습니다 |
emulator.not_running | 에뮬레이터 #{id}: 실행 중이 아닙니다 |
emulator.params_only | 여기에는 텍스트와 매개변수만 쓸 수 있습니다: 이 값은 에뮬레이터가 시작될 때, 아무것도 도착하기 전에 고정됩니다 |
emulator.path_param | 세그먼트 이름이 아닙니다: {value} — 문자, 숫자, _로 된 :name 형식을 사용하십시오 |
emulator.path_rest | * 기호는 /files/*처럼 마지막 세그먼트 전체로만 쓸 수 있습니다 |
emulator.path_slash | 경로는 /로 시작합니다 |
emulator.response_required | 라우트에는 응답이 하나 이상 필요합니다 |
emulator.responses_too_many | 응답은 최대 {max}개입니다 |
emulator.rules_too_many | 규칙은 최대 {max}개입니다 |
emulator.secret_unsupported | 에뮬레이터는 시크릿을 읽을 수 없습니다 |
emulator.weights_zero | 응답 중 하나 이상은 가중치가 0보다 커야 합니다 |
emulators
| 코드 | 메시지 |
|---|---|
emulators.encode | 에뮬레이터 라이브러리를 JSON으로 기록할 수 없습니다 |
emulators.json_invalid | {path}: 올바른 에뮬레이터 파일이 아닙니다. {line}행 {column}열에서 JSON 오류 — 파일을 수정하거나 제거하십시오 |
extract
| 코드 | 메시지 |
|---|---|
extract.header_missing | 응답에 {name} 헤더가 없습니다 |
extract.json_missing | 응답에 {path} 항목이 없습니다 |
extract.no_match | /{pattern}/: 응답 본문과 일치하지 않았습니다 |
extract.not_json | 응답 본문이 JSON이 아닙니다 |
extract.truncated | 응답({bytes} B)이 보관되는 256 KiB보다 길어서 값을 정확히 읽을 수 없습니다 |
feedback
| 코드 | 메시지 |
|---|---|
feedback.disabled | 지금은 피드백을 받지 않습니다 — info@proanima.net으로 메일을 보내 주십시오 |
feedback.email_invalid | 이메일 주소가 아닙니다 |
feedback.failed | 피드백 서비스의 응답: HTTP {status} |
feedback.file_too_large | {name}: {max_mb} MB보다 큽니다 |
feedback.file_type | {name}: 스크린샷은 PNG, JPEG, WebP, GIF여야 하고, 로그는 텍스트여야 합니다 |
feedback.invalid | 피드백 서비스가 양식을 받아들이지 않았습니다 |
feedback.message_required | 먼저 메시지를 작성하십시오 |
feedback.message_too_long | 메시지가 {max}자보다 깁니다 |
feedback.rate_limited | 현재 이 주소에서 보낸 메시지가 너무 많습니다 — {retry_after_s}초 후에 다시 시도하십시오 |
feedback.send_failed | 피드백 서비스가 메시지를 메일 서버에 전달하지 못했습니다. 나중에 다시 시도하십시오(참조 번호 {id}) |
feedback.too_large | 전체 크기가 {max_mb} MB보다 큽니다 |
feedback.too_many_files | 로그는 최대 {max}개입니다 |
file
| 코드 | 메시지 |
|---|---|
file.encode | 실험을 JSON으로 기록할 수 없습니다 |
file.io | 읽거나 쓸 수 없습니다: {path} |
file.json_invalid | 올바른 실험 파일이 아닙니다: {line}행 {column}열에서 JSON 오류 |
file.not_found | {path}: 서버 데이터 폴더에 있는 파일이 아닙니다 |
file.too_large | 실험 파일은 최대 {max} MiB입니다 |
firewall
| 코드 | 메시지 |
|---|---|
firewall.declined | 관리자 권한이 부여되지 않아 방화벽을 변경하지 않았습니다 |
firewall.failed | 방화벽 규칙을 읽거나 변경할 수 없습니다 |
firewall.server | 서버의 방화벽은 서버에서 설정합니다: 서버에서 signallab firewall allow를 실행하거나 서버 관리자에게 요청하십시오 |
firewall.unsupported | 여기에는 변경할 프로그램별 방화벽이 없습니다 — ufw나 firewalld에서 포트를 여십시오 |
graph
| 코드 | 메시지 |
|---|---|
graph.cycle | 이 노드는 순환의 일부입니다. 루프의 본문만 이 노드로 되돌아갈 수 있습니다 |
graph.needs_http | 모든 경로에서 앞에 HTTP 요청이 있어야 합니다 |
graph.outputs_required | 필수 출력을 연결하십시오 |
graph.port_unexpected | 이 노드에 없는 출력입니다: {port} |
graph.start_input | 시작에는 입력을 둘 수 없습니다 |
graph.unreachable | 시작에서 도달할 수 없습니다 |
hex
| 코드 | 메시지 |
|---|---|
hex.empty | 보낼 바이트가 없습니다 — de ad be ef처럼 hex 숫자를 두 자리씩 입력하십시오 |
hex.invalid | hex 바이트가 아닙니다: {value} — de ad be ef처럼 두 자리씩 입력하십시오 |
http
| 코드 | 메시지 |
|---|---|
http.client_failed | HTTP 클라이언트를 시작할 수 없습니다 |
http.digest_invalid | 서버가 realm이나 nonce 없이 Digest를 요청했습니다 |
http.digest_not_offered | 서버가 Digest를 요청하지 않고 401로 응답했습니다 |
http.digest_other_origin | 요청이 다른 출처({origin})로 넘어갔고 그곳에서 Digest를 요청했습니다 — 요청이 지정한 출처에만 응답합니다 |
http.digest_unsupported | 서버가 {algorithm} 방식의 Digest를 요청했지만, Signal Lab은 이 방식을 지원하지 않습니다(MD5와 SHA-256 지원) |
http.duration_invalid | 지속 시간은 0초 이상이어야 합니다 |
http.rate_invalid | 속도는 0이거나 {min}–{max} 요청/초여야 합니다 |
impair
| 코드 | 메시지 |
|---|---|
impair.bind_taken | {target}: 이미 {other}에서 사용 중입니다. 실행의 소켓 두 개가 한 포트를 공유할 수 없습니다 |
impair.loop | 릴레이의 패킷이 {target} 경유로 릴레이에 되돌아와 끝없이 순환합니다 — 대상을 장치로 지정하십시오 |
impair.not_running | 네트워크 장애 {id}: 이 실행에 포함되어 있지 않습니다 |
impair.relay_unknown | 이 실험에 없는 네트워크 장애 노드입니다: {id} |
inspect
| 코드 | 메시지 |
|---|---|
inspect.empty | 캡처가 비어 있습니다 — 저장할 것이 없습니다 |
inspect.frame_gone | 프레임 #{seq}: 더 이상 캡처에 없습니다. 새 프레임이 그 자리를 차지했습니다 |
inspect.no_payload | 프레임 #{seq}: 바이트 없이 크기만 기록되었습니다 |
json_path
| 코드 | 메시지 |
|---|---|
json_path.invalid | JSON 경로가 아닙니다: {path} — $.field, $.items[0], $["a b"] 형식을 사용하십시오 |
load
| 코드 | 메시지 |
|---|---|
load.nothing_planned | 이 프로필은 요청을 보내지 않습니다 |
load.spike_outside | 스파이크는 지속 시간 안에 끝나야 합니다 |
load.steps_out_of_range | 모든 계단의 속도는 0–{max} 요청/초여야 합니다 |
load.threshold | {metric}: {actual}, 임계값 {op} {value} |
load.threshold_value | 임계값에는 0 이상의 숫자가 필요합니다 |
load.thresholds_too_many | 임계값은 최대 {max}개입니다 |
load.too_long | 계단에 걸리는 시간이 실행 최대 시간({seconds}초)보다 깁니다 |
loop
| 코드 | 메시지 |
|---|---|
loop.body_entered | 루프의 본문 출력만 본문으로 들어갈 수 있습니다 |
loop.body_leaves | 루프 본문 안의 모든 출력은 본문 안으로 이어지거나 루프로 돌아가야 합니다 |
loop.body_parallel | 루프 본문 안에서는 출력마다 연결선이 하나여야 합니다. 반복 한 번은 하나의 분기로 실행됩니다 |
loop.body_unsupported | 시작, 종료, 병렬 분기, 분기 합류, 다른 루프는 루프 본문 안에 둘 수 없습니다 |
loop.limit | 반복 {max}회: 종료 조건이 한 번도 충족되지 않았습니다(계속하려면 한도를 연결하십시오) |
loop.no_return | 본문에서 이 루프로 돌아오는 경로가 없습니다 |
mqtt
| 코드 | 메시지 |
|---|---|
mqtt.client_id_required | 클라이언트 ID를 입력하십시오 — 브로커는 빈 ID를 거부합니다 |
mqtt.filter_required | 토픽 필터를 하나 이상 추가하십시오 |
mqtt.no_answer | {broker}: 연결은 수락했지만 제때 응답하지 않았습니다 — MQTT 브로커가 맞습니까? |
mqtt.not_connected | 연결 #{id}: 열려 있지 않습니다 — 먼저 브로커에 연결하십시오 |
mqtt.protocol | {broker}: MQTT 3.1.1이 아닌 응답을 보냈습니다 |
mqtt.refused | {broker}: 연결을 거부했습니다(반환 코드 {code}) |
mqtt.refused_client_id | {broker}: 클라이언트 ID를 거부했습니다 — 다른 ID를 사용하십시오 |
mqtt.refused_credentials | {broker}: 사용자 이름이나 비밀번호를 거부했습니다 |
mqtt.refused_not_authorized | {broker}: 이 클라이언트를 인가하지 않았습니다 — 접근 규칙을 확인하십시오 |
mqtt.refused_protocol | {broker}: MQTT 3.1.1 클라이언트를 받지 않습니다 |
mqtt.refused_unavailable | {broker}: 지금은 사용할 수 없습니다 — 나중에 다시 시도하십시오 |
mqtt.subscribe_refused | {broker}: {filter} 구독을 거부했습니다 |
mqtt.topic_invalid | 이 토픽에는 발행할 수 없습니다 |
mqtt.topic_required | 발행할 토픽을 입력하십시오 |
name
| 코드 | 메시지 |
|---|---|
name.no_value | {name}에 값이 없습니다 |
name.not_on_every_path | {{{name}}}: 이 단계 앞의 모든 경로에서 설정되지는 않습니다 |
name.unknown | 알 수 없는 이름 {{{name}}} — 매개변수를 추가하거나 변수를 추출하십시오 |
netsim
| 코드 | 메시지 |
|---|---|
netsim.not_running | 릴레이 {id}: 더 이상 실행 중이 아닙니다 |
node
| 코드 | 메시지 |
|---|---|
node.bind_invalid | 수신 주소가 아닙니다: {value} — IP:포트 형식을 사용하십시오(예: 0.0.0.0:9001) |
node.header_invalid | 올바른 헤더 이름이 아닙니다: {value} |
node.load_alone | 부하는 반복과 재시도를 대신합니다: 두 옵션을 끄십시오 |
node.load_unsupported | HTTP 요청만 부하 전송으로 실행할 수 있습니다 |
node.method_invalid | HTTP 메서드가 아닙니다: {value} |
node.not_found | 더 이상 존재하지 않는 노드입니다: {id} |
node.osc_address | OSC 주소는 /로 시작합니다({value}) |
node.params_only | 여기에는 매개변수만 사용할 수 있습니다 — 실행이 첫 단계 전에 구독합니다 |
node.range | {min}–{max} 범위여야 합니다 |
node.repeat_too_long | 반복에 걸리는 시간이 실행 최대 시간({seconds}초)보다 깁니다 |
node.repeat_too_many | 전송이 {max}회를 넘습니다: 간격을 늘리거나 시간을 줄이십시오 |
node.repeat_unsupported | 보내는 단계만 반복할 수 있습니다 |
node.required | 필수 |
node.retry_unsupported | 보내거나 수신 대기하는 단계만 재시도할 수 있습니다 |
node.rules_too_many | 인수 규칙은 최대 {max}개입니다 |
node.target_invalid | 포트가 있는 주소가 아닙니다: {value} (예: 127.0.0.1:9000) |
node.too_long | 너무 깁니다: 최대 {max} |
node.topic_filter | 토픽 필터가 아닙니다: {value} — + 기호는 한 단계 전체를, # 기호는 마지막 단계 전체만 나타낼 수 있습니다 |
node.topic_wildcard | 발행 토픽에는 와일드카드(+, #)를 쓸 수 없습니다 |
node.url_invalid | http:// 또는 https:// URL이 아닙니다: {value} |
osc
| 코드 | 메시지 |
|---|---|
osc.packet_malformed | 잘못된 OSC 패킷({bytes} B) |
osc.pattern_char | OSC 주소의 이 위치에는 “{char}” 문자를 쓸 수 없습니다 |
osc.pattern_empty_segment | 슬래시 사이가 비어 있습니다 |
osc.pattern_empty_set | 빈 [ ] 집합 |
osc.pattern_range | 범위가 거꾸로 되어 있습니다: {range} |
osc.pattern_slash | OSC 주소 패턴은 /로 시작합니다 |
osc.pattern_too_long | 주소 패턴이 {max}자보다 깁니다 |
osc.pattern_unclosed | 닫히지 않은 [ 또는 { |
param
| 코드 | 메시지 |
|---|---|
param.duplicate | 매개변수 {name}: 두 번 정의되었습니다 |
param.name_invalid | 매개변수 이름 “{name}”: 문자나 _로 시작하고 문자, 숫자, _만 사용해야 합니다 |
param.name_reserved | “{name}”: 예약어이므로 매개변수 이름으로 쓸 수 없습니다 |
param.too_large | 매개변수 {name}: {max} KiB보다 큽니다 |
param.unknown | 알 수 없는 매개변수 {name} |
params
| 코드 | 메시지 |
|---|---|
params.too_many | 매개변수는 최대 {max}개입니다 |
position
| 코드 | 메시지 |
|---|---|
position | 위치 {position} |
profile
| 코드 | 메시지 |
|---|---|
profile.active_missing | 활성 프로필이 존재하지 않습니다: {name} |
profile.duplicate | 프로필 {name}: 두 번 정의되었습니다 |
profile.name_invalid | 프로필 이름은 1–{max}자입니다 |
profile.unknown_param | 프로필 {profile}: 매개변수가 아닌 {name} 값을 설정합니다 |
profile.values_too_many | 프로필 {profile}: {max}개보다 많은 값을 설정합니다 |
profiles
| 코드 | 메시지 |
|---|---|
profiles.too_many | 프로필은 최대 {max}개입니다 |
regex
| 코드 | 메시지 |
|---|---|
regex.invalid | 올바른 정규식이 아닙니다: {pattern} |
run
| 코드 | 메시지 |
|---|---|
run.join_waiting | 분기 합류가 아직 분기 {count}개를 기다리고 있습니다 — 들어오는 연결 중 하나가 한 번도 실행되지 않았습니다(예: 분기가 다른 경로로 갔을 때) |
run.limit_range | 실행 시간은 1–{max}초여야 합니다 |
run.no_end | 실행이 종료에 도달하기 전에 멈췄습니다 |
run.node_missing | 노드가 없습니다: {id} |
run.not_a_check | 이 노드는 검사 노드가 아닙니다 |
run.not_a_wait | 이 노드는 대기 노드가 아닙니다 |
run.not_an_action | 이 노드는 보내거나 수신 대기하지 않습니다 |
run.override_unknown | 값 지정 실행…: 매개변수가 아닌 {name} 값을 설정합니다 |
run.timeout | 실행이 {seconds}초보다 오래 걸려 중지되었습니다 |
runs
| 코드 | 메시지 |
|---|---|
runs.name_invalid | 실행 보고서가 아닙니다: “{name}” |
runs.not_found | 실행 “{name}” 없음: 보고서가 제거되었습니다 |
scan
| 코드 | 메시지 |
|---|---|
scan.host_required | 스캔할 호스트를 입력하십시오 |
secret
| 코드 | 메시지 |
|---|---|
secret.empty | 시크릿은 비워 둘 수 없습니다 |
secret.missing | 시크릿 {name}: 이 컴퓨터에 저장되어 있지 않습니다 — 매개변수 → 시크릿에서 설정하십시오 |
secret.name_invalid | 시크릿 이름 “{name}”: 문자나 _로 시작하고, 문자, 숫자, _만 사용하며, 최대 {max}자여야 합니다 |
secret.read_only | 여기서는 시크릿이 읽기 전용입니다. 서버에서 {name} 값을 설정하십시오(SIGNALLAB_SECRET_{name}, 또는 서버의 시크릿 폴더에 있는 이름이 {name}인 파일) |
secret.store | {name}: 시스템 자격 증명 저장소에서 오류가 발생했습니다 |
secret.too_large | 시크릿은 최대 {max} KiB입니다 |
secret.unsupported | 시크릿은 Windows 자격 증명 관리자에 보관되지만, 이 시스템에는 없습니다 |
seed
| 코드 | 메시지 |
|---|---|
seed.range | 시드는 0–{max} 범위여야 합니다 |
show
| 코드 | 메시지 |
|---|---|
show | 표시 |
signals
| 코드 | 메시지 |
|---|---|
signals.encode | 신호 라이브러리를 JSON으로 기록할 수 없습니다 |
signals.json_invalid | {path}: 올바른 신호 라이브러리가 아닙니다. {line}행 {column}열에서 JSON 오류 — 파일을 수정하거나 제거하십시오 |
socket
| 코드 | 메시지 |
|---|---|
socket.option_failed | 시스템이 소켓 옵션을 받아들이지 않았습니다: {option} |
template
| 코드 | 메시지 |
|---|---|
template.arg_empty | 빈 인수 |
template.arg_integer | {function}: {value} — 정수가 아닙니다 |
template.arg_invalid | 인수 {value}: 따옴표로 감싸야 합니다 |
template.arg_number | {function}: {value} — 숫자가 아닙니다 |
template.arg_quote | 인수에 닫히지 않은 따옴표가 있습니다 |
template.args_pick | pick(…)에는 선택지가 하나 이상 필요합니다 |
template.args_random_float | random_float(min, max[, digits]): 인수가 2개 또는 3개 필요합니다 |
template.args_random_int | random_int(min, max): 인수가 2개 필요합니다 |
template.args_uuid | uuid(): 인수를 받지 않습니다 |
template.bad_call | 올바른 함수 호출이 아닙니다: {text} |
template.bad_name | 올바른 이름이 아닙니다: {text} |
template.bad_path | {text}: 잘못된 경로입니다 — .field, [0], ["key"] 형식을 사용하십시오 |
template.digits | random_float의 자릿수는 0–{max}입니다 |
template.empty | 빈 {{ }} |
template.needs_name | {head}에는 이름이 필요합니다: {head}.NAME |
template.no_field | {name}에 {path} 필드가 없습니다 |
template.node_fields | node에는 node.id만 있습니다 |
template.now_fields | now에는 now.iso만 있습니다 |
template.range | {function}: min({min})은 max({max})보다 작아야 합니다 |
template.run_fields | run에는 run.id와 run.seed만 있습니다 |
template.unclosed | 닫히지 않은 {{ |
template.unknown_function | 알 수 없는 함수 {name}() |
transport
| 코드 | 메시지 |
|---|---|
transport.address_in_use | {target}: 다른 프로그램이 이미 사용 중입니다 |
transport.address_unavailable | {target}: 이 컴퓨터의 주소가 아닙니다 |
transport.denied | 시스템이나 방화벽이 {target}에 대한 접근을 허용하지 않았습니다 |
transport.dns | {target}: 이름을 확인할 수 없습니다 — 호스트 이름을 점검하십시오 |
transport.failed | {target}에 보내지 못했습니다 |
transport.refused | {target}: 연결이 거부되었습니다 — 그 포트에서 수신 대기 중인 프로그램이 없습니다 |
transport.reset | {target}: 상대방이 연결을 닫았습니다 |
transport.target_invalid | 올바른 주소가 아닙니다: {target} |
transport.timeout | {target}에서 제때 응답이 없습니다 |
transport.tls | {target}에 보안 연결을 만들 수 없습니다(인증서 또는 TLS) |
transport.unreachable | {target}에 도달할 수 없습니다 — 네트워크와 주소를 확인하십시오 |
unknown
| 코드 | 메시지 |
|---|---|
unknown | 예기치 않은 엔진 오류({code}) |
variable
| 코드 | 메시지 |
|---|---|
variable.name_invalid | 변수 이름 “{name}”: 문자나 _로 시작하고 문자, 숫자, _만 사용해야 합니다 |
variable.name_reserved | “{name}”: 예약어이므로 변수 이름으로 쓸 수 없습니다 |
variable.shadows_param | 변수 {name}: 매개변수와 이름이 같습니다 |
wait
| 코드 | 메시지 |
|---|---|
wait.bind_failed | {target}에서 수신 대기할 수 없습니다 |
wait.not_listening | {target}에서 수신 대기하고 있지 않습니다 |
wait.receive_failed | {target}의 수신 대기가 오류로 중지되었습니다 |
wait.timeout | {ms} ms 안에 일치하는 메시지가 없습니다({target}에 다른 메시지 {unmatched}건 도착) |
ws
| 코드 | 메시지 |
|---|---|
ws.close_code | {code}: 클라이언트가 보내는 닫기 코드가 아닙니다 — 1000이나, 애플리케이션 자체 코드인 3000–4999를 사용하십시오 |
ws.closed | WebSocket 연결이 닫혔습니다({code}) |
ws.connection_after | {id}: 이 단계보다 앞에 오지 않습니다 — 이 단계가 쓰는 연결을 여는 노드입니다 |
ws.connection_unknown | {id}: 이 실험의 WebSocket 연결 노드가 아닙니다 |
ws.handshake_failed | WebSocket 업그레이드 실패: {url} |
ws.handshake_status | {url}: WebSocket으로 전환하지 않고 응답했습니다(HTTP {status}) |
ws.header_invalid | 헤더 {name}: 업그레이드 요청과 함께 보낼 수 없습니다 |
ws.message_too_large | WebSocket 메시지는 최대 {max}바이트입니다 |
ws.not_connected | 열려 있는 WebSocket 연결이 없습니다: {id} |
ws.payload_required | 메시지를 텍스트나 hex 바이트로 입력하십시오 |
ws.protocol_error | {url} 연결이 끊어졌습니다: 서버가 WebSocket 프로토콜을 지키지 않았습니다 |
ws.protocol_invalid | 서브프로토콜 이름이 아닙니다: {value} — 공백, 쉼표, 슬래시는 쓸 수 없습니다 |
ws.subprotocol_refused | {url}: 제안한 서브프로토콜을 하나도 받아들이지 않았습니다 |
ws.url_invalid | WebSocket 주소가 아닙니다: {url} — ws://host:port/path 또는 wss://… 형식을 사용하십시오 |
필드
메시지가 해당 필드를 부르는 이름입니다.
| 필드 | 이름 |
|---|---|
address | 주소 |
argument | 인수 |
attempts | 시도 횟수 |
auth | 인증 |
bind | 수신 주소 |
body | 본문 |
broker | 브로커 |
burst_length | 버스트 길이 |
burst_start | 버스트 손실 |
code | 닫기 코드 |
condition | 조건 |
conditions | 조건 |
connection | 연결 |
corrupt | 손상 |
delay_ms | 지연 |
duplicate | 중복 |
duration_s | 지속 시간 |
emulator | 에뮬레이터 |
expected | 기대값 |
expected_text | 기대 텍스트 |
fallback | 어느 라우트에도 맞지 않는 요청 |
greeting | 인사말 |
header_name | 헤더 이름 |
header_value | 헤더 값 |
headers | 헤더 |
hex | hex 바이트 |
host | 호스트 |
jitter_ms | 지터 |
json_path | JSON 경로 |
latency_ms | 지연 시간 |
listen | 수신 주소 |
load | 부하 |
load_base | 기본 속도 |
load_concurrency | 동시 요청 |
load_duration | 지속 시간 |
load_every | 계단 길이 |
load_from | 시작 속도 |
load_peak | 최고 속도 |
load_rate | 속도 |
load_spike | 스파이크 |
load_step | 증가폭 |
load_steps | 계단 수 |
load_to | 끝 속도 |
loop_max | 반복 횟수 |
loss | 패킷 손실 |
max_ms | 시간 제한 |
message | 메시지 |
method | 메서드 |
ms | 지속 시간 |
name | 이름 |
outage_down | 다운 시간 |
outage_up | 동작 시간 |
password | 비밀번호 |
path | 경로 |
pattern | 패턴 |
payload | 페이로드 |
port | 포트 |
profile_name | 프로필 이름 |
protocols | 서브프로토콜 |
qos | QoS |
rate | 속도 |
rate_kbps | 대역폭 |
reason | 사유 |
relay | 네트워크 장애 |
reorder | 순서 바뀜 |
repeat | 반복 |
repeat_count | 전송 횟수 |
repeat_duration | 반복 기간 |
repeat_interval | 간격 |
repeat_jitter | 지터 |
reply | 회신 |
reply_address | 회신 주소 |
reply_arg | 회신 인수 |
reply_args | 회신 인수 |
reply_bind | 회신 수신 주소 |
reply_pattern | 회신 패턴 |
reply_payload | 회신 페이로드 |
reply_topic | 회신 토픽 |
reset | 연결 리셋 |
responses | 응답 |
retained | retained 메시지 |
retry | 재시도 |
retry_delay | 시도 간 일시 정지 |
rule | 규칙 |
rule_value | 규칙 값 |
rules | 규칙 |
stall | 반개방 |
status | 상태 |
target | 대상 |
threshold | 임계값 |
thresholds | 임계값 |
timeout_ms | 제한 시간 |
to | 회신 대상 |
token | 토큰 |
topic | 토픽 |
url | URL |
username | 사용자 이름 |
value | 값 |
variable | 변수 |
weight | 가중치 |