SORACOM, INC.

User Console »
Getting Started

SORACOM Funnel の Kinesis Firehose アダプターを使用してクラウドにデータを収集する(コンソール版)

当ガイドでは、SORACOM Funnel (以下、Funnel) の Amazon Kinesis Firehose アダプターを使用し、デバイスから送信するデータを Amazon S3 に収集します。

Funnel の設定は、SORACOM ユーザーコンソールを使用しています。SDK を使用する場合は、SORACOM Funnel の Kinesis Firehose アダプターを使用してクラウドにデータを収集する( SDK 版) を参照してください。

また、サービスの詳細は 「SORACOM Funnelサービス概要ページ」 を、より詳細な技術仕様は「SORACOM Funnel機能詳細」をご覧ください。


はじめに

Funnel は、デバイスからのデータを特定のクラウドサービスに直接転送するクラウドリソースアダプターです。

クラウドサービス上のリソースを指定するだけで、デバイスからのデータを直接に収集できます。 SORACOM Beamとの大きな相違点は、送信先が汎用的なプロトコルではない一方で、最小限の手間で、迅速にクラウドサービスを利用することができます。

Funnel概要


Amazon Kinesis Firehose の設定

まず、クラウドサービス側の Amazon Kinesis Firehose を設定します。 AWS (Amazon Web Services) のコンソールから「Kinesis」を選択します。

Funnel

「Go to Kinesis Firehose」をクリックします。

Funnel

東京リージョンを選択している場合は、以下のような画面が表示されますので、リージョンを選択してください。 ここでは、「米国(オレゴン)」を選択します。

Funnel

Amazon Kinesis Firehose の管理画面から「ストリームを作成」を選択します。

Funnel

次に、以下のように Destination として「Amazon S3」、Delivery stream name に「my-kinesis-firehose01」を選択し、S3 bucket を選択します。

Funnel

Kinesis Firehose サービスが使用する IAM ロールを選択します。ここでは、「Firehose delivery IAM role」を選択します。

Funnel

以下のような画面が表示されたら、IAM ロールのアクセスを許可します。

Funnel

IAM ロールを確認し、「Next」をクリックします。

Funnel

設定内容を確認し、「Create Delivery Stream」をクリックし、Delivery Streamを作成します。

Funnel

次に、Kinesis Firehose にアクセスする IAM ユーザーを作成します。 AWS の IAM Management Console で、既存のユーザーもしくは、新規にユーザーを作成し、ポリシーをアタッチします。 以下では、Full Access をアタッチしています。

Funnel

以上で、クラウドサービス側(Amazon Kinesis Firehose)の設定は完了です。


SORACOM Funnel の設定

SORACOM 側(Funnel)の設定は、以下の2つのステップで完了します。

クレデンシャルの登録

まず、AWS にアクセスするためのクレデンシャル情報を登録します。 ユーザーコンソールにログインしてください。

画面左上部のプルダウンメニューから「セキュリティ」をクリックします。

Funnel

以下のような画面が表示されます。 左のメニューから「認証情報ストア」を選択し、「認証情報を登録」をクリックしてください。

Funnel

認証情報を登録します。

Funnel

以下のように「my-aws-credentials」という ID で認証情報を登録しました。

Funnel

クラウドサービスの指定

次に、クラウドサービスを指定します。Funnel の設定(クラウドサービスの指定)は Air SIM のグループに適用します。

以下のようにグループを作成してください。

Funnel

画面左上部のプルダウンメニューから「グループ」をクリックし、作成したグループを選択します。 以下のような画面が表示されます。

Funnel

「SORACOM Funnel 設定」のタブを開き、以下のようにクラウドサービスを指定します。

Funnel

以上で、設定は完了です。

Kinesis Firehose アダプターを使用してクラウドにデータを収集する

いよいよデータを送信します。 忘れずに、SORACOM Air の SIM を先ほど作成したグループに所属させてください。

Funnel

