Skip to content

設定パラメータ

汚染物質

ルーツレベル

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-Normalキーを使用しなければならない.

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

private_key required

ピアのプライベートキー. public_key に一致しなければならない;コンセンサス検証するピアは BLS-Normal キーを使用しなければならない.

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

trusted_peers

既定の信頼性のある同級者のリスト

コンセンサス検証者は BLS-Normal peer keysを使用しなければならない.各認証者に対して,一致するtrusted_peers_pop入力も提供してください.

Type:

P2P アドレスが知られている場合, PUBLIC_KEY@ADDRESS を使用し,裸の 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_keypop_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

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:

文字列 (String) は,コマで分離された1つまたは複数の指令で構成される.各指令には,対応する最大動詞性レベルが可能であるため (例えば,選択する) 範囲と一致するイベントがあります.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 すべてのモジュールについては, debug に関する iroha_core).

実行時間更新

このパラメータは, 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 は持続的なブロックの歴史であり,再プレイの真実源であり,スナップショットは加速経路です.起動時に, Iroha はスナップショットメタデータを設定されたチェーンと保存されたブロックに対して確認し,スナップシュートをロードするか再再生するかどうかを決定します.

スナップショットを消す

snapshot.store_dirで指定したディレクトリを削除できます.

snapshot.mode

スナップショットシステムが動作するモード.

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.nametelemetry.urlの両方を設定し,テレメトリックを使用しない場合はセクションを省略します.

nameurlはペアする必要があります.

すべての 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

Dev-テレメトリを書き出すファイルパス

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