Kudu C++ client API
Loading...
Searching...
No Matches
resource_metrics.h
1// Licensed to the Apache Software Foundation (ASF) under one
2// or more contributor license agreements. See the NOTICE file
3// distributed with this work for additional information
4// regarding copyright ownership. The ASF licenses this file
5// to you under the Apache License, Version 2.0 (the
6// "License"); you may not use this file except in compliance
7// with the License. You may obtain a copy of the License at
8//
9// http://www.apache.org/licenses/LICENSE-2.0
10//
11// Unless required by applicable law or agreed to in writing,
12// software distributed under the License is distributed on an
13// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14// KIND, either express or implied. See the License for the
15// specific language governing permissions and limitations
16// under the License.
17#ifndef KUDU_CLIENT_RESOURCE_METRICS_H
18#define KUDU_CLIENT_RESOURCE_METRICS_H
19
20// NOTE: using stdint.h instead of cstdint because this file might be
21// processed by a compiler lacking C++11 support (Kudu C++ client API
22// still keeps C++98 compatibility)
23#include <stdint.h>
24
25#include <map>
26#include <string>
27
28#include "kudu/util/kudu_export.h"
29
30#ifdef KUDU_HEADERS_NO_STUBS
31#include "kudu/gutil/macros.h"
32#include "kudu/gutil/port.h"
33#else
34#include "kudu/client/stubs.h"
35#endif
36
37namespace kudu {
38namespace client {
39
41class KUDU_EXPORT ResourceMetrics {
42 public:
44
46
49 std::map<std::string, int64_t> Get() const;
50
58 ATTRIBUTE_DEPRECATED("This function will become private in a future release.")
59 void Increment(const std::string& name, int64_t amount);
60
66 int64_t GetMetric(const std::string& name) const;
67
68 private:
69 friend class KuduScanner;
70 friend class KuduSession;
71 class KUDU_NO_EXPORT Data;
72 Data* data_;
73
74 DISALLOW_COPY_AND_ASSIGN(ResourceMetrics);
75};
76
77} // namespace client
78} // namespace kudu
79
80#endif
This class is a representation of a single scan.
Definition client.h:2712
Representation of a Kudu client session.
Definition client.h:2292
A generic catalog of simple metrics.
Definition resource_metrics.h:41
std::map< std::string, int64_t > Get() const