Skip to content

Конфигурацын параметр ​

[toc]

Хөгжлийн түвшин ​

chain required ​

ID сүлжээ нь аливаа гүйлгээнд нэгтгэх ёстой.

Урьдчилсан гүйлгээний халдлага нь тухайн үйл явцаас өөр нэг сүлжээ рүү хүчинтэй гүйлгээг хүргэх оролдлого юм. chain нь гарын үсэг зурсан гүйлгэний ашигтай ачааллын нэг хэсэг тул нэг зангилаар гарын үсгийн гүйлгээ нь ID -ийг ашигладаг өрсөлдөгчид татгалзаж байна.

Type: String
Env:CHAIN
toml
chain = "00000000-0000-0000-0000-000000000000"
shell
CHAIN="00000000-0000-0000-0000-000000000000"

public_key required ​

Үндсэн ойлголцлын баталгаажуулагч өрсөлдөгчид нь BLS-Нормаль түлхүүр ашиглах ёстой.

Type: String, public key multihash
Env:PUBLIC_KEY
toml
public_key = "ea01309060D021340617E9554CCBC2CF3CC3DB922A9BA323ABDF7C271FCC6EF69BE7A8DEBCA7D9E96C0F0089ABA22CDAADE4A2"
shell
PUBLIC_KEY="ea01309060D021340617E9554CCBC2CF3CC3DB922A9BA323ABDF7C271FCC6EF69BE7A8DEBCA7D9E96C0F0089ABA22CDAADE4A2"

private_key required ​

Төгсчийн хувийн товчоо. Энэ нь public_keyтай нийцэж байх ёстой; санал нэгдлийн баталгаажуулагч орнууд BLS-Нормалын товчоо ашиглах ёстой.

Type:todo private-key
Env:PRIVATE_KEY
toml
private_key = "8926201CA347641228C3B79AA43839DEDC85FA51C0E8B9B6A00F6B0D6B0423E902973F"
shell
PRIVATE_KEY="8926201CA347641228C3B79AA43839DEDC85FA51C0E8B9B6A00F6B0D6B0423E902973F"

trusted_peers ​

Дашрамдсан итгэх нөхөд жагсаалт.

Үндсэн санал хураалтын баталгаажуулагчид BLS-Нормаль ижил төстэй түлхүүр ашиглаж байх ёстой. Арьсны баталгаажуулалтанд нийцсэн trusted_peers_pop нэвтрүүлгийг өгөх хэрэгтэй.

Type:

Нөхөр зөөврийн шугам. PUBLIC_KEY@ADDRESS хаягийг мэддэг бол P2P нэгийг ашигла; Bare PUBLIC_KEY нь мөн хүлээн зөвшөөрөгдсөн бөгөөд өрсөлдөгчийн хаягийг гайхамшигнаас илрүүлэх боломжийг олгоно.

Env:TRUSTED_PEERS
toml
trusted_peers = [
    "ea01309060D021340617E9554CCBC2CF3CC3DB922A9BA323ABDF7C271FCC6EF69BE7A8DEBCA7D9E96C0F0089ABA22CDAADE4A2@127.0.0.1:1337",
    "ea0130A7E9D016D723F72942FCF4B988FB599EA0E092F73C8B68E69F4E8B3FE542A3F7E48AD6CD15F3EB484E45F79399071F77@127.0.0.1:1338",
]
shell
# as JSON
TRUSTED_PEERS='[
  "ea01309060D021340617E9554CCBC2CF3CC3DB922A9BA323ABDF7C271FCC6EF69BE7A8DEBCA7D9E96C0F0089ABA22CDAADE4A2@127.0.0.1:1337",
  "ea0130A7E9D016D723F72942FCF4B988FB599EA0E092F73C8B68E69F4E8B3FE542A3F7E48AD6CD15F3EB484E45F79399071F77@127.0.0.1:1338"
]'

trusted_peers_pop ​

BLS баталгаажуулагчаар итгэж байгаа өрсөлдөгчдийн эзэмшлийн гэрчилгээ.

Type:

public_key болон pop_hex гэсэн талбайтай объектүүдийн жагсаалт

