업데이트일 : 2012.11 watch API Guide 목차메트릭 (METRIC) 알람 (ALARM) APPENDIX: A - DataType 명령어 이장에서는명령어와명령어파라미터정보및명령에대한응답을기술한다. 명령어를메트릭과알람으로분리하여관련명령어를설명함으로써사용자의이해를돕고자한다. 각명령어들은다음과같은구조로설명된다. 설명 : 개별명령어의주요기능을간략하게기술한다 제약사항 : 명령어사용시고려해야할제약사항을기술한다. 명령어파라미터 : 파라미터이름, 파라미터설명, 파라미터타입, 필수입력사항의여부, 개별파라미터의제약사항을표로나열한다. 응답결과항목 : 이름, 설명, 데이터타입을표로나열한다. 에러 : 명령어가반환하는에러에대해, 에러코드와해당에러코드에대한설명을표로나열한다. 명령어공통으로반환되는에러는 1.3.3 에있기때문에개별명령어설명부분에는별도로기술하지않는다. Example : 명령어의이해를돕기위해샘플 HTTP 요청쿼리와샘플 xml 응답을기술한다. Example 에사용하는 ${variable} 는변수를나타내는부분으로 ${API_URL} 은 ucloud watch API URL(https://api.ucloudbiz.olleh.com/watch/v1/client/api?) 이고, ${APIKey}, ${Signature} 는 "1.2 API 요청 " 을참고하여입력한다. 메트릭 (METRIC) listmetrics 설명 사용자에게유효한메트릭리스트를조회한다. listmetrics 명령어의결과로조회되는메트릭의네임스페이스, 메트릭이름, 단위그리고디멘전은 getmetricstatistics 명령어의입력파라리터로해당메트릭의통계를얻는데
사용될수있다. 제약사항 한번에최대 개까지조회가능하다. 만약조회가되는메트릭의목록이 개이상인경우, 개의결과값과넥스트토큰 (NextToken) 을반환한다. 이전작업에서반환된넥스트토큰을 listmetrics 에추가인자로주면, 다음 개의메트릭목록을조회할수있다. 메트릭은 putmetricdata API 를통해신규데이터가입력되어생성된다. 이때, 새로운데이터를저장하고이것을조회하기까지일정시간이소요되기때문에바로조회가안될수있다. 명령어파라미터 Name Description Data Type Required Constraint dimensions.member. N 필터링할디멘전리스트 Dimension list No 0 item - 10 items metricname 필터링할메트릭이름 String No 1Byte - 255Byte namespace 필터링할네임스페이스 String No 1Byte - 255Byte unit 필터링할메트릭데이터단위 String No Valid Values : Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count, Count/Second, Percent, None nexttoken 이전작업에서조회가능한리스트가남았을경우반환되는토큰 String No 응답결과항목 Name Description Data Type metric 계정소유자에대한통계량을생성할때사용되는메트릭 Metric list nexttoken 1 회전송개수초과됐을때, 다음시작위치를알려주는토큰 String Error errorcode status description Http Status Code
430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured 1305 InvalidNextToken The next token specified is invalid EXAMPLE1 본예제는사용자에게유효한모든메트릭을조회하고, 개이상의메트릭이존재하여넥스트토큰이반환되는경우를보여준다 ${API_URL}command=listMetrics <listmetricsresponse> <count></count> <metric> <metricname>cpuutilization</metricname> <namespace>ucloud/server</namespace> <dimensions> <count>1</count> <dimension> <name>name</name> <value>i-2901-32012-vm</value> </dimension> </dimensions> <unit>percent</unit> </metric>... 중략... <metric> <metricname>webserverrequestcount</metricname> <namespace>myserver</namespace> <dimensions> <count>1</count> <dimension> <name>servername</name> <value>was</value> </dimension> </dimensions> <unit>count</unit> </metric> <nexttoken>13850151133</nexttoken> </listmetricsresponse> EXAMPLE2 다음예제는 listmetrics 명령을이용하여 CPU 사용량에대한메트릭만조회하는경우를보여준다.
${API_URL}command=listMetrics&metricname=CPUUtilization&response=xml&apiKey=${APIKey} &signature= ${Signature} <listmetricsresponse> <count>2</count> <metric> <metricname>cpuutilization</metricname> <namespace>ucloud/server</namespace> <dimensions> <count>1</count> <dimension> <name>name</name> <value>i-2901-32012-vm</value> </dimension> </dimensions> <unit>percent</unit> </metric> <metric> <metricname>cpuutilization</metricname> <namespace>ucloud/server</namespace> <dimensions> <count>1</count> <dimension> <name>templatename</name> <value>t2 CentOS 5.4 64-bit</value> </dimension> </dimensions> <unit>percent</unit> </metric> </listmetricresponse> putmetricdata 설명 ucloud watch 에사용자정의메트릭을생성하거나데이터포인트를발행한다. 발행된데이터포인트는 ucloud watch 의메트릭데이터포인트로저장된다. 제약사항 데이터포인트를저장할메트릭이존재하지않는경우새로운메트릭을생성하여저장한다. 사용자가새로생성한메트릭은 listmetrics 명령어로일정시간의경과후조회할수있다. 1 회최대전송크기는 8KB 이다. 한번의명령어요청으로동일한네임스페이스를갖는데이터포인트를 20 개까지전송할수있다. 유효한타임스탬프는명령어요청시점을기준으로과거 1 주이내부터 1 일후까지이다. 사용자정의메트릭에대한네임스페이스는 "ucloud/" 로시작할수없다. 서비스정책에따라유효한타임스탬프의제약은변경될수있다. 명령어파라미터 Name Description Data Type Required Constraint
metricdata.member.n 저장하려는데이터포인트리스트 MetricData list Yes 1 item - 20 items namespace 저장하려는메트릭의네임스페이스 String Yes 1Byte - 255Byte 응답결과항목 Name Description Data Type result 데이터가정상적으로저장되면 "SUCCESS" 를반환한다 String Error errorcode status description Http Status Code 430 Malformed parameter error The query string is malformed 431 Param error A request parameter does not comply with the associated con straints 434 Invalid parameter com bination Parameters that must not be used together were used togeth er 435 Missing parameter An input parameter that is mandatory for processing the requ est is not supplied 530 Internal error An internal service error is occured Example1 네임스페이스 "MyServer", 메트릭이름 "CPUUsage", 단위 "Percent" 그리고디멘전 "ServerName=WAS" 인메트릭에 2012 년 8 월 2 일오후 12 시 30 분의 CPU 사용률 45% 인데이터포인트를저장하는경우요청쿼리는다음과같다. ${API_URL}command=putMetricData &namespace=myserver &metricdata.member.1.metricname=cpuusage &metricdata.member.1.unit=percent &metricdata.member.1.dimensions.member.1.name=servername &metricdata.member.1.dimensions.member.1.value=was &metricdata.member.1.value=45 &metricdata.member.1.timestamp=2012-08-02t12:30:00.000 <putmetricdataresponse> <result>success</result>
</putmetricdataresponse> Example2 네임스페이스 "MyServer", 메트릭이름 "RequestCount", 단위 "Count" 그리고디멘전 "ServerName=WAS" 인메트릭에 2012 년 8 월 2 일오후 12 시 30 분과 31 분사이에 WAS 서버가받은초당요청횟수의통계가최대 20, 최소 0, 합계 240 그리고샘플개수 60 인데이터포인트를저장하는예는다음과같다. ${API_URL}command=putMetricData &namespace=myserver &metricdata.member.1.metricname=requestcount &metricdata.member.1.unit=count &metricdata.member.1.dimensions.member.1.name=servername &metricdata.member.1.dimensions.member.1.value=was &metricdata.member.1.statisticvalues.maximum=20 &metricdata.member.1.statisticvalues.minimum=0 &metricdata.member.1.statisticvalues.sum=240 &metricdata.member.1.statisticvalues.samplecount=60 &metricdata.member.1.timestamp=2012-08-02t12:30:00.000 <putmetricdataresponse> <result>success</result> </putmetricdataresponse> Example3 Example1 과 Example2 의두데이터포인트를동시에저장하는경우에는 putmetricdata 를다음과같이호출하면된다. ${API_URL}command=putMetricData &namespace=myserver &metricdata.member.1.metricname=cpuusage &metricdata.member.1.unit=percent &metricdata.member.1.dimensions.member.1.name=servername &metricdata.member.1.dimensions.member.1.value=was &metricdata.member.1.value=45 &metricdata.member.1.timestamp=2012-08-02t12:30:00.000 &metricdata.member.2.metricname=requestcount &metricdata.member.2.unit=count &metricdata.member.2.dimensions.member.1.name=servername &metricdata.member.2.dimensions.member.1.value=was &metricdata.member.2.statisticvalues.maximum=20 &metricdata.member.2.statisticvalues.minimum=0 &metricdata.member.2.statisticvalues.sum=240 &metricdata.member.2.statisticvalues.samplecount=60 &metricdata.member.2.timestamp=2012-08-02t12:31:00.000
<putmetricdataresponse> <result>success</result> </putmetricdataresponse> getmetricstatistics 설명 지정한메트릭에대해시작시간을기준으로종료시간까지지정된주기에따라데이터포인트의통계리스트를반환한다. 제약사항 한번에조회가능한데이터포인트의개수는 1440 개이다. 1 분단위로하루동안의데이터포인트의개수가 1440 개이다. 일정구간의데이터통계량을조회하기위해주기를설정해야하며, 1 분 ~ 10080 분 (1 주 ) 사이의분단위만입력이가능하다 시작시간, 종료시간및주기의조합이 1440 개를초과하는데이터포인트를반환해야하면, ucloud watch 는에러를반환한다. 이럴경우, 시작시간과종료시간을더좁게설정하거나, 주기를더길게설정하여야한다. starttime 과 endtime 파라미터의유효시점은명령어요청시점을기준으로과거 1 주이내부터요청시점기준 1 일후까지이다. 주기와시간, 날짜값에대한 1 주의설정제약은서비스정책에따라변경될수있다 Name Description Data Type Required Constraint dimensions.member.n 메트릭의특성을보여주는디멘전리스트 Dimension list No 1 item - 10 items endtime 요청하는데이터구간종료시간 DateTime Yes API 요청시점에서 1 주이내이어야하면 yyyy-mmdd't'h H:mm:ss.SSS 의 ISO8601 형식이어야한다. 또한 StartTim e 보다상대적으로미래의시점이어야한다. starttime 요청하는데이터구간시작시간 DateTime Yes API 요청시점에서 1 주이내이어야하면 yyyy-mmdd't'h H:mm:ss.SSS 의 ISO8601 형식이어야한다. metricname 대상메트릭이름 String Yes 1Byte - 255Byte namespace 대상메트릭네임스페이스 String Yes 1Byte - 255Byte period 통계량을구할구간길이 Integer Yes 1 분 - 10080 분 statistics.member.n 요청하는통계량종류리스트 String list Yes 최소한한가지는요청해야하 며최대 5 가지요청가능하 다. Valid Value : Average, Su
m, SampleCount, Maximum, Minimum unit 메트릭데이터단위 String Yes Valid Values : Seconds, Microseconds,Milliseconds, Bytes, Kilobytes,Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second,Count, Count/Second, Percent, Non e 응답결과항목 Name Description DataType metricstatistics 요청된모니터링데이터의포인트의통계리스트 Datapoint list label 요청된모니터링데이터의메트릭이름 String Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured Example 네임스페이스 "ucloud/server", 메트릭이름 "NetworkIn", 단위 "Bytes" 그리고디멘전 "name=i-2901-32012- VM" 인메트릭의 2012 년 8 월 1 일 12 시부터 8 월 1 일 13 시까지 10 분간격으로최대, 최소, 평균, 샘플수, 샘플합의통계량을조회하려면 getmetricstatistics 를다음과같이호출한다. 결과값에서 samplecount 의값이 0 으로나오는것은해당시점에메트릭데이터가존재하지않음을나타내는것이다. ${API_URL}command=getMetricStatistics &metricname=networkin &namespace=ucloud/server &dimensions.member.1.name=name
&dimensions.member.1.value=i-2901-32012-vm &unit=bytes &period=10 &statistics.member.1=maximum &statistics.member.2=minimum &statistics.member.3=average &statistics.member.4=sum &statistics.member.5=samplecount &starttime=2012-08-01t12:00:00.000 &endtime=2012-08-01t18:13:00.000 <getmetricstatisticsresponse> <label>networkin</label> <count>6</count> <metricstatistics> <timestamp>2012-08-01t12:00:00.000</timestamp> <unit>bytes</unit> <maximum>0.0</maximum> <minimum>0.0</minimum> <samplecount>0</samplecount> <sum>0.0</sum> <average>0.0</average> </metricstatistics> <metricstatistics> <timestamp>2012-08-01t12:10:00.000</timestamp> <unit>bytes</unit> <maximum>0.0</maximum> <minimum>0.0</minimum> <samplecount>0</samplecount> <sum>0.0</sum> <average>0.0</average> </metricstatistics> <metricstatistics> <timestamp>2012-08-01t12:20:00.000</timestamp> <unit>bytes</unit> <maximum>0.0</maximum> <minimum>0.0</minimum> <samplecount>0</samplecount> <sum>0.0</sum> <average>0.0</average> </metricstatistics> <metricstatistics> <timestamp>2012-08-01t12:30:00.000</timestamp> <unit>bytes</unit> <maximum>0.0</maximum> <minimum>0.0</minimum> <samplecount>0</samplecount> <sum>0.0</sum> <average>0.0</average> </metricstatistics> <metricstatistics> <timestamp>2012-08-01t12:40:00.000</timestamp> <unit>bytes</unit> <maximum>0.0</maximum> <minimum>0.0</minimum> <samplecount>0</samplecount> <sum>0.0</sum> <average>0.0</average> </metricstatistics> <metricstatistics> <timestamp>2012-08-01t12:50:00.000</timestamp> <unit>bytes</unit> <maximum>0.0</maximum> <minimum>0.0</minimum> <samplecount>0</samplecount> <sum>0.0</sum> <average>0.0</average> </metricstatistics> </getmetricstatisticsresponse>
알람 (ALARM) createalarm 설명 createalaram 은사용자가이미생성했거나, 아니면새로생성할메트릭에대한알람을생성하는명령이다. 알람을생성할때알람의대상메트릭의존재는확인하지않는다. 따라서존재하지않는메트릭에대해알람을생성하는것도가능하다. 그러나, 존재하지않는메트릭에대한알람을생성하더라도알람생성시지정된메트릭을생성하지는않는다. 알람을생성할때는알람발생할때취할행동을액션으로지정할수있다. 현재 ucloud watch 는이메일통보액션, 노티피케이션과자동화서비스에관한액션을지원한다. 제약사항알람이생성될당시알람의상태는 INSUFFICIENT_DATA 이다알람이생성될때, "actionsenabled" 파라미터의기본값은 "True" 이다한사용자가생성할수있는최대알람개수는 400 개이다. 한메트릭에생성할수있는최대알람개수는 400 개이다. 한사용자의알람들에대하여알람명 (alarmname) 의중복을체크하여에러를반환한다. 명령어파라미터 Name Descriptions Data Type Required Constraint actionsenabled 액션의수행여부를결정할수있다. True 일경우에는상태변화에따른액션을수행하고 Fals e 일경우알람의상태변경에따른액션을수행하지않는다. Boolean No 기본값 : True alarmactions.m ember. N 다른상태에서 ALARM 상태로상태변화시에수행할액션리스트 String list No 0 item - 5 items alarmdescription 알람설명 String No 0Byte - 255Byte alarmname 알람이름 String Yes 사용자가생성한알람이름은중복이없어야한다. 1Byte - 255Byte comparisonope rator Statistic 과 Threshold 를비교할연산자 String Yes Valid Value : GreaterThanOrE qualtothreshold, GreaterTha nthreshold, LessThanThresh old, LessThanOrEqualToThres hold dimensions.member.n 해당알람과관계있는메트릭의디멘전리스트 Dimension list No 0 item - 10 items evaluationperiods 조건을몇주기연속으로만족시키는지에대한값 Integer Yes 1 회 - 10080 회, Period * Eva luationperiods < 10080 insufficientdata action s.member.n 다른상태에서 INSUFFIC IENT_DATA 상태로상태 String list No 0 item - 5 items
변화시에수행할액션리스트 metricname 해당알람과관계있는메트릭이름 String Yes 1Byte - 255Byte namespace 해당알람과관계있는메트릭네임스페이스 String Yes 1Byte - 255Byte okactions.member.n 다른상태에서 OK 상태로변할때수행할액션리스트 String list No 0 item - 5 items period Statistic 을산출하기위한구간길이 Integer Yes 1 분 - 10080 분, Period * Eva luationperiods < 10080 statistic 해당알람과관계있는메트릭에적용될통계량 String Yes Valid Value : SampleCount, Average, Sum, Minimum, Ma ximum threshold Statistic 과비교될값으로알람발생을결정하는경계값 Double Yes unit 해당알람과관계있는메트릭단위 String Yes Valid Values : Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count, Count/Second, Percent, None 기본값 : None 응답결과항목 Name Description Data Type result 정상적인작동의경우 SUCCESS String Error errorcode status description Http Status Code
430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured 1306 AlreadyExists Resource with the name requested already exists 1307 LimitExceeded Quota for the resource has already been reached EXAMPLE1 다음은 ucloud server 의서버명이 "i-2901-32012-vm" 인 VM 의평균네트워크유입럅이 5 분동안 0000 바이트를초과하는상황이 30 분동안유지되면 "admin@ucloud.com" 으로이메일로알려주는알람을생성하기위한 createalarm 의사용예이다. 알람이름은 "WatchNetworkIn" 으로설정한다. ${API_URL}command=createAlarm &alarmname=watchnetworkin &namespace=ucloud/server &metricname=networkin &dimensions.member.1.name=name &dimensions.member.1.value=i-2901-32012-vm &statistic=average &comparisonoperator=greaterthanthreshold &threshold=0000 &unit=bytes &period=5 &evaluationperiods=6 &alarmactions.member.1=admin@ucloud.com <createalarmresponse> <result>success</result> </createalarmresponse> EXAMPLE2 다음은 ucloud server 의서버명이 "i-2901-32012-vm" 인 VM 의 120 분동안최대 CPU 사용량이 10 퍼센트미만일때 "admin@ucloud.com" 으로이메일로알려주는 "WatchWastedResource" 알람을생성하는데, 상태변화에따른설정액션을수행하지않도록하는알람의생성예제이다.
${API_URL}command=createAlarm &alarmname=watchwastedresource &alarmdescription=when vm is wasted for long time, I detect it and take actions that shut down vm &namespace=ucloud/server &metricname=cpuutilization &dimensions.member.1.name=name &dimensions.member.1.value=i-2901-32012-vm &statistic=maximum &comparisonoperator=lessthanthreshold &threshold=10 &unit=percent &period=120 &evaluationperiods=1 &actionsenabled=false &alarmactions.member.1=admin@ucloud.com &okactions.member.1=admin@uclou.com <createalarmresponse> <result>success</result> </createalarmresponse> updatealarm 설명 기존알람의설정을변경한다. 제약사항 알람이름으로검색되는알람만변경가능하며알람이름은변경할수없다. 액션이나디멘전리스트를부분수정할수없으며, 기존리스트는새로입력된리스트로대체된다. alarmactions, okactions, insufficientdataactions, dimensions 및 alarmdescription 의초기화는 "null" 값을이용한다. 예를들어알람액션을초기화시키는파라미터는 "alarmactions.member=null" 이다. 명령어파라미터 Name Description Data Type Required Constraint alarmactions.member. N 다른상태에서 ALARM 상태로상태변화시에수행할액션리스트 String list No 0 item - 5 items, 초기화 : Ala rmactions.member=null alarmdescription 알람설명 String No 0Byte - 255Byte, 초기화 : Ala rmdescription=null alarmname 알람이름 String Yes 사용자가생성한알람이름은중복이없어야한다. 1Byte - 255Byte comparisonoperator Statistic 과 Threshold 를비교할연산자 String No Valid Value : GreaterThanOrEqualToThres hold, GreaterThanThreshold,
LessThanThreshold, LessThanOrEqualToThreshold dimensions.member.n 해당알람과관계있는메트릭의디멘전리스트 Dimension list No 0 item - 10 items, 초기화 : D imensions.member=null evaluationperiods 조건을몇주기연속으로만족시키는지에대한값 Integer No 1 회 - 10080 회, Period * Eva luationperiods < 10080 insufficientdata action s.member.n 다른상태에서 INSUFFIC IENT_DATA 상태로상태변화시에수행할액션리스트 String list No 0 item - 5 items, 초기화 : Ins ufficientdataactions.member =null metricname 해당알람과관계있는메트릭이름 String No 1Byte - 255Byte namespace 해당알람과관계있는메트릭네임스페이스 String No 1Byte - 255Byte okactions.member.n 다른상태에서 OK 상태로변할때수행할액션리스트 String list No 0 item - 5 items, 초기화 : OK Actions.member=null period Statistic 을산출하기위한구간길이 Integer No 1 회 - 10080 회, Period * Eva luationperiods < 10080 statistic 해당알람과관계있는메트릭에적용될통계량 String No Valid Value : SampleCount, Average, Sum, Minimum, Ma ximum threshold Statistic 과비교될값으로알람발생을결정하는경계값 Double No unit 해당알람과관계있는메트릭단위 String No Valid Values : Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits,Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count, Count/Second,Percent, None 기본값 : None 응답결과항목 Name Description Data Type result 정상적으로알람이변경되면 "SUCCESS" 를돌려준다. String
Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured 1304 ResourceNotFound The named resource does not exist EXAMPLE1 이미생성된 "WatchNetworkIn" 알람에알람의상태가 "ALARM" 으로변화되었을때, "admin@ucloud.com" 으로메일을발송하는액션을설정하는요청쿼리는다음과같다. ${API_URL}command=updateAlarm &alarmname=watchnetworkin &alarmactions.member.1=admin@ucloud.com <updatealarmresponse> <result>success</result> </updatealarmresponse> EXAMPLE2 Example1 에서 "WatchNetworkIn" 알람의상태가 "ALARM" 으로변화되었을때, "admin1@ucloud.com" 으로메일을발송하는액션을추가설정하는요청쿼리는다음과같다. ucloud watch 에서알람의액션의수정은기존에설정된액션을삭제하고새로액션을등록하는것이다. 따라서, 새로운액션을추가하려면, 기존액션에새로운액션을추가한명령을호출해야한다. 본예제는이와같은상황을보여준다. ${API_URL}command=updateAlarm &alarmname=watchnetworkin
&alarmactions.member.1=admin@ucloud.com &alarmactions.member.2=admin1@ucloud.com <updatealarmresponse> <result>success</result> </updatealarmresponse> EXAMPLE3 Example1 과 Example2 에서추가한알람액션을초기화하는요청쿼리는다음과같다. "key=value" 쌍으로구성되는쿼리의특성에따라 "value" 의초기화를의미하는 "null" 값을넣어준다. ${API_URL}command=updateAlarm &alarmname=watchnetworkin &alarmactions.member=null <updatealarmresponse> <result>success</result> </updatealarmresponse> EXAMPLE4 알람이름 "myalarm" 의알람발생조건을평균 CPU 사용량이 60 분동안 20 퍼센트이상인상황이 3 시간지속되는것으로변경하는요청쿼리는다음과같다. ${API_URL}command=updateAlarm &alarmname=myalarm &statistic=average &comparisonoperator=greaterthanorequaltothreshold &threshold=20 &unit=percent &period=60 &evaluationperiods=3
<updatealarmresponse> <result>success</result> </updatealarmresponse> EXAMPLE5 "InitializeTestAlarm" 알람의 "alarmdescription", "dimensions", "alarmactions", "okactions" 및 "insufficientdataactions" 를초기화시키는쿼리는다음과같다. ${API_URL}command=updateAlarm &alarmname=initializetestalarm &alarmdescription=null &dimensions.member=null &alarmactions.member=null &okactions.member=null &insufficientdataactions.member=null <updatealarmresponse> <result>success</result> </updatealarmresponse> listalarms 설명다음과같은조건들로알람들을조회한다조건없음 ( 전체알람리스트조회 ) 알람이름의머리글자알람이름알람상태액션의머리글자 제약사항 사용자가생성한알람만을조회할수있으며알람이름의머리글자와알람이름으로동시에조회할수없다. 한번에최대 200 개까지조회가능하다. 만약조회가되는알람의목록이 200 개이상인경우, 넥스트토큰 (nexttoken) 을반환한다.
이전작업에서반환된넥스트토큰을 listalarms 에추가인자로주면, 다음 200 개의알람목록을조회할수있다. 명령어파라미터 Name Description Data Type Required Constraint actionprefix 액션의머리글자 String No 1Byte - 1024Byte alarmnameprefix 알람이름의머리글자 String No,Con ditional 1Byte - 255Byte alarmnames.member.n 특정알람이름리스트 String list No,Con ditional 1 item - 100 items statevalue 알람상태 String No Valid Value : OK, ALA RM, INSUFFICIENT_DA TA nexttoken 이전작업에서조회가능한데이터가남았을경우반환되는토큰 String No 1Byte - 255Byte 응답결과항목 Name Description Data Type alarm 알람정보의리스트 Alarm list nexttoken 1 회전송개수초과됐을때, 다음시작위치를알려주는토큰 String Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured 1305 InvalidNextToken The next token specified is invalid EXAMPLE1 다음은해당사용자의모든알람을조회하는 listalarms 명령을보여준다.
${API_URL}command=listAlarms 알람목록이 200 개가넘지않아넥스트토큰이없을때의 listalarms 의응답결과는다음과같다 <listalarmsresponse> <count>2</count> <alarm> <alarmname>mongodbwatcher</alarmname> <statevalue>alarm</statevalue> <metricname>cpuutilization</metricname> <namespace>ucloud/server</namespace> <comparisonoperator>greaterthanthreshold</comparisonoperator> <period>10</period> <evaluationperiods>3</evaluationperiods> <threshold>80.0</threshold> <statistic>minimum</statistic> <unit>percent</unit> <actionsenabled>false</actionsenabled> <alarmdescription>detecting in-service of mongodb which is repository of banach monitoring service</alarmdescription> <dimensions> <count>1</count> <dimension> <name>name</name> <value>i-2901-32012-vm</value> </dimension> </dimensions> <alarmactions> <count>1</count> <alarmaction>admin@kt.com</alarmaction> </alarmactions> <insufficientdataactions/> <okactions/> </alarm> <alarm> <alarmname>watchingwasserver</alarmname> <statevalue>insufficient_data</statevalue> <metricname>wasrequestcount</metricname> <namespace>myserver</namespace> <comparisonoperator>lessthanorequaltothreshold</comparisonoperator> <period>60</period> <evaluationperiods>12</evaluationperiods> <threshold>10.0</threshold> <statistic>average</statistic> <unit>count</unit> <actionsenabled>false</actionsenabled> <alarmdescription/> <dimensions/> <alarmactions> <count>2</count> <alarmaction>admin@gmail.com</alarmaction> <alarmaction>admin1@daum.com</alarmaction> </alarmactions> <insufficientdataactions> <count>1</count> <insufficientdataaction>admin@gmail.com</insufficientdataaction> </insufficientdataactions> <okactions/> </alarm> </listalarmsresponse> 알람목록이 200 개가넘어넥스트토큰이반환될때의 listalarms 의응답결과는다음과같다. <listalarmsresponse>
<count></count> <alarm> <alarmname>mongodbwatcher</alarmname> <statevalue>alarm</statevalue> <metricname>cpuutilization</metricname> <namespace>ucloud/server</namespace> <comparisonoperator>greaterthanthreshold</comparisonoperator> <period>10</period> <evaluationperiods>3</evaluationperiods> <threshold>80.0</threshold> <statistic>minimum</statistic> <unit>percent</unit> <actionsenabled>false</actionsenabled> <alarmdescription>detecting in-service of mongodb which is repository of banach monitoring service</alarmdescription> <dimensions> <count>1</count> <dimension> <name>name</name> <value>i-2901-32012-vm</value> </dimension> </dimensions> <alarmactions> <count>1</count> <alarmaction>admin@kt.com</alarmaction> </alarmactions> <insufficientdataactions/> <okactions/> </alarm>... 중략... <alarm> <alarmname>watchingwasserver</alarmname> <statevalue>insufficient_data</statevalue> <metricname>wasrequestcount</metricname> <namespace>myserver</namespace> <comparisonoperator>lessthanorequaltothreshold</comparisonoperator> <period>60</period> <evaluationperiods>12</evaluationperiods> <threshold>10.0</threshold> <statistic>average</statistic> <unit>count</unit> <actionsenabled>false</actionsenabled> <alarmdescription/> <dimensions/> <alarmactions> <count>2</count> <alarmaction>admin@gmail.com</alarmaction> <alarmaction>admin1@daum.com</alarmaction> </alarmactions> <insufficientdataactions> <count>1</count> <insufficientdataaction>admin@gmail.com</insufficientdataaction> </insufficientdataactions> <okactions/> </alarm> <nexttoken>1386f68c30c</nexttoken> </listalarmsresponse> EXAMPLE2 다음은해당사용자의모든알람을조회하는 listalarms 명령을보여준다. ${API_URL}command=listAlarms &alarmnames.member.1=testcreatealarm &alarmnames.member.2=mongodbwatcher
알람이름의머리글자를이용해조회하는경우요청쿼리는다음과같다. ${API_URL}command=listAlarms &alarmnameprefix=test 알람상태가 OK 인알람을조회하는경우요청쿼리는다음과같다. ${API_URL}command=listAlarms &statevalue=ok 설정된액션의머리글자를이용해조회하는경우요청쿼리는다음과같다. ${API_URL}command=listAlarms&actionprefix=SendEmail&response=xml&apiKey=${APIKey}&signature=${Sig nature} ${API_URL}command=listAlarms&actionprefix=AutoScalingAction&response=xml&apiKey=${APIKey}&signatur e=${signature} 알람상태가 "ALARM" 인알람중에액션의머리글자가 SendEmail 인알람을조회하는경우요청쿼리는다음과같다. ${API_URL}command=listAlarms &statevalue=alarm &actionprefix=sendemail 모든알람의조회한결과리스트가 200 개를초과했을때, 반환받은넥스트토큰을이용하여 201 번째부터의리스트를조회하는경우요청쿼리는다음과같다. ${API_URL}command=listAlarms &nexttoken=1386f6015aa listalarmsformetric 설명사용자가지정한메트릭에설정된알람들을조회한다. 다음의조건으로알람을조회할수있다. 조건없음 ( 특정메트릭에설정된모든알람조회 ) 메트릭명네임스페이스디멘전특정메트릭의주기특정메트릭의통계량
특정메트릭의단위 제약사항 사용자가생성한알람만을조회할수있다. 한번에최대 200 개까지조회가능하다. 만약조회가되는알람의목록이 200 개이상인경우, 넥스트토큰 (nexttoken) 을반환한다. 이전작업에서반환된넥스트토큰을 listalarmsformetric 에추가인자로주면, 다음 200 개의알람목록을조회할수있다. 명령어파라미터 Name Description Data Type Required Constraint dimensions. member.n 특정메트릭과관련된디멘전리스트 Dimen sion lis t No 0item - 10items metricname 메트릭이름 String No 1Byte - 255Byte namespace 메트릭의네임스페이스 String No 1Byte - 255Byte period 주기 Integer No 10080 이하의자연수 statistic 메트릭의통계량종류 String No Valid Value : SampleCount, Averag e, Sum, Minimum, Maximum nexttoken 이전작업에서조회가능한데이터가남았을경우반환되는토큰 String No unit 메트릭데이터단위 String No Valid Values : Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count, Count/Second, Percent, None 응답결과항목 Name Description Data Type alarm 알람정보의리스트 Alarm list nexttoken 1 회전송개수초과됐을때, 다음시작위치를알려주는토큰 String
Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured 1305 InvalidNextToken The next token specified is invalid EXAMPLE1 네임스페이스 "ucloud/server", 디멘전 "name=i-2901-32012-vm", 메트릭이름 "CPUUtilization" 그리고단위 "Percent" 인메트릭에설정된알람을모두조회하는경우요청쿼리는다음과같다. &{API_URL}command=listAlarmsForMetric &namespace=ucloud/server &metricname=cpuutilization &dimensions.member.1.name=name &dimensions.member.1.value=i-2901-32012-vm &unit=percent 알람목록이 200 개가넘지않아넥스트토큰이없을때의 listalarms 의응답결과는다음과같다 <listalarmsformetricresponse> <count>1</count> <alarm> <alarmname>mongodbwatcher</alarmname> <statevalue>alarm</statevalue> <metricname>cpuutilization</metricname> <namespace>ucloud/server</namespace> <comparisonoperator>greaterthanthreshold</comparisonoperator> <period>10</period> <evaluationperiods>3</evaluationperiods> <threshold>80.0</threshold> <statistic>minimum</statistic> <unit>percent</unit> <actionsenabled>false</actionsenabled> <alarmdescription>detecting in-service of mongodb which is repository of banach monitoring service</alarmdescription> <dimensions> <count>1</count> <dimension> <name>name</name> <value>i-2901-32012-vm</value> </dimension> </dimensions> <alarmactions>
<count>1</count> <alarmaction>admin@kt.com</alarmaction> </alarmactions> <insufficientdataactions/> <okactions/> </alarm> </listalarmsformetricresponse> 알람목록이 200 개가넘어넥스트토큰이반환될때의 listalarms 의응답결과는다음과같다. <listalarmsformetricresponse> <count>200</count> <alarm> <alarmname>mongodbwatcher</alarmname> <statevalue>alarm</statevalue> <metricname>cpuutilization</metricname> <namespace>ucloud/server</namespace> <comparisonoperator>greaterthanthreshold</comparisonoperator> <period>10</period> <evaluationperiods>3</evaluationperiods> <threshold>80.0</threshold> <statistic>minimum</statistic> <unit>percent</unit> <actionsenabled>false</actionsenabled> <alarmdescription>detecting in-service of mongodb which is repository of banach monitoring service</alarmdescription> <dimensions> <count>1</count> <dimension> <name>name</name> <value>i-2901-32012-vm</value> </dimension> </dimensions> <alarmactions> <count>1</count> <alarmaction>admin@kt.com</alarmaction> </alarmactions> <insufficientdataactions/> <okactions/> </alarm>... 중략... <alarm> <alarmname>waswatcher</alarmname> <statevalue>alarm</statevalue> <metricname>cpuutilization</metricname> <namespace>ucloud/server</namespace> <comparisonoperator>greaterthanthreshold</comparisonoperator> <period>10</period> <evaluationperiods>3</evaluationperiods> <threshold>80.0</threshold> <statistic>average</statistic> <unit>percent</unit> <actionsenabled>true</actionsenabled> <alarmdescription>detecting in-service of web application server</alarmdescription> <dimensions> <count>1</count> <dimension> <name>name</name> <value>i-2901-32012-vm</value> </dimension> </dimensions> <alarmactions> <count>1</count> <alarmaction>admin@kt.com</alarmaction> </alarmactions> <insufficientdataactions/> <okactions/> </alarm> <nexttoken>1386f68c30c</nexttoken> </listalarmsformetricresponse>
EXAMPLE2 다음은네임스페이스 "ucloud/server", 디멘전 "name=i-2901-32012-vm", 메트릭이름 "CPUUtilization" 인메트릭에설정된알람중, 주기가 10 인알람을조회하는경우를보여준다. &{API_URL}command=listAlarmsForMetric &namespace=ucloud/server &metricname=cpuutilization &dimensions.member.1.name=name &dimensions.member.1.value=i-2901-32012-vm &period=10 네임스페이스 "ucloud/server", 디멘전 "name=i-2901-32012-vm", 메트릭이름 "CPUUtilization" 인메트릭에설정된알람중, 통계설정이평균값으로설정된알람을조회한다면다음과같이호출하면된다. &{API_URL}command=listAlarmsForMetric &namespace=ucloud/server &metricname=cpuutilization &dimensions.member.1.name=name &dimensions.member.1.value=i-2901-32012-vm &statistic=average 만약네임스페이스 "ucloud/server", 디멘전 "name=i-2901-32012-vm", 메트릭이름 "CPUUtilization" 인메트릭에설정된알람이 200 개를초과했다면, 이전호출시응답결과로반환받은넥스트토큰을이용하여 201 번째부터의알람리스트를조회할수있다. 다음은그와같은경우에넥스트토큰이용하여호출하는방법을보여준다. &{API_URL}command=listAlarmsForMetric &namespace=ucloud/server &metricname=cpuutilization &dimensions.member.1.name=name &dimensions.member.1.valuei-2901-32012-vm &nexttoken=1387006f360 listalarmhistory 설명다음과같은조건으로알람히스토리를조회한다. 조건없음 - 존재하는모든알람의히스토리조회기간 - 1 주이내의특정기간에발생한알람히스토리를조회알람히스토리형식 (ConfigurationUpdate, StateUpdate, Action) - 히스토리종류에따라서조회 제약사항 질의한사용자가생성한알람의히스토리만을조회할수있다. 한번에최대 200 개까지조회가능하다. 만약조회가되는알람의목록이 200 개이상인경우, 넥스트토큰 (nexttoken) 을반환한다.
이전작업에서반환된넥스트토큰을 listalarmhistory 에추가인자로주면, 다음 200 개의알람목록을조회할수있다. 명령어파라미터 Name Description Data Type Required Constraint alarmname 알람이름 String No 1Byte - 255Byte historyitemtype 조회하고자하는알람히스토리의타입 String No Valid Value : ConfigurationUpd ate, StateUpdate, Action startdate 특정구간의알람히스토리를얻고자할때, 구간의시작시점 DateTime N No API 요청시점에서 1 주이내이어야하며 yyyy-mmdd't'hh:m m:ss.sss 의 ISO8601 형식이어야한다. enddate 특정구간의알람히스토리를얻고자할때, 구간의종료시점 DateTime No API 요청시점에서 1 주이내이어야하며 yyyy-mmdd't'hh:m m:ss.sss 의 ISO8601 형식이어야한다. 또한 StartTime 보다상대적으로미래의시점이어야한다. nexttoken 이전작업에서조회가능한데이터가남았을경우반환되는토큰 String No 응답결과항목 Name Description Data Type alarmhistory 알람히스토리리스트 AlarmHistory list nexttoken 1 회전송개수초과됐을때, 다음시작위치를알려주는토큰 String Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured 1305 InvalidNextToken The next token specified is invalid EXAMPLE1
모든알람히스토리를조회하는경우요청쿼리는다음과같다. ${API_URL}command=listAlarmHistory 알람히스토리목록이 200 개가넘지않아넥스트토큰이없을때의응답결과는다음과같다 <listalarmhistoryresponse> <count>3</count> <alarmhistory> <alarmname>mongodbwatcher</alarmname> <historyitemtype>stateupdate</historyitemtype> <historysummary>alarm updated from INSUFFICIENT_DATA to ALARM</historysummary> </historydata> <timestamp>2012-07-09t13:03:55.758z</timestamp> </alarmhistory> <alarmhistory> <alarmname>mongodbwatcher</alarmname> <historyitemtype>configurationupdate</historyitemtype> <historysummary>alarm MongoDBWatcher created</historysummary> </historydata> <timestamp>2012-07-09t11:23:41.045z</timestamp> </alarmhistory> <alarmhistory> <alarmname>testcreatealarm</alarmname> <historyitemtype>configurationupdate</historyitemtype> <historysummary>alarm TestCreateAlarm created</historysummary> </historydata> <timestamp>2012-07-09t08:10:19.467z</timestamp> </alarmhistory> </listalarmhistoryresponse> 알람히스토리목록이 200 개가넘어넥스트토큰이반환될때의응답결과는다음과같다 <listalarmhistoryresponse> <count>200</count> <alarmhistory> <alarmname>mongodbwatcher</alarmname> <historyitemtype>stateupdate</historyitemtype> <historysummary>alarm updated from INSUFFICIENT_DATA to ALARM</historysummary> </historydata> <timestamp>2012-07-09t13:03:55.758z</timestamp> </alarmhistory> <alarmhistory> <alarmname>mongodbwatcher</alarmname> <historyitemtype>configurationupdate</historyitemtype> <historysummary>alarm MongoDBWatcher created</historysummary> </historydata> <timestamp>2012-07-09t11:23:41.045z</timestamp> </alarmhistory>... 중략... <alarmhistory> <alarmname>testcreatealarm</alarmname> <historyitemtype>configurationupdate</historyitemtype> <historysummary>alarm TestCreateAlarm created</historysummary> </historydata> <timestamp>2012-07-09t08:10:19.467z</timestamp>
</alarmhistory> <nexttoken>1386f68c30c</nexttoken> </listalarmhistoryresponse> EXAMPLE2 다음은알람상태변경에따른히스토리를조회하는예제이다 ${API_URL}command=listAlarmHistory &historyitemtype=stateupdate 2012 년 7 월 1 일 0 시부터 2012 년 7 월 10 일 12 시까지의히스토리를조회하는경우요청쿼리는다음과같다. ${API_URL}command=listAlarmHistory &startdate=2012-07-01t00:00:00.000 &enddate=2012-07-10t12:00:00.000 알람히스토리조회결과가 200 개를초과하는경우에는반환받은넥스트토큰을이용하면, 201 번째부터의알람히스토리를조회할수있다. ${API_URL}command=listAlarmHistory &nexttoken=13870427a4e enablealarmactions 설명 지정된알람의액션을활성화시키는명령이다. 이명령은지정된알람의 "actionsenabled" 파라미터를 "true" 로변경한다. 제약사항 명령어파라미터 Name Description Data Type Required Constraint alarmnames.member. N 액션을활성화시키고싶은알람이름리스트 String lis t Yes 1 item - 100 item s
응답결과항목 Name Description Data Type result 정상적으로액션활성화에성공하면 SUCCESS String Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured EXAMPLE 알람이름이각각 "TestCreateAlarm" 과 "MongoDBWatcher" 인알람의액션수행을활성화시키는요청쿼리는다음과같다. ${API_URL}command=enableAlarmActions &alarmnames.member.1=testcreatealarm &alarmnames.member.2=mongodbwatcher <enablealarmactionsresponse> <result>success</result> </enablealarmactionsresponse> disablealarmactions 설명 지정된알람의액션을비활성화시킨다. 이명령어는지정된알람의 "actionsenabled" 파라미터를 "False" 로변경한다. 제약사항
명령어파라미터 Name Description Data Type Required Constraint alarmnames.member. N 액션을비활성화시키고싶은알람이름리스트 String lis t Yes 1 item - 100 item s 응답결과항목 Name Description Data Type result 정상적으로액션활성화에성공하면 SUCCESS String Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured EXAMPLE 알람이름이각각 "TestCreateAlarm" 과 "MongoDBWatcher" 인알람의액션수행을비활성화시키는요청쿼리는다음과같다. ${API_URL}command=disableAlarmActions &alarmnames.member.1=testcreatealarm &alarmnames.member.2=mongodbwatcher <disablealarmactionsresponse> <result>success</result> </disablealarmactionsresponse> setalarmstate
설명 알람의상태를일시적으로변경하는명령이다. 일반적으로해당알람에설정된액션이정상적으로수행되는지테스트하는데사용한다. 다음알람체크주기에서알람조건에맞는상태로돌아간다. 제약사항 명령어파라미터 Name Description Data Type Required Constraint alarmname 상태를변경하고자하는알람이름 String list Yes 1Byte - 255Byte statereason 해당알람의상태를변경하는이유 String Yes 1Byte - 1023Byte statevalue 해당상태의변경값 String list Yes Valid Value : OK, ALARM, INSU FFICIENT_DATA 응답결과항목 Name Description Data Type result 정상적으로알람상태변경에성공하면 SUCCESS 를반환 String Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints 435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured 1304 ResourceNotFound The named resource does not exist EXAMPLE 현재상태가 "OK" 인알람이름 MongoDBWatcher 인알람의상태를 "ALARM" 으로변경하여알람액션이수행되는지확인하는요청쿼리는다음과같다.
${API_URL}command=setAlarmState &alarmname=mongodbwatcher &statevalue=alarm &statereason=test setalarmsstate API <setalarmstateresponse> <result>success</result> </setalarmstateresponse> deletealarms 설명 알람들을삭제한다. 제약사항 여러개의알람에대한삭제요청을들어왔을경우, 그중존재하지않는알람이하나라도있으면 ResourceNotFound 에러를반환하고해당요청을수행하지않는다. 삭제진행중에에러가발생하면, 해당알람의삭제를보장하지않는다. 여러개의알람에대한삭제요청중에에러가발생하는경우모든알람의삭제를보장하지않을뿐만아니라일부삭제된알람들에대해서도복원하지않고 Internal error 를반환한다. 명령어파라미터 Name Description Data Type Required Constraint alarmnames.member.n 삭제하려는알람이름리스트 String list Yes 1 item - 100 items 응답결과항목 Name Description Data Type result 정상적으로삭제에성공하면 SUCCESS 를반환 String Error errorcode status description Http Status Code 430 Malformed paramete r error The query string is malformed 431 Param error A request parameter does not comply with the associated const raints
435 Missing parameter An input parameter that is mandatory for processing the reque st is not supplied 530 Internal error An internal service error is occured 1304 ResourceNotFound The named resource does not exist EXAMPLE 다음은알람이름이각각 "TestCreateAlarm" 과 "MongoDBWatcher" 인알람을삭제하는예제이다 ${API_URL}command=deleteAlarms &alarmnames.member.1=testcreatealarm &alarmnames.member.2=mongodbwatcher <deletealarmsresponse> <result>success</result> </deletealarmsresponse> APPENDIX: A - DataType ucloud watch 명령어를통해주고받는데이터타입들을나열한다. 데이터타입은기본데이터타입과기본데이터타입을조합한확장데이터타입이있다. A.1 은기본데이터타입에대해기술하고, A.2 는확장데이터타입에대한설명및관련명령어와구성파라미터에대하여기술한다. 확장데이터타입의설명과관련명령어에대한설명은해당데이터타입이어떤다른타입을포함하는지, 다른타입에포함되는지등의관계와해당데이터타입이어떤명령의입력변수나출력변수로사용되는지를기술한다. A.2 의확장데이터타입을기술하는테이블은데이터타입을형성하는파라미터들을나열하는데, 각파라미터들의이름 (Name), 설명 (Description), 타입 (Type), 필수여부 (Required) 그리고제약사항 (Constraints) 등을기술한다. A.1 기본데이터타입 (Basic Data Type) ucloud watch 에서사용하는기본데이터타입은 String, Integer, Double, Boolean, DateTime 이고, JAVA 프로그램언어의표준을따른다. 특별히 DateTime 은 ISO8601 표준중의하나인 "yyyy-mmdd't'hh:mm:ss.sss" 형식을따른다. A.2 확장데이터타입 (Extended Data Type) Metric
설명및관련명령어 특정자원에해당하는모니터링데이터에접근하기위한식별자이다. Dimension 데이터타입을포함한다. listmetrics 명령어의반환파라미터이다. 파라미터테이블 Name Description Type Required Constraints metricname 메트릭이름 String Yes 1Byte - 255Byte namespace 네임스페이스 String Yes 1Byte - 255Byte dimensions 디멘전리스트 Dimens ion list No 0 item - 10 items unit 단위 String Yes Valid Values : Seconds, Microseconds, Milliseconds, Bytes,Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count, Count/Second, Percent, None Dimension 설명및관련명령어 메트릭의식별을위한추가정보이다. Metric 데이터타입에포함된다 파라미터테이블 Name Description Type Required Constraints name 디멘전이름 String Yes 1Byte - 255Byte value 디멘전값 String Yes 1Byte - 255Byte StatisticValues 설명및관련명령어 메트릭데이터포인트의값이다. MetricData 에포함된다. 파라미터테이블 Name Description Type Required Constraints maximum 최댓값 Double Yes
minimum 최솟값 Double Yes samplecount 샘플수 Integer Yes sum 샘플합 Double Yes MetricData 설명및관련명령어 putmetricdata 명령어를이용하기위한데이터포인트의형식이다. Dimension 과 StatisticValues 데이터타입을포함한다. value 나 statisticvalues 의둘중하나파라미터에만값이설정되어야한다 파라미터테이블 Name Description Type Required Constraints dimen sions 디멘전리스트 Dimen sion lis t No 0 item - 10 items metric name 메트릭이름 String Yes 1Byte - 255Byte statisti cvalue s 데이터포인트의통계 Statisti cvalue s Yes, Co nditiona l value 파라미터에값이설정되면, statisticvalues 파라미터에는값을설정할수없음 timest amp 타임스탬프. DateTi me Yes ISO8601 형식중 yyyy-mmdd't'hh:mm:ss.sss 현재시점기준과거 1 주이내부터미래하루이내의값만유효함 unit 단위 String Yes Valid Values : Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count, Count/Second, Percent, None 위의해당하는단위가없을경우 None 타입으로입력 value 데이터포인트의값 Doubl e Yes, Co nditiona l statisticvalues 파라미터에값이설정되면, value 파라미터에는값을설정할수없음 DataPoint 설명및관련명령어 타임스탬프를기준으로특정주기만큼의미래시간안에있는메트릭데이터포인트를통합하는데이터형식이다. getmetricstatistics 명령어의반환파라미터이다.
파라미터테이블 Name Description Type Required Constraints average 샘플합 / 샘플수 Double Yes maximum 최댓값 Double Yes minimum 최솟값 Double Yes samplecount 샘플수 Integer Yes sum 샘플합 Double Yes timestamp 타임스탬프 DateTime Yes unit 단위 String Yes Valid Values : Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count, Count/Second, Percent, None 위의해당하는단위가없을경우 None 타입으로입력 Alarm 설명및관련명령어 알람의데이터형식이다. listalarms 명령어의반환파라미터이다. listalarmsformetric 명령어의반환파라미터이다. 파라미터테이블 Name Description Type Required Constraints alarmname 알람이름 String Yes 1Byte - 255Byte statevalue 알람의상태 String Yes Valid Value : OK, ALARM, INSUFFICIENT _DATA metricname 알람이설정된메트릭이름 String Yes 1Byte - 255Byte namespace 알람이설정된메트릭의네임스페이스 String Yes 1Byte - 255Byte comparisonopera tor 비교연산자 String Yes Valid Value :GreaterThanOrEqualToThre shold, GreaterThanThreshold, LessThan Threshold, LessThanOrEqualToThreshol d
period 주기 Integer Yes 1 분 - 10080 분 evaluationperiod s 상태체크구간 Integer Yes 1 회 - 10080 회 threshold 임계값 Double Yes Valid Values : Seconds, Microseconds, Milliseconds, Bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, Bits, Kilobits, Megabits, Gigabits, Terabits, Bytes/Second, Kilobytes/Second, Megabytes/Second, Gigabytes/Second, Terabytes/Second, Bits/Second, Kilobits/Second, Megabits/Second, Gigabits/Second, Terabits/Second, Count, Count/Second, Percent, None actionsenabled 액션의수행여부를결정하는파라미터이다. 값이 "Tr ue" 일경우에는액션을수행하고 "Fal se" 일경우에는알람의상태가변경되어도액션을수행하지않는다. Boolean No 기본값은 "True" alarmdescription 알람설명 String No 0Byte - 255Byte dimensions 알람이설정된메트릭의디멘전 Dimension list No 0 item - 10 items alarmactions 다른상태에서 "AL ARM" 으로상태가변경될때수행할액션들의리스트이다. String list No 0 item - 5 items insufficientdataac tions 다른상태에서 "IN SUFFICIENT_DAT A" 로상태가변경될때수행할액션들의리스트이다. String list No 0 item - 5 items okactions 다른상태에서 "O K" 로상태가변경될때수행할액션들의리스트이다. String list No 0 item - 5 item AlarmHistory 설명및관련명령어 알람의설정과상태변경에대한히스토리를담은데이터형식이다. listalarmhistory 명령어의반환파라미터이다. 파라미터테이블 Name Description Type Required Constraints
alarmname 알람이름 String Yes 1Byte - 255Byte historyitemtype 히스토리종류 String Yes Valid Value : ConfigurationUpdate, StateUpd ate, Action historysummary 히스토리요약 String Yes 1Byte - 255Byte historydata 히스토리추가정보 String No 1Byte 4095Byte timestamp 타임스탬프 DateTi me Yes ISO8601 형식중 yyyy-mmdd't'hh:mm:ss.ss S