エレメント一覧 (Device Connector Framework)

Device Connector Frameworkには、パイプラインを作成するための基本的なエレメントが付属しています。

Device Connector Frameworkの基本エレメント

srcエレメント

filterエレメント

sinkエレメント

注意

device-connector-intdashには、これ以外のエレメントも付属しています。 device-connector-intdashのエレメント一覧 を参照してください。

srcエレメント

以下のsrcエレメントを使用できます(アルファベット順)。

file-src

Rustドキュメント

指定されたパスのファイルを読み込み、内容をメッセージとして送出します。

エレメントの種類

src

次のエレメントに送信するポートの数

1

送信ポートでの送信形式

MIMEタイプ "application/octet-stream"

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

path

文字列

読み取るファイルのパス

process-src

Rustドキュメント

プロセスを起動し、起動したプロセスの標準出力をバッファサイズに収まるように区切って送出します。

エレメントの種類

src

次のエレメントに送信するポートの数

1

送信ポートでの送信形式

MIMEタイプ "application/octet-stream"

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

program

文字列

実行ファイル

args

文字列の配列

実行ファイルに渡す引数

command

文字列

実行ファイルと引数を1文字列で指定したもの。programとargsが指定されなかった場合に使用。

buffer_size

整数

バッファサイズ(バイト)。デフォルトは255。

retry

boolean(true / false)

実行ファイルが終了したときに再起動を行う( true )か行わない( false )か。デフォルトは行わない。

retry_interval_ms

小数

実行ファイルが終了したときに再起動を行う場合、何ミリ秒後に再起動するか。

repeat-process-src

Rustドキュメント

プロセスを繰り返し起動し、そのプロセスの標準出力をメッセージとして送出します。1度の起動で出力された標準出力が1つのメッセージになります。

エレメントの種類

src

次のエレメントに送信するポートの数

1

送信ポートでの送信形式

MIMEタイプ "application/octet-stream"

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

program

文字列

実行ファイル

args

文字列の配列

実行ファイルに渡す引数

command

文字列

実行ファイルと引数を1文字列で指定したもの。programとargsが指定されなかった場合に使用。

interval_ms

小数

出力頻度をミリ秒にて指定

tee-src

Rustドキュメント

tee-filter で複製されたメッセージを受け取り、それをそのまま送出します。

エレメントの種類

src

次のエレメントに送信するポートの数

1

送信ポートでの送信形式

MIMEタイプ "application/octet-stream"

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

name

文字列

どの tee-filter からのメッセージを受け取るかを識別するための文字列

text-src

Rustドキュメント

指定されたテキストを送出します。

エレメントの種類

src

次のエレメントに送信するポートの数

1

送信ポートでの送信形式

MIMEタイプ "application/octet-stream"

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

text

文字列

メッセージのテキスト

interval_ms

整数値

メッセージ生成の間隔をミリ秒にて指定

repeat

整数値

「メッセージ送出のタイミングごとに、メッセージを何回送出するか」を指定します。デフォルトは1です 例えば interval_ms: 100 かつ repeat: 5 の場合、100ミリ秒経過ごとに5回メッセージを送出します。

filterエレメント

以下のfilterエレメントを使用できます(アルファベット順)。

split-by-delimiter-filter

Rustドキュメント

受信したメッセージを、区切り文字で区切り、区切りごとにメッセージとして送出します。送出に区切り文字は含みません。

エレメントの種類

filter

前のエレメントから受信するポートの数

1

次のエレメントに送信するポートの数

1

受信ポートでの受信形式

任意

送信ポートでの送信形式

任意(受け取ったメッセージをそのまま送信ポートに書き出します)

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

delimiter

文字列

区切り文字。デフォルトは改行( \n

limit_size

整数

区切り文字が検出されるまでに保持できるメッセージの長さ(バイト)。デフォルトは1GiB

split-by-fixed-size-filter

Rustドキュメント

受信したメッセージを、指定された長さで区切り、区切りごとにメッセージとして送出します。

エレメントの種類

filter

前のエレメントから受信するポートの数

1

次のエレメントに送信するポートの数

1

受信ポートでの受信形式

任意

送信ポートでの送信形式

任意(受け取ったメッセージをそのまま送信ポートに書き出します)

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

size

整数

1メッセージの長さ(バイト)

stat-filter

Rustドキュメント

データを受け取った回数やサイズを確認するためのエレメントです。 メッセージを受け取り、それをそのまま送出します。受け取ったメッセージの回数とサイズを記録し、その統計情報を標準エラー出力に書き出します。

エレメントの種類

filter

前のエレメントから受信するポートの数

1

次のエレメントに送信するポートの数

1

受信ポートでの受信形式

任意

送信ポートでの送信形式

受信ポートに入力されたデータをそのまま出力

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

interval_ms

整数

出力頻度をミリ秒にて指定

tee-filter

Rustドキュメント

受信したメッセージをそのまま送信ポートから送信します。 その際にメッセージを複製します。複製されたメッセージは tee-src で使用することができます。

エレメントの種類

filter

前のエレメントから受信するポートの数

1

次のエレメントに送信するポートの数

1

受信ポートでの受信形式

任意

送信ポートでの送信形式

任意(受け取ったメッセージをそのまま送信ポートに書き出します)

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

name

文字列

どの tee-src にメッセージを送るかを識別するための文字列

channel_capacity

文字列

送出するメッセージをバッファリングできる数

設定例:

../../_images/tee-filter-sample.svg
tasks:
  - id: 1
    element: text-src
    conf:
      text: hello
      interval_ms: 1000

  - id: 2
    element: tee-filter
    from: [[1]]
    conf:
      name: tee-test

  - id: 3
    element: tee-src
    conf:
      name: tee-test

  - id: 4
    element: file-sink
    from: [[2]]
    conf:
      path: /var/run/intdash/string1.fifo

  - id: 5
    element: file-sink
    from: [[3]]
    conf:
      path: /var/run/intdash/string2.fifo

sinkエレメント

以下のsinkエレメントを使用できます(アルファベット順)。

file-sink

Rustドキュメント

指定されたパスのファイルに、受け取ったメッセージを書き出します。

エレメントの種類

sink

前のエレメントから受信するポートの数

1

受信ポートでの受信形式

任意(受け取ったデータをそのままファイルに書き出します)

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

path

文字列

出力先のファイルパス

create

true/false

trueの場合、出力先のファイルがない場合は作成する。デフォルトは false

separator

文字列

メッセージ出力ごとに挿入するテキスト。デフォルトは空

flush_size

整数

入力をフラッシュするまでにバッファにためるデータ量(バイト)。デフォルトは0

null-sink

Rustドキュメント

メッセージを受け取りますが、それを何にも使わずに破棄します。

エレメントの種類

sink

前のエレメントから受信するポートの数

1

受信ポートでの受信形式

任意

エレメント独自の設定項目はありません。

stdout-sink

Rustドキュメント

受け取ったメッセージを標準出力に書き出します。

エレメントの種類

sink

前のエレメントから受信するポートの数

1

受信ポートでの受信形式

任意

エレメント独自の設定項目は以下のとおりです。 conf: 以下に記述します。

項目

設定値

説明

separator

文字列

メッセージ出力ごとに挿入するテキスト。デフォルトは空

flush_size

整数

入力をフラッシュするまでにバッファにためるデータ量(バイト)。デフォルトは0