Env:TRUSTED_PEERS_POP
toml
trusted_peers_pop = [
  { public_key = "ea01309060D021340617E9554CCBC2CF3CC3DB922A9BA323ABDF7C271FCC6EF69BE7A8DEBCA7D9E96C0F0089ABA22CDAADE4A2", pop_hex = "8515da750f81182aaba5c22fc9f03a01e81ed85e4495a2ca6b29a71c0c8549537e31e79cddf6ff285b9e22d0d9dc17ce0f46e7d0cf78b2ef9feab50c849a1ea8e1e4f07e966f6113faa8a999317545d9f111b8e08a7273913710b43a20b19c08" },
  { public_key = "ea0130A7E9D016D723F72942FCF4B988FB599EA0E092F73C8B68E69F4E8B3FE542A3F7E48AD6CD15F3EB484E45F79399071F77", pop_hex = "a14eb180f0d78c55d2c034e91ccf691378e9c3ceed8e0b81d3e4b7c215c0dbb633bb9f1c5063911c31af4610016c164015f0f93db3c7df6a2ad0c39338fe7695b976a59fd13797615f229fbd77276a8bb2842e4e44fadcafdb7b37f4a143b913" },
]
shell
# as JSON
TRUSTED_PEERS_POP='[
  {"public_key":"ea01309060D021340617E9554CCBC2CF3CC3DB922A9BA323ABDF7C271FCC6EF69BE7A8DEBCA7D9E96C0F0089ABA22CDAADE4A2","pop_hex":"0x8515da750f81182aaba5c22fc9f03a01e81ed85e4495a2ca6b29a71c0c8549537e31e79cddf6ff285b9e22d0d9dc17ce0f46e7d0cf78b2ef9feab50c849a1ea8e1e4f07e966f6113faa8a999317545d9f111b8e08a7273913710b43a20b19c08"},
  {"public_key":"ea0130A7E9D016D723F72942FCF4B988FB599EA0E092F73C8B68E69F4E8B3FE542A3F7E48AD6CD15F3EB484E45F79399071F77","pop_hex":"0xa14eb180f0d78c55d2c034e91ccf691378e9c3ceed8e0b81d3e4b7c215c0dbb633bb9f1c5063911c31af4610016c164015f0f93db3c7df6a2ad0c39338fe7695b976a59fd13797615f229fbd77276a8bb2842e4e44fadcafdb7b37f4a143b913"}
]'

Эхлэл ​

genesis.file ​

Genesis block-ийн гарын үсэг зурсан хэрэглээний ачааллын файлын замыг kagami genesis sign. Жинэсэн хувилбар нь ихэвчлэн үүнийг Norito .nrt Документ.

Type: String, file path (relative to the config file or CWD)
Env:GENESIS
toml
[genesis]
file = "./genesis.signed.nrt"
shell
GENESIS="./genesis.signed.nrt"

genesis.public_key required ​

Женезис цомгийн нөөцний гол.

Type: String, public key multihash
Env:GENESIS_PUBLIC_KEY
toml
[genesis]
public_key = "ed01208BA62848CF767D72E7F7F4B9D2D7BA07FEE33760F79ABE5597A51520E292A0CB"
shell
GENESIS_PUBLIC_KEY="ed01208BA62848CF767D72E7F7F4B9D2D7BA07FEE33760F79ABE5597A51520E292A0CB"

Сүлжээ ​

network.address required ​

Зөвлөлдөх (sumeragi) болон блокийн синхрончлалын (block_sync) зорилгоор p2p харилцааны хаяг.

Type: String, socket address (host/IPv4/IPv6 + port)
Env:P2P_ADDRESS
toml
[network]
address = "0.0.0.0:1337"
shell
P2P_ADDRESS=0.0.0.0:1337

network.public_address required ​

Хэдэн үеийнхний хоорондын хаяг (баруун, бусад өрсөлдөгчдийн харж байгаагаар).

Бусад залуучуудад гайхмаар ярих болно.

Type: String, socket address (host/IPv4/IPv6 + port)
Env:P2P_PUBLIC_ADDRESS
toml
[network]
public_address = "0.0.0.0:5000"
shell
P2P_PUBLIC_ADDRESS=0.0.0.0:5000

