github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/proto/api-skeleton-v3.yaml (about) 1 # TODO: monitoring v3 is coming from backward compatibility to stackdriver and probably for this 2 # reason it may stay forever, unless we develop some different backward compatible API endpoint? 3 name: monitoring.edgelq.com 4 proto: 5 package: 6 name: ntt.monitoring 7 currentVersion: v3 # same as google.monitoring to match REST API transcoding 8 nextVersion: v4 9 goPackage: github.com/cloudwan/edgelq/monitoring 10 protoImportPathPrefix: edgelq/monitoring/proto 11 service: 12 name: Monitoring 13 defaultHost: monitoring.edgelq.com 14 oauthScopes: https://apis.edgelq.com 15 16 resources: 17 - name: Project 18 19 - name: MonitoredResourceDescriptor 20 optOuts: 21 basicActions: 22 - GetMonitoredResourceDescriptor 23 - ListMonitoredResourceDescriptors 24 idPattern: "[\\\\w./-]{4,128}" 25 actions: 26 - name: GetMonitoredResourceDescriptor 27 verb: get 28 grpcTranscoding: 29 isBasic: true 30 httpMethod: get 31 responseName: MonitoredResourceDescriptor 32 skipResponseMsgGen: true 33 withStoreHandle: 34 readOnly: true 35 transaction: NONE 36 - name: ListMonitoredResourceDescriptors 37 verb: list 38 opResourceInfo: 39 isCollection: true 40 isPlural: true 41 grpcTranscoding: 42 isBasic: true 43 httpMethod: get 44 withStoreHandle: 45 transaction: NONE 46 readOnly: true 47 48 - name: MetricDescriptor 49 optOuts: 50 # replace basic actions in order to maintain wire-compatibility with stackdriver api 51 basicActions: 52 - "{Get,Create,Update,Delete}MetricDescriptor" 53 - "ListMetricDescriptors" 54 parents: 55 - Project 56 idPattern: "[\\\\w./-]{4,128}" 57 actions: 58 - name: GetMetricDescriptor 59 verb: get 60 grpcTranscoding: 61 isBasic: true 62 httpMethod: get 63 responseName: MetricDescriptor 64 skipResponseMsgGen: true 65 withStoreHandle: 66 readOnly: true 67 transaction: NONE 68 - name: CreateMetricDescriptor 69 verb: create 70 opResourceInfo: 71 isCollection: true 72 requestPaths: 73 resourceParent: [ "parent" ] 74 resourceBody: [ "metric_descriptor" ] 75 grpcTranscoding: 76 isBasic: true 77 httpMethod: post 78 responseName: MetricDescriptor 79 skipResponseMsgGen: true 80 withStoreHandle: 81 transaction: SNAPSHOT 82 - name: UpdateMetricDescriptor 83 verb: update 84 opResourceInfo: 85 isCollection: false 86 requestPaths: 87 resourceBody: [ "metric_descriptor" ] 88 responsePaths: 89 resourceName: [ "name" ] 90 grpcTranscoding: 91 isBasic: true 92 httpMethod: put 93 responseName: MetricDescriptor 94 skipResponseMsgGen: true 95 withStoreHandle: 96 transaction: SNAPSHOT 97 - name: DeleteMetricDescriptor 98 verb: delete 99 grpcTranscoding: 100 isBasic: true 101 httpMethod: delete 102 responseName: google.protobuf.Empty 103 skipResponseMsgGen: true 104 withStoreHandle: 105 transaction: SNAPSHOT 106 - name: ListMetricDescriptors 107 verb: list 108 opResourceInfo: 109 isCollection: true 110 isPlural: true 111 grpcTranscoding: 112 isBasic: true 113 httpMethod: get 114 withStoreHandle: 115 transaction: NONE 116 117 - name: TimeSerie 118 optOuts: 119 nameField: true 120 metadataField: true 121 standardCrudAccess: true 122 resourceChange: true 123 paging: true 124 parents: 125 - Project 126 actions: 127 - name: ListTimeSeries 128 verb: query # dont use 'list' as it would be matched and provided with implementation 129 grpcTranscoding: 130 httpMethod: get 131 isBasic: true 132 # TODO: TimeSerie has parent, but no name field. Perhaps type should still be generated in goten 133 # so this is supported without hard overwrites 134 httpPathOverrides: 135 - "/v3/{parent=projects/*}/timeSeries" 136 opResourceInfo: 137 isCollection: true 138 withStoreHandle: 139 readOnly: true 140 transaction: NONE 141 multiRegionRouting: 142 skipCodeGenBasedRouting: true 143 - name: CreateTimeSeries 144 verb: batchCreate 145 grpcTranscoding: 146 httpMethod: post 147 isBasic: true 148 # TODO: TimeSerie has parent, but no name field. Perhaps type should still be generated in goten 149 # so this is supported without hard overwrites 150 httpPathOverrides: 151 - "/v3/{parent=projects/*}/timeSeries" 152 httpBodyField: time_series 153 opResourceInfo: 154 isCollection: true 155 responseName: CreateTimeSeriesResponse 156 withStoreHandle: 157 readOnly: true 158 transaction: NONE 159 multiRegionRouting: 160 skipCodeGenBasedRouting: true 161 162 - name: PhantomTimeSerie 163 parents: 164 - Project 165 scopeAttributes: 166 - Region 167 idPattern: "[\\\\w+/=]{1,256}" 168 multiRegion: 169 syncType: NEVER 170 171 - name: AlertingPolicy 172 plural: AlertingPolicies 173 optIns: 174 searchable: true 175 parents: 176 - Project 177 scopeAttributes: 178 - Region 179 180 - name: AlertingCondition 181 optIns: 182 searchable: true 183 parents: 184 - AlertingPolicy 185 186 - name: Alert 187 versioning: 188 skipTransformersBasicActions: 189 - CreateAlert 190 parents: 191 - AlertingCondition 192 idPattern: "[a-zA-Z0-9_.:-]{1,128}" 193 194 - name: Notification 195 versioning: 196 skipTransformersBasicActions: 197 - CreateNotification 198 parents: 199 - AlertingPolicy 200 idPattern: "[a-zA-Z0-9_.:-]{1,128}" 201 202 - name: NotificationChannel 203 parents: 204 - Project 205 actions: 206 # Action to test a notification channel 207 - name: TestNotificationChannel 208 verb: test 209 opResourceInfo: 210 isCollection: false 211 isPlural: false 212 responseName: google.protobuf.Empty 213 withStoreHandle: 214 transaction: SNAPSHOT 215 readOnly: false 216 217 # Internal resource for time series recovery store 218 # We must persist sharding info to guarantee that recovering is possible at all. 219 # If we change for example shards count per day, then we can only reshard for the 220 # next one. If we change maximum AP period we want to support, we must also do 221 # this in proper way - change config of controller, then wait till next period starts. 222 - name: RecoveryStoreShardingInfo 223 scopeAttributes: 224 - Region 225 multiRegion: 226 syncType: NEVER 227 idPattern: "[a-zA-Z0-9_.-]{1,128}"