2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
22 package org.openecomp.appc.metricservice.metric;
24 import java.util.HashMap;
28 * a measure of system parameter at the current moment. Each metric is identified by name.
29 * In general case, a metric just reflects its (almost) real-time value and is not responsible for maintaining its historical data.
30 * One that needs to build series of a metric values for statistical/analytic purposes should query the value and store it for further processing.
31 * Metrics can be of different types - counters, timers etc.
32 * The initial service implementation supports simple (flat) counters only.
35 public interface Metric {
40 * This API will be used to get all the running Metrics Output.
41 * @return HashMap <String,String> in which
42 * the First String(Key) will be the name of the KPI property
43 * and another String(Value of the Key) will be the Value of
44 * that property for that KPI
46 HashMap<String,String> getMetricsOutput();
48 * Return last modified date for KPI in string format
49 * @return - last modified date for KPI
51 String getLastModified();