コレクターとの統合
Subscription APIは、選択した資産の環境および運用状況に関するイベントの通信先を確立することを可能にする。AWS IoTコア、Azureイベントハブ、Webhook通信チャネルをサポートしている。
サブスクリプションを作成して、Equinix APIのデータにアクセスすることもできる。手順については、「Equinix APIからColocationデータをストリームする」を参照。
エクイニクスmTLS証明書
MTLS証明書は、サーバとクライアントが相互認証するためのTLS(旧SSL)証明書の拡張として使用される。Equinixは、当社のサービスによって提供されるものと同様に、クライアントからこの信頼できる署名付き証明書を要求する。当社のサブスクリプションサービスは、接続検証の追加オプションを提供する。各通信試行で新しいイベントのバッチが送信されると、サブスクリプションサービスはクライアントから提供された証明書を使用して、データの送信先サービスが正しいものであることを検証する。
証明書を取得するには、エンドポイントに要求を/smartview/v2/streaming/subscriptions/certificate送信する。GETチャネル宛先をクエリーパラメータとして、またはのいずれかで指定する。AWS_IOT_CORE``WEBHOOK
サンプルcURLリクエスト:
curl -X 'GET' 'https://api.equinix.com/smartview/v2/streaming/subscriptions/certificate?channelType=WEBHOOK' \
-H 'Authorization: Bearer <Bearer Token>'
Subscription APIは自己署名証明書を受け入れない。相互認証にCA証明書を使用する
AWS IoT
サブスクリプション作成時にエンドポイントを提供することで、AWS IoTコアにデータを送信する。
EquinixがAWS IoTコアの宛先にイベントを送信することを許可するには、Equinix証明書をダウンロードしてIoTコアコンソールに登録する必要がある。手順については、AWS IoTコアのドキュメントを参照する。
Azure イベントハブ
Azure Event Hubにデータを送信するためのセルフサービス構成が利用できない。Azureへのデータ送信を有効にするには、サポートにお問い合わせください。
Webhook
コレクタとしてAWSやAzureを使用したくないが、ストリーミングデータを送信できるターゲットURLを提供できる場合、Equinixは一般的なWebhook宛先にデータを送信するサブスクリプションを作成することを提供する。
コレクターのためのオブジェクト・フォーマット
AWS IoTコアチャネルとAzureイベントハブチャネルのメッセージ形式により、メッセージが読みやすくなる。APIプラスのサブスクリプションで送信されるメッセージの例を次に示す。
環境-温度
{
"type": "environmental",
"data": {
"ibx": "CH2",
"asset": {
"id": "asset1",
"level": "ZONE"
},
"reading": {
"value": "23.300",
"unit": "CELSIUS"
},
"tag": {
"id": "temperature",
"displayName": "Temperature"
},
"readingTime": "2020-08-24T09:21:00.000Z"
}
}
環境 - 湿度
{
"type": "environmental",
"data": {
"ibx": "CH1",
"asset": {
"id": "asset1",
"level": "ZONE"
},
"reading": {
"value": "66.120",
"unit": "PERCENT"
},
"tag": {
"id": "humidity",
"displayName": "Humidity"
},
"readingTime": "2020-07-28T12:35:14.615Z"
}
}
電源
{
"type": "power",
"data": {
"ibx": "SP2",
"asset": {
"id": "0210:469593",
"type": "CIRCUIT"
},
"cage": "ssxxxxsss",
"cabinet": "SP2:01:021470:0210",
"accountNumber": "1000659151",
"realPower": {
"value": "0.522",
"unit": "kW"
},
"apparentPower": {
"value": "1.070",
"unit": "kVA"
},
"contractualPower": {
"value": "60.000",
"unit": "kVA"
},
"current": {
"value": "1.500",
"unit": "A"
},
"powerFactor": {
"value": "0.48",
"unit": "pf"
},
"soldCurrent": {
"value": "15.000",
"unit": "A"
},
"soldPower": {
"value": "2.880",
"unit": "kVA"
},
"powerConsumptionToContractual": {
"value": "32.151",
"unit": "PERCENT"
},
"cabinetRating": {
"value": "123.300",
"unit": "kVA"
},
"peakLastSevenDays": {
"value": "1.146",
"unit": "kVA"
},
"peakLastSevenDaysRatio": {
"value": "34.424",
"unit": "PERCENT"
},
"peakLastSevenDaysContractualPower": {
"value": "3.329",
"unit": "kVA"
},
"peakLastSevenDaysTime": "2020-07-29T07:00:00.000Z",
"lastUpdated": "2020-07-24T11:46:00.000Z",
"readingTime": "2020-07-24T11:45:00.000Z",
"description": "test description",
"oid": "1.3.6.1.2.1.299.2.10.6846",
"circuitType": "primary",
"customerName": "test customer"
}
}
電力量 - kWh
{
"type": "metered-power",
"data": {
"ibx": "LD9",
"asset": {
"id": "LD9.CBM-PDU-17-99",
"type": "Customer Billing Meter"
},
"cage": "LD9:0G:00Z13Z",
"cageSerialNo": "00Z13B-21010567",
"accountNumber": "1000006212",
"customerName": "ABC Company",
"kilowattHour": {
"value": "304574.323",
"unit": "kWh"
},
"readingTime": "2023-04-24T11:45:00.000Z",
"dataQuality": "Good"
}
}
注:従量電力測定値は、kWh、kW、kVA、a、pf (力率)単位で利用可能。
タグポイント
{
"type": "tag-point",
"data": {
"ibx": "LA1",
"reading": {
"value": "33406.6",
"unit": "l/s"
},
"tag": {
"id": "LA1.Air-Handler-7-4-4:totalsupplyairflow",
"displayName": "Total Supply Air Flow"
},
"readingTime": "2020-08-24T09:21:00.000Z"
}
}
カスタムアラート
{
"type": "alert",
"data": {
"ibx": "SG2",
"region": "APAC",
"asset": {
"id": "CH1.Colo.CH1_05_000550_0105",
"type": "ENVIRONMENTAL",
"classification": "Environmental"
},
"tag": {
"id": "temperature"
},
"threshold": {
"unit": "CELSIUS",
"maxValue": "-6.67",
"minValue": "-12.22"
},
"id": "zhe-15603221441540.3171591127612322145",
"triggeredTime": "2019-09-23T23:01:30.655Z",
"type": "environmental",
"typeId": "Absolute",
"conditional": "N",
"eventType": "Out of Range",
"heartbeat": false
}
}
システムアラート
{
"type": "system-alert",
"data": {
"ibx": "SG2",
"region": "APAC",
"metro": "SG",
"country": "SG",
"currentValue": {
"unit": "kWh",
"value": "2.650479E7",
"type": "float"
},
"asset": {
"id": "9SG2.ELEC4AUPSR-A10ASBF0",
"type": "Circuit Breaker with Metering",
"classification": "Electrical"
},
"tag": {
"id": "SG2.ELEC5BUPSR-B14UAH2Q:breaker",
"displayName": "Bypass Not Available"
},
"conditionName": "Low",
"status": {
"acknowledged": true,
"acknowledgementTime": "2020-07-28T12:35:14.615Z",
"cleared": false,
"active": false
},
"threshold": {
"unit": "kWh",
"stateLimit": "80",
"message": "Drive not in Auto"
},
"severity": 820,
"triggeredTime": "2020-07-28T12:35:14.615Z",
"processedTime": "2020-07-28T12:35:14.615Z",
"normalProcessedTime": "2020-07-28T12:35:14.615Z",
"normalTriggeredTime": "2020-07-28T12:35:14.615Z",
"type": "Digital",
"heartbeat": false
}
}
データ品質指標
このフィールドは、dataQualityデータポイントとアラート(システムとカスタム)のデータ品質インジケータ(DQI)をデータ自体の一部として提供する。これは、DCIM資産のデータが有効であり、信頼性の高い方法で収集されていることをAPIクライアントに確実に通知するために使用される。DQIの追加により、受信データの品質に関する透明性が提供される。
ストア&フォワード・インジケータ
Store and Forward Indicator (SNFI)としてのフィールドは、messageRetriedDCIMデータが実際にほぼリアルタイムか、またはNRTチャネルを介した接続の中断のために遅延して後で送信されるかを通信するために使用される。サブスクリプションクライアントとパブリッシャの間の接続に問題がある場合、パブリッシャはStore and Forward (SNF)メカニズムを使用して、パブリッシャ側にメッセージを格納する。接続が再確立されると、これらの保存されたメッセージとNRTイベントは、確立された接続時間後にクライアントに送信される。SNFI方式のために後で送信されたデータは、他の通常のデータと比較してNRTデータではなくなったためマークされる。
APIアプリケーションは、この2つの指標に基づいてビジネスルールと意思決定を行い、データの透明性とソリューション効率を向上させることができます。
{
"messageRetried": true,
"type": "tag-point",
"data": {
"ibx": "SG2",
"reading": {
"value": "54.0",
"unit": "s"
},
"tag": {
"id": "SG2.UPS-5-RM A22-04:batterytimeremaining",
"displayName": "Battery Time Remaining"
},
"readingTime": "2021-03-25T03:48:00.510Z",
"dataQuality": "Good"
}
}
ENUM とブーリアン値の解釈
以下のようなカラムを含むエクセルのスプレッドシートがプロバイダから提供される場合があります:
| IBX | アセットタイプ | 資産分類 | アセットID | TAG_SUFFIX | TAG_ID | TAG_DATA_TYPE | TAG_UOM | タグ_表示名 | 状態テーブル名 |
|---|---|---|---|---|---|---|---|---|---|
| TR5 | 火災、煙検知 | 機械式 | TR5.FireAlarm_001 | アラーム | TR5.FireAlarm_001:アラーム | ブール | アラーム | ノーマルアラーム | |
| TR5 | 漏れ検出 | 機械式 | tr5.ld_tr5_cable1 | リーク検出 | TR5.LD_TR5_CABLE1:leakdetected | ブール | リークを検出 | ノーマルアラーム | |
| TR5 | UPS | 電気 | TR5.UPS_2110 | 弾力性 | TR5.UPS_2110:resilient | ブール | レジリエント | リデュースレシル_レジラスデザイン |
ブール値およびENUM値については、最初の値(,)が REDUCEDRESILに対応し、02番目の値ALARM(,)がRESILASDESIGNEDに対応する場合のをNORMAL参照。STATE_TABLE_NAME``1
APIコール頻度
Power APIの場合は、アジア太平洋地域のデータセンターでは5分ごと、その他の地域では15分ごとにコールする。制限は、1ユーザあたり1日あたり100,000コール。
サブスクリプションAPI (REST収集方法)では、サブスクリプションIDごとに約30秒ごとに呼び出す。5分ごとに1回まで呼び出すだけで十分である。