Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,9 @@ except Exception as e:

## 安全组规则类型(type)
在滴滴云go sdk中,在安全组产品中,安全组规则类型机器对应`type`字段共有以下两种。

| 安全组规则类型 | type |
| ---- | ---- |
| 入方向 | Ingress |
| 出方向 | Egress |

Expand Down
71 changes: 39 additions & 32 deletions compute/v1/dc2_pb2.py

Large diffs are not rendered by default.

Empty file added monitor/__init__.py
Empty file.
Empty file added monitor/v1/__init__.py
Empty file.
629 changes: 629 additions & 0 deletions monitor/v1/counter_pb2.py

Large diffs are not rendered by default.

64 changes: 64 additions & 0 deletions monitor/v1/counter_pb2_grpc.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# coding: utf-8
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
import grpc

from monitor.v1 import counter_pb2 as monitor_dot_v1_dot_counter__pb2


class MonitorStub(object):
# missing associated documentation comment in .proto file
pass

def __init__(self, channel):
"""Constructor.

Args:
channel: A grpc.Channel.
"""
self.ListCounter = channel.unary_unary(
'/didi.cloud.monitor.v1.Monitor/ListCounter',
request_serializer=monitor_dot_v1_dot_counter__pb2.ListCounterRequest.SerializeToString,
response_deserializer=monitor_dot_v1_dot_counter__pb2.ListCounterResponse.FromString,
)
self.ListCounterData = channel.unary_unary(
'/didi.cloud.monitor.v1.Monitor/ListCounterData',
request_serializer=monitor_dot_v1_dot_counter__pb2.ListCounterDataRequest.SerializeToString,
response_deserializer=monitor_dot_v1_dot_counter__pb2.ListCounterDataResponse.FromString,
)


class MonitorServicer(object):
# missing associated documentation comment in .proto file
pass

def ListCounter(self, request, context):
"""获取曲线列表
"""
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details('Method not implemented!')
raise NotImplementedError('Method not implemented!')

def ListCounterData(self, request, context):
# missing associated documentation comment in .proto file
pass
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
context.set_details('Method not implemented!')
raise NotImplementedError('Method not implemented!')


def add_MonitorServicer_to_server(servicer, server):
rpc_method_handlers = {
'ListCounter': grpc.unary_unary_rpc_method_handler(
servicer.ListCounter,
request_deserializer=monitor_dot_v1_dot_counter__pb2.ListCounterRequest.FromString,
response_serializer=monitor_dot_v1_dot_counter__pb2.ListCounterResponse.SerializeToString,
),
'ListCounterData': grpc.unary_unary_rpc_method_handler(
servicer.ListCounterData,
request_deserializer=monitor_dot_v1_dot_counter__pb2.ListCounterDataRequest.FromString,
response_serializer=monitor_dot_v1_dot_counter__pb2.ListCounterDataResponse.SerializeToString,
),
}
generic_handler = grpc.method_handlers_generic_handler(
'didi.cloud.monitor.v1.Monitor', rpc_method_handlers)
server.add_generic_rpc_handlers((generic_handler,))
3 changes: 2 additions & 1 deletion tests/common/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,5 @@
from compute.v1.ebs_pb2 import ListEbsRequest,ListEbsCondition,ListEbsResponse,GetEbsByUuidRequest,GetEbsByUuidResponse,GetEbsTotalCntRequest,GetEbsTotalCntResponse,CreateEbsRequest,CreateEbsResponse,DeleteEbsRequest,DeleteEbsResponse,AttachEbsRequest,AttachEbsResponse,DetachEbsRequest,DetachEbsResponse,ChangeEbsSizeRequest,ChangeEbsSizeResponse,ChangeEbsNameRequest,ChangeEbsNameResponse
from compute.v1.sg_pb2 import ListSgResponse,ListSgCondition,ListSgRequest,GetSgTotalCntRequest,GetSgTotalCntResponse,CreateSgRuleInput,CreateSgRequest,CreateSgResponse,DeleteSgRequest,DeleteSgResponse,ChangeSgNameRequest,ChangeSgNameResponse,AttachDc2ToSgRequest,AttachDc2ToSgResponse,DetachDc2FromSgRequest,DetachDc2FromSgResponse,ListSgRuleCondition,ListSgRuleRequest,ListSgRuleResponse,GetSgRuleTotalCntRequest,GetSgRuleTotalCntResponse,CreateSgRuleRequest,CreateSgRuleResponse,DeleteSgRuleRequest,DeleteSgRuleResponse
from compute.v1.snap_pb2 import ListSnapshotRequest,ListSnapshotCondition,ListSnapshotResponse,GetSnapshotTotalCntRequest,GetSnapshotTotalCntResponse,CreateSnapshotRequest,CreateSnapshotResponse,DeleteSnapshotRequest,DeleteSnapshotResponse,RevertSnapshotRequest,RevertSnapshotResponse,ChangeSnapshotNameRequest,ChangeSnapshotNameResponse
from compute.v1.vpc_pb2 import ListVpcRequest,ListVpcResponse,GetVpcByUuidRequest,GetVpcByUuidResponse,GetVpcTotalCntRequest,GetVpcTotalCntResponse,CreateSubnetInput,CreateVpcRequest,CreateVpcResponse,DeleteVpcRequest,DeleteVpcResponse,ChangeVpcNameRequest,ChangeVpcNameResponse,ListVpcAvailableCidrRequest,VpcAvailableCidr,ListVpcAvailableCidrResponse,ListSubnetRequest,ListSubnetCondition,ListSubnetResponse,GetSubnetByUuidRequest,GetSubnetByUuidResponse,GetSubnetTotalCntRequest,GetSubnetTotalCntResponse,CreateSubnetRequest,CreateSubnetResponse,DeleteSubnetRequest,DeleteSubnetResponse,ChangeSubnetNameRequest,ChangeSubnetNameResponse,CheckSubnetCidrOverlapRequest,CheckSubnetCidrOverlapResponse,IsOverlapOutput
from compute.v1.vpc_pb2 import ListVpcRequest,ListVpcResponse,GetVpcByUuidRequest,GetVpcByUuidResponse,GetVpcTotalCntRequest,GetVpcTotalCntResponse,CreateSubnetInput,CreateVpcRequest,CreateVpcResponse,DeleteVpcRequest,DeleteVpcResponse,ChangeVpcNameRequest,ChangeVpcNameResponse,ListVpcAvailableCidrRequest,VpcAvailableCidr,ListVpcAvailableCidrResponse,ListSubnetRequest,ListSubnetCondition,ListSubnetResponse,GetSubnetByUuidRequest,GetSubnetByUuidResponse,GetSubnetTotalCntRequest,GetSubnetTotalCntResponse,CreateSubnetRequest,CreateSubnetResponse,DeleteSubnetRequest,DeleteSubnetResponse,ChangeSubnetNameRequest,ChangeSubnetNameResponse,CheckSubnetCidrOverlapRequest,CheckSubnetCidrOverlapResponse,IsOverlapOutput
from monitor.v1.counter_pb2 import ListCounterRequest,CounterResource,ListCounterResponse,CounterOutput,CounterInfo,ListCounterDataRequest,CounterDataInput,ListCounterDataResponse,CounterDataOutput,CounterDataValue
2 changes: 2 additions & 0 deletions tests/common/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
from base.v1.base_pb2 import Header
from bill.v1 import bill_pb2_grpc
from compute.v1 import common_pb2_grpc, dc2_pb2_grpc, ebs_pb2_grpc, eip_pb2_grpc, sg_pb2_grpc, snap_pb2_grpc, vpc_pb2_grpc
from monitor.v1 import counter_pb2_grpc


