Add prometheus ListDashboards api.

This commit is contained in:
sdk-team
2020-04-29 23:13:32 +08:00
parent 92be79728f
commit b1e2187ca5
19 changed files with 1004 additions and 1 deletions

View File

@@ -26,6 +26,8 @@
#include "model/AddGrafanaResult.h"
#include "model/AddIntegrationRequest.h"
#include "model/AddIntegrationResult.h"
#include "model/CheckDataConsistencyRequest.h"
#include "model/CheckDataConsistencyResult.h"
#include "model/CreateAlertContactRequest.h"
#include "model/CreateAlertContactResult.h"
#include "model/CreateAlertContactGroupRequest.h"
@@ -40,6 +42,8 @@
#include "model/DeleteAlertRulesResult.h"
#include "model/DeleteRetcodeAppRequest.h"
#include "model/DeleteRetcodeAppResult.h"
#include "model/GetConsistencySnapshotRequest.h"
#include "model/GetConsistencySnapshotResult.h"
#include "model/GetPrometheusApiTokenRequest.h"
#include "model/GetPrometheusApiTokenResult.h"
#include "model/GetRetcodeShareUrlRequest.h"
@@ -52,6 +56,8 @@
#include "model/ImportCustomAlertRulesResult.h"
#include "model/ListClusterFromGrafanaRequest.h"
#include "model/ListClusterFromGrafanaResult.h"
#include "model/ListDashboardsRequest.h"
#include "model/ListDashboardsResult.h"
#include "model/ListPromClustersRequest.h"
#include "model/ListPromClustersResult.h"
#include "model/ListRetcodeAppsRequest.h"
@@ -107,6 +113,9 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::AddIntegrationResult> AddIntegrationOutcome;
typedef std::future<AddIntegrationOutcome> AddIntegrationOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::AddIntegrationRequest&, const AddIntegrationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddIntegrationAsyncHandler;
typedef Outcome<Error, Model::CheckDataConsistencyResult> CheckDataConsistencyOutcome;
typedef std::future<CheckDataConsistencyOutcome> CheckDataConsistencyOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::CheckDataConsistencyRequest&, const CheckDataConsistencyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CheckDataConsistencyAsyncHandler;
typedef Outcome<Error, Model::CreateAlertContactResult> CreateAlertContactOutcome;
typedef std::future<CreateAlertContactOutcome> CreateAlertContactOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::CreateAlertContactRequest&, const CreateAlertContactOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateAlertContactAsyncHandler;
@@ -128,6 +137,9 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::DeleteRetcodeAppResult> DeleteRetcodeAppOutcome;
typedef std::future<DeleteRetcodeAppOutcome> DeleteRetcodeAppOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::DeleteRetcodeAppRequest&, const DeleteRetcodeAppOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteRetcodeAppAsyncHandler;
typedef Outcome<Error, Model::GetConsistencySnapshotResult> GetConsistencySnapshotOutcome;
typedef std::future<GetConsistencySnapshotOutcome> GetConsistencySnapshotOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::GetConsistencySnapshotRequest&, const GetConsistencySnapshotOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetConsistencySnapshotAsyncHandler;
typedef Outcome<Error, Model::GetPrometheusApiTokenResult> GetPrometheusApiTokenOutcome;
typedef std::future<GetPrometheusApiTokenOutcome> GetPrometheusApiTokenOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::GetPrometheusApiTokenRequest&, const GetPrometheusApiTokenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetPrometheusApiTokenAsyncHandler;
@@ -146,6 +158,9 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::ListClusterFromGrafanaResult> ListClusterFromGrafanaOutcome;
typedef std::future<ListClusterFromGrafanaOutcome> ListClusterFromGrafanaOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::ListClusterFromGrafanaRequest&, const ListClusterFromGrafanaOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListClusterFromGrafanaAsyncHandler;
typedef Outcome<Error, Model::ListDashboardsResult> ListDashboardsOutcome;
typedef std::future<ListDashboardsOutcome> ListDashboardsOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::ListDashboardsRequest&, const ListDashboardsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListDashboardsAsyncHandler;
typedef Outcome<Error, Model::ListPromClustersResult> ListPromClustersOutcome;
typedef std::future<ListPromClustersOutcome> ListPromClustersOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::ListPromClustersRequest&, const ListPromClustersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListPromClustersAsyncHandler;
@@ -217,6 +232,9 @@ namespace AlibabaCloud
AddIntegrationOutcome addIntegration(const Model::AddIntegrationRequest &request)const;
void addIntegrationAsync(const Model::AddIntegrationRequest& request, const AddIntegrationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
AddIntegrationOutcomeCallable addIntegrationCallable(const Model::AddIntegrationRequest& request) const;
CheckDataConsistencyOutcome checkDataConsistency(const Model::CheckDataConsistencyRequest &request)const;
void checkDataConsistencyAsync(const Model::CheckDataConsistencyRequest& request, const CheckDataConsistencyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
CheckDataConsistencyOutcomeCallable checkDataConsistencyCallable(const Model::CheckDataConsistencyRequest& request) const;
CreateAlertContactOutcome createAlertContact(const Model::CreateAlertContactRequest &request)const;
void createAlertContactAsync(const Model::CreateAlertContactRequest& request, const CreateAlertContactAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
CreateAlertContactOutcomeCallable createAlertContactCallable(const Model::CreateAlertContactRequest& request) const;
@@ -238,6 +256,9 @@ namespace AlibabaCloud
DeleteRetcodeAppOutcome deleteRetcodeApp(const Model::DeleteRetcodeAppRequest &request)const;
void deleteRetcodeAppAsync(const Model::DeleteRetcodeAppRequest& request, const DeleteRetcodeAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DeleteRetcodeAppOutcomeCallable deleteRetcodeAppCallable(const Model::DeleteRetcodeAppRequest& request) const;
GetConsistencySnapshotOutcome getConsistencySnapshot(const Model::GetConsistencySnapshotRequest &request)const;
void getConsistencySnapshotAsync(const Model::GetConsistencySnapshotRequest& request, const GetConsistencySnapshotAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
GetConsistencySnapshotOutcomeCallable getConsistencySnapshotCallable(const Model::GetConsistencySnapshotRequest& request) const;
GetPrometheusApiTokenOutcome getPrometheusApiToken(const Model::GetPrometheusApiTokenRequest &request)const;
void getPrometheusApiTokenAsync(const Model::GetPrometheusApiTokenRequest& request, const GetPrometheusApiTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
GetPrometheusApiTokenOutcomeCallable getPrometheusApiTokenCallable(const Model::GetPrometheusApiTokenRequest& request) const;
@@ -256,6 +277,9 @@ namespace AlibabaCloud
ListClusterFromGrafanaOutcome listClusterFromGrafana(const Model::ListClusterFromGrafanaRequest &request)const;
void listClusterFromGrafanaAsync(const Model::ListClusterFromGrafanaRequest& request, const ListClusterFromGrafanaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
ListClusterFromGrafanaOutcomeCallable listClusterFromGrafanaCallable(const Model::ListClusterFromGrafanaRequest& request) const;
ListDashboardsOutcome listDashboards(const Model::ListDashboardsRequest &request)const;
void listDashboardsAsync(const Model::ListDashboardsRequest& request, const ListDashboardsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
ListDashboardsOutcomeCallable listDashboardsCallable(const Model::ListDashboardsRequest& request) const;
ListPromClustersOutcome listPromClusters(const Model::ListPromClustersRequest &request)const;
void listPromClustersAsync(const Model::ListPromClustersRequest& request, const ListPromClustersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
ListPromClustersOutcomeCallable listPromClustersCallable(const Model::ListPromClustersRequest& request) const;

View File

@@ -0,0 +1,60 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_ARMS_MODEL_CHECKDATACONSISTENCYREQUEST_H_
#define ALIBABACLOUD_ARMS_MODEL_CHECKDATACONSISTENCYREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT CheckDataConsistencyRequest : public RpcServiceRequest
{
public:
CheckDataConsistencyRequest();
~CheckDataConsistencyRequest();
long getCurrentTimestamp()const;
void setCurrentTimestamp(long currentTimestamp);
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
std::string getAppType()const;
void setAppType(const std::string& appType);
std::string getPid()const;
void setPid(const std::string& pid);
std::string getProxyUserId()const;
void setProxyUserId(const std::string& proxyUserId);
private:
long currentTimestamp_;
std::string regionId_;
std::string appType_;
std::string pid_;
std::string proxyUserId_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_CHECKDATACONSISTENCYREQUEST_H_

View File

@@ -0,0 +1,51 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_ARMS_MODEL_CHECKDATACONSISTENCYRESULT_H_
#define ALIBABACLOUD_ARMS_MODEL_CHECKDATACONSISTENCYRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT CheckDataConsistencyResult : public ServiceResult
{
public:
CheckDataConsistencyResult();
explicit CheckDataConsistencyResult(const std::string &payload);
~CheckDataConsistencyResult();
bool getIsDataConsistency()const;
protected:
void parse(const std::string &payload);
private:
bool isDataConsistency_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_CHECKDATACONSISTENCYRESULT_H_

View File

@@ -0,0 +1,60 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_ARMS_MODEL_GETCONSISTENCYSNAPSHOTREQUEST_H_
#define ALIBABACLOUD_ARMS_MODEL_GETCONSISTENCYSNAPSHOTREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT GetConsistencySnapshotRequest : public RpcServiceRequest
{
public:
GetConsistencySnapshotRequest();
~GetConsistencySnapshotRequest();
long getCurrentTimestamp()const;
void setCurrentTimestamp(long currentTimestamp);
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
std::string getAppType()const;
void setAppType(const std::string& appType);
std::string getPid()const;
void setPid(const std::string& pid);
std::string getProxyUserId()const;
void setProxyUserId(const std::string& proxyUserId);
private:
long currentTimestamp_;
std::string regionId_;
std::string appType_;
std::string pid_;
std::string proxyUserId_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_GETCONSISTENCYSNAPSHOTREQUEST_H_

View File

@@ -0,0 +1,89 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_ARMS_MODEL_GETCONSISTENCYSNAPSHOTRESULT_H_
#define ALIBABACLOUD_ARMS_MODEL_GETCONSISTENCYSNAPSHOTRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT GetConsistencySnapshotResult : public ServiceResult
{
public:
struct ConsistencyResult
{
struct SlsShardWatermarkBean
{
struct CheckPointResponse
{
std::string consumer;
long updateTime;
int shard;
std::string checkPoint;
};
std::string userId;
std::vector<CheckPointResponse> checkPointResponses;
std::string pid;
std::vector<std::string> cursorUpdateTimes;
std::string regionId;
std::string appType;
};
struct AgentHeartbeatInfo
{
long startTimestamp;
std::string agentVersion;
std::string ip;
std::string hostname;
long lastHeartbeatTime;
std::string pid;
std::string regionId;
std::string appType;
std::string procId;
};
long lastSlsShardWatermarkTimestamp;
long lastAgentInfoTimestamp;
long judgeTimestamp;
SlsShardWatermarkBean slsShardWatermarkBean;
std::string barrierPointsLastTimestampMap;
long lastBarrierTimestamp;
std::vector<AgentHeartbeatInfo> agentHeartbeatInfos;
};
GetConsistencySnapshotResult();
explicit GetConsistencySnapshotResult(const std::string &payload);
~GetConsistencySnapshotResult();
ConsistencyResult getConsistencyResult()const;
protected:
void parse(const std::string &payload);
private:
ConsistencyResult consistencyResult_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_GETCONSISTENCYSNAPSHOTRESULT_H_

View File

@@ -0,0 +1,51 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_ARMS_MODEL_LISTDASHBOARDSREQUEST_H_
#define ALIBABACLOUD_ARMS_MODEL_LISTDASHBOARDSREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT ListDashboardsRequest : public RpcServiceRequest
{
public:
ListDashboardsRequest();
~ListDashboardsRequest();
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
std::string getClusterId()const;
void setClusterId(const std::string& clusterId);
private:
std::string regionId_;
std::string clusterId_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_LISTDASHBOARDSREQUEST_H_

View File

@@ -0,0 +1,63 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_ARMS_MODEL_LISTDASHBOARDSRESULT_H_
#define ALIBABACLOUD_ARMS_MODEL_LISTDASHBOARDSRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT ListDashboardsResult : public ServiceResult
{
public:
struct DashboardVosItem
{
std::string uid;
std::string type;
std::string title;
std::string time;
std::string id;
std::string exporter;
std::string url;
std::vector<std::string> tags;
bool isArmsExporter;
};
ListDashboardsResult();
explicit ListDashboardsResult(const std::string &payload);
~ListDashboardsResult();
std::vector<DashboardVosItem> getDashboardVos()const;
protected:
void parse(const std::string &payload);
private:
std::vector<DashboardVosItem> dashboardVos_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_LISTDASHBOARDSRESULT_H_

View File

@@ -41,6 +41,8 @@ namespace AlibabaCloud
QueryMetricRequest();
~QueryMetricRequest();
std::string getConsistencyQueryStrategy()const;
void setConsistencyQueryStrategy(const std::string& consistencyQueryStrategy);
long getEndTime()const;
void setEndTime(long endTime);
std::string getOrderBy()const;
@@ -49,6 +51,8 @@ namespace AlibabaCloud
void setStartTime(long startTime);
std::vector<Filters> getFilters()const;
void setFilters(const std::vector<Filters>& filters);
std::string getConsistencyDataKey()const;
void setConsistencyDataKey(const std::string& consistencyDataKey);
std::string getProxyUserId()const;
void setProxyUserId(const std::string& proxyUserId);
std::vector<std::string> getMeasures()const;
@@ -65,10 +69,12 @@ namespace AlibabaCloud
void setOrder(const std::string& order);
private:
std::string consistencyQueryStrategy_;
long endTime_;
std::string orderBy_;
long startTime_;
std::vector<Filters> filters_;
std::string consistencyDataKey_;
std::string proxyUserId_;
std::vector<std::string> measures_;
int intervalInSec_;