network.block_gossip_size ​

Нэг удаагийн синхрончлалын мэдээгээр дамжуулж болох блоктын тоо.

Type: Number
Default:4
toml
[network]
block_gossip_size = 256

network.block_gossip_period_ms ​

Хамгийн сүүлд хийсэн блогын өрсөлдөгчдийн хүсэлтийн хоорондын цаг хугацааны интервал.

Урьдчилсан яриа нь холбооны цаг хугацааг багасгах боловч сүлжээ хэтрүүлэн ачаалалтай болно.

Type: Number, duration in milliseconds
Default:10_000 (10 seconds)
toml
[network]
block_gossip_period_ms = 1_000

network.transaction_gossip_size ​

Хэлэлцүүлгийн хамгийн их тооны транзакциуд.

Жижиг хэмжээ нь илүү удаан хугацаагаар синхрон болгох боломжийг олгодог, гэхдээ зургийн алдагдал өндөр бол ашигтай.

Type: Number
Default:500
toml
[network]
transaction_gossip_size = 256

network.transaction_gossip_period_ms ​

Хэдэн үеийнхний хоорондын гүйлгээг хүлээсэн хүйтэн ярианы үе.

Урьдчилсан яриа нь холбооны цаг хугацааг багасгах боловч сүлжээ хэтрүүлэн ачаалалтай болно.

Type: Number, duration in milliseconds
Default:1_000 (1 second)
toml
[network]
transaction_gossip_period_ms = 5_000

network.idle_timeout_ms ​

Хөгжлийн хязгаарлалтын хугацаа:

Type: Number, duration in milliseconds
Default:300_000 (5 minutes)
toml
[network]
idle_timeout_ms = 300_000

Torii ​

torii.address required ​

Torii сервер нь сонсох ёстой, үйлчлүүлэгчид хүсэлтээ гаргадаг хаяг.

Type: String, socket address (host/IPv4/IPv6 + port)
Env:API_ADDRESS
toml
[torii]
address = "0.0.0.0:8080"
shell
API_ADDRESS=0.0.0.0:8080

torii.max_content_len ​

Torii эцсийн цэгүүд хүлээн зөвшөөрөгдсөн түүхий эдийн хүсэлтийн байгууллагын хамгийн их байтын тоо.

Энэ хязгаар нь DOS халдлагын урьдчилан сэргийлэх зорилгоор ашиглагддаг.

Type:

(Байтын тоо)

Default:

64_000_000 (64 сая байт)

toml
[torii]
max_content_len = 64_000_000

torii.query_idle_time_ms ​

Хэрэглэгт хүрэхгүй бол дэлгүүрийн дотор үлдэх хугацаа

Type: Number, duration in milliseconds
Default:10_000 (10 seconds)
toml
[torii]
query_idle_time_ms = 10_000

torii.query_store_capacity ​

Амьдралын асуултын тооны дээд хязгаар.

Type: Number
Default:128
toml
[torii]
query_store_capacity = 128

torii.query_store_capacity_per_user ​

Нэг хэрэглэгчийн хувьд шууд хайлтын тооны дээд хязгаар.

Type: Number
Default:128
toml
[torii]
query_store_capacity_per_user = 128

Хөдөлмөрч ​

logger.level ​

Бүхэл бүтэн бүртгэлийн үгс (шинэ үү logger.filter боловсруулсан конфигурацын талаар).

Type:

Хадгаар, боломжтой үнэ цэнэ:

  • TRACE: Бүх үйл ажиллагаа, тэр дундаа бага түвшний үйл ажиллагаа.
  • DEBUG: Диагноз шалгаруулалтад ашигтай алдааны түвшний мэдээ.
  • INFO: Ерөнхий мэдээлэл.
  • WARN: Бодит асуудлуудыг илтгэх сэрэмжлэл.
  • ERROR: Эдийн засгийн хэвийн үйл ажиллагааг хамарсан, гэхдээ үргэлжлүүлэн ажиллуулах боломжийг олгодог алдаа.