class DicloudClient(object):
Expand All @@ -30,6 +31,7 @@ def oauth2token_credentials(context, callback):
self.sgStub = sg_pb2_grpc.SgStub(self.channel)
self.snapStub = snap_pb2_grpc.SnapStub(self.channel)
self.vpcStub = vpc_pb2_grpc.VpcStub(self.channel)
self.monitorStub = counter_pb2_grpc.MonitorStub(self.channel)

def wait_for_job_result(self, regionId, jobUuids):
allDone = False
Expand Down
58 changes: 58 additions & 0 deletions tests/monitor/v1/counter_test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# coding: utf-8

from __future__ import print_function
import unittest
import tests.common.client
import tests.common as c

cli = tests.common.client.DicloudClient()

class TestCounter(unittest.TestCase):

def test_01_list_counter(self):
print("================Begin Test List Counter================")
# 获取曲线信息
listCounterReq = c.ListCounterRequest(header=c.Header(regionId='gz'))
resource1 = listCounterReq.resource.add()
resource1.resourceUuids.append('ec8d243a009c5c52b1fb44d358eeaf31')
resource1.resourceType = 'dc2'
resource1.metric.extend(['cpu.util', 'disk.write', 'disk.read'])
resource2 = listCounterReq.resource.add()
resource2.resourceUuids.append('057ae1c9855c5062a4078183d497c13b')
resource2.resourceType = 'eip'
resource2.metric.extend(['rxbytes', 'txbytes'])
counterResp = cli.monitorStub.ListCounter(listCounterReq)
print(counterResp)
self.assertEqual(counterResp.error.errno, 0)

def test_02_list_counter_data(self):
print("================Begin Test List Counter Data================")
# 获取曲线信息
listCounterDataReq = c.ListCounterDataRequest(header=c.Header(regionId='gz'))
counter1 = listCounterDataReq.counter.add()
counter1.resourceType = 'dc2'
counter1.resourceUuid = 'ec8d243a009c5c52b1fb44d358eeaf31'
counter1.monitorTags = 'device=vda'
counter1.metric = 'disk.write'
counter1.startTime = 1560997040
counter1.endTime = 1561000640
counter2 = listCounterDataReq.counter.add()
counter2.resourceType = 'dc2'
counter2.resourceUuid = 'ec8d243a009c5c52b1fb44d358eeaf31'
counter2.monitorTags = 'device=vda'
counter2.metric = 'disk.write'
counter2.startTime = 1560997040
counter2.endTime = 1561000640
counter3 = listCounterDataReq.counter.add()
counter3.resourceType = 'eip'
counter3.resourceUuid = '057ae1c9855c5062a4078183d497c13b'
counter3.monitorTags = ''
counter3.metric = 'rxbytes'
counter3.startTime = 1560997040
counter3.endTime = 1561000640
counterDataResp = cli.monitorStub.ListCounterData(listCounterDataReq)
print(counterDataResp)
self.assertEqual(counterDataResp.error.errno, 0)

if __name__ == '__main__':
unittest.main()