設定リファレンス

Wippyは.wippy.yamlファイルで設定されます。すべてのオプションには妥当なデフォルト値があります。

ログマネージャ

ランタイムログルーティングを制御します。コンソール出力はCLIフラグ-v, -c, -s)で設定します。

フィールド デフォルト 説明
propagate_downstream bool true ログをコンソール/ファイル出力に送信
stream_to_events bool false プログラムアクセス用にログをイベントバスに公開
min_level int -1 最小レベル: -1=debug, 0=info, 1=warn, 2=error
logmanager:
  propagate_downstream: true
  stream_to_events: false
  min_level: 0

参照: ロガーモジュール

プロファイラ

CPU/メモリプロファイリング用のGo pprof HTTPサーバー。-pフラグまたは設定で有効化。

フィールド デフォルト 説明
enabled bool false プロファイラサーバーを起動
address string localhost:6060 リッスンアドレス
read_timeout duration 15s HTTP読み取りタイムアウト
write_timeout duration 15s HTTP書き込みタイムアウト
idle_timeout duration 60s Keep-aliveタイムアウト
profiler:
  enabled: true
  address: "localhost:6060"

アクセス: http://localhost:6060/debug/pprof/

セキュリティ

グローバルセキュリティ動作。個別のポリシーはsecurity.policyエントリとして定義されます。

フィールド デフォルト 説明
strict_mode bool false セキュリティコンテキストが不完全な場合にアクセスを拒否
security:
  strict_mode: true

参照: セキュリティシステム, セキュリティモジュール

レジストリ

エントリストレージとバージョン履歴。レジストリはすべての設定エントリを保持します。

フィールド デフォルト 説明
enable_history bool true エントリバージョンを追跡
history_type string memory ストレージ: memory, sqlite, nil
history_path string .wippy/registry.db SQLiteファイルパス
registry:
  history_type: sqlite
  history_path: /var/lib/wippy/registry.db

参照: レジストリコンセプト, レジストリモジュール

リレー

ノード間のプロセス間メッセージルーティング。

フィールド デフォルト 説明
node_name string local このリレーノードの識別子
relay:
  node_name: worker-1

参照: プロセスモデル

スーパーバイザ

サービスライフサイクル管理。監督されたエントリの起動/停止を制御します。

フィールド デフォルト 説明
host.buffer_size int 1024 メッセージキュー容量
host.worker_count int NumCPU 同時ワーカー数
supervisor:
  host:
    buffer_size: 2048
    worker_count: 32

参照: スーパービジョンガイド

関数

関数実行ホスト。function.luaエントリを実行します。

フィールド デフォルト 説明
host.buffer_size int 1024 タスクキュー容量
host.worker_count int NumCPU 同時ワーカー数
functions:
  host:
    buffer_size: 2048
    worker_count: 32

参照: 関数コンセプト, Funcsモジュール

Luaランタイム

Lua VMキャッシュと式評価。

フィールド デフォルト 説明
proto_cache_size int 60000 コンパイル済みプロトタイプキャッシュ
main_cache_size int 10000 メインチャンクキャッシュ
expr.cache_enabled bool true コンパイル済み式をキャッシュ
expr.capacity int 5000 式キャッシュサイズ
json.cache_enabled bool true JSONスキーマをキャッシュ
json.capacity int 1000 JSONキャッシュサイズ
lua:
  proto_cache_size: 60000
  expr:
    cache_enabled: true
    capacity: 5000

参照: Lua概要

ファインダー

レジストリ検索キャッシュ。エントリルックアップに内部的に使用されます。

フィールド デフォルト 説明
query_cache_size int 1000 キャッシュされたクエリ結果
regex_cache_size int 100 コンパイル済み正規表現パターン
finder:
  query_cache_size: 2000

OpenTelemetry

OTLPによる分散トレーシングとメトリクスエクスポート。

フィールド デフォルト 説明
enabled bool false OTELを有効化
endpoint string localhost:4318 OTLPエンドポイント
protocol string http/protobuf プロトコル: grpc, http/protobuf
service_name string wippy サービス識別子
sample_rate float 1.0 トレースサンプリング(0.0-1.0)
traces_enabled bool false トレースをエクスポート
metrics_enabled bool false メトリクスをエクスポート
http.enabled bool true HTTPリクエストをトレース
process.enabled bool true プロセスライフサイクルをトレース
interceptor.enabled bool false 関数呼び出しをトレース
otel:
  enabled: true
  endpoint: "http://jaeger:4318"
  traces_enabled: true
  process:
    trace_lifecycle: true

参照: 可観測性ガイド

シャットダウン

グレースフルシャットダウン動作。

フィールド デフォルト 説明
timeout duration 30s コンポーネント停止の最大待機時間
shutdown:
  timeout: 60s

メトリクス

内部メトリクス収集バッファ。

フィールド デフォルト 説明
buffer.size int 10000 メトリクスバッファ容量
interceptor.enabled bool false 関数呼び出しを自動追跡
metrics:
  buffer:
    size: 20000
  interceptor:
    enabled: true

参照: メトリクスモジュール, 可観測性ガイド

Prometheus

Prometheusメトリクスエンドポイント。

フィールド デフォルト 説明
enabled bool false メトリクスサーバーを起動
address string localhost:9090 リッスンアドレス
prometheus:
  enabled: true
  address: "0.0.0.0:9090"

Prometheusスクレイピング用の/metricsエンドポイントを公開します。

参照: 可観測性ガイド

クラスタ

ゴシップディスカバリによるマルチノードクラスタリング。

フィールド デフォルト 説明
enabled bool false クラスタリングを有効化
name string hostname ノード識別子
internode.bind_addr string 0.0.0.0 ノード間バインドアドレス
internode.bind_port int 0 ポート(0=自動 7950-7959)
membership.bind_port int 7946 ゴシップポート
membership.join_addrs string シードノード(カンマ区切り)
membership.secret_key string 暗号化キー(base64)
membership.secret_file string キーファイルパス
membership.advertise_addr string NAT用パブリックアドレス
cluster:
  enabled: true
  name: node-1
  membership:
    bind_port: 7946
    join_addrs: "10.0.0.1:7946,10.0.0.2:7946"
    secret_file: /etc/wippy/cluster.key

参照: クラスタガイド

環境変数

変数 説明
GOMEMLIMIT メモリ制限(--memory-limitフラグをオーバーライド)

関連項目