1.1.1. core_config.json

ICe Coreの動作全般の設定を指定するjsonファイル

  • debug_mode
    デバッグモードの場合true(既定値:true)
  • default_logger
    使用するロガーの名前を指定します。”CORE” あるいは “SYSLOG”。(既定値: “SYSLOG”)
  • edge_id
    ユニークなエッジIDを指定します。クラウドからのメッセージ受信のトピック名になります。
  • groups
    複数エッジへの同報用トピック名を配列で指定します。
  • modifiable_home_dir
    稼働中に書き変わる可能性のあるファイル(ネイティブアプリケーションのpid、stdout、stderr、nanomsgのIPCファイル)のホームを変更する場合に指定します。
  • heartbeat
    Core起動後も定期的にエッジの情報をバックエンドに登録するハートビート機能の設定項目。
    • heartbeat.enabled: ハートビート機能を有効にする場合にtrue。
    • heartbeat.min_interval: ハートビート機能の間隔の最小値をミリ秒で設定。(既定値1800000)
    • heartbeat.max_interval: ハートビート機能の間隔の最大値をミリ秒で設定。(既定値3600000)
    • heartbeat.adapter.qos: ハートビート機能のqosを設定。(既定値1)
  • mqtt
    MQTT関連の設定
    • mqtt.url: MQTTブローカーのURL。平文時はmqtt://<ホスト名>:<ポート>、TLS時はmqtts://<ホスト名>:<ポート>
    • mqtt.key: ${ICE_HOME}/confディレクトリに配置されたTLS時のkeyファイルを指定します。
    • mqtt.cert: ${ICE_HOME}/confディレクトリに配置されたTLS時のcertファイルを指定します。
    • mqtt.ca: ${ICE_HOME}/confディレクトリに配置されたTLS時のca_certファイルを配列で指定します。
    • mqtt.timeout: Core起動後にこの時間(ミリ秒)までにMQTTブローカーに接続できない場合、警告ログを出力します。(既定値30000)
    • mqtt.abort_if_timeout: trueの時、上記タイムアウト発生時に、Coreを停止させます。
    • mqtt.options: その他オプションを指定します。
      • mqtt.options.username: ブローカー接続のためのユーザ名
      • mqtt.options.password: ブローカー接続のためのパスワード
      • mqtt.options.reschedulePings: falseの場合、MQTTクライアントのpingを必ず定期的に行います。
      • mqtt.options.outgoingStore: MQTT送信バッファに関する設定
      • mqtt.options.ice: ICE独自拡張機能に関する設定
    • mqtt.outboundTopicName: 外向けの通信に使用するトピック名
      • mqtt.outboundTopicName.app: アプリケーション用のトピック名
      • mqtt.outboundTopicName.adm: 内部運用管理用のトピック名
    • mqtt.disableDefaultClient: ICE Backend接続用のMQTTクライアントを使用しない場合にtrueを指定します。
  • http
    HTTPクライアント用の設定
    • http.options: HTTPクライアントのオプションを指定します
  • https
    HTTPSクライアントのオプションを指定します
    • https.key: ${ICE_HOME}/confディレクトリに配置HTTPS時のkeyファイル。
    • https.cert: ${ICE_HOME}/confディレクトリに配置されたHTTPS時のcertファイル。
    • https.ca: ${ICE_HOME}/confディレクトリに配置されたHTTPS時のca_certファイルを配列で指定します。
    • https.options: HTTPSクライアントのオプションを指定
  • native_app
    ネイティブアプリケーション自動起動用の設定
    • native_app.initial_delay: 自動起動アプリケーションの起動を開始する時間をミリ秒で指定。
    • native_app.interval: 自動起動アプリケーションのプライオリティグループごとの起動間隔をミリ秒で指定。
    • native_app.shutdown_timeout: config.jsonでwait_for_shutdownがtrueに設定されている自動起動アプリケーションの最大待ち合わせ時間をミリ秒で指定(既定値30000)
    • native_app.env: 環境変数を指定
      • native_app.env.LD_LIBRARY_PATH_suffix: LD_LIBRARY_PATHのサフィックスを指定
      • native_app.env.default_env: その他の環境変数を指定
    • native_app.process_limit: 自動起動アプリケーションの同時起動可能プロセス数を指定(既定値255)
  • download
    ダウンロード機能の設定
    • download.white_dirs: ダウンロード機能でダウンロードしたファイルを置けるディレクトリを配列で指定します。download_pathがここで指定されたディレクトリ配下ではない時、原因コード1/2 で失敗します。
    • download.default_timeout: ダウンロード機能でtimeoutに設定された値が0以下、nullあるいは未指定の場合、代わりにこの値をタイムアウト値とします。(既定値3600000)
    • download.max_timeout: ダウンロード機能でtimeoutに設定された値がこの値よりも大きい時、代わりにこの値をタイムアウト値とします。(既定値3600000)
    • check_content_length: trueの時ダウンロード機能によるダウンロード後、Content-Lengthをチェックします。一致しないとき、原因コード1/5で失敗します。
  • upload
    アップロード機能の設定
    • upload.white_dirs: アップロード機能でアップロードするファイルのあるディレクトリを配列で指定します。upload_fileがここで指定されたディレクトリ配下ではない時、原因コード1/3で失敗します。
    • upload.default_timeout: アップロード機能でtimeoutに設定された値が0以下、nullあるいは未指定の場合、代わりにこの値をタイムアウト値とします。(既定値3600000)
    • upload.max_timeout: アップロード機能でtimeoutに設定された値がこの値よりも大きい時、代わりにこの値をタイムアウト値とします。(既定値3600000)
  • nodered
    Node-RED連携の設定
    • nodered.enabled: Node-REDの有効化・無効化を指定します。trueの場合、ICE Core起動時にNode-REDが起動します。falseの場合、Node-REDは起動しません。(既定値true)
    • nodered.config_file: Node-REDの設定ファイルのパスを指定します。既定では${ICE_HOME}/conf/nodered_settings.jsが設定されます。