Bläddra i källkod

Generated 2020-01-11 for servicemesh.

sdk-team 5 år sedan
förälder
incheckning
82cfdabb16
26 ändrade filer med 918 tillägg och 8 borttagningar
  1. 3 0
      CHANGELOG
  2. 12 0
      servicemesh/CMakeLists.txt
  3. 24 0
      servicemesh/include/alibabacloud/servicemesh/ServicemeshClient.h
  4. 12 0
      servicemesh/include/alibabacloud/servicemesh/model/CreateServiceMeshRequest.h
  5. 11 5
      servicemesh/include/alibabacloud/servicemesh/model/DescribeClustersInServiceMeshResult.h
  6. 21 3
      servicemesh/include/alibabacloud/servicemesh/model/DescribeServiceMeshDetailResult.h
  7. 48 0
      servicemesh/include/alibabacloud/servicemesh/model/GetAutoInjectionLabelSyncStatusRequest.h
  8. 51 0
      servicemesh/include/alibabacloud/servicemesh/model/GetAutoInjectionLabelSyncStatusResult.h
  9. 2 0
      servicemesh/include/alibabacloud/servicemesh/model/GetDiagnosisResult.h
  10. 48 0
      servicemesh/include/alibabacloud/servicemesh/model/GetServiceRegistrySourceRequest.h
  11. 53 0
      servicemesh/include/alibabacloud/servicemesh/model/GetServiceRegistrySourceResult.h
  12. 51 0
      servicemesh/include/alibabacloud/servicemesh/model/SetServiceRegistrySourceRequest.h
  13. 51 0
      servicemesh/include/alibabacloud/servicemesh/model/SetServiceRegistrySourceResult.h
  14. 12 0
      servicemesh/include/alibabacloud/servicemesh/model/UpdateMeshFeatureRequest.h
  15. 108 0
      servicemesh/src/ServicemeshClient.cc
  16. 44 0
      servicemesh/src/model/CreateServiceMeshRequest.cc
  17. 10 0
      servicemesh/src/model/DescribeClustersInServiceMeshResult.cc
  18. 15 0
      servicemesh/src/model/DescribeServiceMeshDetailResult.cc
  19. 40 0
      servicemesh/src/model/GetAutoInjectionLabelSyncStatusRequest.cc
  20. 51 0
      servicemesh/src/model/GetAutoInjectionLabelSyncStatusResult.cc
  21. 7 0
      servicemesh/src/model/GetDiagnosisResult.cc
  22. 40 0
      servicemesh/src/model/GetServiceRegistrySourceRequest.cc
  23. 58 0
      servicemesh/src/model/GetServiceRegistrySourceResult.cc
  24. 51 0
      servicemesh/src/model/SetServiceRegistrySourceRequest.cc
  25. 51 0
      servicemesh/src/model/SetServiceRegistrySourceResult.cc
  26. 44 0
      servicemesh/src/model/UpdateMeshFeatureRequest.cc

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2021-02-19 Version: patch
+- Generated 2020-01-11 for `servicemesh`.
+
 2021-02-19 Version: patch
 - Add new API for recording.
 

+ 12 - 0
servicemesh/CMakeLists.txt

