Hi all, I tried to fix tenant domain to NHTTP thread as a thread local variable using a axis2 handler. This works fine in request path. However in response path, synapse switches to client worker thread and tenant domain does not available in response path.
To fix this we have to hack synapse code (Axis2FlexibleMEPClient and SynapseCallbackReceiver) to copy thread local variable from server worker to client worker thread. Is this fine? Also logging component might need to take a dependency to synapse ( unless planning to use reflections) to get tenant domain. On Tue, Jul 24, 2012 at 10:45 PM, Miyuru Wanninayaka <[email protected]>wrote: > Hi all, > > I just found that synapse logging works fine when used servlet transport. > So I guess logging does not works with NHTTP because it uses a independent > thread pool from carbon/tomcat. > > > > On Mon, Jul 23, 2012 at 1:27 PM, Miyuru Wanninayaka <[email protected]>wrote: > >> Hi, >> >> I had a chat with Amani about this. This logging issue is exists with >> both BPS and ESB ( probably AM, CSG which internally uses Synapse ) >> >> Reason for the issue is >> 1. Synapse and is not multi tenantted >> 2. Synapse runs on own worker thread pool and does not know about carbon >> context >> >> AFIK multi tenentting synapse/ODE is not a easy task and will talk >> considerable amount of time and also it's not straight forward to make >> synapse/ode aware about carbon context( unless we maintain hacked synapse >> version internally which will not merge in to public apache branch ) >> >> does anyone have a idea about fixing this issue without doing #1 and #2 ? >> >> >> On Mon, Jul 23, 2012 at 11:10 AM, Amani Soysa <[email protected]> wrote: >> >>> >>> >>> On Fri, Jul 20, 2012 at 6:28 PM, Dharshana Warusavitharana < >>> [email protected]> wrote: >>> >>>> Hi, >>>> >>>> LogMediator Logs cannot retrieve by LogViewerStub. It returns empty >>>> element list. >>>> >>>> >>>> >>> It worked till recent changes in Logviwer . And this is something >>>> heavily used in ESB integration tests. >>>> >>> >>> Yes this is because LogViewer now returns tenant specific logs, earlier >>> it returns all the logs. This issue is there in ESB because you cannot get >>> tenantId for ESB mediation logs. This issue was raised sometime back and >>> Kasun was looking into it [1] I think we need to fix this issue from the >>> synapse level. >>> >>> >>>> It would be great if there is any workaround that we can use to read >>>> LogMediator Logs. I have created a JIRA and Link is [1] >>>> >>> >>> As a workaround I can provide another method in LogViewerStub to >>> retrieve all the logs without looking checking for the tenant Id. >>> >>>> >>>> [1] https://wso2.org/jira/browse/ESBJAVA-1278 >>>> >>>> Thank You, >>>> Dharshana. >>>> >>>> [1] -https://wso2.org/jira/browse/STRATOS-549 >>> >>>> -- >>>> >>>> Dharshana Warusavitharana >>>> Software Engineer , Test Automation >>>> WSO2 Inc. http://wso2.com >>>> email : [email protected] <[email protected]> >>>> cell : +94772202595 >>>> blog : http://dharshanaw.wordpress.com/ >>>> >>>> lean . enterprise . middleware >>>> >>>> >>>> _______________________________________________ >>>> Dev mailing list >>>> [email protected] >>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>> >>>> >>> >>> _______________________________________________ >>> Dev mailing list >>> [email protected] >>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>> >>> >> >> >> -- >> Thanks, >> Miyuru >> > > > > -- > Thanks, > Miyuru > -- Thanks, Miyuru
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