Funnel のエンドポイントに対し、リクエストを送信します。エンドポイントは、以下となります。

TCP で送信

$ nc funnel.soracom.io 23080
{"message":"Hello SORACOM Funnel via TCP!"} [Enter]
200
[Ctrl+C]

UDP で送信

$ nc -u funnel.soracom.io 23080
{"message":"Hello SORACOM Funnel via UDP!"} [Enter]
200
[Ctrl+C]

HTTP で送信

~$ curl -vX POST http://funnel.soracom.io -d '{"message":"Hello SORACOM Funnel via HTTP!"}' -H Content-Type:application/json
* Rebuilt URL to: http://funnel.soracom.io/
*   Trying 100.127.65.43...
* Connected to funnel.soracom.io (100.127.65.43) port 80 (#0)
> POST / HTTP/1.1
> Host: funnel.soracom.io
> User-Agent: curl/7.43.0
> Accept: */*
> Content-Type:application/json
> Content-Length: 44
>
* upload completely sent off: 44 out of 44 bytes
< HTTP/1.1 204 No Content
< Date: Thu, 14 Jan 2016 17:18:46 GMT
< Connection: keep-alive
<
* Connection #0 to host funnel.soracom.io left intact

収集されたデータを確認する

Kinesis Firehose の出力先 (Destination) として指定した S3 Bucket を確認します。 以下のようにファイルが生成されていることが確認できます。

Funnel

{"operatorId": "OP0026965167", "timestamp": 1455672330494, "destination": {"resourceUrl": "https://firehose.us-west-2.amazonaws.com/my-kinesis-firehose01", "service": "firehose", "provider": "aws"}, "credentialsId": "my-aws-credentials", "payloads": {"message": "Hello SORACOM Funnel via TCP!"}, "sourceProtocol": "tcp", "imsi": "440XXXXXXXXXX"}
{"operatorId": "OP0026965167", "timestamp": 1455672351248, "destination": {"resourceUrl": "https://firehose.us-west-2.amazonaws.com/my-kinesis-firehose01", "service": "firehose", "provider": "aws"}, "credentialsId": "my-aws-credentials", "payloads": {"message": "Hello SORACOM Funnel via UDP!"}, "sourceProtocol": "udp", "imsi": "440XXXXXXXXXX"}
{"operatorId": "OP0026965167", "timestamp": 1455672363539, "destination": {"resourceUrl": "https://firehose.us-west-2.amazonaws.com/my-kinesis-firehose01", "service": "firehose", "provider": "aws"}, "credentialsId": "my-aws-credentials", "payloads": {"message": "Hello SORACOM Funnel via HTTP!"}, "sourceProtocol": "http", "imsi": "440XXXXXXXXXX"}

エラーログの確認

Funnel では、直近2週間で発生したエラーログを保管しており、ユーザコンソールやAPIから確認することができます。うまく通信できないときなどのデバッグに利用できます。

確認できるエラーログの内容は以下のとおりです。

注意
ログは直近2週間分のみ参照可能です。それより古いログは閲覧できませんので、ご注意ください。

ユーザコンソールでは、ドロップダウンメニューの「ログ」からアクセスできます。

logs

以上で、「SORACOM Funnel の Kinesis Firehose アダプターを使用してクラウドにデータを収集する(コンソール版)」は完了です。

Funnel を使用することで、デバイスにクラウドサービスの SDK をいれる必要はありません。 また、クラウドサービスのクレデンシャル情報をデバイスに持つ必要もありません。

クラウドサービスのクレデンシャル情報とリソース URL を指定するのみで、デバイスから直接クラウドサービスにデータを送信することが可能となりました。 お客さまは最小限の手間で、迅速にデバイスとクラウドサービスを利用したシステムを使うことができるようになります。

はじめに

SORACOM Air for セルラー

SORACOM Air for LoRaWAN

SORACOM Beam

SORACOM Canal

SORACOM Endorse

SORACOM Funnel

SORACOM Gate

SORACOM Harvest

pagetop