@@ -49,6 +49,8 @@ set(servicemesh_public_header_model
 	include/alibabacloud/servicemesh/model/DescribeServiceMeshesResult.h
 	include/alibabacloud/servicemesh/model/DescribeUpgradeVersionRequest.h
 	include/alibabacloud/servicemesh/model/DescribeUpgradeVersionResult.h
+	include/alibabacloud/servicemesh/model/GetAutoInjectionLabelSyncStatusRequest.h
+	include/alibabacloud/servicemesh/model/GetAutoInjectionLabelSyncStatusResult.h
 	include/alibabacloud/servicemesh/model/GetDiagnosisRequest.h
 	include/alibabacloud/servicemesh/model/GetDiagnosisResult.h
 	include/alibabacloud/servicemesh/model/GetRegisteredServiceEndpointsRequest.h
@@ -59,6 +61,8 @@ set(servicemesh_public_header_model
 	include/alibabacloud/servicemesh/model/GetRegisteredServicesResult.h
 	include/alibabacloud/servicemesh/model/GetServiceMeshSlbRequest.h
 	include/alibabacloud/servicemesh/model/GetServiceMeshSlbResult.h
+	include/alibabacloud/servicemesh/model/GetServiceRegistrySourceRequest.h
+	include/alibabacloud/servicemesh/model/GetServiceRegistrySourceResult.h
 	include/alibabacloud/servicemesh/model/GetVmAppMeshInfoRequest.h
 	include/alibabacloud/servicemesh/model/GetVmAppMeshInfoResult.h
 	include/alibabacloud/servicemesh/model/GetVmMetaRequest.h
@@ -69,6 +73,8 @@ set(servicemesh_public_header_model
 	include/alibabacloud/servicemesh/model/RemoveVmAppFromMeshResult.h
 	include/alibabacloud/servicemesh/model/RunDiagnosisRequest.h
 	include/alibabacloud/servicemesh/model/RunDiagnosisResult.h
+	include/alibabacloud/servicemesh/model/SetServiceRegistrySourceRequest.h
+	include/alibabacloud/servicemesh/model/SetServiceRegistrySourceResult.h
 	include/alibabacloud/servicemesh/model/UpdateIstioInjectionConfigRequest.h
 	include/alibabacloud/servicemesh/model/UpdateIstioInjectionConfigResult.h
 	include/alibabacloud/servicemesh/model/UpdateMeshFeatureRequest.h
@@ -106,6 +112,8 @@ set(servicemesh_src
 	src/model/DescribeServiceMeshesResult.cc
 	src/model/DescribeUpgradeVersionRequest.cc
 	src/model/DescribeUpgradeVersionResult.cc
+	src/model/GetAutoInjectionLabelSyncStatusRequest.cc
+	src/model/GetAutoInjectionLabelSyncStatusResult.cc
 	src/model/GetDiagnosisRequest.cc
 	src/model/GetDiagnosisResult.cc
 	src/model/GetRegisteredServiceEndpointsRequest.cc
@@ -116,6 +124,8 @@ set(servicemesh_src
 	src/model/GetRegisteredServicesResult.cc
 	src/model/GetServiceMeshSlbRequest.cc
 	src/model/GetServiceMeshSlbResult.cc
+	src/model/GetServiceRegistrySourceRequest.cc
+	src/model/GetServiceRegistrySourceResult.cc
 	src/model/GetVmAppMeshInfoRequest.cc
 	src/model/GetVmAppMeshInfoResult.cc
 	src/model/GetVmMetaRequest.cc
@@ -126,6 +136,8 @@ set(servicemesh_src
 	src/model/RemoveVmAppFromMeshResult.cc
 	src/model/RunDiagnosisRequest.cc
 	src/model/RunDiagnosisResult.cc
+	src/model/SetServiceRegistrySourceRequest.cc
+	src/model/SetServiceRegistrySourceResult.cc
 	src/model/UpdateIstioInjectionConfigRequest.cc
 	src/model/UpdateIstioInjectionConfigResult.cc
 	src/model/UpdateMeshFeatureRequest.cc

+ 24 - 0
servicemesh/include/alibabacloud/servicemesh/ServicemeshClient.h

@@ -50,6 +50,8 @@
 #include "model/DescribeServiceMeshesResult.h"
 #include "model/DescribeUpgradeVersionRequest.h"
 #include "model/DescribeUpgradeVersionResult.h"
+#include "model/GetAutoInjectionLabelSyncStatusRequest.h"
+#include "model/GetAutoInjectionLabelSyncStatusResult.h"
 #include "model/GetDiagnosisRequest.h"
 #include "model/GetDiagnosisResult.h"
 #include "model/GetRegisteredServiceEndpointsRequest.h"
@@ -60,6 +62,8 @@
 #include "model/GetRegisteredServicesResult.h"
 #include "model/GetServiceMeshSlbRequest.h"
 #include "model/GetServiceMeshSlbResult.h"
+#include "model/GetServiceRegistrySourceRequest.h"
+#include "model/GetServiceRegistrySourceResult.h"
 #include "model/GetVmAppMeshInfoRequest.h"
 #include "model/GetVmAppMeshInfoResult.h"
 #include "model/GetVmMetaRequest.h"
@@ -70,6 +74,8 @@
 #include "model/RemoveVmAppFromMeshResult.h"
 #include "model/RunDiagnosisRequest.h"
 #include "model/RunDiagnosisResult.h"
+#include "model/SetServiceRegistrySourceRequest.h"
+#include "model/SetServiceRegistrySourceResult.h"
 #include "model/UpdateIstioInjectionConfigRequest.h"
 #include "model/UpdateIstioInjectionConfigResult.h"
 #include "model/UpdateMeshFeatureRequest.h"
@@ -127,6 +133,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeUpgradeVersionResult> DescribeUpgradeVersionOutcome;
 			typedef std::future<DescribeUpgradeVersionOutcome> DescribeUpgradeVersionOutcomeCallable;
 			typedef std::function<void(const ServicemeshClient*, const Model::DescribeUpgradeVersionRequest&, const DescribeUpgradeVersionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeUpgradeVersionAsyncHandler;
+			typedef Outcome<Error, Model::GetAutoInjectionLabelSyncStatusResult> GetAutoInjectionLabelSyncStatusOutcome;
+			typedef std::future<GetAutoInjectionLabelSyncStatusOutcome> GetAutoInjectionLabelSyncStatusOutcomeCallable;
+			typedef std::function<void(const ServicemeshClient*, const Model::GetAutoInjectionLabelSyncStatusRequest&, const GetAutoInjectionLabelSyncStatusOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAutoInjectionLabelSyncStatusAsyncHandler;
 			typedef Outcome<Error, Model::GetDiagnosisResult> GetDiagnosisOutcome;
 			typedef std::future<GetDiagnosisOutcome> GetDiagnosisOutcomeCallable;
 			typedef std::function<void(const ServicemeshClient*, const Model::GetDiagnosisRequest&, const GetDiagnosisOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDiagnosisAsyncHandler;
@@ -142,6 +151,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetServiceMeshSlbResult> GetServiceMeshSlbOutcome;
 			typedef std::future<GetServiceMeshSlbOutcome> GetServiceMeshSlbOutcomeCallable;
 			typedef std::function<void(const ServicemeshClient*, const Model::GetServiceMeshSlbRequest&, const GetServiceMeshSlbOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetServiceMeshSlbAsyncHandler;
+			typedef Outcome<Error, Model::GetServiceRegistrySourceResult> GetServiceRegistrySourceOutcome;
+			typedef std::future<GetServiceRegistrySourceOutcome> GetServiceRegistrySourceOutcomeCallable;
+			typedef std::function<void(const ServicemeshClient*, const Model::GetServiceRegistrySourceRequest&, const GetServiceRegistrySourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetServiceRegistrySourceAsyncHandler;
 			typedef Outcome<Error, Model::GetVmAppMeshInfoResult> GetVmAppMeshInfoOutcome;
 			typedef std::future<GetVmAppMeshInfoOutcome> GetVmAppMeshInfoOutcomeCallable;
 			typedef std::function<void(const ServicemeshClient*, const Model::GetVmAppMeshInfoRequest&, const GetVmAppMeshInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetVmAppMeshInfoAsyncHandler;
@@ -157,6 +169,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::RunDiagnosisResult> RunDiagnosisOutcome;
 			typedef std::future<RunDiagnosisOutcome> RunDiagnosisOutcomeCallable;
 			typedef std::function<void(const ServicemeshClient*, const Model::RunDiagnosisRequest&, const RunDiagnosisOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RunDiagnosisAsyncHandler;
+			typedef Outcome<Error, Model::SetServiceRegistrySourceResult> SetServiceRegistrySourceOutcome;
+			typedef std::future<SetServiceRegistrySourceOutcome> SetServiceRegistrySourceOutcomeCallable;
+			typedef std::function<void(const ServicemeshClient*, const Model::SetServiceRegistrySourceRequest&, const SetServiceRegistrySourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SetServiceRegistrySourceAsyncHandler;
 			typedef Outcome<Error, Model::UpdateIstioInjectionConfigResult> UpdateIstioInjectionConfigOutcome;
 			typedef std::future<UpdateIstioInjectionConfigOutcome> UpdateIstioInjectionConfigOutcomeCallable;
 			typedef std::function<void(const ServicemeshClient*, const Model::UpdateIstioInjectionConfigRequest&, const UpdateIstioInjectionConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateIstioInjectionConfigAsyncHandler;
@@ -213,6 +228,9 @@ namespace AlibabaCloud
 			DescribeUpgradeVersionOutcome describeUpgradeVersion(const Model::DescribeUpgradeVersionRequest &request)const;
 			void describeUpgradeVersionAsync(const Model::DescribeUpgradeVersionRequest& request, const DescribeUpgradeVersionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeUpgradeVersionOutcomeCallable describeUpgradeVersionCallable(const Model::DescribeUpgradeVersionRequest& request) const;
+			GetAutoInjectionLabelSyncStatusOutcome getAutoInjectionLabelSyncStatus(const Model::GetAutoInjectionLabelSyncStatusRequest &request)const;
+			void getAutoInjectionLabelSyncStatusAsync(const Model::GetAutoInjectionLabelSyncStatusRequest& request, const GetAutoInjectionLabelSyncStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetAutoInjectionLabelSyncStatusOutcomeCallable getAutoInjectionLabelSyncStatusCallable(const Model::GetAutoInjectionLabelSyncStatusRequest& request) const;
 			GetDiagnosisOutcome getDiagnosis(const Model::GetDiagnosisRequest &request)const;
 			void getDiagnosisAsync(const Model::GetDiagnosisRequest& request, const GetDiagnosisAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetDiagnosisOutcomeCallable getDiagnosisCallable(const Model::GetDiagnosisRequest& request) const;
@@ -228,6 +246,9 @@ namespace AlibabaCloud
 			GetServiceMeshSlbOutcome getServiceMeshSlb(const Model::GetServiceMeshSlbRequest &request)const;
 			void getServiceMeshSlbAsync(const Model::GetServiceMeshSlbRequest& request, const GetServiceMeshSlbAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetServiceMeshSlbOutcomeCallable getServiceMeshSlbCallable(const Model::GetServiceMeshSlbRequest& request) const;
+			GetServiceRegistrySourceOutcome getServiceRegistrySource(const Model::GetServiceRegistrySourceRequest &request)const;
+			void getServiceRegistrySourceAsync(const Model::GetServiceRegistrySourceRequest& request, const GetServiceRegistrySourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetServiceRegistrySourceOutcomeCallable getServiceRegistrySourceCallable(const Model::GetServiceRegistrySourceRequest& request) const;
 			GetVmAppMeshInfoOutcome getVmAppMeshInfo(const Model::GetVmAppMeshInfoRequest &request)const;
 			void getVmAppMeshInfoAsync(const Model::GetVmAppMeshInfoRequest& request, const GetVmAppMeshInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetVmAppMeshInfoOutcomeCallable getVmAppMeshInfoCallable(const Model::GetVmAppMeshInfoRequest& request) const;
@@ -243,6 +264,9 @@ namespace AlibabaCloud
 			RunDiagnosisOutcome runDiagnosis(const Model::RunDiagnosisRequest &request)const;
 			void runDiagnosisAsync(const Model::RunDiagnosisRequest& request, const RunDiagnosisAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			RunDiagnosisOutcomeCallable runDiagnosisCallable(const Model::RunDiagnosisRequest& request) const;
+			SetServiceRegistrySourceOutcome setServiceRegistrySource(const Model::SetServiceRegistrySourceRequest &request)const;
+			void setServiceRegistrySourceAsync(const Model::SetServiceRegistrySourceRequest& request, const SetServiceRegistrySourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SetServiceRegistrySourceOutcomeCallable setServiceRegistrySourceCallable(const Model::SetServiceRegistrySourceRequest& request) const;
 			UpdateIstioInjectionConfigOutcome updateIstioInjectionConfig(const Model::UpdateIstioInjectionConfigRequest &request)const;
 			void updateIstioInjectionConfigAsync(const Model::UpdateIstioInjectionConfigRequest& request, const UpdateIstioInjectionConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateIstioInjectionConfigOutcomeCallable updateIstioInjectionConfigCallable(const Model::UpdateIstioInjectionConfigRequest& request) const;

+ 12 - 0
servicemesh/include/alibabacloud/servicemesh/model/CreateServiceMeshRequest.h

@@ -45,8 +45,12 @@ namespace AlibabaCloud
 				void setOpaEnabled(bool opaEnabled);
 				std::string getProxyLimitMemory()const;
 				void setProxyLimitMemory(const std::string& proxyLimitMemory);
+				bool getCustomizedPrometheus()const;
+				void setCustomizedPrometheus(bool customizedPrometheus);
 				bool getStrictMTLS()const;
 				void setStrictMTLS(bool strictMTLS);
+				bool getAccessLogEnabled()const;
+				void setAccessLogEnabled(bool accessLogEnabled);
 				std::string getOPALogLevel()const;
 				void setOPALogLevel(const std::string& oPALogLevel);
 				std::string getExcludeIPRanges()const;
@@ -61,6 +65,8 @@ namespace AlibabaCloud
 				void setExcludeInboundPorts(const std::string& excludeInboundPorts);
 				std::string getOPALimitMemory()const;
 				void setOPALimitMemory(const std::string& oPALimitMemory);
+				std::string getPrometheusUrl()const;
+				void setPrometheusUrl(const std::string& prometheusUrl);
 				std::string getVSwitches()const;
 				void setVSwitches(const std::string& vSwitches);
 				bool getCADisableSecretAutoGeneration()const;
@@ -93,6 +99,8 @@ namespace AlibabaCloud
 				void setTraceSampling(float traceSampling);
 				std::string getAppNamespaces()const;
 				void setAppNamespaces(const std::string& appNamespaces);
+				bool getKialiEnabled()const;
+				void setKialiEnabled(bool kialiEnabled);
 				bool getPilotPublicEip()const;
 				void setPilotPublicEip(bool pilotPublicEip);
 				std::string getAuditProject()const;
@@ -110,7 +118,9 @@ namespace AlibabaCloud
 				bool openAgentPolicy_;
 				bool opaEnabled_;
 				std::string proxyLimitMemory_;
+				bool customizedPrometheus_;
 				bool strictMTLS_;
+				bool accessLogEnabled_;
 				std::string oPALogLevel_;
 				std::string excludeIPRanges_;
 				std::string istioVersion_;
@@ -118,6 +128,7 @@ namespace AlibabaCloud
 				std::string includeIPRanges_;
 				std::string excludeInboundPorts_;
 				std::string oPALimitMemory_;
+				std::string prometheusUrl_;
 				std::string vSwitches_;
 				bool cADisableSecretAutoGeneration_;
 				std::string cAListenedNamespaces_;
@@ -134,6 +145,7 @@ namespace AlibabaCloud
 				bool apiServerPublicEip_;
 				float traceSampling_;
 				std::string appNamespaces_;
+				bool kialiEnabled_;
 				bool pilotPublicEip_;
 				std::string auditProject_;
 				std::string outboundTrafficPolicy_;

+ 11 - 5
servicemesh/include/alibabacloud/servicemesh/model/DescribeClustersInServiceMeshResult.h

@@ -34,18 +34,24 @@ namespace AlibabaCloud
 			public:
 				struct Cluster
 				{
-					std::string vpcId;
+					struct AccessLogDashboardInfo
+					{
+						std::string title;
+						std::string url;
+					};
 					std::string clusterId;
+					std::string clusterDomain;
+					std::string sgId;
+					std::string clusterType;
+					std::vector<Cluster::AccessLogDashboardInfo> accessLogDashboards;
+					std::string name;
+					std::string vpcId;
 					std::string version;
 					std::string state;
-					std::string clusterDomain;
 					std::string creationTime;
 					std::string updateTime;
-					std::string sgId;
-					std::string clusterType;
 					std::string regionId;
 					std::string errorMessage;
-					std::string name;
 				};
 
 

+ 21 - 3
servicemesh/include/alibabacloud/servicemesh/model/DescribeServiceMeshDetailResult.h

@@ -106,16 +106,34 @@ namespace AlibabaCloud
 								std::string requestCPU;
 								std::string sidecarInjectorWebhookAsYaml;
 							};
+							struct Kiali
+							{
+								bool enabled;
+								std::string url;
+							};
+							struct Prometheus
+							{
+								bool useExternal;
+								std::string externalUrl;
+							};
+							struct AccessLog
+							{
+								bool enabled;
+							};
 							Pilot pilot;
-							SidecarInjector sidecarInjector;
+							AccessLog accessLog;
 							OPA oPA;
+							Prometheus prometheus;
+							bool telemetry;
+							std::string outboundTrafficPolicy;
+							std::string edition;
+							SidecarInjector sidecarInjector;
 							Audit audit;
 							Proxy proxy;
+							Kiali kiali;
 							std::string includeIPRanges;
 							bool enableLocalityLB;
 							bool tracing;
-							bool telemetry;
-							std::string outboundTrafficPolicy;
 							bool customizedZipkin;
 						};
 						struct Network

+ 48 - 0
servicemesh/include/alibabacloud/servicemesh/model/GetAutoInjectionLabelSyncStatusRequest.h

@@ -0,0 +1,48 @@
+/*
+ * 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_SERVICEMESH_MODEL_GETAUTOINJECTIONLABELSYNCSTATUSREQUEST_H_
+#define ALIBABACLOUD_SERVICEMESH_MODEL_GETAUTOINJECTIONLABELSYNCSTATUSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/servicemesh/ServicemeshExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Servicemesh
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SERVICEMESH_EXPORT GetAutoInjectionLabelSyncStatusRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetAutoInjectionLabelSyncStatusRequest();
+				~GetAutoInjectionLabelSyncStatusRequest();
+
+				std::string getServiceMeshId()const;
+				void setServiceMeshId(const std::string& serviceMeshId);
+
+            private:
+				std::string serviceMeshId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SERVICEMESH_MODEL_GETAUTOINJECTIONLABELSYNCSTATUSREQUEST_H_

+ 51 - 0
servicemesh/include/alibabacloud/servicemesh/model/GetAutoInjectionLabelSyncStatusResult.h

@@ -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_SERVICEMESH_MODEL_GETAUTOINJECTIONLABELSYNCSTATUSRESULT_H_
+#define ALIBABACLOUD_SERVICEMESH_MODEL_GETAUTOINJECTIONLABELSYNCSTATUSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/servicemesh/ServicemeshExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Servicemesh
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SERVICEMESH_EXPORT GetAutoInjectionLabelSyncStatusResult : public ServiceResult
+			{
+			public:
+
+
+				GetAutoInjectionLabelSyncStatusResult();
+				explicit GetAutoInjectionLabelSyncStatusResult(const std::string &payload);
+				~GetAutoInjectionLabelSyncStatusResult();
+				std::string getStatus()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SERVICEMESH_MODEL_GETAUTOINJECTIONLABELSYNCSTATUSRESULT_H_

+ 2 - 0
servicemesh/include/alibabacloud/servicemesh/model/GetDiagnosisResult.h

@@ -37,12 +37,14 @@ namespace AlibabaCloud
 				GetDiagnosisResult();
 				explicit GetDiagnosisResult(const std::string &payload);
 				~GetDiagnosisResult();
+				std::string getStatus()const;
 				std::string getRunAt()const;
 				std::string getResult()const;
 
 			protected:
 				void parse(const std::string &payload);
 			private:
+				std::string status_;
 				std::string runAt_;
 				std::string result_;
 

+ 48 - 0
servicemesh/include/alibabacloud/servicemesh/model/GetServiceRegistrySourceRequest.h

@@ -0,0 +1,48 @@
+/*
+ * 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_SERVICEMESH_MODEL_GETSERVICEREGISTRYSOURCEREQUEST_H_
+#define ALIBABACLOUD_SERVICEMESH_MODEL_GETSERVICEREGISTRYSOURCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/servicemesh/ServicemeshExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Servicemesh
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SERVICEMESH_EXPORT GetServiceRegistrySourceRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetServiceRegistrySourceRequest();
+				~GetServiceRegistrySourceRequest();
+
+				std::string getServiceMeshId()const;
+				void setServiceMeshId(const std::string& serviceMeshId);
+
+            private:
+				std::string serviceMeshId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SERVICEMESH_MODEL_GETSERVICEREGISTRYSOURCEREQUEST_H_

+ 53 - 0
servicemesh/include/alibabacloud/servicemesh/model/GetServiceRegistrySourceResult.h

@@ -0,0 +1,53 @@
+/*
+ * 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_SERVICEMESH_MODEL_GETSERVICEREGISTRYSOURCERESULT_H_
+#define ALIBABACLOUD_SERVICEMESH_MODEL_GETSERVICEREGISTRYSOURCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/servicemesh/ServicemeshExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Servicemesh
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SERVICEMESH_EXPORT GetServiceRegistrySourceResult : public ServiceResult
+			{
+			public:
+
+
+				GetServiceRegistrySourceResult();
+				explicit GetServiceRegistrySourceResult(const std::string &payload);
+				~GetServiceRegistrySourceResult();
+				std::string getStatus()const;
+				std::string getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				std::string result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SERVICEMESH_MODEL_GETSERVICEREGISTRYSOURCERESULT_H_

+ 51 - 0
servicemesh/include/alibabacloud/servicemesh/model/SetServiceRegistrySourceRequest.h

@@ -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_SERVICEMESH_MODEL_SETSERVICEREGISTRYSOURCEREQUEST_H_
+#define ALIBABACLOUD_SERVICEMESH_MODEL_SETSERVICEREGISTRYSOURCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/servicemesh/ServicemeshExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Servicemesh
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SERVICEMESH_EXPORT SetServiceRegistrySourceRequest : public RpcServiceRequest
+			{
+
+			public:
+				SetServiceRegistrySourceRequest();
+				~SetServiceRegistrySourceRequest();
+
+				std::string getServiceMeshId()const;
+				void setServiceMeshId(const std::string& serviceMeshId);
+				std::string getConfig()const;
+				void setConfig(const std::string& config);
+
+            private:
+				std::string serviceMeshId_;
+				std::string config_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SERVICEMESH_MODEL_SETSERVICEREGISTRYSOURCEREQUEST_H_

+ 51 - 0
servicemesh/include/alibabacloud/servicemesh/model/SetServiceRegistrySourceResult.h

@@ -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_SERVICEMESH_MODEL_SETSERVICEREGISTRYSOURCERESULT_H_
+#define ALIBABACLOUD_SERVICEMESH_MODEL_SETSERVICEREGISTRYSOURCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/servicemesh/ServicemeshExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Servicemesh
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SERVICEMESH_EXPORT SetServiceRegistrySourceResult : public ServiceResult
+			{
+			public:
+
+
+				SetServiceRegistrySourceResult();
+				explicit SetServiceRegistrySourceResult(const std::string &payload);
+				~SetServiceRegistrySourceResult();
+				std::string getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SERVICEMESH_MODEL_SETSERVICEREGISTRYSOURCERESULT_H_

+ 12 - 0
servicemesh/include/alibabacloud/servicemesh/model/UpdateMeshFeatureRequest.h

@@ -45,8 +45,12 @@ namespace AlibabaCloud
 				void setOpaEnabled(bool opaEnabled);
 				std::string getProxyLimitMemory()const;
 				void setProxyLimitMemory(const std::string& proxyLimitMemory);
+				bool getCustomizedPrometheus()const;
+				void setCustomizedPrometheus(bool customizedPrometheus);
 				std::string getCniExcludeNamespaces()const;
 				void setCniExcludeNamespaces(const std::string& cniExcludeNamespaces);
+				bool getAccessLogEnabled()const;
+				void setAccessLogEnabled(bool accessLogEnabled);
 				std::string getOPALogLevel()const;
 				void setOPALogLevel(const std::string& oPALogLevel);
 				bool getCustomizedZipkin()const;
@@ -61,6 +65,8 @@ namespace AlibabaCloud
 				void setIncludeIPRanges(const std::string& includeIPRanges);
 				std::string getOPALimitMemory()const;
 				void setOPALimitMemory(const std::string& oPALimitMemory);
+				std::string getPrometheusUrl()const;
+				void setPrometheusUrl(const std::string& prometheusUrl);
 				bool getCADisableSecretAutoGeneration()const;
 				void setCADisableSecretAutoGeneration(bool cADisableSecretAutoGeneration);
 				std::string getCAListenedNamespaces()const;
@@ -99,6 +105,8 @@ namespace AlibabaCloud
 				void setHttp10Enabled(bool http10Enabled);
 				std::string getAppNamespaces()const;
 				void setAppNamespaces(const std::string& appNamespaces);
+				bool getKialiEnabled()const;
+				void setKialiEnabled(bool kialiEnabled);
 				bool getPilotPublicEip()const;
 				void setPilotPublicEip(bool pilotPublicEip);
 				std::string getAuditProject()const;
@@ -114,7 +122,9 @@ namespace AlibabaCloud
 				bool openAgentPolicy_;
 				bool opaEnabled_;
 				std::string proxyLimitMemory_;
+				bool customizedPrometheus_;
 				std::string cniExcludeNamespaces_;
+				bool accessLogEnabled_;
 				std::string oPALogLevel_;
 				bool customizedZipkin_;
 				std::string sidecarInjectorRequestCPU_;
@@ -122,6 +132,7 @@ namespace AlibabaCloud
 				bool tracing_;
 				std::string includeIPRanges_;
 				std::string oPALimitMemory_;
+				std::string prometheusUrl_;
 				bool cADisableSecretAutoGeneration_;
 				std::string cAListenedNamespaces_;
 				std::string proxyLimitCPU_;
@@ -141,6 +152,7 @@ namespace AlibabaCloud
 				float traceSampling_;
 				bool http10Enabled_;
 				std::string appNamespaces_;
+				bool kialiEnabled_;
 				bool pilotPublicEip_;
 				std::string auditProject_;
 				std::string outboundTrafficPolicy_;

+ 108 - 0
servicemesh/src/ServicemeshClient.cc

@@ -555,6 +555,42 @@ ServicemeshClient::DescribeUpgradeVersionOutcomeCallable ServicemeshClient::desc
 	return task->get_future();
 }
 
+ServicemeshClient::GetAutoInjectionLabelSyncStatusOutcome ServicemeshClient::getAutoInjectionLabelSyncStatus(const GetAutoInjectionLabelSyncStatusRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetAutoInjectionLabelSyncStatusOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetAutoInjectionLabelSyncStatusOutcome(GetAutoInjectionLabelSyncStatusResult(outcome.result()));
+	else
+		return GetAutoInjectionLabelSyncStatusOutcome(outcome.error());
+}
+
+void ServicemeshClient::getAutoInjectionLabelSyncStatusAsync(const GetAutoInjectionLabelSyncStatusRequest& request, const GetAutoInjectionLabelSyncStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getAutoInjectionLabelSyncStatus(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ServicemeshClient::GetAutoInjectionLabelSyncStatusOutcomeCallable ServicemeshClient::getAutoInjectionLabelSyncStatusCallable(const GetAutoInjectionLabelSyncStatusRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetAutoInjectionLabelSyncStatusOutcome()>>(
+			[this, request]()
+			{
+			return this->getAutoInjectionLabelSyncStatus(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ServicemeshClient::GetDiagnosisOutcome ServicemeshClient::getDiagnosis(const GetDiagnosisRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -735,6 +771,42 @@ ServicemeshClient::GetServiceMeshSlbOutcomeCallable ServicemeshClient::getServic
 	return task->get_future();
 }
 
+ServicemeshClient::GetServiceRegistrySourceOutcome ServicemeshClient::getServiceRegistrySource(const GetServiceRegistrySourceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetServiceRegistrySourceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetServiceRegistrySourceOutcome(GetServiceRegistrySourceResult(outcome.result()));
+	else
+		return GetServiceRegistrySourceOutcome(outcome.error());
+}
+
+void ServicemeshClient::getServiceRegistrySourceAsync(const GetServiceRegistrySourceRequest& request, const GetServiceRegistrySourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getServiceRegistrySource(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ServicemeshClient::GetServiceRegistrySourceOutcomeCallable ServicemeshClient::getServiceRegistrySourceCallable(const GetServiceRegistrySourceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetServiceRegistrySourceOutcome()>>(
+			[this, request]()
+			{
+			return this->getServiceRegistrySource(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ServicemeshClient::GetVmAppMeshInfoOutcome ServicemeshClient::getVmAppMeshInfo(const GetVmAppMeshInfoRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -915,6 +987,42 @@ ServicemeshClient::RunDiagnosisOutcomeCallable ServicemeshClient::runDiagnosisCa
 	return task->get_future();
 }
 
+ServicemeshClient::SetServiceRegistrySourceOutcome ServicemeshClient::setServiceRegistrySource(const SetServiceRegistrySourceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return SetServiceRegistrySourceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return SetServiceRegistrySourceOutcome(SetServiceRegistrySourceResult(outcome.result()));
+	else
+		return SetServiceRegistrySourceOutcome(outcome.error());
+}
+
+void ServicemeshClient::setServiceRegistrySourceAsync(const SetServiceRegistrySourceRequest& request, const SetServiceRegistrySourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, setServiceRegistrySource(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ServicemeshClient::SetServiceRegistrySourceOutcomeCallable ServicemeshClient::setServiceRegistrySourceCallable(const SetServiceRegistrySourceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<SetServiceRegistrySourceOutcome()>>(
+			[this, request]()
+			{
+			return this->setServiceRegistrySource(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ServicemeshClient::UpdateIstioInjectionConfigOutcome ServicemeshClient::updateIstioInjectionConfig(const UpdateIstioInjectionConfigRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 44 - 0
servicemesh/src/model/CreateServiceMeshRequest.cc

@@ -82,6 +82,17 @@ void CreateServiceMeshRequest::setProxyLimitMemory(const std::string& proxyLimit
 	setBodyParameter("ProxyLimitMemory", proxyLimitMemory);
 }
 
+bool CreateServiceMeshRequest::getCustomizedPrometheus()const
+{
+	return customizedPrometheus_;
+}
+
+void CreateServiceMeshRequest::setCustomizedPrometheus(bool customizedPrometheus)
+{
+	customizedPrometheus_ = customizedPrometheus;
+	setBodyParameter("CustomizedPrometheus", customizedPrometheus ? "true" : "false");
+}
+
 bool CreateServiceMeshRequest::getStrictMTLS()const
 {
 	return strictMTLS_;
@@ -93,6 +104,17 @@ void CreateServiceMeshRequest::setStrictMTLS(bool strictMTLS)
 	setBodyParameter("StrictMTLS", strictMTLS ? "true" : "false");
 }
 
+bool CreateServiceMeshRequest::getAccessLogEnabled()const
+{
+	return accessLogEnabled_;
+}
+
+void CreateServiceMeshRequest::setAccessLogEnabled(bool accessLogEnabled)
+{
+	accessLogEnabled_ = accessLogEnabled;
+	setBodyParameter("AccessLogEnabled", accessLogEnabled ? "true" : "false");
+}
+
 std::string CreateServiceMeshRequest::getOPALogLevel()const
 {
 	return oPALogLevel_;
@@ -170,6 +192,17 @@ void CreateServiceMeshRequest::setOPALimitMemory(const std::string& oPALimitMemo
 	setBodyParameter("OPALimitMemory", oPALimitMemory);
 }
 
+std::string CreateServiceMeshRequest::getPrometheusUrl()const
+{
+	return prometheusUrl_;
+}
+
+void CreateServiceMeshRequest::setPrometheusUrl(const std::string& prometheusUrl)
+{
+	prometheusUrl_ = prometheusUrl;
+	setBodyParameter("PrometheusUrl", prometheusUrl);
+}
+
 std::string CreateServiceMeshRequest::getVSwitches()const
 {
 	return vSwitches_;
@@ -346,6 +379,17 @@ void CreateServiceMeshRequest::setAppNamespaces(const std::string& appNamespaces
 	setBodyParameter("AppNamespaces", appNamespaces);
 }
 
+bool CreateServiceMeshRequest::getKialiEnabled()const
+{
+	return kialiEnabled_;
+}
+
+void CreateServiceMeshRequest::setKialiEnabled(bool kialiEnabled)
+{
+	kialiEnabled_ = kialiEnabled;
+	setBodyParameter("KialiEnabled", kialiEnabled ? "true" : "false");
+}
+
 bool CreateServiceMeshRequest::getPilotPublicEip()const
 {
 	return pilotPublicEip_;

+ 10 - 0
servicemesh/src/model/DescribeClustersInServiceMeshResult.cc

@@ -67,6 +67,16 @@ void DescribeClustersInServiceMeshResult::parse(const std::string &payload)
 			clustersObject.sgId = valueClustersCluster["SgId"].asString();
 		if(!valueClustersCluster["ClusterDomain"].isNull())
 			clustersObject.clusterDomain = valueClustersCluster["ClusterDomain"].asString();
+		auto allAccessLogDashboardsNode = valueClustersCluster["AccessLogDashboards"]["AccessLogDashboardInfo"];
+		for (auto valueClustersClusterAccessLogDashboardsAccessLogDashboardInfo : allAccessLogDashboardsNode)
+		{
+			Cluster::AccessLogDashboardInfo accessLogDashboardsObject;
+			if(!valueClustersClusterAccessLogDashboardsAccessLogDashboardInfo["Title"].isNull())
+				accessLogDashboardsObject.title = valueClustersClusterAccessLogDashboardsAccessLogDashboardInfo["Title"].asString();
+			if(!valueClustersClusterAccessLogDashboardsAccessLogDashboardInfo["Url"].isNull())
+				accessLogDashboardsObject.url = valueClustersClusterAccessLogDashboardsAccessLogDashboardInfo["Url"].asString();
+			clustersObject.accessLogDashboards.push_back(accessLogDashboardsObject);
+		}
 		clusters_.push_back(clustersObject);
 	}
 

+ 15 - 0
servicemesh/src/model/DescribeServiceMeshDetailResult.cc

@@ -89,6 +89,8 @@ void DescribeServiceMeshDetailResult::parse(const std::string &payload)
 		serviceMesh_.spec.meshConfig.outboundTrafficPolicy = meshConfigNode["OutboundTrafficPolicy"].asString();
 	if(!meshConfigNode["IncludeIPRanges"].isNull())
 		serviceMesh_.spec.meshConfig.includeIPRanges = meshConfigNode["IncludeIPRanges"].asString();
+	if(!meshConfigNode["Edition"].isNull())
+		serviceMesh_.spec.meshConfig.edition = meshConfigNode["Edition"].asString();
 	auto pilotNode = meshConfigNode["Pilot"];
 	if(!pilotNode["TraceSampling"].isNull())
 		serviceMesh_.spec.meshConfig.pilot.traceSampling = std::stof(pilotNode["TraceSampling"].asString());
@@ -143,6 +145,19 @@ void DescribeServiceMeshDetailResult::parse(const std::string &payload)
 		serviceMesh_.spec.meshConfig.sidecarInjector.initCNIConfiguration.enabled = initCNIConfigurationNode["Enabled"].asString() == "true";
 	if(!initCNIConfigurationNode["ExcludeNamespaces"].isNull())
 		serviceMesh_.spec.meshConfig.sidecarInjector.initCNIConfiguration.excludeNamespaces = initCNIConfigurationNode["ExcludeNamespaces"].asString();
+	auto kialiNode = meshConfigNode["Kiali"];
+	if(!kialiNode["Enabled"].isNull())
+		serviceMesh_.spec.meshConfig.kiali.enabled = kialiNode["Enabled"].asString() == "true";
+	if(!kialiNode["Url"].isNull())
+		serviceMesh_.spec.meshConfig.kiali.url = kialiNode["Url"].asString();
+	auto prometheusNode = meshConfigNode["Prometheus"];
+	if(!prometheusNode["UseExternal"].isNull())
+		serviceMesh_.spec.meshConfig.prometheus.useExternal = prometheusNode["UseExternal"].asString() == "true";
+	if(!prometheusNode["ExternalUrl"].isNull())
+		serviceMesh_.spec.meshConfig.prometheus.externalUrl = prometheusNode["ExternalUrl"].asString();
+	auto accessLogNode = meshConfigNode["AccessLog"];
+	if(!accessLogNode["Enabled"].isNull())
+		serviceMesh_.spec.meshConfig.accessLog.enabled = accessLogNode["Enabled"].asString() == "true";
 	auto networkNode = specNode["Network"];
 	if(!networkNode["SecurityGroupId"].isNull())
 		serviceMesh_.spec.network.securityGroupId = networkNode["SecurityGroupId"].asString();

+ 40 - 0
servicemesh/src/model/GetAutoInjectionLabelSyncStatusRequest.cc

@@ -0,0 +1,40 @@
+/*
+ * 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.
+ */
+
+#include <alibabacloud/servicemesh/model/GetAutoInjectionLabelSyncStatusRequest.h>
+
+using AlibabaCloud::Servicemesh::Model::GetAutoInjectionLabelSyncStatusRequest;
+
+GetAutoInjectionLabelSyncStatusRequest::GetAutoInjectionLabelSyncStatusRequest() :
+	RpcServiceRequest("servicemesh", "2020-01-11", "GetAutoInjectionLabelSyncStatus")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+GetAutoInjectionLabelSyncStatusRequest::~GetAutoInjectionLabelSyncStatusRequest()
+{}
+
+std::string GetAutoInjectionLabelSyncStatusRequest::getServiceMeshId()const
+{
+	return serviceMeshId_;
+}
+
+void GetAutoInjectionLabelSyncStatusRequest::setServiceMeshId(const std::string& serviceMeshId)
+{
+	serviceMeshId_ = serviceMeshId;
+	setParameter("ServiceMeshId", serviceMeshId);
+}
+

+ 51 - 0
servicemesh/src/model/GetAutoInjectionLabelSyncStatusResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/servicemesh/model/GetAutoInjectionLabelSyncStatusResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Servicemesh;
+using namespace AlibabaCloud::Servicemesh::Model;
+
+GetAutoInjectionLabelSyncStatusResult::GetAutoInjectionLabelSyncStatusResult() :
+	ServiceResult()
+{}
+
+GetAutoInjectionLabelSyncStatusResult::GetAutoInjectionLabelSyncStatusResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetAutoInjectionLabelSyncStatusResult::~GetAutoInjectionLabelSyncStatusResult()
+{}
+
+void GetAutoInjectionLabelSyncStatusResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Status"].isNull())
+		status_ = value["Status"].asString();
+
+}
+
+std::string GetAutoInjectionLabelSyncStatusResult::getStatus()const
+{
+	return status_;
+}
+

+ 7 - 0
servicemesh/src/model/GetDiagnosisResult.cc

@@ -43,9 +43,16 @@ void GetDiagnosisResult::parse(const std::string &payload)
 		result_ = value["Result"].asString();
 	if(!value["RunAt"].isNull())
 		runAt_ = value["RunAt"].asString();
+	if(!value["Status"].isNull())
+		status_ = value["Status"].asString();
 
 }
 
+std::string GetDiagnosisResult::getStatus()const
+{
+	return status_;
+}
+
 std::string GetDiagnosisResult::getRunAt()const
 {
 	return runAt_;

+ 40 - 0
servicemesh/src/model/GetServiceRegistrySourceRequest.cc

@@ -0,0 +1,40 @@
+/*
+ * 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.
+ */
+
+#include <alibabacloud/servicemesh/model/GetServiceRegistrySourceRequest.h>
+
+using AlibabaCloud::Servicemesh::Model::GetServiceRegistrySourceRequest;
+
+GetServiceRegistrySourceRequest::GetServiceRegistrySourceRequest() :
+	RpcServiceRequest("servicemesh", "2020-01-11", "GetServiceRegistrySource")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+GetServiceRegistrySourceRequest::~GetServiceRegistrySourceRequest()
+{}
+
+std::string GetServiceRegistrySourceRequest::getServiceMeshId()const
+{
+	return serviceMeshId_;
+}
+
+void GetServiceRegistrySourceRequest::setServiceMeshId(const std::string& serviceMeshId)
+{
+	serviceMeshId_ = serviceMeshId;
+	setParameter("ServiceMeshId", serviceMeshId);
+}
+

+ 58 - 0
servicemesh/src/model/GetServiceRegistrySourceResult.cc

@@ -0,0 +1,58 @@
+/*
+ * 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.
+ */
+
+#include <alibabacloud/servicemesh/model/GetServiceRegistrySourceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Servicemesh;
+using namespace AlibabaCloud::Servicemesh::Model;
+
+GetServiceRegistrySourceResult::GetServiceRegistrySourceResult() :
+	ServiceResult()
+{}
+
+GetServiceRegistrySourceResult::GetServiceRegistrySourceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetServiceRegistrySourceResult::~GetServiceRegistrySourceResult()
+{}
+
+void GetServiceRegistrySourceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Result"].isNull())
+		result_ = value["Result"].asString();
+	if(!value["Status"].isNull())
+		status_ = value["Status"].asString();
+
+}
+
+std::string GetServiceRegistrySourceResult::getStatus()const
+{
+	return status_;
+}
+
+std::string GetServiceRegistrySourceResult::getResult()const
+{
+	return result_;
+}
+

+ 51 - 0
servicemesh/src/model/SetServiceRegistrySourceRequest.cc

@@ -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.
+ */
+
+#include <alibabacloud/servicemesh/model/SetServiceRegistrySourceRequest.h>
+
+using AlibabaCloud::Servicemesh::Model::SetServiceRegistrySourceRequest;
+
+SetServiceRegistrySourceRequest::SetServiceRegistrySourceRequest() :
+	RpcServiceRequest("servicemesh", "2020-01-11", "SetServiceRegistrySource")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+SetServiceRegistrySourceRequest::~SetServiceRegistrySourceRequest()
+{}
+
+std::string SetServiceRegistrySourceRequest::getServiceMeshId()const
+{
+	return serviceMeshId_;
+}
+
+void SetServiceRegistrySourceRequest::setServiceMeshId(const std::string& serviceMeshId)
+{
+	serviceMeshId_ = serviceMeshId;
+	setBodyParameter("ServiceMeshId", serviceMeshId);
+}
+
+std::string SetServiceRegistrySourceRequest::getConfig()const
+{
+	return config_;
+}
+
+void SetServiceRegistrySourceRequest::setConfig(const std::string& config)
+{
+	config_ = config;
+	setBodyParameter("Config", config);
+}
+

+ 51 - 0
servicemesh/src/model/SetServiceRegistrySourceResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/servicemesh/model/SetServiceRegistrySourceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Servicemesh;
+using namespace AlibabaCloud::Servicemesh::Model;
+
+SetServiceRegistrySourceResult::SetServiceRegistrySourceResult() :
+	ServiceResult()
+{}
+
+SetServiceRegistrySourceResult::SetServiceRegistrySourceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+SetServiceRegistrySourceResult::~SetServiceRegistrySourceResult()
+{}
+
+void SetServiceRegistrySourceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Result"].isNull())
+		result_ = value["Result"].asString();
+
+}
+
+std::string SetServiceRegistrySourceResult::getResult()const
+{
+	return result_;
+}
+

+ 44 - 0
servicemesh/src/model/UpdateMeshFeatureRequest.cc

@@ -82,6 +82,17 @@ void UpdateMeshFeatureRequest::setProxyLimitMemory(const std::string& proxyLimit
 	setBodyParameter("ProxyLimitMemory", proxyLimitMemory);
 }
 
+bool UpdateMeshFeatureRequest::getCustomizedPrometheus()const
+{
+	return customizedPrometheus_;
+}
+
+void UpdateMeshFeatureRequest::setCustomizedPrometheus(bool customizedPrometheus)
+{
+	customizedPrometheus_ = customizedPrometheus;
+	setBodyParameter("CustomizedPrometheus", customizedPrometheus ? "true" : "false");
+}
+
 std::string UpdateMeshFeatureRequest::getCniExcludeNamespaces()const
 {
 	return cniExcludeNamespaces_;
@@ -93,6 +104,17 @@ void UpdateMeshFeatureRequest::setCniExcludeNamespaces(const std::string& cniExc
 	setBodyParameter("CniExcludeNamespaces", cniExcludeNamespaces);
 }
 
+bool UpdateMeshFeatureRequest::getAccessLogEnabled()const
+{
+	return accessLogEnabled_;
+}
+
+void UpdateMeshFeatureRequest::setAccessLogEnabled(bool accessLogEnabled)
+{
+	accessLogEnabled_ = accessLogEnabled;
+	setBodyParameter("AccessLogEnabled", accessLogEnabled ? "true" : "false");
+}
+
 std::string UpdateMeshFeatureRequest::getOPALogLevel()const
 {
 	return oPALogLevel_;
@@ -170,6 +192,17 @@ void UpdateMeshFeatureRequest::setOPALimitMemory(const std::string& oPALimitMemo
 	setBodyParameter("OPALimitMemory", oPALimitMemory);
 }
 
+std::string UpdateMeshFeatureRequest::getPrometheusUrl()const
+{
+	return prometheusUrl_;
+}
+
+void UpdateMeshFeatureRequest::setPrometheusUrl(const std::string& prometheusUrl)
+{
+	prometheusUrl_ = prometheusUrl;
+	setBodyParameter("PrometheusUrl", prometheusUrl);
+}
+
 bool UpdateMeshFeatureRequest::getCADisableSecretAutoGeneration()const
 {
 	return cADisableSecretAutoGeneration_;
@@ -379,6 +412,17 @@ void UpdateMeshFeatureRequest::setAppNamespaces(const std::string& appNamespaces
 	setBodyParameter("AppNamespaces", appNamespaces);
 }
 
+bool UpdateMeshFeatureRequest::getKialiEnabled()const
+{
+	return kialiEnabled_;
+}
+
+void UpdateMeshFeatureRequest::setKialiEnabled(bool kialiEnabled)
+{
+	kialiEnabled_ = kialiEnabled;
+	setBodyParameter("KialiEnabled", kialiEnabled ? "true" : "false");
+}
+
 bool UpdateMeshFeatureRequest::getPilotPublicEip()const
 {
 	return pilotPublicEip_;