

Amazon Monitron은 더 이상 신규 고객에게 공개되지 않습니다. 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. Amazon Monitron과 유사한 기능은 [블로그 게시물](https://aws.amazon.com/blogs/machine-learning/maintain-access-and-consider-alternatives-for-amazon-monitron)을 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# v2 데이터 내보내기 스키마의 이해
<a name="data-export-schema-v2"></a>

 각 측정 데이터, 해당 추론 결과, 게이트웨이 연결/연결 해제, 센서 연결/연결 해제 이벤트는 JSON 형식의 Kinesis 데이터 스트림 레코드 하나로 내보내집니다.

**Topics**
+ [v2 스키마 형식](#data-export-schema-format-v2)
+ [v2 스키마 파라미터](#data-export-schema-parameters-v2)

## v2 스키마 형식
<a name="data-export-schema-format-v2"></a>

```
{
    "timestamp": "string",
    "eventId": "string",
    "version": "2.0",
    "accountId": "string",
    "projectName": "string",
    "projectId": "string",
    "eventType": "measurement|gatewayConnected|gatewayDisconnected|sensorConnected|sensorDisconnected|assetStateTransition",
    // measurement
    "eventPayload": {
        "siteName": "string",
        "assetName": "string",
        "positionName": "string",
        "companyName": "string",
        "geoLocation": {
            "latitude": number,
            "longitude": number
        },
        "address": "string",
        "serialNumber": "string",
        "make": "string",
        "model": "string",
        "assetPositionURL": "string",
        "sensor": {
            "physicalId": "string",
            "rssi": number
        },
        "gateway": {
            "physicalId": "string"
        },
        "sequenceNo": number,
        "features": {
            "acceleration": {
                "band0To6000Hz": {
                    "xAxis": {
                        "rms": number
                    },
                    "yAxis": {
                        "rms": number
                    },
                    "zAxis": {
                        "rms": number
                    }
                },
                "band10To1000Hz": {
                    "totalVibration": {
                        "absMax": number,
                        "absMin": number,
                        "crestFactor": number,
                        "rms": number
                    },
                    "xAxis": {
                        "rms": number
                    },
                    "yAxis": {
                        "rms": number
                    },
                    "zAxis": {
                        "rms": number
                    }
                }
            },
            "velocity": {
                "band10To1000Hz": {
                    "totalVibration": {
                        "absMax": number,
                        "absMin": number,
                        "crestFactor": number,
                        "rms": number
                    },
                    "xAxis": {
                        "rms": number
                    },
                    "yAxis": {
                        "rms": number
                    },
                    "zAxis": {
                        "rms": number
                    }
                }
            },
            "temperature": number
        }
        "models": {
            "temperatureML": {
                "previousPersistentClassificationOutput": "string",
                "persistentClassificationOutput": "string",
                "pointwiseClassificationOutput": "string"
            },
            "vibrationISO": {
                "isoClass": "string",
                "mutedThreshold": "string",
                "previousPersistentClassificationOutput": "string",
                "persistentClassificationOutput": "string",
                "pointwiseClassificationOutput": "string"
            },
            "vibrationML": {
                "previousPersistentClassificationOutput": "string",
                "persistentClassificationOutput": "string",
                "pointwiseClassificationOutput": "string"
            }
        },
        "assetPositionId": "string"
    }
    
    // sensorConnected
    "eventPayload": {
        "siteName": "string",
        "assetName": "string",
        "positionName": "string",
        "companyName": "string",
        "geoLocation": {
            "latitude": number,
            "longitude": number
        },
        "address": "string",
        "serialNumber": "string",
        "make": "string",
        "model": "string",
        "assetPositionURL": "string",
        "sensor": {
            "physicalId": "string"
        },
        "assetPositionId": "string"
    }
    
    // sensorDisconnected
    "eventPayload": {
        "siteName": "string",
        "assetName": "string",
        "positionName": "string",
        "companyName": "string",
        "geoLocation": {
            "latitude": number,
            "longitude": number
        },
        "address": "string",
        "serialNumber": "string",
        "make": "string",
        "model": "string",
        "assetPositionURL": "string",
        "sensor": {
            "physicalId": "string"
        },
        "assetPositionId": "string"
    }
    
    // gatewayConnected
    "eventPayload": {
        "siteName": "string",
        "gatewayName": "string",
        "gatewayListURL": "string",
        "companyName": "string",
        "geoLocation": {
            "latitude": number,
            "longitude": number
        },
        "address": "string",
        "gateway": {
            "physicalId": "string"
        }
    }
    
    // gatewayDisconnected
    "eventPayload": {
        "siteName": "string",
        "gatewayName": "string",
        "gatewayListURL": "string",
        "companyName": "string",
        "geoLocation": {
            "latitude": number,
            "longitude": number
        },
        "address": "string",
        "gateway": {
            "physicalId": "string"
        }
    }
    
    // assetStateTransition
    "eventPayload": {
        "siteName": "string",
        "assetName": "string",
        "positionName": "string",
        "companyName": "string",
        "geoLocation": {
            "latitude": number,
            "longitude": number
        },
        "address": "string",
        "serialNumber": "string",
        "make": "string",
        "model": "string",
        "assetPositionURL": "string",
        "sensor": {
            "physicalId": "string"
        },
        "assetTransitionType": "measurement|userInput",
        "assetState": {
            "newState": "string",
            "previousState": "string"
        },
        "closureCode": {
            "failureMode": "string",
            "failureCause": "string",
            "actionTaken": "string",
            "resolvedModels": list<"string">
        },
        "assetPositionId": "string"
    }
}
```

## v2 스키마 파라미터
<a name="data-export-schema-parameters-v2"></a>

 Amazon Monitron Kinesis 데이터 내보내기 스키마 v2에는 다음과 같은 스키마 파라미터가 포함되어 있습니다. 일부 파라미터는 v1에서 업데이트된 것이고 일부는 v2 고유의 것입니다. 예를 들어 `siteName`은 v1의 첫 번째 수준 파라미터입니다. v2에서는 `eventPayload` 엔티티 아래에서 찾을 수 있는 두 번째 수준 파라미터입니다.

timestamp  
+ Amazon Monitron 서비스가 측정값을 UTC로 수신할 때의 타임스탬프
+ 유형: 문자열
+ 패턴: yyyy-mm-dd hh:mm:ss.SSS

eventId  
+ 각 측정에 할당된 고유한 데이터 내보내기 이벤트 ID. 수신한 Kinesis 스트림 레코드의 중복을 제거하는 데 사용할 수 있습니다.
+ 유형: 문자열

version  
+ 스키마 버전
+ 유형: 문자열
+ 값: 1.0 또는 2.0

accountId  
+ Monitron 프로젝트의 12자리 AWS 계정 ID
+ 유형: 문자열

projectName  
앱과 콘솔에 표시되는 프로젝트 이름.  
유형: 문자열

projectId  
 Amazon Monitron 프로젝트의 고유 ID입니다.  
유형: 문자열

eventType  
+ 현재 이벤트 스트림. 각 이벤트 유형에는 전용 `eventPayload` 형식이 있습니다.
+ 유형: 문자열
+ 가능한 값: `measurement`, `gatewayConnected`, `gatewayDisconnected`, `sensorConnected`, `sensorDisconnected`, `assetStateTransition`.

**`eventType: measurement`**

eventPayload.features.acceleration.band0To6000Hz.xAxis.rms  
+ x축의 주파수 대역 0\~6000Hz에서 관찰된 가속도의 평균 제곱근
+ 형식: 숫자
+ 단위: m/s^2

eventPayload.features.acceleration.band0To6000Hz.yAxis.rms  
+ y축의 주파수 대역 0\~6000Hz에서 관찰된 가속도의 평균 제곱근
+ 형식: 숫자
+ 단위: m/s^2

eventPayload.features.acceleration.band0To6000Hz.zAxis.rms  
+ z축의 주파수 대역 0\~6000Hz에서 관찰된 가속도의 평균 제곱근
+ 형식: 숫자
+ 단위: m/s^2

eventPayload.features.acceleration.band10To1000Hz.resultantVector.absMax  
+ 주파수 대역 10\~1000Hz에서 관찰된 절대 최대 가속도
+ 형식: 숫자
+ 단위: m/s^2

eventPayload.features.acceleration.band10To1000Hz.resultantVector.absMin  
+ 주파수 대역 10\~1000Hz에서 관찰된 절대 최소 가속도
+ 형식: 숫자
+ 단위: m/s^2

eventPayload.features.acceleration.band10To1000Hz.resultantVector.crestFactor  
+ 주파수 대역 10\~1000Hz에서 관찰된 가속 파고율
+ 형식: 숫자

eventPayload.features.acceleration.band10To1000Hz.resultantVector.rms  
+ 주파수 대역 10\~1000Hz에서 관찰된 가속도의 평균 제곱근
+ 형식: 숫자
+ m/s^2

eventPayload.features.acceleration.band10To1000Hz.xAxis.rms  
+ x축의 주파수 대역 10\~1000Hz에서 관찰된 가속도의 평균 제곱근
+ 형식: 숫자
+ m/s^2

eventPayload.features.acceleration.band10To1000Hz.yAxis.rms  
+ y축의 주파수 대역 10\~1000Hz에서 관찰된 가속도의 평균 제곱근
+ 형식: 숫자
+ m/s^2

eventPayload.features.acceleration.band10To1000Hz.zAxis.rms  
+ z축의 주파수 대역 10\~1000Hz에서 관찰된 가속도의 평균 제곱근
+ 형식: 숫자
+ m/s^2

eventPayload.features.temperature  
+ 관찰된 온도
+ 형식: 숫자
+ °C/도

eventPayload.features.velocity.band10To1000Hz.resultantVector.absMax  
+ 주파수 대역 10\~1000Hz에서 관찰된 절대 최대 속도
+ 형식: 숫자
+ mm/s

eventPayload.features.velocity.band10To1000Hz.resultantVector.absMin  
+ 주파수 대역 10\~1000Hz에서 관찰된 절대 최소 속도
+ 형식: 숫자
+ mm/s

eventPayload.features.velocity.band10To1000Hz.resultantVector.crestFactor  
+ 주파수 대역 10\~1000Hz에서 관찰된 속도 파고율
+ 형식: 숫자

eventPayload.features.velocity.band10To1000Hz.resultantVector.rms  
+ 주파수 대역 10\~1000Hz에서 관찰된 속도의 평균 제곱근
+ 형식: 숫자
+ mm/s

eventPayload.features.velocity.band10To1000Hz.xAxis.rms  
+ x축의 주파수 대역 10\~1000Hz에서 관찰된 속도의 평균 제곱근
+ 형식: 숫자
+ mm/s

eventPayload.features.velocity.band10To1000Hz.yAxis.rms  
+ y축의 주파수 대역 10\~1000Hz에서 관찰된 속도의 평균 제곱근
+ 형식: 숫자
+ mm/s

eventPayload.features.velocity.band10To1000Hz.zAxis.rms  
+ z축의 주파수 대역 10\~1000Hz에서 관측된 속도의 평균 제곱근
+ 형식: 숫자
+ mm/s

eventPayload.sequenceNo  
+ 측정 시퀀스 번호
+ 형식: 숫자

eventPayload.assetPositionId  
+ 측정값이 전송되는 센서 위치의 식별자입니다.
+ 유형: 문자열

eventPayload.companyName  
+ 자산을 사용하는 회사의 이름입니다.
+ 유형: 문자열

eventPayload.geoLocation.latitude  
+ 사이트 물리적 위치의 위도입니다.
+ 형식: 숫자

eventPayload.geoLocation.longitude  
+ 사이트 물리적 위치의 경도입니다.
+ 형식: 숫자

eventPayload.address  
+ 사이트의 주소입니다.
+ 유형: 문자열

eventPayload.serialNumber  
+ 자산의 일련 번호입니다.
+ 유형: 문자열

eventPayload.make  
+ 자산의 제조업체입니다.
+ 유형: 문자열

eventPayload.model  
+ 자산의 모델입니다.
+ 유형: 문자열

`eventType: sensorConnected`

siteName  
+ 앱에 표시된 사이트 이름
+ 유형: 문자열

assetName  
+ 앱에 표시되는 자산 이름
+ 유형: 문자열

positionName  
+ 앱에 표시된 센서 위치 이름
+ 유형: 문자열

assetPositionURL  
+ 앱에 표시된 센서 URL
+ 유형: 문자열

physicalID  
+ 측정값이 전송되는 센서의 물리적 ID
+ 유형: 문자열

eventPayload.assetPositionId  
+ 상태가 변경된 센서 위치의 식별자입니다.
+ 유형: 문자열

eventPayload.companyName  
+ 자산을 사용하는 회사의 이름입니다.
+ 유형: 문자열

eventPayload.geoLocation.latitude  
+ 사이트 물리적 위치의 위도입니다.
+ 형식: 숫자

eventPayload.geoLocation.longitude  
+ 사이트 물리적 위치의 경도입니다.
+ 형식: 숫자

eventPayload.address  
+ 사이트의 주소입니다.
+ 유형: 문자열

eventPayload.serialNumber  
+ 자산의 일련 번호입니다.
+ 유형: 문자열

eventPayload.make  
+ 자산의 제조업체입니다.
+ 유형: 문자열

eventPayload.model  
+ 자산의 모델입니다.
+ 유형: 문자열

`eventType: sensorDisconnected`

siteName  
+ 앱에 표시된 사이트 이름
+ 유형: 문자열

assetName  
+ 앱에 표시되는 자산 이름
+ 유형: 문자열

positionName  
+ 앱에 표시된 센서 위치 이름
+ 유형: 문자열

assetPositionURL  
+ 앱에 표시된 센서 URL
+ 유형: 문자열

physicalID  
+ 측정값이 전송되는 센서의 물리적 ID
+ 유형: 문자열

eventPayload.assetPositionId  
+ 상태가 변경된 센서 위치의 식별자입니다.
+ 유형: 문자열

eventPayload.companyName  
+ 자산을 사용하는 회사의 이름입니다.
+ 유형: 문자열

eventPayload.geoLocation.latitude  
+ 사이트 물리적 위치의 위도입니다.
+ 형식: 숫자

eventPayload.geoLocation.longitude  
+ 사이트 물리적 위치의 경도입니다.
+ 형식: 숫자

eventPayload.address  
+ 사이트의 주소입니다.
+ 유형: 문자열

eventPayload.serialNumber  
+ 자산의 일련 번호입니다.
+ 유형: 문자열

eventPayload.make  
+ 자산의 제조업체입니다.
+ 유형: 문자열

eventPayload.model  
+ 자산의 모델입니다.
+ 유형: 문자열

 `eventType: gatewayConnected` 

eventPayload.siteName  
+ 앱에 표시된 사이트 이름
+ 유형: 문자열

eventPayload.gatewayName  
+ 앱에 표시된 게이트웨이의 이름.
+ 유형: 문자열

eventPayload.gatewayListURL  
+ 앱에 표시된 게이트웨이 URL
+ 유형: 문자열

eventPayload.gateway.physicalID  
+ Amazon Monitron 서비스에 데이터를 전송하기 위해 방금 연결된 게이트웨이의 물리적 ID
+ 유형: 문자열

eventPayload.companyName  
+ 자산을 사용하는 회사의 이름입니다.
+ 유형: 문자열

eventPayload.geoLocation.latitude  
+ 사이트 물리적 위치의 위도입니다.
+ 형식: 숫자

eventPayload.geoLocation.longitude  
+ 사이트 물리적 위치의 경도입니다.
+ 형식: 숫자

eventPayload.address  
+ 사이트의 주소입니다.
+ 유형: 문자열

`eventType: gatewayDisconnected`

siteName  
+ 앱에 표시된 사이트 이름
+ 유형: 문자열

gatewayName  
+ 앱에 표시된 게이트웨이의 이름.
+ 유형: 문자열

gatewayListURL  
+ 앱에 표시된 게이트웨이 URL
+ 유형: 문자열

physicalID  
+ Amazon Monitron 서비스에 데이터를 전송하기 위해 방금 연결된 게이트웨이의 물리적 ID
+ 유형: 문자열

eventPayload.companyName  
+ 자산을 사용하는 회사의 이름입니다.
+ 유형: 문자열

eventPayload.geoLocation.latitude  
+ 사이트 물리적 위치의 위도입니다.
+ 형식: 숫자

eventPayload.geoLocation.longitude  
+ 사이트 물리적 위치의 경도입니다.
+ 형식: 숫자

eventPayload.address  
+ 사이트의 주소입니다.
+ 유형: 문자열

`eventType: assetStateTransition`

eventPayload.siteName  
+ 앱에 표시된 사이트 이름
+ 유형: 문자열

eventPayload.assetName  
+ 앱에 표시되는 자산 이름
+ 유형: 문자열

eventPayload.positionName  
+ 앱에 표시된 센서 위치 이름
+ 유형: 문자열

eventPayload.assetPositionURL  
+ 앱에 표시된 센서 URL
+ 유형: 문자열

eventPayload.sensor.physicalID  
+ 측정값이 전송되는 센서의 물리적 ID
+ 유형: 문자열

eventPayload.assetTransitionType  
+ 자산 상태 전환의 원인
+ 유형: 문자열
+ 가능한 값: `measurement` 또는 `userInput`

eventPayload.assetState.newState  
+ 자산의 새 상태
+ 유형: 문자열

eventPayload.assetState.previousState  
+ 자산의 이전 상태
+ 유형: 문자열

eventPayload.closureCode.failureMode  
+ 이 장애를 인지했을 때 사용자가 선택한 장애 모드
+ 유형: 문자열
+ 가능한 값: `NO_ISSUE` \| `BLOCKAGE` \| `CAVITATION` \| `CORROSION` \| `DEPOSIT` \| `IMBALANCE` \| `LUBRICATION` \| `MISALIGNMENT` \| `OTHER` \| `RESONANCE` \| `ROTATING_LOOSENESS` \| `STRUCTURAL_LOOSENESS` \| `TRANSMITTED_FAULT` \| `UNDETERMINED` 

eventPayload.closureCode.failureCause  
+ 장애를 인지했을 때 사용자가 앱 드롭다운에서 선택한 장애 원인입니다.
+ 유형: 문자열
+ 가능한 값: `ADMINISTRATION` \| `DESIGN` \| `FABRICATION` \| `MAINTENANCE` \| `OPERATION` \| `OTHER` \| `QUALITY` \| `UNDETERMINED` \| `WEAR` 

eventPayload.closureCode.actionTaken  
+ 사용자가 앱 드롭다운에서 선택한 대로 이 예외 항목을 종료할 때 취해진 조치입니다.
+ 유형: 문자열
+ 가능한 값: `ADJUST` \| `CLEAN` \| `LUBRICATE` \| `MODIFY` \| `NO_ACTION` \| `OTHER` \| `OVERHAUL` \| `REPLACE` 

eventPayload.closureCode.resolvedModels  
+ 문제를 지적한 모델 세트.
+ 유형: 문자열 목록
+ 가능한 값: `vibrationISO` \| `vibrationML` \| `temperatureML` 

eventPayload.assetPositionId  
+ 상태가 변경된 자산 위치의 식별자입니다.
+ 유형: 문자열

models.temperatureML.persistentClassificationOutput  
+ 기계 학습 기반 온도 모델의 지속적 분류 출력
+ 형식: 숫자
+ 유효한 값: `UNKNOWN | HEALTHY | WARNING | ALARM`

models.temperatureML.pointwiseClassificationOutput  
+ 기계 학습 기반 온도 모델의 점별 분류 출력
+ 타입: 문자열
+ 유효 값: `UNKNOWN | INITIALIZING | HEALTHY | WARNING | ALARM`

models.vibrationISO.isoClass  
+ ISO 기반 진동 모델에서 사용하는 ISO 20816 등급(기계 진동의 측정 및 평가 표준)
+ 타입: 문자열
+ 유효 값: `CLASS1 | CLASS2 | CLASS3 | CLASS4`

models.vibrationISO.mutedThreshold  
+ ISO 기반 진동 모델의 알림을 음소거하기 위한 임계값
+ 타입: 문자열
+ 유효 값: `WARNING | ALARM`

models.vibrationISO.persistentClassificationOutput  
+ ISO 기반 진동 모델의 지속적 분류 출력
+ 타입: 문자열
+ 유효 값: `UNKNOWN | HEALTHY | WARNING | ALARM`

models.vibrationISO.pointwiseClassificationOutput  
+ ISO 기반 진동 모델의 포인트별 분류 출력
+ 타입: 문자열
+ 유효 값: `UNKNOWN | HEALTHY | WARNING | ALARM | MUTED_WARNING | MUTED_ALARM`

models.vibrationML.persistentClassificationOutput  
+ 기계 학습 기반 진동 모델의 지속적 분류 출력
+ 타입: 문자열
+ 유효 값: `UNKNOWN | HEALTHY | WARNING | ALARM`

models.vibrationML.pointwiseClassificationOutput  
+ 기계 학습 기반 진동 모델의 포인트별 분류 출력
+ 타입: 문자열
+ 유효 값: `UNKNOWN | INITIALIZING | HEALTHY | WARNING | ALARM`

assetState.newState  
+ 측정을 처리한 후의 기계 상태
+ 타입: 문자열
+ 유효 값: `UNKNOWN | HEALTHY | NEEDS_MAINTENANCE | WARNING | ALARM`

assetState.previousState  
+ 측정을 처리하기 전의 기계 상태
+ 타입: 문자열
+ 유효 값: `UNKNOWN | HEALTHY | NEEDS_MAINTENANCE | WARNING | ALARM`

eventPayload.companyName  
+ 자산을 사용하는 회사의 이름입니다.
+ 유형: 문자열

eventPayload.geoLocation.latitude  
+ 사이트 물리적 위치의 위도입니다.
+ 형식: 숫자

eventPayload.geoLocation.longitude  
+ 사이트 물리적 위치의 경도입니다.
+ 형식: 숫자

eventPayload.address  
+ 사이트의 주소입니다.
+ 유형: 문자열

eventPayload.serialNumber  
+ 자산의 일련 번호입니다.
+ 유형: 문자열

eventPayload.make  
+ 자산의 제조업체입니다.
+ 유형: 문자열

eventPayload.model  
+ 자산의 모델입니다.
+ 유형: 문자열