@@ -1283,3 +1283,53 @@ func (s *LogStore) UpdateMeteringMode(meteringMode string) error {
12831283 defer r .Body .Close ()
12841284 return nil
12851285}
1286+
1287+ func (s * LogStore ) GetMetricStoreMeteringMode () (* GetMeteringModeResponse , error ) {
1288+ h := map [string ]string {
1289+ "x-log-bodyrawsize" : "0" ,
1290+ "Content-Type" : "application/json" ,
1291+ }
1292+ uri := fmt .Sprintf ("/metricstores/%s/meteringmode" , s .Name )
1293+ r , err := request (s .project , "GET" , uri , h , nil )
1294+ if err != nil {
1295+ return nil , err
1296+ }
1297+ defer r .Body .Close ()
1298+ data , err := ioutil .ReadAll (r .Body )
1299+ if err != nil {
1300+ return nil , NewBadResponseError ("" , r .Header , r .StatusCode )
1301+ }
1302+ res := GetMeteringModeResponse {}
1303+ err = json .Unmarshal (data , & res )
1304+ if err != nil {
1305+ return nil , NewBadResponseError (string (data ), r .Header , r .StatusCode )
1306+
1307+ }
1308+ return & res , nil
1309+
1310+ }
1311+
1312+ func (s * LogStore ) UpdateMetricStoreMeteringMode (meteringMode string ) error {
1313+
1314+ body := map [string ]string {
1315+ "meteringMode" : meteringMode ,
1316+ }
1317+ uri := fmt .Sprintf ("/metricstores/%s/meteringmode" , s .Name )
1318+ requestBody , err := json .Marshal (body )
1319+ if err != nil {
1320+ return fmt .Errorf ("cant marshal body:%w" , err )
1321+ }
1322+
1323+ h := map [string ]string {
1324+ "Content-Type" : "application/json" ,
1325+ "x-log-bodyrawsize" : strconv .Itoa (len (requestBody )),
1326+ }
1327+
1328+ r , err := request (s .project , "PUT" , uri , h , requestBody )
1329+
1330+ if err != nil {
1331+ return err
1332+ }
1333+ defer r .Body .Close ()
1334+ return nil
1335+ }
0 commit comments