On Fri, Nov 20, 2015 at 5:20 PM, Isuru Perera <[email protected]> wrote:
> As I mentioned, in Tomcat Valve, we get some details from the User-Agent > header. > > See following code from WebAppMonitoringPublisherValve.java > <https://github.com/wso2/carbon-deployment/blob/master/components/monitoring/org.wso2.carbon.as.monitoring/src/main/java/org/wso2/carbon/as/monitoring/collector/http/WebAppMonitoringPublisherValve.java#L250-L256> > > > > > > > *Client readableUserAgent = > uaParser.parse(userAgent);webappMonitoringEvent.setUserAgentFamily(readableUserAgent.userAgent.family);webappMonitoringEvent.setUserAgentVersion(readableUserAgent.userAgent.major);webappMonitoringEvent.setOperatingSystem(readableUserAgent.os.family);webappMonitoringEvent.setOperatingSystemVersion(readableUserAgent.os.major);webappMonitoringEvent.setDeviceCategory(readableUserAgent.device.family);* > > We can access headers from Netty request, but the real question is whether > the Microservices clients will send a User-Agent header similar to the > header sent by a Browser. > Isuru, If this is about client not setting header values, that problem has nothing to do with MicroServices. right? It can be the same for any JAX-RS hosted on AS. > > In the valve, other details are taken from the request object. > > With Netty, we should be able to get the remote address from the Netty > Channel. However, I couldn't find a way to access the channel from our > HTTPMonitoringInterceptor > <https://github.com/wso2/product-mss/blob/v1.0.0-alpha/carbon-mss/components/org.wso2.carbon.mss/src/main/java/org/wso2/carbon/mss/httpmonitoring/HTTPMonitoringInterceptor.java>. > In addition the Tomcat Value gets language and country from Locale > <https://github.com/wso2/carbon-deployment/blob/master/components/monitoring/org.wso2.carbon.as.monitoring/src/main/java/org/wso2/carbon/as/monitoring/collector/http/WebAppMonitoringPublisherValve.java#L208-L209>. > > > <https://github.com/wso2/product-mss/blob/v1.0.0-alpha/carbon-mss/components/org.wso2.carbon.mss/src/main/java/org/wso2/carbon/mss/httpmonitoring/HTTPMonitoringInterceptor.java> > > Even here, can we expect these details in Microservices context? > > > On Fri, Nov 20, 2015 at 4:51 PM, Sagara Gunathunga <[email protected]> > wrote: > >> >> What we have in AS is not AS specific dashboard, it's a HTTP dashboard >> and possible to use with anywhere related to HTTP monitoring. As we >> discussed we need some sophisticated dashboards for MSS but >> HTTP monitoring is something basic and essential for MSS as well, >> HTTP monitoring is a very basic requirement for any service or app. >> >> As I understood current problem is, it's not possible to extract some of >> the HTTP request headers from Netty in order to render some parts of above >> dashboard, IMHO we need to find a way to exact all HTTP headers from Netty. >> >> Can you list down list of required HTTP headers that we can't extract >> from current API ? May be Kasun can help out here. >> >> Thanks ! >> >> On Fri, Nov 20, 2015 at 4:05 PM, Isuru Perera <[email protected]> wrote: >> >>> Hi all, >>> >>> For the MSS alpha release, we used the HTTP Monitoring Dashboard used in >>> WSO2 AS product and we implemented an HTTP Monitoring Interceptor for MSS >>> [1]. >>> >>> However, with MSS we don't get all data required by the standard HTTP >>> Monitoring Dashboard. For example, in the Tomcat Valve for AS [2], we have >>> used the User-Agent header to get client details (Browser, OS & Device). >>> The Tomcat Request object has all other necessary details (Remote IP, >>> Locale etc) >>> >>> In our interceptor [3], we use the Netty HTTP Request object and the >>> Java Reflection details to get details for the monitoring event. >>> >>> Since these details are not enough for the HTTP Monitoring Dashboard, we >>> need to think of using an MSS specific dashboard. >>> >>> WDYT? >>> >>> With regarding to Metrics annotations, we have to create some gadgets in >>> DAS. We need to have a discussion on this. >>> >>> Thanks! >>> >>> Best Regards, >>> >>> [1] https://github.com/wso2/product-mss/pull/31 >>> [2] >>> https://github.com/wso2/carbon-deployment/blob/master/components/monitoring/org.wso2.carbon.as.monitoring/src/main/java/org/wso2/carbon/as/monitoring/collector/http/WebAppMonitoringPublisherValve.java >>> [3] >>> https://github.com/wso2/product-mss/blob/v1.0.0-alpha/carbon-mss/components/org.wso2.carbon.mss/src/main/java/org/wso2/carbon/mss/httpmonitoring/HTTPMonitoringInterceptor.java >>> >>> -- >>> Isuru Perera >>> Associate Technical Lead | WSO2, Inc. | http://wso2.com/ >>> Lean . Enterprise . Middleware >>> >>> about.me/chrishantha >>> Contact: +IsuruPereraWSO2 >>> <https://www.google.com/+IsuruPereraWSO2/about> >>> >> >> >> >> -- >> Sagara Gunathunga >> >> Architect; WSO2, Inc.; http://wso2.com >> V.P Apache Web Services; http://ws.apache.org/ >> Linkedin; http://www.linkedin.com/in/ssagara >> Blog ; http://ssagara.blogspot.com >> >> > > > -- > Isuru Perera > Associate Technical Lead | WSO2, Inc. | http://wso2.com/ > Lean . Enterprise . Middleware > > about.me/chrishantha > Contact: +IsuruPereraWSO2 <https://www.google.com/+IsuruPereraWSO2/about> > -- /sumedha m: +94 773017743 b : bit.ly/sumedha
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
