[jira] [Updated] (SCB-215) Support multi-type of StrArray in Query
[ https://issues.apache.org/jira/browse/SCB-215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] TaoMeng updated SCB-215: Summary: Support multi-type of StrArray in Query (was: 对数组的多种格式的支持) > Support multi-type of StrArray in Query > --- > > Key: SCB-215 > URL: https://issues.apache.org/jira/browse/SCB-215 > Project: Apache ServiceComb > Issue Type: New Feature > Components: Java-Chassis >Reporter: TaoMeng >Assignee: TaoMeng > > https://github.com/apache/incubator-servicecomb-java-chassis/pull/497 -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-166) Support HealthCheck
[ https://issues.apache.org/jira/browse/SCB-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319831#comment-16319831 ] ASF GitHub Bot commented on SCB-166: wujimin closed pull request #487: [SCB-166] Metrics Support HealthCheck URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/487 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/DefaultHealthCheckExtraData.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/DefaultHealthCheckExtraData.java new file mode 100644 index 0..aa2c9b45f --- /dev/null +++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/DefaultHealthCheckExtraData.java @@ -0,0 +1,69 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.metrics.common; + +public class DefaultHealthCheckExtraData { + private String instanceId; + + private String hostName; + + private String appId; + + private String serviceName; + + private String serviceVersion; + + private String endpoints; + + public String getInstanceId() { +return instanceId; + } + + public String getHostName() { +return hostName; + } + + public String getAppId() { +return appId; + } + + public String getServiceName() { +return serviceName; + } + + public String getServiceVersion() { +return serviceVersion; + } + + public String getEndpoints() { +return endpoints; + } + + public DefaultHealthCheckExtraData() { + } + + public DefaultHealthCheckExtraData(String instanceId, String hostName, String appId, String serviceName, + String serviceVersion, String endpoints) { +this.instanceId = instanceId; +this.hostName = hostName; +this.appId = appId; +this.serviceName = serviceName; +this.serviceVersion = serviceVersion; +this.endpoints = endpoints; + } +} diff --git a/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java new file mode 100644 index 0..168991b66 --- /dev/null +++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java @@ -0,0 +1,56 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.metrics.common; + +public class HealthCheckResult { + private boolean healthy; + + private String information; + + //unsupport object or generic type,so string.. + private String extraData; + + private long timestamp; + + public boolean isHealthy() { +return healthy; + } + + public String getInformation() { +return information; + } + + public String getExtraData() { +return extraData; + } + + public long getTimestamp() { +return timestamp; + } + + public HealthCheckResult() { + } + + public HealthCheckResult(boolean healthy, String information, String extraData) { +this(); +this.healthy = healthy; +this.information = information; +this.extraData = extraData; +this.timestamp = System.currentTimeMillis(); + } +} diff --git
[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value
[ https://issues.apache.org/jira/browse/SCB-214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319828#comment-16319828 ] ASF GitHub Bot commented on SCB-214: coveralls commented on issue #499: [SCB-214] AbstractServiceRegistry findServiceInstance process null return value, not print too much exception URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#issuecomment-356522842 [![Coverage Status](https://coveralls.io/builds/14979482/badge)](https://coveralls.io/builds/14979482) Coverage decreased (-0.05%) to 87.42% when pulling **c7cd23711c249d8bd434e3b4b393ce9477c128c3 on weichao666:CSE1333** into **acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > AbstractServiceRegistry findServiceInstance do not process null return value > > > Key: SCB-214 > URL: https://issues.apache.org/jira/browse/SCB-214 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: WeiChao >Assignee: WeiChao > Fix For: java-chassis-1.0.0-m2 > > > 问题1: > [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for > the first time, will send AFTER_REGISTRY event. > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173) > java.lang.NullPointerException > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207) > at > io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208) > at > com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26) > at > io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100) > at > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) > at > com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) > at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) > at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) > at com.google.common.eventbus.EventBus.post(EventBus.java:275) > at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54) > at > io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35) > at > io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83) > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168) > at > io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79) > at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68) > at > io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337) > at > org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93) > at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37) > at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33) > at > com.huawei.paas.cse.demo.springmvc.server.SpringmvcServer.main(SpringmvcServer.java:39) > [2018-01-09 >
[jira] [Commented] (SCB-215) 对数组的多种格式的支持
[ https://issues.apache.org/jira/browse/SCB-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319815#comment-16319815 ] ASF GitHub Bot commented on SCB-215: mt-monster opened a new issue #500: SCB-215 URL: https://github.com/apache/incubator-servicecomb-java-chassis/issues/500 This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > 对数组的多种格式的支持 > --- > > Key: SCB-215 > URL: https://issues.apache.org/jira/browse/SCB-215 > Project: Apache ServiceComb > Issue Type: New Feature > Components: Java-Chassis >Reporter: TaoMeng > > https://github.com/apache/incubator-servicecomb-java-chassis/pull/497 -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Updated] (SCB-215) 对数组的多种格式的支持
[ https://issues.apache.org/jira/browse/SCB-215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] TaoMeng updated SCB-215: Description: https://github.com/apache/incubator-servicecomb-java-chassis/pull/497 > 对数组的多种格式的支持 > --- > > Key: SCB-215 > URL: https://issues.apache.org/jira/browse/SCB-215 > Project: Apache ServiceComb > Issue Type: New Feature > Components: Java-Chassis >Reporter: TaoMeng > > https://github.com/apache/incubator-servicecomb-java-chassis/pull/497 -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Created] (SCB-215) 对数组的多种格式的支持
TaoMeng created SCB-215: --- Summary: 对数组的多种格式的支持 Key: SCB-215 URL: https://issues.apache.org/jira/browse/SCB-215 Project: Apache ServiceComb Issue Type: New Feature Components: Java-Chassis Reporter: TaoMeng -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value
[ https://issues.apache.org/jira/browse/SCB-214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319804#comment-16319804 ] ASF GitHub Bot commented on SCB-214: liubao68 closed pull request #499: [SCB-214] AbstractServiceRegistry findServiceInstance process null return value, not print too much exception URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/499 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java b/service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java index dbc4cbe93..960185384 100644 --- a/service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java +++ b/service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java @@ -169,13 +169,19 @@ private void retry(RequestContext requestContext, Handler response bodyBuffer -> { try { mInstances.setRevision(response.getHeader("X-Resource-Revision")); - if (response.statusCode() == 304) { -mInstances.setNeedRefresh(false); - } else { - mInstances.setInstancesResponse(JsonUtils.readValue(bodyBuffer.getBytes(), FindInstancesResponse.class)); + switch (response.statusCode()) { +case 304: + mInstances.setNeedRefresh(false); + break; +case 200: + mInstances.setInstancesResponse(JsonUtils.readValue(bodyBuffer.getBytes(), FindInstancesResponse.class)); + break; +default: + LOGGER.warn(bodyBuffer.toString()); + break; } } catch (Exception e) { - LOGGER.warn(bodyBuffer.toString(), e); + LOGGER.warn("read value failed and response message is {}", bodyBuffer.toString()); } countDownLatch.countDown(); }); diff --git a/service-registry/src/main/java/io/servicecomb/serviceregistry/registry/AbstractServiceRegistry.java b/service-registry/src/main/java/io/servicecomb/serviceregistry/registry/AbstractServiceRegistry.java index db72748d1..a92e1fe60 100644 --- a/service-registry/src/main/java/io/servicecomb/serviceregistry/registry/AbstractServiceRegistry.java +++ b/service-registry/src/main/java/io/servicecomb/serviceregistry/registry/AbstractServiceRegistry.java @@ -204,6 +204,9 @@ public boolean unregisterInstance() { public List findServiceInstance(String appId, String serviceName, String versionRule) { MicroserviceInstances instances = findServiceInstances(appId, serviceName, versionRule, null); +if (instances == null) { + return null; +} return instances.getInstancesResponse().getInstances(); } This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > AbstractServiceRegistry findServiceInstance do not process null return value > > > Key: SCB-214 > URL: https://issues.apache.org/jira/browse/SCB-214 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: WeiChao >Assignee: WeiChao > Fix For: java-chassis-1.0.0-m2 > > > 问题1: > [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for > the first time, will send AFTER_REGISTRY event. > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173) > java.lang.NullPointerException > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207) > at > io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208) > at > com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26) > at > io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100) > at > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >
[jira] [Commented] (SCB-166) Support HealthCheck
[ https://issues.apache.org/jira/browse/SCB-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319794#comment-16319794 ] ASF GitHub Bot commented on SCB-166: coveralls commented on issue #487: [SCB-166] Metrics Support HealthCheck URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#issuecomment-356517836 [![Coverage Status](https://coveralls.io/builds/14979215/badge)](https://coveralls.io/builds/14979215) Coverage decreased (-0.008%) to 87.409% when pulling **d1e1dfec57e97e903b4d6c8bead67699879ddce4 on zhengyangyong:SCB-166** into **cd6baf12c56f90f0a4879fc897684884817e4944 on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support HealthCheck > --- > > Key: SCB-166 > URL: https://issues.apache.org/jira/browse/SCB-166 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Java Chassis metrics can support HealthCheck rest interface like Spring boot > actuator -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-166) Support HealthCheck
[ https://issues.apache.org/jira/browse/SCB-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319793#comment-16319793 ] ASF GitHub Bot commented on SCB-166: zhengyangyong commented on a change in pull request #487: [SCB-166] Metrics Support HealthCheck URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160602275 ## File path: metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java ## @@ -0,0 +1,56 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.metrics.common; + +public class HealthCheckResult { + private boolean isHealthy; Review comment: Done This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support HealthCheck > --- > > Key: SCB-166 > URL: https://issues.apache.org/jira/browse/SCB-166 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Java Chassis metrics can support HealthCheck rest interface like Spring boot > actuator -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value
[ https://issues.apache.org/jira/browse/SCB-214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319792#comment-16319792 ] ASF GitHub Bot commented on SCB-214: coveralls commented on issue #499: [SCB-214] AbstractServiceRegistry findServiceInstance process null return value, not print too much exception URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#issuecomment-356517016 [![Coverage Status](https://coveralls.io/builds/14979187/badge)](https://coveralls.io/builds/14979187) Coverage decreased (-0.04%) to 87.426% when pulling **c7cd23711c249d8bd434e3b4b393ce9477c128c3 on weichao666:CSE1333** into **acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > AbstractServiceRegistry findServiceInstance do not process null return value > > > Key: SCB-214 > URL: https://issues.apache.org/jira/browse/SCB-214 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: WeiChao >Assignee: WeiChao > Fix For: java-chassis-1.0.0-m2 > > > 问题1: > [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for > the first time, will send AFTER_REGISTRY event. > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173) > java.lang.NullPointerException > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207) > at > io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208) > at > com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26) > at > io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100) > at > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) > at > com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) > at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) > at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) > at com.google.common.eventbus.EventBus.post(EventBus.java:275) > at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54) > at > io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35) > at > io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83) > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168) > at > io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79) > at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68) > at > io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337) > at > org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93) > at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37) > at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33) > at > com.huawei.paas.cse.demo.springmvc.server.SpringmvcServer.main(SpringmvcServer.java:39) > [2018-01-09 >
[jira] [Commented] (SCB-166) Support HealthCheck
[ https://issues.apache.org/jira/browse/SCB-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319787#comment-16319787 ] ASF GitHub Bot commented on SCB-166: liubao68 commented on a change in pull request #487: [SCB-166] Metrics Support HealthCheck URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160601234 ## File path: metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java ## @@ -0,0 +1,56 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.metrics.common; + +public class HealthCheckResult { + private boolean isHealthy; Review comment: Can we change it to healthy? Broken java pojo conventions. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support HealthCheck > --- > > Key: SCB-166 > URL: https://issues.apache.org/jira/browse/SCB-166 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Java Chassis metrics can support HealthCheck rest interface like Spring boot > actuator -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-166) Support HealthCheck
[ https://issues.apache.org/jira/browse/SCB-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319779#comment-16319779 ] ASF GitHub Bot commented on SCB-166: wujimin commented on a change in pull request #487: [SCB-166] Metrics Support HealthCheck URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160600411 ## File path: metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/HealthCheckResult.java ## @@ -0,0 +1,56 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.metrics.common; + +public class HealthCheckResult { + private boolean isHealth; Review comment: but i see the latest code still named "isHealthy". This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support HealthCheck > --- > > Key: SCB-166 > URL: https://issues.apache.org/jira/browse/SCB-166 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Java Chassis metrics can support HealthCheck rest interface like Spring boot > actuator -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center
[ https://issues.apache.org/jira/browse/SCB-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319759#comment-16319759 ] ASF GitHub Bot commented on SCB-36: --- liubao68 closed pull request #489: SCB-36 Support dynamic configuration for chassis by integrating with Apollo URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/coverage-reports/pom.xml b/coverage-reports/pom.xml index e7f950aa1..117ba26c8 100644 --- a/coverage-reports/pom.xml +++ b/coverage-reports/pom.xml @@ -167,6 +167,10 @@ io.servicecomb handler-tracing-zipkin + + io.servicecomb + config-apollo + io.servicecomb.demo pojo-client diff --git a/dynamic-config/config-apollo/pom.xml b/dynamic-config/config-apollo/pom.xml new file mode 100644 index 0..1f082546f --- /dev/null +++ b/dynamic-config/config-apollo/pom.xml @@ -0,0 +1,48 @@ + + + + +http://maven.apache.org/POM/4.0.0; + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> + +dynamic-config +io.servicecomb +0.6.0-SNAPSHOT + + 4.0.0 + config-apollo + + + io.servicecomb + foundation-config + + + io.servicecomb + foundation-vertx + + + org.springframework + spring-web + + + javax.validation + validation-api + + + \ No newline at end of file diff --git a/dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java b/dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java new file mode 100644 index 0..b4d6b4ed3 --- /dev/null +++ b/dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java @@ -0,0 +1,129 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.config.archaius.sources; + +import static com.netflix.config.WatchedUpdateResult.createIncremental; +import static io.servicecomb.config.client.ConfigurationAction.CREATE; +import static io.servicecomb.config.client.ConfigurationAction.DELETE; +import static io.servicecomb.config.client.ConfigurationAction.SET; + +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import java.util.concurrent.CopyOnWriteArrayList; + +import javax.validation.constraints.NotNull; + +import org.apache.commons.configuration.Configuration; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.google.common.collect.ImmutableMap; +import com.netflix.config.WatchedUpdateListener; +import com.netflix.config.WatchedUpdateResult; + +import io.servicecomb.config.ConfigMapping; +import io.servicecomb.config.client.ApolloClient; +import io.servicecomb.config.client.ApolloConfig; +import io.servicecomb.config.client.ConfigurationAction; +import io.servicecomb.config.spi.ConfigCenterConfigurationSource; + +public class ApolloConfigurationSourceImpl implements ConfigCenterConfigurationSource { + private static final Logger LOGGER = LoggerFactory.getLogger(ConfigCenterConfigurationSource.class); + + private final MapvalueCache = new ConcurrentHashMap<>(); + + private List listeners = new CopyOnWriteArrayList<>(); + + public ApolloConfigurationSourceImpl() { + } + + private final UpdateHandler updateHandler = new UpdateHandler(); + + @Override + public void init(Configuration localConfiguration) { +ApolloConfig.setConcurrentCompositeConfiguration(localConfiguration); +init(); + } + + private void init() { +ApolloClient apolloClient = new ApolloClient(updateHandler); +apolloClient.refreshApolloConfig(); + } + + @Override + public void addUpdateListener(@NotNull
[jira] [Commented] (SCB-85) Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1
[ https://issues.apache.org/jira/browse/SCB-85?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319755#comment-16319755 ] ASF GitHub Bot commented on SCB-85: --- liubao68 closed pull request #498: [SCB-85] simple metrics write file examples URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/498 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/samples/metrics-write-file-sample/metrics-write-file-common/pom.xml b/samples/metrics-write-file-sample/metrics-write-file-common/pom.xml deleted file mode 100644 index def56c237..0 --- a/samples/metrics-write-file-sample/metrics-write-file-common/pom.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - -http://maven.apache.org/POM/4.0.0; - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> - -metrics-write-file-sample -io.servicecomb.samples -0.6.0-SNAPSHOT - - 4.0.0 - - metrics-write-file-common - - - io.servicecomb - provider-springmvc - - - \ No newline at end of file diff --git a/samples/metrics-write-file-sample/metrics-write-file-config-log4j/pom.xml b/samples/metrics-write-file-sample/metrics-write-file-config-log4j/pom.xml deleted file mode 100644 index dc58bf8e5..0 --- a/samples/metrics-write-file-sample/metrics-write-file-config-log4j/pom.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - -http://maven.apache.org/POM/4.0.0; - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> - -metrics-write-file-sample -io.servicecomb.samples -0.6.0-SNAPSHOT - - 4.0.0 - - metrics-write-file-config-log4j - - - - io.servicecomb.samples - metrics-write-file - - - - log4j - log4j - - - - \ No newline at end of file diff --git a/samples/metrics-write-file-sample/metrics-write-file-config-log4j2/pom.xml b/samples/metrics-write-file-sample/metrics-write-file-config-log4j2/pom.xml deleted file mode 100644 index 63a16895c..0 --- a/samples/metrics-write-file-sample/metrics-write-file-config-log4j2/pom.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - -http://maven.apache.org/POM/4.0.0; - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> - -metrics-write-file-sample -io.servicecomb.samples -0.6.0-SNAPSHOT - - 4.0.0 - - metrics-write-file-config-log4j2 - - - - io.servicecomb.samples - metrics-write-file - - - - org.apache.logging.log4j - log4j-api - - - org.apache.logging.log4j - log4j-core - - - - \ No newline at end of file diff --git a/samples/metrics-write-file-sample/metrics-write-file-config/pom.xml b/samples/metrics-write-file-sample/metrics-write-file-config/pom.xml deleted file mode 100644 index 001648d0a..0 --- a/samples/metrics-write-file-sample/metrics-write-file-config/pom.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - -http://maven.apache.org/POM/4.0.0; - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd;> - -metrics-write-file-sample -io.servicecomb.samples -0.6.0-SNAPSHOT - - 4.0.0 - - metrics-write-file-config - - - \ No newline at end of file diff --git a/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/pom.xml b/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/pom.xml index 447ad59c3..8d6ecc4f1 100644 --- a/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/pom.xml +++ b/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/pom.xml @@ -67,14 +67,12 @@ - io.servicecomb.samples - metrics-write-file-common + log4j + log4j - - io.servicecomb.samples - metrics-write-file-config-log4j + metrics-write-file diff --git a/samples/metrics-write-file-sample/metrics-write-file-config-log4j/src/main/java/io/servicecomb/samples/mwf/Log4JMetricsFileWriter.java b/samples/metrics-write-file-sample/metrics-write-file-log4j-springboot/src/main/java/io/servicecomb/samples/mwf/Log4JMetricsFileWriter.java similarity index 100% rename from samples/metrics-write-file-sample/metrics-write-file-config-log4j/src/main/java/io/servicecomb/samples/mwf/Log4JMetricsFileWriter.java rename to
[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value
[ https://issues.apache.org/jira/browse/SCB-214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319739#comment-16319739 ] ASF GitHub Bot commented on SCB-214: liubao68 commented on a change in pull request #499: [SCB-214] AbstractServiceRegistry findServiceInstance process null return value, not print too much exception URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#discussion_r160596476 ## File path: service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java ## @@ -169,10 +169,16 @@ private void retry(RequestContext requestContext, Handler response bodyBuffer -> { try { mInstances.setRevision(response.getHeader("X-Resource-Revision")); Review comment: midify like this is better. but we do not care about it now. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > AbstractServiceRegistry findServiceInstance do not process null return value > > > Key: SCB-214 > URL: https://issues.apache.org/jira/browse/SCB-214 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: WeiChao >Assignee: WeiChao > Fix For: java-chassis-1.0.0-m2 > > > 问题1: > [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for > the first time, will send AFTER_REGISTRY event. > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173) > java.lang.NullPointerException > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207) > at > io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208) > at > com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26) > at > io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100) > at > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) > at > com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) > at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) > at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) > at com.google.common.eventbus.EventBus.post(EventBus.java:275) > at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54) > at > io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35) > at > io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83) > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168) > at > io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79) > at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68) > at > io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337) > at > org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93) > at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37) > at
[jira] [Commented] (SCB-179) When RequestParam name contains -, exception thrown when consumer invokes api using highway
[ https://issues.apache.org/jira/browse/SCB-179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319729#comment-16319729 ] ASF GitHub Bot commented on SCB-179: acsukesh closed pull request #491: SCB-179 support -(java identifiers) as parameter name with RequestParam URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/491 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/common/common-protobuf/src/main/java/io/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java b/common/common-protobuf/src/main/java/io/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java index eb02155f9..dd5911dba 100644 --- a/common/common-protobuf/src/main/java/io/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java +++ b/common/common-protobuf/src/main/java/io/servicecomb/codec/protobuf/utils/ProtobufSchemaUtils.java @@ -25,6 +25,8 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import javax.lang.model.SourceVersion; + import org.springframework.util.ClassUtils; import com.fasterxml.jackson.databind.JavaType; @@ -147,8 +149,8 @@ public static WrapSchema getOrCreateArgsSchema(OperationMeta operationMeta) { Parameter[] params = method.getParameters(); for (int idx = 0; idx < params.length; idx++) { Parameter param = params[idx]; -String paramName = operationMeta.getParamName(idx); - +String paramName = io.servicecomb.swagger.generator.core.utils.ClassUtils +.correctMethodParameterName(operationMeta.getParamName(idx)); config.addField(paramName, param.getParameterizedType()); } diff --git a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/JaxrsIntegrationTestBase.java b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/JaxrsIntegrationTestBase.java index 4487aef2e..3d5df3f32 100644 --- a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/JaxrsIntegrationTestBase.java +++ b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/JaxrsIntegrationTestBase.java @@ -237,6 +237,24 @@ public void ableToPostWithHeader() { } } + @Test + public void ableToPostWithHeaderWithIdentifier() { +Person person = new Person(); +person.setName("person name"); + +HttpHeaders headers = new HttpHeaders(); +headers.setContentType(APPLICATION_JSON); +headers.add("prefix-test", "prefix prefix"); + +HttpEntity requestEntity = new HttpEntity<>(person, headers); +for (String url : urls) { + ResponseEntity responseEntity = restTemplate + .postForEntity(url + "saysomething1", requestEntity, String.class); + + assertEquals("prefix prefix person name", jsonBodyOf(responseEntity, String.class)); +} + } + @Test public void ableToPostObjectAsJson() { MappersonFieldMap = new HashMap<>(); diff --git a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SchemaFirstJaxrs.java b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SchemaFirstJaxrs.java index b13d94ac8..5e926450f 100644 --- a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SchemaFirstJaxrs.java +++ b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SchemaFirstJaxrs.java @@ -35,6 +35,8 @@ String saySomething(String prefix, Person user); + String saySomething1(String prefix_test, Person user); + String sayHi(String name); String sayHi2(String name); diff --git a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SomeAbstractJaxrsRestEndpoint.java b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SomeAbstractJaxrsRestEndpoint.java index 796ee7e89..a639700c5 100644 --- a/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SomeAbstractJaxrsRestEndpoint.java +++ b/integration-tests/jaxrs-tests/src/test/java/io/servicecomb/demo/jaxrs/tests/endpoints/SomeAbstractJaxrsRestEndpoint.java @@ -106,6 +106,12 @@ public String saySomething(@HeaderParam("prefix") String prefix, Person user) { return prefix + " " + user.getName(); } + @Path("/saysomething1") + @POST + public String saySomething1(@HeaderParam("prefix-test") String prefix_test, Person user) { +return prefix_test + " " + user.getName(); + } + @Path("/sayhi/{name}") @PUT public String sayHi(@PathParam("name") String name) { diff --git a/integration-tests/jaxrs-tests/src/test/resources/microservices/jaxrs/schemaFirst.yaml
[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center
[ https://issues.apache.org/jira/browse/SCB-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319709#comment-16319709 ] ASF GitHub Bot commented on SCB-36: --- coveralls commented on issue #489: SCB-36 Support dynamic configuration for chassis by integrating with Apollo URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#issuecomment-356503070 [![Coverage Status](https://coveralls.io/builds/14978583/badge)](https://coveralls.io/builds/14978583) Coverage decreased (-0.03%) to 87.44% when pulling **6daa8944519abbfbbf8788a274edbba7abb45f0f on lijasonvip:bo** into **acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support connecting to the third party dynamic config center > --- > > Key: SCB-36 > URL: https://issues.apache.org/jira/browse/SCB-36 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: mabin >Assignee: Bo Li > Fix For: java-chassis-1.0.0-m1 > > Attachments: Dynamic Config Proposal.pdf > > > Java-chassis can connect to another open source config center to support > changing the setting dynamically. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value
[ https://issues.apache.org/jira/browse/SCB-214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319700#comment-16319700 ] ASF GitHub Bot commented on SCB-214: weichao666 commented on a change in pull request #499: [SCB-214] AbstractServiceRegistry findServiceInstance process null return value, not print too much exception URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#discussion_r160590155 ## File path: service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java ## @@ -169,10 +169,16 @@ private void retry(RequestContext requestContext, Handler response bodyBuffer -> { try { mInstances.setRevision(response.getHeader("X-Resource-Revision")); Review comment: [2018-01-10 12:40:56,382/GMT+08:00][main][INFO]running microservice register task. io.servicecomb.serviceregistry.task.MicroserviceRegisterTask.doRegister(MicroserviceRegisterTask.java:58) [2018-01-10 12:40:56,413/GMT+08:00][main][INFO]Using the default address resolver as the dns resolver could not be loaded io.vertx.core.spi.resolver.ResolverProvider.factory(ResolverProvider.java:51) [2018-01-10 12:40:56,632/GMT+08:00][registry-vert.x-eventloop-thread-0][ERROR]{"errorCode":"400012","errorMessage":"Micro-service does not exist","detail":"Service does not exist."} io.servicecomb.serviceregistry.client.http.ServiceRegistryClientImpl.lambda$10(ServiceRegistryClientImpl.java:115) [2018-01-10 12:40:56,679/GMT+08:00][main][INFO]Registry Microservice successfully. id=72ccb9b6f5c011e78b1c286ed4891d48 appId=springmvctest, name=springmvc, version=0.0.3, schemaIds=[controller, metricsEndpoint, codeFirst] io.servicecomb.serviceregistry.task.MicroserviceRegisterTask.doRegister(MicroserviceRegisterTask.java:90) when 400, syncHandler just print a line code, from the result of print exception, it looks like no need to modified. but if think it from whether read json,can it be modified like below? if (response.statusCode() == 200) { try { holder.value = JsonUtils.readValue(bodyBuffer.getBytes(), cls); } catch (Exception e) { LOGGER.warn("read value failed and response message is {}", bodyBuffer.toString()); } } else { LOGGER.warn(bodyBuffer.toString()); } This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > AbstractServiceRegistry findServiceInstance do not process null return value > > > Key: SCB-214 > URL: https://issues.apache.org/jira/browse/SCB-214 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: WeiChao >Assignee: WeiChao > Fix For: java-chassis-1.0.0-m2 > > > 问题1: > [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for > the first time, will send AFTER_REGISTRY event. > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173) > java.lang.NullPointerException > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207) > at > io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208) > at > com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26) > at > io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100) > at > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) > at > com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) > at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) > at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) > at com.google.common.eventbus.EventBus.post(EventBus.java:275) > at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54) > at >
[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value
[ https://issues.apache.org/jira/browse/SCB-214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319672#comment-16319672 ] ASF GitHub Bot commented on SCB-214: liubao68 commented on a change in pull request #499: [SCB-214] AbstractServiceRegistry findServiceInstance process null return value, not print too much exception URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#discussion_r160586407 ## File path: service-registry/src/main/java/io/servicecomb/serviceregistry/client/http/ServiceRegistryClientImpl.java ## @@ -169,10 +169,16 @@ private void retry(RequestContext requestContext, Handler response bodyBuffer -> { try { mInstances.setRevision(response.getHeader("X-Resource-Revision")); Review comment: Please analyse if syncHandler need to modified also. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > AbstractServiceRegistry findServiceInstance do not process null return value > > > Key: SCB-214 > URL: https://issues.apache.org/jira/browse/SCB-214 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: WeiChao >Assignee: WeiChao > Fix For: java-chassis-1.0.0-m2 > > > 问题1: > [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for > the first time, will send AFTER_REGISTRY event. > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173) > java.lang.NullPointerException > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207) > at > io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208) > at > com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26) > at > io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100) > at > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) > at > com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) > at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) > at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) > at com.google.common.eventbus.EventBus.post(EventBus.java:275) > at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54) > at > io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35) > at > io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83) > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168) > at > io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79) > at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68) > at > io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337) > at > org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93) > at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37) > at
[jira] [Commented] (SCB-179) When RequestParam name contains -, exception thrown when consumer invokes api using highway
[ https://issues.apache.org/jira/browse/SCB-179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319666#comment-16319666 ] ASF GitHub Bot commented on SCB-179: coveralls commented on issue #491: SCB-179 support -(java identifiers) as parameter name with RequestParam URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/491#issuecomment-356493881 [![Coverage Status](https://coveralls.io/builds/14978171/badge)](https://coveralls.io/builds/14978171) Coverage decreased (-0.04%) to 87.442% when pulling **377fe88417493d300c6d77fce2d4b051a56d8f85 on acsukesh:master** into **e812ad79813250ea5fd241a388ba419d2603c789 on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > When RequestParam name contains -, exception thrown when consumer invokes api > using highway > --- > > Key: SCB-179 > URL: https://issues.apache.org/jira/browse/SCB-179 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: Mohammad Asif Siddiqui > Fix For: java-chassis-1.0.0-m1 > > > When RequestParam name contains -, exception thrown when consumer invokes api > using highway > Define api as below > public boolean buyWithTransaction(@RequestHeader(name = "user-name") long > userId, > @RequestParam(name = "productId") long productId, @RequestParam(name = > "price") double price) { > Below exception thrown > 2017-12-10 16:54:35,237 [WARN] bizkeeper execution error > io.servicecomb.bizkeeper.BizkeeperHandler$1.onExecutionError(BizkeeperHandler.java:59) > java.lang.Exception: Throwable caught while executing. > at > com.netflix.hystrix.AbstractCommand.getExceptionFromThrowable(AbstractCommand.java:1970) > at > com.netflix.hystrix.AbstractCommand.wrapWithOnExecutionErrorHook(AbstractCommand.java:1490) > at com.netflix.hystrix.AbstractCommand.access$1300(AbstractCommand.java:60) > at > com.netflix.hystrix.AbstractCommand$ExecutionHookApplication$1.onError(AbstractCommand.java:1361) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:56) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.Observable.unsafeSubscribe(Observable.java:8666) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.Observable.unsafeSubscribe(Observable.java:8666) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.Observable.unsafeSubscribe(Observable.java:8666) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36)
[jira] [Commented] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value
[ https://issues.apache.org/jira/browse/SCB-214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319665#comment-16319665 ] ASF GitHub Bot commented on SCB-214: coveralls commented on issue #499: [SCB-214] AbstractServiceRegistry findServiceInstance process null return value, not print too much exception URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/499#issuecomment-356493641 [![Coverage Status](https://coveralls.io/builds/14978156/badge)](https://coveralls.io/builds/14978156) Coverage decreased (-0.03%) to 87.437% when pulling **7883dce0eca5238929a05d55e61577bf6709 on weichao666:CSE1333** into **acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > AbstractServiceRegistry findServiceInstance do not process null return value > > > Key: SCB-214 > URL: https://issues.apache.org/jira/browse/SCB-214 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: WeiChao >Assignee: WeiChao > Fix For: java-chassis-1.0.0-m2 > > > 问题1: > [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for > the first time, will send AFTER_REGISTRY event. > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173) > java.lang.NullPointerException > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207) > at > io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208) > at > com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26) > at > io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100) > at > io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) > at > com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) > at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) > at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) > at com.google.common.eventbus.EventBus.post(EventBus.java:275) > at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54) > at > io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35) > at > io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83) > at > io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168) > at > io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79) > at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68) > at > io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383) > at > org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337) > at > org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882) > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139) > at > org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93) > at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37) > at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33) > at > com.huawei.paas.cse.demo.springmvc.server.SpringmvcServer.main(SpringmvcServer.java:39) > [2018-01-09 >
[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center
[ https://issues.apache.org/jira/browse/SCB-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319660#comment-16319660 ] ASF GitHub Bot commented on SCB-36: --- coveralls commented on issue #489: SCB-36 Support dynamic configuration for chassis by integrating with Apollo URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#issuecomment-356492541 [![Coverage Status](https://coveralls.io/builds/14977984/badge)](https://coveralls.io/builds/14977984) Coverage decreased (-0.03%) to 87.44% when pulling **61e565472d697ccd927b1c580524e966d1b98404 on lijasonvip:bo** into **acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support connecting to the third party dynamic config center > --- > > Key: SCB-36 > URL: https://issues.apache.org/jira/browse/SCB-36 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: mabin >Assignee: Bo Li > Fix For: java-chassis-1.0.0-m1 > > Attachments: Dynamic Config Proposal.pdf > > > Java-chassis can connect to another open source config center to support > changing the setting dynamically. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-85) Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1
[ https://issues.apache.org/jira/browse/SCB-85?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319654#comment-16319654 ] ASF GitHub Bot commented on SCB-85: --- coveralls commented on issue #498: [SCB-85] simple metrics write file examples URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/498#issuecomment-356491231 [![Coverage Status](https://coveralls.io/builds/14977532/badge)](https://coveralls.io/builds/14977532) Coverage decreased (-0.006%) to 87.462% when pulling **fbe3a63c95b899fad8ab005a3e7dd641b8cd6fd3 on zhengyangyong:SCB-85-2** into **acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1 > -- > > Key: SCB-85 > URL: https://issues.apache.org/jira/browse/SCB-85 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Because metrics had complete reflected in 1.0.0-m1,so we need upgrade file > output example and show new features. > 1.support more build-in metric > 2.support output operation level metric -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Resolved] (SCB-168) [pack] resend events on connection loss & load balance
[ https://issues.apache.org/jira/browse/SCB-168?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Willem Jiang resolved SCB-168. -- Resolution: Fixed > [pack] resend events on connection loss & load balance > -- > > Key: SCB-168 > URL: https://issues.apache.org/jira/browse/SCB-168 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Yin Xiang > Fix For: saga-0.1.0 > > > as a dev, i want my service's transaction managed, once its network is up > again, so that it's not in an unknown state -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Created] (SCB-214) AbstractServiceRegistry findServiceInstance do not process null return value
WeiChao created SCB-214: --- Summary: AbstractServiceRegistry findServiceInstance do not process null return value Key: SCB-214 URL: https://issues.apache.org/jira/browse/SCB-214 Project: Apache ServiceComb Issue Type: Bug Components: Java-Chassis Reporter: WeiChao Assignee: WeiChao Fix For: java-chassis-1.0.0-m2 问题1: [2018-01-09 20:31:16,387/GMT+08:00][main][INFO]instance registry succeeds for the first time, will send AFTER_REGISTRY event. io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:173) java.lang.NullPointerException at io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.findServiceInstance(AbstractServiceRegistry.java:207) at io.servicecomb.serviceregistry.RegistryUtils.findServiceInstance(RegistryUtils.java:208) at com.huawei.paas.monitor.MonitorBootListener.onBootEvent(MonitorBootListener.java:26) at io.servicecomb.core.CseApplicationListener.triggerEvent(CseApplicationListener.java:100) at io.servicecomb.core.CseApplicationListener$1.afterRegistryInstance(CseApplicationListener.java:175) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) at com.google.common.eventbus.EventBus.post(EventBus.java:275) at io.servicecomb.serviceregistry.task.AbstractTask.run(AbstractTask.java:54) at io.servicecomb.serviceregistry.task.CompositeTask.run(CompositeTask.java:35) at io.servicecomb.serviceregistry.task.ServiceCenterTask.init(ServiceCenterTask.java:83) at io.servicecomb.serviceregistry.registry.AbstractServiceRegistry.run(AbstractServiceRegistry.java:168) at io.servicecomb.serviceregistry.registry.RemoteServiceRegistry.run(RemoteServiceRegistry.java:79) at io.servicecomb.serviceregistry.RegistryUtils.run(RegistryUtils.java:68) at io.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:136) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337) at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545) at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139) at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:93) at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37) at io.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33) at com.huawei.paas.cse.demo.springmvc.server.SpringmvcServer.main(SpringmvcServer.java:39) [2018-01-09 20:31:16,399/GMT+08:00][registry-vert.x-eventloop-thread-0][WARN]{"errorCode":"400012","errorMessage":"Micro-service does not exist","detail":"No provider matched."} io.servicecomb.serviceregistry.client.http.ServiceRegistryClientImpl.lambda$null$4(ServiceRegistryClientImpl.java:178) com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "errorCode" (class io.servicecomb.serviceregistry.api.response.FindInstancesResponse), not marked as ignorable (one known property: "instances"]) at [Source: [B@3cb976a1; line: 1, column: 15] (through reference chain: io.servicecomb.serviceregistry.api.response.FindInstancesResponse["errorCode"]) at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:62) at com.fasterxml.jackson.databind.DeserializationContext.handleUnknownProperty(DeserializationContext.java:834) at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:1093) at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1489) at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1467) at
[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center
[ https://issues.apache.org/jira/browse/SCB-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319611#comment-16319611 ] ASF GitHub Bot commented on SCB-36: --- coveralls commented on issue #489: SCB-36 Support dynamic configuration for chassis by integrating with Apollo URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#issuecomment-356483162 [![Coverage Status](https://coveralls.io/builds/14977146/badge)](https://coveralls.io/builds/14977146) Coverage decreased (-0.03%) to 87.439% when pulling **e26f03de1003dced072e5a8596a3b14f80e08a58 on lijasonvip:bo** into **acf966a2fef3eb3c8415e4e8a875abe1d9b3b0da on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support connecting to the third party dynamic config center > --- > > Key: SCB-36 > URL: https://issues.apache.org/jira/browse/SCB-36 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: mabin >Assignee: Bo Li > Fix For: java-chassis-1.0.0-m1 > > Attachments: Dynamic Config Proposal.pdf > > > Java-chassis can connect to another open source config center to support > changing the setting dynamically. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center
[ https://issues.apache.org/jira/browse/SCB-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319604#comment-16319604 ] ASF GitHub Bot commented on SCB-36: --- lijasonvip commented on a change in pull request #489: SCB-36 Support dynamic configuration for chassis by integrating with Apollo URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#discussion_r160577803 ## File path: dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java ## @@ -0,0 +1,126 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.config.archaius.sources; + +import static com.netflix.config.WatchedUpdateResult.createIncremental; + +import java.util.List; +import java.util.Map; +import java.util.concurrent.CopyOnWriteArrayList; + +import org.apache.commons.configuration.Configuration; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Maps; +import com.netflix.config.ConcurrentCompositeConfiguration; +import com.netflix.config.WatchedUpdateListener; +import com.netflix.config.WatchedUpdateResult; + +import io.servicecomb.config.ConfigMapping; +import io.servicecomb.config.client.ApolloClient; +import io.servicecomb.config.client.ApolloConfig; +import io.servicecomb.config.spi.ConfigCenterConfigurationSource; + +public class ApolloConfigurationSourceImpl implements ConfigCenterConfigurationSource { + private static final Logger LOGGER = LoggerFactory.getLogger(ConfigCenterConfigurationSource.class); + + private final MapvalueCache = Maps.newConcurrentMap(); + + private List listeners = new CopyOnWriteArrayList(); Review comment: done! This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support connecting to the third party dynamic config center > --- > > Key: SCB-36 > URL: https://issues.apache.org/jira/browse/SCB-36 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: mabin >Assignee: Bo Li > Fix For: java-chassis-1.0.0-m1 > > Attachments: Dynamic Config Proposal.pdf > > > Java-chassis can connect to another open source config center to support > changing the setting dynamically. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center
[ https://issues.apache.org/jira/browse/SCB-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319605#comment-16319605 ] ASF GitHub Bot commented on SCB-36: --- lijasonvip commented on a change in pull request #489: SCB-36 Support dynamic configuration for chassis by integrating with Apollo URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#discussion_r160577846 ## File path: dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java ## @@ -0,0 +1,126 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.config.archaius.sources; + +import static com.netflix.config.WatchedUpdateResult.createIncremental; + +import java.util.List; +import java.util.Map; +import java.util.concurrent.CopyOnWriteArrayList; + +import org.apache.commons.configuration.Configuration; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Maps; +import com.netflix.config.ConcurrentCompositeConfiguration; +import com.netflix.config.WatchedUpdateListener; +import com.netflix.config.WatchedUpdateResult; + +import io.servicecomb.config.ConfigMapping; +import io.servicecomb.config.client.ApolloClient; +import io.servicecomb.config.client.ApolloConfig; +import io.servicecomb.config.spi.ConfigCenterConfigurationSource; + +public class ApolloConfigurationSourceImpl implements ConfigCenterConfigurationSource { + private static final Logger LOGGER = LoggerFactory.getLogger(ConfigCenterConfigurationSource.class); + + private final MapvalueCache = Maps.newConcurrentMap(); + + private List listeners = new CopyOnWriteArrayList(); + + public ApolloConfigurationSourceImpl() { + } + + private UpdateHandler updateHandler = new UpdateHandler(); + + @Override + public void init(Configuration localConfiguration) { + ApolloConfig.setConcurrentCompositeConfiguration((ConcurrentCompositeConfiguration) localConfiguration); +init(); + } + + public void init() { +ApolloClient apolloClient = new ApolloClient(updateHandler); +apolloClient.refreshApolloConfig(); + } + + @Override + public void addUpdateListener(WatchedUpdateListener watchedUpdateListener) { +if (watchedUpdateListener != null) { + listeners.add(watchedUpdateListener); Review comment: Good point. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support connecting to the third party dynamic config center > --- > > Key: SCB-36 > URL: https://issues.apache.org/jira/browse/SCB-36 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: mabin >Assignee: Bo Li > Fix For: java-chassis-1.0.0-m1 > > Attachments: Dynamic Config Proposal.pdf > > > Java-chassis can connect to another open source config center to support > changing the setting dynamically. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center
[ https://issues.apache.org/jira/browse/SCB-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319601#comment-16319601 ] ASF GitHub Bot commented on SCB-36: --- lijasonvip commented on a change in pull request #489: SCB-36 Support dynamic configuration for chassis by integrating with Apollo URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#discussion_r160577720 ## File path: dynamic-config/config-apollo/src/main/java/io/servicecomb/config/archaius/sources/ApolloConfigurationSourceImpl.java ## @@ -0,0 +1,126 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.config.archaius.sources; + +import static com.netflix.config.WatchedUpdateResult.createIncremental; + +import java.util.List; +import java.util.Map; +import java.util.concurrent.CopyOnWriteArrayList; + +import org.apache.commons.configuration.Configuration; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Maps; +import com.netflix.config.ConcurrentCompositeConfiguration; +import com.netflix.config.WatchedUpdateListener; +import com.netflix.config.WatchedUpdateResult; + +import io.servicecomb.config.ConfigMapping; +import io.servicecomb.config.client.ApolloClient; +import io.servicecomb.config.client.ApolloConfig; +import io.servicecomb.config.spi.ConfigCenterConfigurationSource; + +public class ApolloConfigurationSourceImpl implements ConfigCenterConfigurationSource { + private static final Logger LOGGER = LoggerFactory.getLogger(ConfigCenterConfigurationSource.class); + + private final MapvalueCache = Maps.newConcurrentMap(); Review comment: you are right, use ConcurrentHashMap already. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support connecting to the third party dynamic config center > --- > > Key: SCB-36 > URL: https://issues.apache.org/jira/browse/SCB-36 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: mabin >Assignee: Bo Li > Fix For: java-chassis-1.0.0-m1 > > Attachments: Dynamic Config Proposal.pdf > > > Java-chassis can connect to another open source config center to support > changing the setting dynamically. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Resolved] (SCB-118) Metrics need support prometheus Integration
[ https://issues.apache.org/jira/browse/SCB-118?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] yangyongzheng resolved SCB-118. --- Resolution: Fixed > Metrics need support prometheus Integration > --- > > Key: SCB-118 > URL: https://issues.apache.org/jira/browse/SCB-118 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Metrics can publish data with prometheus standard format for integration -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-85) Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1
[ https://issues.apache.org/jira/browse/SCB-85?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319569#comment-16319569 ] ASF GitHub Bot commented on SCB-85: --- zhengyangyong opened a new pull request #498: [SCB-85] simple metrics write file examples URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/498 Signed-off-by: zhengyangyongFollow this checklist to help us incorporate your contribution quickly and easily: - [ ] Make sure there is a [JIRA issue](https://issues.apache.org/jira/browse/SCB) filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes. - [ ] Each commit in the pull request should have a meaningful subject line and body. - [ ] Format the pull request title like `[SCB-XXX] Fixes bug in ApproximateQuantiles`, where you replace `SCB-XXX` with the appropriate JIRA issue. - [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why. - [ ] Run `mvn clean install` to make sure basic checks pass. A more thorough check will be performed on your pull request automatically. - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf). --- Simple write file samples and merge them This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Upgrade Metrics File Output from 0.5.0 to 1.0.0-m1 > -- > > Key: SCB-85 > URL: https://issues.apache.org/jira/browse/SCB-85 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Because metrics had complete reflected in 1.0.0-m1,so we need upgrade file > output example and show new features. > 1.support more build-in metric > 2.support output operation level metric -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-166) Support HealthCheck
[ https://issues.apache.org/jira/browse/SCB-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319563#comment-16319563 ] ASF GitHub Bot commented on SCB-166: zhengyangyong commented on a change in pull request #487: [SCB-166] Metrics Support HealthCheck URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160574294 ## File path: metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/health/DefaultMicroserviceHealthChecker.java ## @@ -0,0 +1,65 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.metrics.core.health; + +import javax.ws.rs.core.Response.Status; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import io.servicecomb.foundation.common.utils.JsonUtils; +import io.servicecomb.metrics.common.DefaultHealthCheckExtraData; +import io.servicecomb.metrics.common.HealthCheckResult; +import io.servicecomb.metrics.common.HealthChecker; +import io.servicecomb.serviceregistry.RegistryUtils; +import io.servicecomb.serviceregistry.api.registry.Microservice; +import io.servicecomb.serviceregistry.api.registry.MicroserviceInstance; +import io.servicecomb.swagger.invocation.exception.InvocationException; + +public class DefaultMicroserviceHealthChecker implements HealthChecker { + + private static Logger logger = LoggerFactory.getLogger(DefaultMicroserviceHealthChecker.class); + + @Override + public String getName() { +return "default"; + } + + @Override + public HealthCheckResult check() { +return new HealthCheckResult(true, "", getExtraData()); + } + + private String getExtraData() { +try { + Microservice microservice = RegistryUtils.getMicroservice(); + MicroserviceInstance instance = RegistryUtils.getMicroserviceInstance(); + return JsonUtils.writeValueAsString(new DefaultHealthCheckExtraData( Review comment: oh,no ,sorry I made a mistake,comment fixed This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support HealthCheck > --- > > Key: SCB-166 > URL: https://issues.apache.org/jira/browse/SCB-166 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Java Chassis metrics can support HealthCheck rest interface like Spring boot > actuator -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-164) [pack] alpha connection recovery on crash
[ https://issues.apache.org/jira/browse/SCB-164?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319548#comment-16319548 ] ASF GitHub Bot commented on SCB-164: coveralls commented on issue #110: [SCB-164] reconnect on crash URL: https://github.com/apache/incubator-servicecomb-saga/pull/110#issuecomment-356475170 [![Coverage Status](https://coveralls.io/builds/14977225/badge)](https://coveralls.io/builds/14977225) Coverage increased (+0.2%) to 95.143% when pulling **40ca544089dbc6ecfb1604ac01c3206e058cb70e on SCB-164_reconnect_on_crash** into **b93e79527eead2a6c3e06c36cc27d2ab65003458 on master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] alpha connection recovery on crash > - > > Key: SCB-164 > URL: https://issues.apache.org/jira/browse/SCB-164 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Yin Xiang > > as a user, i want to resume my global transaction on alpha crash, so that > * pending sub transactions can continue > * completed sub transactions can be compensated on failure -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Resolved] (SCB-173) [pack] mark start of saga
[ https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Eric Lee resolved SCB-173. -- Resolution: Fixed > [pack] mark start of saga > - > > Key: SCB-173 > URL: https://issues.apache.org/jira/browse/SCB-173 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Eric Lee > Fix For: saga-0.1.0 > > > with mark of saga start, we know exactly where the global transaction starts, > so that we can generate the global tx id there, to better support concurrent > sub-transactions to multiple services -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-166) Support HealthCheck
[ https://issues.apache.org/jira/browse/SCB-166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319495#comment-16319495 ] ASF GitHub Bot commented on SCB-166: WillemJiang commented on a change in pull request #487: [SCB-166] Metrics Support HealthCheck URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/487#discussion_r160567584 ## File path: metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/health/DefaultMicroserviceHealthChecker.java ## @@ -0,0 +1,65 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package io.servicecomb.metrics.core.health; + +import javax.ws.rs.core.Response.Status; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import io.servicecomb.foundation.common.utils.JsonUtils; +import io.servicecomb.metrics.common.DefaultHealthCheckExtraData; +import io.servicecomb.metrics.common.HealthCheckResult; +import io.servicecomb.metrics.common.HealthChecker; +import io.servicecomb.serviceregistry.RegistryUtils; +import io.servicecomb.serviceregistry.api.registry.Microservice; +import io.servicecomb.serviceregistry.api.registry.MicroserviceInstance; +import io.servicecomb.swagger.invocation.exception.InvocationException; + +public class DefaultMicroserviceHealthChecker implements HealthChecker { + + private static Logger logger = LoggerFactory.getLogger(DefaultMicroserviceHealthChecker.class); + + @Override + public String getName() { +return "default"; + } + + @Override + public HealthCheckResult check() { +return new HealthCheckResult(true, "", getExtraData()); + } + + private String getExtraData() { +try { + Microservice microservice = RegistryUtils.getMicroservice(); + MicroserviceInstance instance = RegistryUtils.getMicroserviceInstance(); + return JsonUtils.writeValueAsString(new DefaultHealthCheckExtraData( Review comment: First Configure center != Service Center. ServiceCenter is more like a service registry which has the . The Health check can work with other system admin tool to help the admin check find out the system failure. As it is working in the pull mode by default, we don't report the service status to the Service Center now. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support HealthCheck > --- > > Key: SCB-166 > URL: https://issues.apache.org/jira/browse/SCB-166 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Java Chassis metrics can support HealthCheck rest interface like Spring boot > actuator -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-168) [pack] resend events on connection loss & load balance
[ https://issues.apache.org/jira/browse/SCB-168?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16319484#comment-16319484 ] ASF GitHub Bot commented on SCB-168: seanyinx commented on a change in pull request #107: [SCB-168] load balance URL: https://github.com/apache/incubator-servicecomb-saga/pull/107#discussion_r160566518 ## File path: omega/omega-connector/omega-connector-grpc/src/main/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSender.java ## @@ -0,0 +1,140 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package org.apache.servicecomb.saga.omega.connector.grpc; + +import static java.util.Collections.emptyList; + +import java.lang.invoke.MethodHandles; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Comparator; +import java.util.HashMap; +import java.util.Map; +import java.util.Map.Entry; +import java.util.function.Consumer; + +import org.apache.servicecomb.saga.omega.context.ServiceConfig; +import org.apache.servicecomb.saga.omega.transaction.MessageDeserializer; +import org.apache.servicecomb.saga.omega.transaction.MessageHandler; +import org.apache.servicecomb.saga.omega.transaction.MessageSender; +import org.apache.servicecomb.saga.omega.transaction.MessageSerializer; +import org.apache.servicecomb.saga.omega.transaction.TxEvent; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import io.grpc.ManagedChannel; +import io.grpc.ManagedChannelBuilder; + +public class LoadBalancedClusterMessageSender implements MessageSender { + private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); + private final Mapsenders = new HashMap<>(); + private final Collection channels; + + public LoadBalancedClusterMessageSender(String[] addresses, + MessageSerializer serializer, + MessageDeserializer deserializer, + ServiceConfig serviceConfig, + MessageHandler handler) { + +if (addresses.length == 0) { + throw new IllegalArgumentException("No reachable cluster address provided"); +} + +channels = new ArrayList<>(addresses.length); +for (String address : addresses) { + ManagedChannel channel = ManagedChannelBuilder.forTarget(address) + .usePlaintext(true) + .build(); + + channels.add(channel); + senders.put( + new GrpcClientMessageSender( + address, + channel, + serializer, + deserializer, + serviceConfig, + handler), + 0L); +} + } + + LoadBalancedClusterMessageSender(MessageSender... messageSenders) { +for (MessageSender sender : messageSenders) { + senders.put(sender, 0L); +} +channels = emptyList(); + } + + @Override + public void onConnected() { +senders.keySet().forEach(sender -> { + try { +sender.onConnected(); + } catch (Exception e) { +log.error("Failed connecting to alpha at {}", sender.target(), e); + } +}); + } + + @Override + public void onDisconnected() { +senders.keySet().forEach(sender -> { + try { +sender.onDisconnected(); + } catch (Exception e) { +log.error("Failed disconnecting from alpha at {}", sender.target(), e); + } +}); + + } + + @Override + public void close() { +channels.forEach(ManagedChannel::shutdownNow); + } + + @Override + public void send(TxEvent event) { +boolean success = false; +do { + try { +withFastestSender(messageSender -> { Review comment: that's what https://issues.apache.org/jira/browse/SCB-211 is for due to entire cluster unreachable This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] resend events on connection loss & load balance > -- > >
[jira] [Commented] (SCB-173) [pack] mark start of saga
[ https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318458#comment-16318458 ] ASF GitHub Bot commented on SCB-173: coveralls commented on issue #109: [WIP]SCB-173 mark start of saga URL: https://github.com/apache/incubator-servicecomb-saga/pull/109#issuecomment-356293089 [![Coverage Status](https://coveralls.io/builds/14966275/badge)](https://coveralls.io/builds/14966275) Coverage increased (+0.02%) to 94.872% when pulling **0a8d8118b08528ead5877a33011a8e3db21b9c42 on eric-lee-ltk:SCB-173** into **04e847825c8d223859b7ccd5b2b2f75d122635e2 on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] mark start of saga > - > > Key: SCB-173 > URL: https://issues.apache.org/jira/browse/SCB-173 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Eric Lee > Fix For: saga-0.1.0 > > > with mark of saga start, we know exactly where the global transaction starts, > so that we can generate the global tx id there, to better support concurrent > sub-transactions to multiple services -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-160) Support empty environment scene
[ https://issues.apache.org/jira/browse/SCB-160?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318331#comment-16318331 ] ASF GitHub Bot commented on SCB-160: codecov-io commented on issue #247: SCB-160 Support empty environment scene URL: https://github.com/apache/incubator-servicecomb-service-center/pull/247#issuecomment-356269217 # [Codecov](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=h1) Report > Merging [#247](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=desc) into [master](https://codecov.io/gh/apache/incubator-servicecomb-service-center/commit/559b5b38250f193ce9ebe56a4b4907a4e374516d?src=pr=desc) will **decrease** coverage by `0.05%`. > The diff coverage is `100%`. [![Impacted file tree graph](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/graphs/tree.svg?width=650=150=pr=GAaF7zrg8R)](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=tree) ```diff @@Coverage Diff @@ ## master #247 +/- ## == - Coverage 68.89% 68.84% -0.06% == Files 17 17 Lines3556 3547 -9 == - Hits 2450 2442 -8 + Misses933 930 -3 - Partials 173 175 +2 ``` | [Impacted Files](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=tree) | Coverage Δ | | |---|---|---| | [server/service/util/microservice\_util.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvdXRpbC9taWNyb3NlcnZpY2VfdXRpbC5nbw==) | `77.34% <ø> (-0.25%)` | :arrow_down: | | [server/service/util/dependency.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvdXRpbC9kZXBlbmRlbmN5Lmdv) | `54.24% <ø> (+0.44%)` | :arrow_up: | | [server/service/service\_dependency.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2Uvc2VydmljZV9kZXBlbmRlbmN5Lmdv) | `74.78% <ø> (-0.22%)` | :arrow_down: | | [server/service/instances.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvaW5zdGFuY2VzLmdv) | `70.75% <100%> (ø)` | :arrow_up: | | [server/service/microservices.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvbWljcm9zZXJ2aWNlcy5nbw==) | `72.85% <0%> (-0.79%)` | :arrow_down: | | [server/service/tag.go](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247/diff?src=pr=tree#diff-c2VydmVyL3NlcnZpY2UvdGFnLmdv) | `73.83% <0%> (-0.59%)` | :arrow_down: | -- [Continue to review full report at Codecov](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=continue). > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta) > `Δ = absolute (impact)`, `ø = not affected`, `? = missing data` > Powered by [Codecov](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=footer). Last update [559b5b3...e3efbb1](https://codecov.io/gh/apache/incubator-servicecomb-service-center/pull/247?src=pr=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments). This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support empty environment scene > --- > > Key: SCB-160 > URL: https://issues.apache.org/jira/browse/SCB-160 > Project: Apache ServiceComb > Issue Type: New Feature > Components: Service-Center >Reporter: little-cui > Fix For: service-center-1.0.0-m1 > > -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-118) Metrics need support prometheus Integration
[ https://issues.apache.org/jira/browse/SCB-118?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318294#comment-16318294 ] ASF GitHub Bot commented on SCB-118: WillemJiang closed pull request #496: [SCB-118] fix modules missing in pom URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/496 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/metrics/metrics-integration/pom.xml b/metrics/metrics-integration/pom.xml index a59715247..e37fe07d1 100644 --- a/metrics/metrics-integration/pom.xml +++ b/metrics/metrics-integration/pom.xml @@ -29,4 +29,8 @@ metrics-integration pom + +metrics-prometheus + + \ No newline at end of file This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Metrics need support prometheus Integration > --- > > Key: SCB-118 > URL: https://issues.apache.org/jira/browse/SCB-118 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Metrics can publish data with prometheus standard format for integration -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-155) SC panic when report metrics concurrently
[ https://issues.apache.org/jira/browse/SCB-155?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318269#comment-16318269 ] ASF GitHub Bot commented on SCB-155: little-cui closed pull request #246: SCB-155 Optimize metric.go URL: https://github.com/apache/incubator-servicecomb-service-center/pull/246 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/pkg/etcdsync/mutex.go b/pkg/etcdsync/mutex.go index 0ef019f6..96adcf8d 100644 --- a/pkg/etcdsync/mutex.go +++ b/pkg/etcdsync/mutex.go @@ -163,7 +163,7 @@ func (m *DLock) Lock(wait bool) error { func(message string, evt *registry.PluginResponse) error { if evt != nil && evt.Action == registry.Delete { // break this for-loop, and try to create the node again. - return fmt.Errorf("Lock released, id=%s", m.id) + return fmt.Errorf("Lock released") } return nil })) diff --git a/server/rest/metric.go b/server/rest/metric.go index 350aed81..56423822 100644 --- a/server/rest/metric.go +++ b/server/rest/metric.go @@ -62,7 +62,7 @@ func init() { func ReportRequestCompleted(w http.ResponseWriter, r *http.Request, start time.Time) { instance := fmt.Sprint(core.Instance.Endpoints) - elapsed := float64(time.Since(start).Nanoseconds()) / 1000 + elapsed := float64(time.Since(start).Nanoseconds()) / float64(time.Microsecond) route, _ := r.Context().Value(rest.CTX_MATCH_PATTERN).(string) if strings.Index(r.Method, "WATCH") != 0 { This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > SC panic when report metrics concurrently > - > > Key: SCB-155 > URL: https://issues.apache.org/jira/browse/SCB-155 > Project: Apache ServiceComb > Issue Type: Bug > Components: Service-Center >Reporter: little-cui >Assignee: little-cui > Fix For: service-center-1.0.0-m1 > > -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-173) [pack] mark start of saga
[ https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318118#comment-16318118 ] ASF GitHub Bot commented on SCB-173: eric-lee-ltk commented on a change in pull request #109: [WIP]SCB-173 mark start of saga URL: https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160354517 ## File path: omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessor.java ## @@ -0,0 +1,50 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package org.apache.servicecomb.saga.omega.transaction; + +import org.apache.servicecomb.saga.omega.context.OmegaContext; + +public class SagaStartAnnotationProcessor { + + private final OmegaContext omegaContext; + + private final MessageSender sender; + + SagaStartAnnotationProcessor(OmegaContext omegaContext, MessageSender sender) { +this.omegaContext = omegaContext; +this.sender = sender; + } + + void preIntercept() { +String globalTxId = initChildContext(); +// reuse the globalTxId as localTxId to differ localTxId in SagaStartedEvent and the first TxStartedEvent +sender.send(new SagaStartedEvent(globalTxId, globalTxId)); + } + + void postIntercept() { +String globalTxId = omegaContext.globalTxId(); +sender.send(new SagaEndedEvent(globalTxId, globalTxId)); + } + + private String initChildContext() { +String globalTxId = omegaContext.newGlobalTxId(); +omegaContext.newLocalTxId(); Review comment: It's a child context. Unable to find any place suitable to initialize the child context. Besides, as the omegaContext is shared threadlocal, setting the localTxId will mislead the child TxStartedEvent. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] mark start of saga > - > > Key: SCB-173 > URL: https://issues.apache.org/jira/browse/SCB-173 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Eric Lee > Fix For: saga-0.1.0 > > > with mark of saga start, we know exactly where the global transaction starts, > so that we can generate the global tx id there, to better support concurrent > sub-transactions to multiple services -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-173) [pack] mark start of saga
[ https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318103#comment-16318103 ] ASF GitHub Bot commented on SCB-173: seanyinx commented on a change in pull request #109: [WIP]SCB-173 mark start of saga URL: https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160350836 ## File path: omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessor.java ## @@ -0,0 +1,50 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package org.apache.servicecomb.saga.omega.transaction; + +import org.apache.servicecomb.saga.omega.context.OmegaContext; + +public class SagaStartAnnotationProcessor { + + private final OmegaContext omegaContext; + + private final MessageSender sender; + + SagaStartAnnotationProcessor(OmegaContext omegaContext, MessageSender sender) { +this.omegaContext = omegaContext; +this.sender = sender; + } + + void preIntercept() { +String globalTxId = initChildContext(); +// reuse the globalTxId as localTxId to differ localTxId in SagaStartedEvent and the first TxStartedEvent +sender.send(new SagaStartedEvent(globalTxId, globalTxId)); + } + + void postIntercept() { +String globalTxId = omegaContext.globalTxId(); +sender.send(new SagaEndedEvent(globalTxId, globalTxId)); + } + + private String initChildContext() { +String globalTxId = omegaContext.newGlobalTxId(); +omegaContext.newLocalTxId(); +omegaContext.setParentTxId(globalTxId); Review comment: setting parent tx id to itself seems weird... This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] mark start of saga > - > > Key: SCB-173 > URL: https://issues.apache.org/jira/browse/SCB-173 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Eric Lee > Fix For: saga-0.1.0 > > > with mark of saga start, we know exactly where the global transaction starts, > so that we can generate the global tx id there, to better support concurrent > sub-transactions to multiple services -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-173) [pack] mark start of saga
[ https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318105#comment-16318105 ] ASF GitHub Bot commented on SCB-173: seanyinx commented on a change in pull request #109: [WIP]SCB-173 mark start of saga URL: https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160350689 ## File path: omega/omega-transaction/src/main/java/org/apache/servicecomb/saga/omega/transaction/SagaStartAnnotationProcessor.java ## @@ -0,0 +1,50 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You 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. + */ + +package org.apache.servicecomb.saga.omega.transaction; + +import org.apache.servicecomb.saga.omega.context.OmegaContext; + +public class SagaStartAnnotationProcessor { + + private final OmegaContext omegaContext; + + private final MessageSender sender; + + SagaStartAnnotationProcessor(OmegaContext omegaContext, MessageSender sender) { +this.omegaContext = omegaContext; +this.sender = sender; + } + + void preIntercept() { +String globalTxId = initChildContext(); +// reuse the globalTxId as localTxId to differ localTxId in SagaStartedEvent and the first TxStartedEvent +sender.send(new SagaStartedEvent(globalTxId, globalTxId)); + } + + void postIntercept() { +String globalTxId = omegaContext.globalTxId(); +sender.send(new SagaEndedEvent(globalTxId, globalTxId)); + } + + private String initChildContext() { +String globalTxId = omegaContext.newGlobalTxId(); +omegaContext.newLocalTxId(); Review comment: why not set local tx id = global tx id? This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] mark start of saga > - > > Key: SCB-173 > URL: https://issues.apache.org/jira/browse/SCB-173 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Eric Lee > Fix For: saga-0.1.0 > > > with mark of saga start, we know exactly where the global transaction starts, > so that we can generate the global tx id there, to better support concurrent > sub-transactions to multiple services -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-173) [pack] mark start of saga
[ https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318104#comment-16318104 ] ASF GitHub Bot commented on SCB-173: seanyinx commented on a change in pull request #109: [WIP]SCB-173 mark start of saga URL: https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160352115 ## File path: omega/omega-transport/omega-transport-resttemplate/src/main/java/org/apache/servicecomb/saga/omega/transport/resttemplate/TransactionClientHttpRequestInterceptor.java ## @@ -56,7 +61,7 @@ private String localTxId() { String localTxId = omegaContext.localTxId(); if (localTxId == null) { - return omegaContext.newLocalTxId(); + LOG.error("Local tx id should not be null of global tx {}.", omegaContext.globalTxId()); Review comment: same as above This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] mark start of saga > - > > Key: SCB-173 > URL: https://issues.apache.org/jira/browse/SCB-173 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Eric Lee > Fix For: saga-0.1.0 > > > with mark of saga start, we know exactly where the global transaction starts, > so that we can generate the global tx id there, to better support concurrent > sub-transactions to multiple services -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-173) [pack] mark start of saga
[ https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318106#comment-16318106 ] ASF GitHub Bot commented on SCB-173: seanyinx commented on a change in pull request #109: [WIP]SCB-173 mark start of saga URL: https://github.com/apache/incubator-servicecomb-saga/pull/109#discussion_r160352060 ## File path: omega/omega-transport/omega-transport-resttemplate/src/main/java/org/apache/servicecomb/saga/omega/transport/resttemplate/TransactionClientHttpRequestInterceptor.java ## @@ -47,7 +52,7 @@ private String globalTxId() { String globalTxId = omegaContext.globalTxId(); if (globalTxId == null) { - return omegaContext.newGlobalTxId(); + LOG.error("Global tx id should not be null."); Review comment: this message is misleading, since the rest template may be used for non transaction request. better just not setting header at all and show error at compensable aspect. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] mark start of saga > - > > Key: SCB-173 > URL: https://issues.apache.org/jira/browse/SCB-173 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Eric Lee > Fix For: saga-0.1.0 > > > with mark of saga start, we know exactly where the global transaction starts, > so that we can generate the global tx id there, to better support concurrent > sub-transactions to multiple services -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-173) [pack] mark start of saga
[ https://issues.apache.org/jira/browse/SCB-173?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318078#comment-16318078 ] ASF GitHub Bot commented on SCB-173: coveralls commented on issue #109: [WIP]SCB-173 mark start of saga URL: https://github.com/apache/incubator-servicecomb-saga/pull/109#issuecomment-356222046 [![Coverage Status](https://coveralls.io/builds/14962384/badge)](https://coveralls.io/builds/14962384) Coverage increased (+0.08%) to 94.928% when pulling **fcb479df5596cd1e1e4912063aa5b3f4e7f5c78d on eric-lee-ltk:SCB-173** into **04e847825c8d223859b7ccd5b2b2f75d122635e2 on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] mark start of saga > - > > Key: SCB-173 > URL: https://issues.apache.org/jira/browse/SCB-173 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Eric Lee > Fix For: saga-0.1.0 > > > with mark of saga start, we know exactly where the global transaction starts, > so that we can generate the global tx id there, to better support concurrent > sub-transactions to multiple services -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-118) Metrics need support prometheus Integration
[ https://issues.apache.org/jira/browse/SCB-118?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318070#comment-16318070 ] ASF GitHub Bot commented on SCB-118: liubao68 closed pull request #480: [SCB-118] add prometheus integration impl URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/480 This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java b/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java index bd2343374..f03b9b45c 100644 --- a/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java +++ b/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java @@ -128,6 +128,38 @@ public static void run() throws Exception { } catch (Exception e) { TestMgr.check("true", "false"); } + +//prometheus integration test +try { + String content = restTemplate.getForObject("cse://springmvc/codeFirstSpringmvc/prometheusForTest", String.class); + + TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_addDate")); + TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_sayHello")); + TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_fallbackFromCache")); + TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_isTrue_producer")); + TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_add")); + TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_sayHi2")); + TestMgr.check(true,content.contains("servicecomb_springmvc_codeFirst_saySomething")); + + String[] metricLines = content.split("\n"); + if (metricLines.length > 0) { +for (String metricLine : metricLines) { + if (!metricLine.startsWith("#")) { +String[] metricKeyAndValue = metricLine.split(" "); +if (!metricKeyAndValue[0].startsWith("servicecomb_instance_system")) { + if (Double.parseDouble(metricKeyAndValue[1]) < 0) { +TestMgr.check("true", "false"); +break; + } +} + } +} + } else { +TestMgr.check("true", "false"); + } +} catch (Exception e) { + TestMgr.check("true", "false"); +} } private static void testController(RestTemplate template, String microserviceName) { diff --git a/demo/demo-springmvc/springmvc-server/pom.xml b/demo/demo-springmvc/springmvc-server/pom.xml index 772e35f05..43a7551c1 100644 --- a/demo/demo-springmvc/springmvc-server/pom.xml +++ b/demo/demo-springmvc/springmvc-server/pom.xml @@ -39,7 +39,7 @@ io.servicecomb - metrics-core + metrics-prometheus diff --git a/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java b/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java index a244e03cd..8011dbf75 100644 --- a/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java +++ b/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java @@ -50,6 +50,7 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestPart; import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.client.RestTemplate; import org.springframework.web.multipart.MultipartFile; import com.fasterxml.jackson.core.JsonProcessingException; @@ -352,6 +353,13 @@ public String metricsForTest() { } } + //Only for Prometheus integration test + @RequestMapping(path = "/prometheusForTest", method = RequestMethod.GET) + public String prometheusForTest() { +RestTemplate defaultRestTemplate = new RestTemplate(); +return defaultRestTemplate.getForObject("http://localhost:9696/metrics;, String.class); + } + @GetMapping(path = "/traceId") public String getTraceId() { return ContextUtils.getInvocationContext().getContext(Const.TRACE_ID_NAME); diff --git a/demo/demo-springmvc/springmvc-server/src/main/resources/microservice.yaml b/demo/demo-springmvc/springmvc-server/src/main/resources/microservice.yaml index f5d230404..034f0d074 100644 ---
[jira] [Commented] (SCB-179) When RequestParam name contains -, exception thrown when consumer invokes api using highway
[ https://issues.apache.org/jira/browse/SCB-179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318043#comment-16318043 ] ASF GitHub Bot commented on SCB-179: acsukesh commented on issue #491: SCB-179 support -(java identifiers) as parameter name with RequestParam URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/491#issuecomment-356216837 @wujimin comments fixed. Will add IT and update PR. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > When RequestParam name contains -, exception thrown when consumer invokes api > using highway > --- > > Key: SCB-179 > URL: https://issues.apache.org/jira/browse/SCB-179 > Project: Apache ServiceComb > Issue Type: Bug > Components: Java-Chassis >Reporter: Mohammad Asif Siddiqui > Fix For: java-chassis-1.0.0-m1 > > > When RequestParam name contains -, exception thrown when consumer invokes api > using highway > Define api as below > public boolean buyWithTransaction(@RequestHeader(name = "user-name") long > userId, > @RequestParam(name = "productId") long productId, @RequestParam(name = > "price") double price) { > Below exception thrown > 2017-12-10 16:54:35,237 [WARN] bizkeeper execution error > io.servicecomb.bizkeeper.BizkeeperHandler$1.onExecutionError(BizkeeperHandler.java:59) > java.lang.Exception: Throwable caught while executing. > at > com.netflix.hystrix.AbstractCommand.getExceptionFromThrowable(AbstractCommand.java:1970) > at > com.netflix.hystrix.AbstractCommand.wrapWithOnExecutionErrorHook(AbstractCommand.java:1490) > at com.netflix.hystrix.AbstractCommand.access$1300(AbstractCommand.java:60) > at > com.netflix.hystrix.AbstractCommand$ExecutionHookApplication$1.onError(AbstractCommand.java:1361) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:56) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.Observable.unsafeSubscribe(Observable.java:8666) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.Observable.unsafeSubscribe(Observable.java:8666) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:50) > at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30) > at rx.Observable.unsafeSubscribe(Observable.java:8666) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:52) > at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:36) > at rx.Observable.subscribe(Observable.java:8759) > at rx.Observable.subscribe(Observable.java:8726) > at rx.Observable.subscribe(Observable.java:8619) > at io.servicecomb.bizkeeper.BizkeeperHandler.handle(BizkeeperHandler.java:82) > at
[jira] [Created] (SCB-211) [pack] exponential backoff reconnect on cluster down or network down
Yin Xiang created SCB-211: - Summary: [pack] exponential backoff reconnect on cluster down or network down Key: SCB-211 URL: https://issues.apache.org/jira/browse/SCB-211 Project: Apache ServiceComb Issue Type: Improvement Components: Saga Reporter: Yin Xiang when omega is disconnected from alpha cluster, it keeps trying on failure of sending event. an exponential back off retry is better for the sake of cpu resources and disk space due to logs -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-188) optimize transport for reactive mode
[ https://issues.apache.org/jira/browse/SCB-188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318032#comment-16318032 ] ASF GitHub Bot commented on SCB-188: coveralls commented on issue #495: [SCB-188] Transport optimize for reactive URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/495#issuecomment-356215931 [![Coverage Status](https://coveralls.io/builds/14962165/badge)](https://coveralls.io/builds/14962165) Coverage increased (+0.1%) to 87.517% when pulling **e9d630f563f8f26d1e98c9c00fe0750a4cfaf07e on wujimin:transport-optimize-for-reactive** into **9c4416d69c8ba8db146806ca1ced3876b3a0c411 on apache:master**. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > optimize transport for reactive mode > > > Key: SCB-188 > URL: https://issues.apache.org/jira/browse/SCB-188 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: wujimin >Assignee: wujimin > Fix For: java-chassis-1.0.0-m1 > > -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-164) [pack] alpha connection recovery on crash
[ https://issues.apache.org/jira/browse/SCB-164?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318023#comment-16318023 ] ASF GitHub Bot commented on SCB-164: seanyinx opened a new pull request #110: [SCB-164] reconnect on crash URL: https://github.com/apache/incubator-servicecomb-saga/pull/110 Follow this checklist to help us incorporate your contribution quickly and easily: - [ ] Make sure there is a [JIRA issue](https://issues.apache.org/jira/browse/SCB) filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes. - [ ] Each commit in the pull request should have a meaningful subject line and body. - [ ] Format the pull request title like `[SCB-XXX] Fixes bug in ApproximateQuantiles`, where you replace `SCB-XXX` with the appropriate JIRA issue. - [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why. - [ ] Run `mvn clean install` to make sure basic checks pass. A more thorough check will be performed on your pull request automatically. - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf). --- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > [pack] alpha connection recovery on crash > - > > Key: SCB-164 > URL: https://issues.apache.org/jira/browse/SCB-164 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Saga >Reporter: Yin Xiang >Assignee: Yin Xiang > > as a user, i want to resume my global transaction on alpha crash, so that > * pending sub transactions can continue > * completed sub transactions can be compensated on failure -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-210) Use map feature to design microservice yaml file to support control flag of config center
[ https://issues.apache.org/jira/browse/SCB-210?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16317995#comment-16317995 ] Bo Li commented on SCB-210: --- Need to ask some help from ZhangQi about how to use the feature of mapping a key to another. > Use map feature to design microservice yaml file to support control flag of > config center > - > > Key: SCB-210 > URL: https://issues.apache.org/jira/browse/SCB-210 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: Bo Li >Assignee: Bo Li > > check comment of wujimin at: > https://github.com/apache/incubator-servicecomb-java-chassis/pull/489/ -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-188) optimize transport for reactive mode
[ https://issues.apache.org/jira/browse/SCB-188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16317987#comment-16317987 ] ASF GitHub Bot commented on SCB-188: wujimin commented on a change in pull request #495: [SCB-188] Transport optimize for reactive URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/495#discussion_r160340407 ## File path: demo/perf/src/main/java/io/servicecomb/demo/perf/PerfMain.java ## @@ -0,0 +1,48 @@ +/* Review comment: done This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > optimize transport for reactive mode > > > Key: SCB-188 > URL: https://issues.apache.org/jira/browse/SCB-188 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: wujimin >Assignee: wujimin > Fix For: java-chassis-1.0.0-m1 > > -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-36) Support connecting to the third party dynamic config center
[ https://issues.apache.org/jira/browse/SCB-36?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16317985#comment-16317985 ] ASF GitHub Bot commented on SCB-36: --- lijasonvip commented on a change in pull request #489: [WIP] SCB-36 Support dynamic configuration for chassis by integrating with … URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489#discussion_r160340288 ## File path: foundations/foundation-config/src/main/java/io/servicecomb/config/ConfigUtil.java ## @@ -151,7 +153,8 @@ private static void duplicateServiceCombConfigToCse(ConcurrentCompositeConfigura } public static DynamicWatchedConfiguration createConfigFromConfigCenter(Configuration localConfiguration) { -if (localConfiguration.getProperty(configCenterUrlKey) == null) { +if (localConfiguration.getProperty(configCenterUrlKey) == null && Review comment: Improvement of this problem will be watched at https://issues.apache.org/jira/browse/SCB-210 This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Support connecting to the third party dynamic config center > --- > > Key: SCB-36 > URL: https://issues.apache.org/jira/browse/SCB-36 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: mabin >Assignee: mabin > Fix For: java-chassis-1.0.0-m1 > > Attachments: Dynamic Config Proposal.pdf > > > Java-chassis can connect to another open source config center to support > changing the setting dynamically. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Assigned] (SCB-210) Use map feature to design microservice yaml file to support control flag of config center
[ https://issues.apache.org/jira/browse/SCB-210?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Bo Li reassigned SCB-210: - Assignee: Bo Li > Use map feature to design microservice yaml file to support control flag of > config center > - > > Key: SCB-210 > URL: https://issues.apache.org/jira/browse/SCB-210 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: Bo Li >Assignee: Bo Li > > check comment of wujimin at: > https://github.com/apache/incubator-servicecomb-java-chassis/pull/489/ -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Created] (SCB-210) Use map feature to design microservice yaml file to support control flag of config center
Bo Li created SCB-210: - Summary: Use map feature to design microservice yaml file to support control flag of config center Key: SCB-210 URL: https://issues.apache.org/jira/browse/SCB-210 Project: Apache ServiceComb Issue Type: Sub-task Components: Java-Chassis Reporter: Bo Li check comment of wujimin at: https://github.com/apache/incubator-servicecomb-java-chassis/pull/489/ -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-118) Metrics need support prometheus Integration
[ https://issues.apache.org/jira/browse/SCB-118?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16317965#comment-16317965 ] ASF GitHub Bot commented on SCB-118: zhengyangyong commented on issue #480: [SCB-118] add prometheus integration impl URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/480#issuecomment-356208287 Rebase on upstream master and resolve conflicts This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Metrics need support prometheus Integration > --- > > Key: SCB-118 > URL: https://issues.apache.org/jira/browse/SCB-118 > Project: Apache ServiceComb > Issue Type: Sub-task > Components: Java-Chassis >Reporter: yangyongzheng >Assignee: yangyongzheng > Fix For: java-chassis-1.0.0-m1 > > > Metrics can publish data with prometheus standard format for integration -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (SCB-172) Upgrade to zipkin2
[ https://issues.apache.org/jira/browse/SCB-172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16317962#comment-16317962 ] ASF GitHub Bot commented on SCB-172: yangbor commented on a change in pull request #488: [SCB-172] upgrade zipkin libraries to zipkin2 URL: https://github.com/apache/incubator-servicecomb-java-chassis/pull/488#discussion_r160310146 ## File path: integration-tests/pom.xml ## @@ -54,10 +54,15 @@ 0.6.0-SNAPSHOT test-jar + +io.zipkin.zipkin2 +zipkin +2.4.2 Review comment: This is inside the \section so the version is required. The integration-tests/pom.xml does not include the java-chassis-dependencies pom so a separate dependencyManagement is required. This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Upgrade to zipkin2 > -- > > Key: SCB-172 > URL: https://issues.apache.org/jira/browse/SCB-172 > Project: Apache ServiceComb > Issue Type: Improvement > Components: Java-Chassis >Reporter: Yang Bo >Assignee: Yang Bo > Fix For: java-chassis-1.0.0-m1 > > Original Estimate: 48h > Remaining Estimate: 48h > > The upstream zipkin libraries are moving to use the v2 http api introduced in > zipkin-1.31. It's also including other features and improvements. -- This message was sent by Atlassian JIRA (v6.4.14#64029)