Add GetTrace api.

This commit is contained in:
sdk-team
2020-08-17 19:52:09 +08:00
parent 8d4cff577b
commit e4502cf36b
16 changed files with 352 additions and 12 deletions

View File

@@ -64,6 +64,8 @@
#include "model/GetStackResult.h"
#include "model/GetTraceRequest.h"
#include "model/GetTraceResult.h"
#include "model/GetTraceAppRequest.h"
#include "model/GetTraceAppResult.h"
#include "model/ImportAppAlertRulesRequest.h"
#include "model/ImportAppAlertRulesResult.h"
#include "model/ImportCustomAlertRulesRequest.h"
@@ -186,6 +188,9 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::GetTraceResult> GetTraceOutcome;
typedef std::future<GetTraceOutcome> GetTraceOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::GetTraceRequest&, const GetTraceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetTraceAsyncHandler;
typedef Outcome<Error, Model::GetTraceAppResult> GetTraceAppOutcome;
typedef std::future<GetTraceAppOutcome> GetTraceAppOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::GetTraceAppRequest&, const GetTraceAppOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetTraceAppAsyncHandler;
typedef Outcome<Error, Model::ImportAppAlertRulesResult> ImportAppAlertRulesOutcome;
typedef std::future<ImportAppAlertRulesOutcome> ImportAppAlertRulesOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::ImportAppAlertRulesRequest&, const ImportAppAlertRulesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ImportAppAlertRulesAsyncHandler;
@@ -329,6 +334,9 @@ namespace AlibabaCloud
GetTraceOutcome getTrace(const Model::GetTraceRequest &request)const;
void getTraceAsync(const Model::GetTraceRequest& request, const GetTraceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
GetTraceOutcomeCallable getTraceCallable(const Model::GetTraceRequest& request) const;
GetTraceAppOutcome getTraceApp(const Model::GetTraceAppRequest &request)const;
void getTraceAppAsync(const Model::GetTraceAppRequest& request, const GetTraceAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
GetTraceAppOutcomeCallable getTraceAppCallable(const Model::GetTraceAppRequest& request) const;
ImportAppAlertRulesOutcome importAppAlertRules(const Model::ImportAppAlertRulesRequest &request)const;
void importAppAlertRulesAsync(const Model::ImportAppAlertRulesRequest& request, const ImportAppAlertRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
ImportAppAlertRulesOutcomeCallable importAppAlertRulesCallable(const Model::ImportAppAlertRulesRequest& request) const;

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_GETTRACEAPPREQUEST_H_
#define ALIBABACLOUD_ARMS_MODEL_GETTRACEAPPREQUEST_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 GetTraceAppRequest : public RpcServiceRequest
{
public:
GetTraceAppRequest();
~GetTraceAppRequest();
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
std::string getPid()const;
void setPid(const std::string& pid);
private:
std::string regionId_;
std::string pid_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_GETTRACEAPPREQUEST_H_

View File

@@ -0,0 +1,64 @@
/*
* 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_GETTRACEAPPRESULT_H_
#define ALIBABACLOUD_ARMS_MODEL_GETTRACEAPPRESULT_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 GetTraceAppResult : public ServiceResult
{
public:
struct TraceApp
{
std::string type;
long appId;
std::string userId;
long createTime;
long updateTime;
std::string pid;
bool show;
std::vector<std::string> labels;
std::string regionId;
std::string appName;
};
GetTraceAppResult();
explicit GetTraceAppResult(const std::string &payload);
~GetTraceAppResult();
TraceApp getTraceApp()const;
protected:
void parse(const std::string &payload);
private:
TraceApp traceApp_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_GETTRACEAPPRESULT_H_

View File

@@ -37,21 +37,24 @@ namespace AlibabaCloud
bool getIsAutoStart()const;
void setIsAutoStart(bool isAutoStart);
std::string getProxyUserId()const;
void setProxyUserId(const std::string& proxyUserId);
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
std::string getContactGroupIds()const;
void setContactGroupIds(const std::string& contactGroupIds);
std::string getTemplateAlertConfig()const;
void setTemplateAlertConfig(const std::string& templateAlertConfig);
std::string getProxyUserId()const;
void setProxyUserId(const std::string& proxyUserId);
std::string getTemplageAlertConfig()const;
void setTemplageAlertConfig(const std::string& templageAlertConfig);
private:
bool isAutoStart_;
std::string proxyUserId_;
std::string regionId_;
std::string contactGroupIds_;
std::string templateAlertConfig_;
std::string proxyUserId_;
std::string templageAlertConfig_;
};
}

View File

@@ -34,7 +34,20 @@ namespace AlibabaCloud
public:
struct ContactGroup
{
struct Contact
{
std::string email;
std::string phone;
std::string userId;
long createTime;
long updateTime;
long contactId;
std::string dingRobot;
std::string contactName;
bool systemNoc;
};
long contactGroupId;
std::vector<ContactGroup::Contact> contacts;
std::string contactGroupName;
std::string userId;
long createTime;

View File

@@ -37,7 +37,7 @@ namespace AlibabaCloud
struct EventItem
{
int alertType;
int eventLevel;
std::string eventLevel;
long alertId;
std::string alertName;
std::string message;