Хэрэглээний хэргийнхээ хамгийн тохиромжтой түвшинг сонгох. Бусад бүртгэлийн түвшинүүдийг хэрхэн ашиглах талаар дэлгэрэнгүй мэдээлэл авахын тулд Stack Overflow-д хараарай.

Default:INFO
Env:LOG_LEVEL
toml
[logger]
level = "INFO"
shell
LOG_LEVEL=INFO

Үйл ажиллагааны цаг хугацааг шинэчлэл

Энэ параметр нь Torii үйлдвэрийн эцсийн цэгүүдээр дамжуулан гүйлгээний цаг үеийн конфигурацыг шинэчлэх боломжтой.

logger.filter ​

logger.level-ийн нэмэлт, боловсруулсан номын сангийн филтрүүд. Зорилгоор бүртгэх үгний түвшинг өөрчлөх боломжийг олгодог.

Type:

Стринг нь нэг эсвэл хэд хэдэн мөрийн дугаартай хуваагдсан захирамжаас бүрддэг. Тухайлбал, тохиромжтой хугацаа болон үйл явдлыг сонгон шалгаруулахад боломжийг олгодог. Iroha хялбар бус түвшинд тооцоолдог (гэхдээ: trace эсвэл info) нь илүү илүүдэлч түвшинээс илүү гүнзгий байх ёстой error эсвэл warn).

Дээрх дүгнэлтийн синтаксис нь өндөр түвшинд хэд хэдэн хэсгээс бүрддэг:

target[span{field=value}]=level

Дэлгэрэнгүй дэлгэрэнгүй мэдээллийг tracing-subscriber баримт бичигт үзнэ үү.

Env:LOG_FILTER
toml
[logger]
filter = "iroha_core=debug,iroha_p2p=debug"
shell
LOG_FILTER=iroha_core=debug,iroha_p2p=debug

logger.level-тай нийцүүлэлт

logger.filter нь logger.levelтай хамтран ажилладаг бөгөөд аль нэг нь өөрөөс нь давхар бичдэггүй байна.

Тухайлбал, logger.level нь INFO болон logger.filter нь iroha_core=debug гэж тохируулсан бол үр дүнд гарсан филтрын багц нь info,iroha_core=debug (гэхдээ бүх модулийн хувьд info бөгөөд iroha_core-ийн хувьд debug болно).

Үйл ажиллагааны цаг хугацааг шинэчлэл

Энэ параметр нь Torii үйлдвэрийн эцсийн цэгүүдээр дамжуулан гүйлгээний цаг үеийн конфигурацыг шинэчлэх боломжтой.

logger.format ​

Номын тэмдэглэлийн хэлбэр.

Type:

Хадгаар, боломжтой үнэ цэнэ:

  • full: Үндсэн форматч. Энэ нь тухайн үйл явдлын хүн уншигч, нэг шугамаар бүртгэгддэг бөгөөд үйл явдлыг форматжуулсан төлөөлөхөөс өмнө өнөөгийн хугацааны хүрээг харуулдаг байна.
  • compact: Дээрх хэлбэлзүүлэгчний хувилбар, богино шугам урттай тохируулсан. Одоогийн өргөн хүрээний хүрээнд байгаа талбайг форматчилсан үйл явдлын талбаанд хавсралтлуулж, өргөн хүрэх нэрүүдийг үзүүлдэггүй; үгний түвшин нэг үсэгтэй товчлогдсон байна.
  • pretty: Хүний уншдагд зориулан сайжруулсан хэт сайхан, олон шугамтай тэмдэглэлийг гаргана. Энэ нь үндсэндээ орон нутгийн хөгжил, засваржуулахад эсвэл командын шугам дахь хэрэгслийн хувьд ашиглах зорилготой Тогтоолын автоматжуулсан шинжилгээ, компакт хадгаламж нь уншигчтай байдал болон дүрсэд илтгэлтэй байдгаас илүү чухал биш.
  • json: Шинэ шугамтай хязгаарлагдмал JSON номыг гаргадаг. Энэ нь зохион байгуулалттай номыг шинжилгээ, үзэх хэрэгсэлээр JSON гэж хэрэглэдэг системүүдээр үйлдвэрлэлийн хэрэглээний тулд зориулагдсан юм. JSON нөөц нь хүний уншлын хувьд сайжруулахгүй.

Дэлгэрэнгүй дэлгэрэнгүй мэдээллийг болон үлгэрийн үр дүнг үзвэл tracing-subscriber баримт бичгийг үзнэ үү.

Default:full
Env:LOG_FORMAT
toml
[logger]
format = "json"
shell
LOG_FORMAT=json

Kura ​

Kura нь Iroha (хурбайн зориулалтаар Япон хэлээр) -ийн тасралтгүй агуулах хөдөлгүүр юм.

kura.blocks_in_memory ​

Хамгийн ихдээ N сүүлийн блок нь дурсамжинд хадгалагдах болно.

Эртний блокууд нь дурсамжаас хаягдаж, шаардлагатай бол дискээс ачаалал болно.

Type: Number
Default:1024
Env:KURA_BLOCKS_IN_MEMORY
toml
[kura]
blocks_in_memory = 1024
shell
KURA_BLOCKS_IN_MEMORY=1024

kura.init_mode ​

Kura нэвтрүүлгийн хэлбэр

Type:

Хадгаар, боломжтой үнэ цэнэ:

  • strict: бүх блокнуудыг хатуу баталгаажуулах
  • fast: Зөвхөн үндсэн хяналт шалгалтын тусламжтайгаар хурдан эхлүүлж байна
Default:strict
Env:KURA_INIT_MODE
toml
[kura]
init_mode = "fast"
shell
KURA_INIT_MODE=fast

kura.store_dir ​

Блокууд хадгалагдаж байгаа [^paths] захиалгыг тодорхойлдог.

Мөн: snapshot.store_dir.

Type: String, file path (relative to the config file or CWD)
Default:./storage
Env:KURA_STORE_DIR
toml
[kura]
store_dir = "/path/to/storage"
shell
KURA_STORE_DIR=/path/to/storage

kura.debug.output_new_blocks debug ​

Консоль дээр шинэ блок хэвлэх боломжийг олгодог флаг.

Type:todo bool
Default:false
Env:KURA_DEBUG_OUTPUT_NEW_BLOCKS
toml
[kura.debug]
output_new_blocks = true
shell
KURA_DEBUG_OUTPUT_NEW_BLOCKS=true

Төмөр ​

queue.capacity ​

Захиргаанд хүлээх гүйлгээний тооны дээд хязгаар.

Type: Number
Default:65_536
toml
[queue]
capacity = 1_048_576

queue.capacity_per_user ​

Зөвхөн нэг хэрэглэгчийн хувьд шуурхай хүлээх гүйлгээний тооны дээд хязгаар.

Энэ хувилбарыг ашиглаж, дулаан хийлгэх.

Type: Number
Default:65_536
toml
[queue]
capacity_per_user = 1_048_576

queue.transaction_time_to_live_ms ​

Энэ цагаас хойш аливаа бүтээн байгуулалтыг зогсоож болно, хэрэв энэ нь хэсгээрээ байгаа бол.

Type: Number, duration in milliseconds
Default:86_400_000 (24 hours)
toml
[queue]
transaction_time_to_live_ms = 43_200_000

Sumeragi ​

sumeragi.debug.force_soft_fork debug ​

Sumeragi мундаг шулуун хөөцөлдөх замыг хэрэгжүүлэхэд зөвхөн алдааны хөдөлгөөнтэй шилжүүлэг. Энэ нь хяналтын туршилтуудаас гадуур буулгах; үйл ажиллагаа явуулж буй үйлдвэрлэлийн сүлжээнд өөрчлөх нь эв нэгдлийн хандлагын талаар өрсөлдөгчдийн санал зөрчигдсөн болно.

Type:todo bool
Default:false
toml
[sumeragi.debug]
force_soft_fork = true

Зураг зураг ​

Энэ модуль нь World State View-ийн хүйтэн зургуудыг уншиж, бичдэг.

Снэпсхоуд нь World State View-ийн цувралсан хяналтын цэг хадгалдаг бөгөөд энэ нь Kura -аас бүхий л блок дахин тоглуулахгүйгээр дундаж эхлэх боломжтой юм. Kura бол удаан хугацаагаар үргэлжилсэн блокийн түүх болон дахин тоглох үнэн үүсвэр хэвээр үлддэг; снэпсHOOT нь хурдацлах зам юм . Эхлэлтийн үед Iroha нь хяналтын снэп-шоогийн метабараа конфигуруулсан зангилга, хадгалан үлдсэн блоктай харьцуулахад хяналт тавих эсвэл дахин тоглох эсэхээ шийдэхээс өмнө шалгаж байна.

Зураг зургуудыг арилгах

Снэпсхотын систем дээр ямар нэгэн асуудал үүссэн тохиолдолд, та богино хуудастан эхлүүлэх хүсэлтэй бол snapshot.store_dir заасан захиалгыг арилгаж болно.

snapshot.mode ​

Snapshot системийн үйл ажиллагааны хэлбэр.

Type:

Хадгаар, боломжтой үнэ цэнэ:

  • read_write: Iroha Урьдчилсан хугацаатай хяналтын зургуудыг бий болгох: snapshot.create_every_ms. Сургуулахдаа, Iroha одоогийн хяналтын зургийг уншиж, блокийн хадгаламжтай холбоотой цаг үеийн байдлыг баталгаажуулна.
  • readonly: read_write-тай ижил төстэй боловч Iroha нь ямар нэгэн хүйтэн зургийг үүсгэхгүй байна.
  • disabled: Iroha нь нээлт эхлэхэд шинэ хяналтын зургуудыг бий болгодоггүй, одоогийн зургийг уншдаггүй.
Default:read_write
Env:SNAPSHOT_MODE
toml
[snapshot]
mode = "readonly"
shell
SNAPSHOT_MODE=readonly

snapshot.create_every_ms ​

Сэтгэгдлийн давтамж.

Type: Number, duration in milliseconds
Default:600_000 (10 minutes)
toml
[snapshot]
create_every_ms = 60_000

snapshot.store_dir ​

Зураг зургийг хаана хадгалах вэ?

Түүнчлэн үзнэ үү: kura.store_dir

Type: String, file path (relative to the config file or CWD)
Default:./storage/snapshot
Env:SNAPSHOT_STORE_DIR
toml
[snapshot]
store_dir = "/path/to/storage"
shell
SNAPSHOT_STORE_DIR="/path/to/storage"

Телеметри ​

Telemetry нь гадаад телеметрийн цуглуулгад өрсөлдөгчдийн диагностиг экспорторуулдаг. telemetry.name болон telemetry.url аль алиныг нь төсөөлөгч нь цуглуулга руу мэдээлэх ёстой үед тохируулах; телеметрийг ашиглахгүй тохиолдолд хэсгийг орхисугай.

name болон url нь хамарсан байх ёстой.

Бүх telemetry хэсэг нь сонголттой.

telemetry.name ​

Тэлеметрийн дагуу үзүүлэх түймрийн нэр.

Type: String
toml
[telemetry]
name = "iroha"

telemetry.url ​

Телеметрийн цуглуулгачийн WebSocket URL .

Type: String
toml
[telemetry]
url = "ws://telemetry.example.com/submit"

telemetry.min_retry_period_ms ​

Цаг хугацааны хамгийн бага хугацаа нь сэргээлтийн өмнө хүлээх хугацаа юм.

Type: Number, duration in milliseconds
Default:1_000 (1 second)
toml
[telemetry]
min_retry_period_ms = 5_000

telemetry.max_retry_delay_exponent ​

Цаашид холбогдлын хоорондын хохирлыг нэмэгдүүлэхэд ашигладаг 2-ийн дээд үзүүлэлт.

Type: Number
Default:4
toml
[telemetry]
max_retry_delay_exponent = 4

dev_telemetry.out_file ​

De-Telemetry бичих файлын замыг

Type: String, file path (relative to the config file or CWD)
toml
[dev_telemetry]
out_file = "/path/to/file.json"