Environment:
1. Windows 7 and
2. IBM MobileFirst Platform Studio 7.0
Sample Working offline application of IBM MobileFirst Platform 7.0 from Getting Started Modules imported and tested with the following procedures.
1. Set heartbeat to 5 seconds
2. Background application behavior can be seen using web debuggers
3. Shut down MobileFirst Server
4. In a few seconds heartbeat should fail, and disconnectDetected function should be invoked
5. Start up MobileFirst Server
6. In a few seconds heartbeat should succeed, and connectDetected function should be invoked
But the disconnectDetected and connectDetected functions were not triggered when the server stopped and started respectively.
function disconnectDetected(){
var output = new Date() + "<hr />disconnectDetected";
$('#info').html(output);
}
function connectDetected(){
var output = new Date() + "<hr />connectDetected";
$('#info').html(output);
}
Log's are given below.
http://localhost:10080/WorkingOffline/apps/services/preview/WorkingOffline/common/0/default/js/test.js Failed to load resource: the server responded with a status of 404 (Not Found)
wljq.js:8654 Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check http://xhr.spec.whatwg.org/.
worklight.js:5127 wlclient init started
worklight.js:5127 before: initOptions.onSuccess
worklight.js:5127 after: initOptions.onSuccess
worklight.js:5127 wlclient init success
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat 401 (Unauthorized)
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3794 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.handleResendOrSendPostAnswersworklight.js:3783 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.removeExpectedAnswerworklight.js:9432 challengeHandler.submitChallengeAnswerworklight.js:10193 wl_antiXSRFChallengeHandler.handleChallengeworklight.js:9328 AbstractChallengeHandler.startChallengeHandlingworklight.js:9251 executeChallengeworklight.js:9153 checkResponseForChallengesworklight.js:3598 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.onWlFailureworklight.js:956 (anonymous function)worklight.js:1178 window.WLJSX.Ajax.Request.WLJSX.Class.create.respondToReadyStateworklight.js:1111 window.WLJSX.Ajax.Request.WLJSX.Class.create.onStateChangeworklight.js:956 (anonymous function)
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application is now online.
worklight.js:5127 response [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] success:
worklight.js:5127 Heartbeat sent successfully
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:5127 Application is now online.
worklight.js:5127 response [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] success:
worklight.js:5127 Heartbeat sent successfully
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat net::ERR_CONNECTION_REFUSED
worklight.js:5127 Application is now offline.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] Host is not responsive.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat net::ERR_CONNECTION_REFUSED
worklight.js:5127 Application is now offline.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] Host is not responsive.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat net::ERR_CONNECTION_REFUSED
worklight.js:5127 Application is now offline.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] Host is not responsive.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat net::ERR_CONNECTION_REFUSED
worklight.js:5127 Application is now offline.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] Host is not responsive.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat net::ERR_CONNECTION_REFUSED
worklight.js:5127 Application is now offline.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] Host is not responsive.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat net::ERR_CONNECTION_REFUSED
worklight.js:5127 Application is now offline.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] Host is not responsive.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat 404 (Not Found)
worklight.js:5127 Application is now online.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] failure. state: 404, response: The server was unable to process the request from the application. Please try again later.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat 503 (Service Unavailable)
worklight.js:5127 Application is now online.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] failure. state: 503, response: The server was unable to process the request from the application. Please try again later.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat 503 (Service Unavailable)
worklight.js:5127 Application is now online.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] failure. state: 503, response: The server was unable to process the request from the application. Please try again later.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat 503 (Service Unavailable)
worklight.js:5127 Application is now online.
worklight.js:5127 [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] failure. state: 503, response: The server was unable to process the request from the application. Please try again later.
worklight.js:5127 Failed to send heartbeat
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:1097 POST http://localhost:10080/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat 401 (Unauthorized)
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3794 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.handleResendOrSendPostAnswersworklight.js:3783 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.removeExpectedAnswerworklight.js:9432 challengeHandler.submitChallengeAnswerworklight.js:10193 wl_antiXSRFChallengeHandler.handleChallengeworklight.js:9328 AbstractChallengeHandler.startChallengeHandlingworklight.js:9251 executeChallengeworklight.js:9153 checkResponseForChallengesworklight.js:3598 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.onWlFailureworklight.js:956 (anonymous function)worklight.js:1178 window.WLJSX.Ajax.Request.WLJSX.Class.create.respondToReadyStateworklight.js:1111 window.WLJSX.Ajax.Request.WLJSX.Class.create.onStateChangeworklight.js:956 (anonymous function)
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application is now online.
worklight.js:5127 response [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] success:
worklight.js:5127 Heartbeat sent successfully
worklight.js:5127 Request [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat]
worklight.js:5127 Application details header: {"applicationDetails":{"platformVersion":"7.0.0.0","nativeVersion":""}}worklight.js:5127 WL.Logger.__logworklight.js:5511 PUBLIC_API.(anonymous function)worklight.js:3330 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.createRequestHeadersworklight.js:3388 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.sendRequestworklight.js:3302 window.WLJSX.Ajax.WLRequest.WLJSX.Class.create.initializeworklight.js:524 klassworklight.js:7249 sendHeartBeatworklight.js:893 onTimerEventworklight.js:956 (anonymous function)
worklight.js:5127 Application is now online.
worklight.js:5127 response [/WorkingOffline/apps/services/api/WorkingOffline/common/heartbeat] success:
worklight.js:5127 Heartbeat sent successfully
But, getting started from the IBM MobileFirst Platform 6.3 Sample Working Offline application works perfectly in IBM MobileFirst Studio 6.3
As it is, this appears to be a defect - it is currently being debugged.
There appears to be no workaround.
If the fix is required, you'll need to open a PMR (IBM support ticket).
Related
i have grafana 7.0.5 with image rendrer plugin v2.0
in grafana.ini
root_url = http://myServer.com/grafana
and grafana is running behind an apache with :
ProxyPass /grafana http://127.0.0.1:3000
ProxyPassReverse /grafana http://127.0.01:3000
When i try to render an image of a panle with : [Direct link rendered image], browser wait for about 1 mn and then i have :
in the log file : i have
t=2020-07-08T15:12:46+0200 lvl=info msg=Rendering logger=rendering renderer=plugin path="d-solo/mT2tktqZk/fiche-departementale?orgId=1&from=1594192067086&to=1594213667086&var-liste_dep=All&var-date2_deb=&var-date2_fin=&var-type_et=ETF&var-type_et=ETD&var-type_et=ETVM&var-type_et=ETFR&var-type_et=ETM&var-type_et=ETC&var-type_et=ETT&panelId=6&width=1000&height=500&tz=Europe%2FParis"
t=2020-07-08T15:12:46+0200 lvl=info msg="Request Completed" logger=context userId=1 orgId=1 uname= method=GET path=/d-solo/mT2tktqZk/fiche-departementale status=200 remote_addr=[::1] time_ms=2 size=34727 referer=
t=2020-07-08T15:12:47+0200 lvl=info msg="Request Completed" logger=context userId=1 orgId=1 uname= method=GET path=/api/dashboards/uid/mT2tktqZk status=200 remote_addr=[::1] time_ms=2 size=11580 referer="http://localhost:3000/grafana/d-solo/mT2tktqZk/fiche-departementale?orgId=1&from=1594192067086&to=1594213667086&var-liste_dep=All&var-date2_deb=&var-date2_fin=&var-type_et=ETF&var-type_et=ETD&var-type_et=ETVM&var-type_et=ETFR&var-type_et=ETM&var-type_et=ETC&var-type_et=ETT&panelId=6&width=1000&height=500&tz=Europe%2FParis&render=1"
t=2020-07-08T15:12:47+0200 lvl=info msg="Request Completed" logger=context userId=1 orgId=1 uname= method=POST path=/api/tsdb/query status=200 remote_addr=[::1] time_ms=2 size=927 referer="http://localhost:3000/grafana/d-solo/mT2tktqZk/fiche-departementale?orgId=1&from=1594192067086&to=1594213667086&var-liste_dep=All&var-date2_deb=&var-date2_fin=&var-type_et=ETF&var-type_et=ETD&var-type_et=ETVM&var-type_et=ETFR&var-type_et=ETM&var-type_et=ETC&var-type_et=ETT&panelId=6&width=1000&height=500&tz=Europe%2FParis&render=1"
t=2020-07-08T15:12:48+0200 lvl=info msg="Request Completed" logger=context userId=1 orgId=1 uname= method=POST path=/api/tsdb/query status=400 remote_addr=[::1] time_ms=2 size=1798 referer="http://localhost:3000/grafana/d-solo/mT2tktqZk/fiche-departementale?orgId=1&from=1594192067086&to=1594213667086&var-liste_dep=All&var-date2_deb=&var-date2_fin=&var-type_et=ETF&var-type_et=ETD&var-type_et=ETVM&var-type_et=ETFR&var-type_et=ETM&var-type_et=ETC&var-type_et=ETT&panelId=6&width=1000&height=500&tz=Europe%2FParis&render=1"
t=2020-07-08T15:12:48+0200 lvl=eror msg="Browser console error" logger=plugins.backend pluginId=grafana-image-renderer msg="Failed to load resource: the server responded with a status of 400 (Bad Request)" url=http://localhost:3000/grafana/api/tsdb/query
t=2020-07-08T15:13:48+0200 lvl=info msg="Rendering timed out" logger=rendering renderer=plugin
t=2020-07-08T15:13:48+0200 lvl=eror msg="Timeout error. You can set timeout in seconds with &timeout url parameter" logger=context userId=1 orgId=1 uname=admin error="Timeout error. You can set timeout in seconds with &timeout url parameter"
t=2020-07-08T15:13:48+0200 lvl=eror msg="Request Completed" logger=context userId=1 orgId=1 uname=admin method=GET path=/render/d-solo/mT2tktqZk/fiche-departementale status=500 remote_addr="193.41.223.244, 192.168.255.162" time_ms=62022 size=1791 referer="https://sigdca.rct01.kleegroup.com/grafana/d/mT2tktqZk/fiche-departementale?orgId=1"
t=2020-07-08T15:13:49+0200 lvl=eror msg="Render request failed" logger=plugins.backend pluginId=grafana-image-renderer url="http://localhost:3000/grafana/d-solo/mT2tktqZk/fiche-departementale?orgId=1&from=1594192067086&to=1594213667086&var-liste_dep=All&var-date2_deb=&var-date2_fin=&var-type_et=ETF&var-type_et=ETD&var-type_et=ETVM&var-type_et=ETFR&var-type_et=ETM&var-type_et=ETC&var-type_et=ETT&panelId=6&width=1000&height=500&tz=Europe%2FParis&render=1" error="TimeoutError: waiting for function failed: timeout 60000ms exceeded"
Can i get some help with this plz, i’m stuck
Provide the values as follows
GF_RENDERING_SERVER_URL: http://myServer.com/render
GF_RENDERING_CALLBACK_URL: http://myServer.com/grafana
the error came from the dashboard SQL query, so when you try to render a dashboard with an error in its SQL query it fails rendering.
I am trying to do channel.basicReject() to requeue message based on some condition by creating an MethodInterceptor ConsumerAdvice and adding it to SMLC factor.setAdviceChain(new ConsumerAdvice()). I also have concurrentConsumer configuration which is set to 10. The moment my reject condition is met I issue basicReject command and it gets redelivered and processed by another consumer. During this redelivery process I get the below error,
2019-11-07 17:34:13.268 ERROR 29385 --- [ 127.0.0.1:5672] o.s.a.r.c.CachingConnectionFactory : Channel shutdown: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 1, class-id=60, method-id=80)
2019-11-07 17:34:13.268 DEBUG 29385 --- [ool-2-thread-13] o.s.a.r.listener.BlockingQueueConsumer : Received shutdown signal for consumer tag=amq.ctag-HUaN71TZUqMfLDR7k6LwGQ
com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 1, class-id=60, method-id=80)
at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:516)
at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:346)
at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:178)
at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:111)
at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:670)
at com.rabbitmq.client.impl.AMQConnection.access$300(AMQConnection.java:48)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:597)
at java.lang.Thread.run(Thread.java:748)
My message is not getting lost but I am seeing a bunch of above errors and unable to understand why this is happening. If anyone has any clues please guide me.
Below are the trace logs,
2019-11-08 02:11:31.883 TRACE 8695 --- [askExecutor-138] o.s.a.r.c.CachingConnectionFactory : AMQChannel(amqp://guest#127.0.0.1:5672/,99) channel.getChannelNumber()
2019-11-08 02:11:31.883 INFO 8695 --- [askExecutor-138] c.g.s.w.consumer.advice.ArgumentUtils : Channel number before triggering redelivery : 99
2019-11-08 02:11:31.883 TRACE 8695 --- [askExecutor-138] o.s.a.r.c.CachingConnectionFactory : AMQChannel(amqp://guest#127.0.0.1:5672/,99) channel.basicReject([2, true])
2019-11-08 02:11:31.883 INFO 8695 --- [askExecutor-138] c.g.s.w.consumer.advice.ArgumentUtils : ==============================================================================
2019-11-08 02:11:31.883 INFO 8695 --- [askExecutor-138] c.g.s.w.consumer.advice.ConsumerAdvice : Requeue Message attempted, status : true
2019-11-08 02:11:31.884 TRACE 8695 --- [askExecutor-138] o.s.a.r.l.SimpleMessageListenerContainer : Waiting for message from consumer.
2019-11-08 02:11:31.884 TRACE 8695 --- [askExecutor-138] o.s.a.r.listener.BlockingQueueConsumer : Retrieving delivery for Consumer#7783912f: tags=[[amq.ctag-eY7LN-1pSXPX8FKRBgt-ug]], channel=Cached Rabbit Channel: AMQChannel(amqp://guest#127.0.0.1:5672/,99), conn: Proxy#37ffe4f3 Shared Rabbit Connection: SimpleConnection#708dfe10 [delegate=amqp://guest#127.0.0.1:5672/, localPort= 58638], acknowledgeMode=AUTO local queue size=0
2019-11-08 02:11:31.884 DEBUG 8695 --- [askExecutor-138] o.s.a.r.l.SimpleMessageListenerContainer : Consumer raised exception, processing can restart if the connection factory supports it
com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 1, class-id=60, method-id=80)
at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.checkShutdown(BlockingQueueConsumer.java:436)
at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.nextMessage(BlockingQueueConsumer.java:501)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.doReceiveAndExecute(SimpleMessageListenerContainer.java:843)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.receiveAndExecute(SimpleMessageListenerContainer.java:832)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.access$700(SimpleMessageListenerContainer.java:78)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1073)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 1, class-id=60, method-id=80)
at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:516)
at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:346)
at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:178)
at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:111)
at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:670)
at com.rabbitmq.client.impl.AMQConnection.access$300(AMQConnection.java:48)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:597)
... 1 common frames omitted
2019-11-08 02:11:31.884 ERROR 8695 --- [ 127.0.0.1:5672] o.s.a.r.c.CachingConnectionFactory : Channel shutdown: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 2, class-id=60, method-id=90)
You need to show your code and configuration.
It seems like the SMLC has its default configuration to automatically acknowledge messages and this failure is because you already rejected it; why are you interacting with the channel directly?
You can simply throw an exception and the container will reject the message on your behalf.
I don't know if it will helpful for someone.
I had the same error because of invalid input data. But when I added next properties:
"rabbit.listener.acknowledgeMode": "MANUAL",
"rabbit.listener.defaultRequeueRejected": "true",
"rabbit.listener.prefetchCount": "1",
the problem stop to break my program but only had stopping my listener
I am trying to use my API through the Swagger UI through the WSO2 API Manager:
Me->Browser->SwaggerUI->WSO2->MyBackend
Now I got the problem, that Swagger UI always gives me:
{ "error": "no response from server" }
I was making some research and figured out, that the Problem here is associated to CORS. While I am attempting a GET request, the Firefox sends an OPTION request first (because of CORS) to the WSO2 gateway.
Now the same scenario is explained and described here as well:
https://wso2.org/jira/browse/APIMANAGER-1819
The solution/workarounds described in the links is, that in the API publisher you have to create an endpoint for the requested resource with method OPTION and to set the auth type of that OPTION endpoint to "none".
However this doesn't work for me, since I get an exception in WSO, when the request is passed in.
The HTTP Request going into WSO2:
TID: [0] [AM] [2015-05-07 09:32:50,707] DEBUG {org.apache.synapse.transport.http.wire} - >> "OPTIONS /bankapi/v1/cashAccounts HTTP/1.1[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,707] DEBUG {org.apache.synapse.transport.http.wire} - >> "Host: 10.88.13.104:8243[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,707] DEBUG {org.apache.synapse.transport.http.wire} - >> "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,707] DEBUG {org.apache.synapse.transport.http.wire} - >> "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,708] DEBUG {org.apache.synapse.transport.http.wire} - >> "Accept-Language: en-US,en;q=0.5[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,708] DEBUG {org.apache.synapse.transport.http.wire} - >> "Accept-Encoding: gzip, deflate[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,708] DEBUG {org.apache.synapse.transport.http.wire} - >> "Origin: http://10.88.13.104:8080[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,708] DEBUG {org.apache.synapse.transport.http.wire} - >> "Access-Control-Request-Method: GET[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,708] DEBUG {org.apache.synapse.transport.http.wire} - >> "Connection: keep-alive[\r][\n]" {org.apache.synapse.transport.http.wire}
TID: [0] [AM] [2015-05-07 09:32:50,708] DEBUG {org.apache.synapse.transport.http.wire} - >> "[\r][\n]" {org.apache.synapse.transport.http.wire}
The exception and stack trace:
TID: [0] [AM] [2015-05-07 09:32:50,878] ERROR {org.wso2.carbon.apimgt.gateway.handlers.security.APIAuthenticationHandler} - API authentication failure {org.wso2.carbon.apimgt.gateway.handlers.security.APIAuthenticationHandler}
org.wso2.carbon.apimgt.gateway.handlers.security.APISecurityException: Access failure for API: /bankapi, version: v1 with key: null
at org.wso2.carbon.apimgt.gateway.handlers.security.oauth.OAuthAuthenticator.authenticate(OAuthAuthenticator.java:212)
at org.wso2.carbon.apimgt.gateway.handlers.security.APIAuthenticationHandler.handleRequest(APIAuthenticationHandler.java:94)
at org.apache.synapse.rest.API.process(API.java:284)
at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:83)
at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:64)
at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220)
at org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:83)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:344)
at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:168)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
The important thing here is 2.... there is an error while authenticating even though the auth type is none and the authentication should always be successful. The request is not even forwarded to the backend (this is why my question is not a duplicate, but there is a very different problem underlying).
I am running WSO2 API Manager in version 1.8.0 on Windows (the binary package you can download on the WSO2 site).
Can you help me out here? Am I missing something? Is this a plain bug (it looks to me that way)?
I am creating "Pass Through Proxy" in WSO2ESB using JAX-WS hosted on Glassfish.
The problem is that the proxy does not work and it happens with EVERY PROXY I create in the ESB that are pointing to every Java Web Services on Glassfish: the console gives this error [1]. The thing is that Proxies to .Net Services instead, works fine.
1) I have tried with the ESB tryit tool to consume the service and I have the following response:
<TryitProxyError h:status="SOAP envelope error" xmlns:h="http://wso2.org/ns/TryitProxy">org.apache.axis2.AxisFault: Transport error: 415 Error: Unsupported Media Type</TryitProxyError>
2) Instead soapUI which gives me this message:
Error loading [ClientProxy?xsd=http://192.168.10.176:8080/ESBAdminWebapp_SERVER/ClientProxy?xsd=1]: java.io.IOException: Attempted read from closed stream
where 192.168.10.176:8080is the Glassfish server. But if I call the real WSDL it works...
I have tried with a fresh installation of WSO2-ESB and fresh Glassfish server as well:
WSO2 ESB, Glassfish and IIS are now installed LOCALLY to try to spot the problem.
Please help!
[1] FULL LOG:
TID: [] [WSO2 ESB] [2012-09-24 11:31:11,689] INFO {org.apache.synapse.mediators.builtin.LogMediator} - To: /services/test.testHttpSoap12Endpoint, WSAction: http://my/Hello/helloRequest, SOAPAction: http://my/Hello/helloRequest, MessageID: urn:uuid:754dfcb5-1008-47ed-9c25-15327370ee11, Direction: request, Envelope: ? {org.apache.synapse.mediators.builtin.LogMediator
[2012-09-24 11:31:11,689] INFO - LogMediator To: /services/test.testHttpSoap12E
ndpoint, WSAction: http://my/Hello/helloRequest, SOAPAction: http://my/Hello/hel
loRequest, MessageID: urn:uuid:754dfcb5-1008-47ed-9c25-15327370ee11, Direction:
request, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns
:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><p:hello xmlns:
p="http://my/"><!--0 to 1 occurrence--><name>?</name></p:hello></soapenv:Body></
soapenv:Envelope>
[2012-09-24 11:31:11,694] INFO - LogMediator To: http://www.w3.org/2005/08/addr
essing/anonymous, WSAction: , SOAPAction: , MessageID: urn:uuid:e9b224e8-2754-41
1f-8640-5922f1797202, Direction: response, Envelope: <?xml version='1.0' encodin
g='utf-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envel
ope"><soapenv:Body><axis2ns7:binary xmlns:axis2ns7="http://ws.apache.org/commons
/ns/payload"></axis2ns7:binary></soapenv:Body></soapenv:Envelope>
[2012-09-24 11:31:11,697] INFO - HTTPSender Unable to sendViaPost to url[http:/
/localhost:8280/services/test.testHttpSoap12Endpoint]
org.apache.axis2.AxisFault: Transport error: 415 Error: Unsupported Media Type
at org.apache.axis2.transport.http.HTTPSender.handleResponse(HTTPSender.
java:308)
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.jav
a:194)
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:75)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessa
geWithCommons(CommonsHTTPTransportSender.java:449)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(Com
monsHTTPTransportSender.java:276)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:443)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisO
peration.java:406)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(Out
InAxisOperation.java:229)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:
165)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:
555)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:
531)
at org.apache.jsp.admin.jsp.WSRequestXSSproxy_005fajaxprocessor_jsp._jsp
Service(WSRequestXSSproxy_005fajaxprocessor_jsp.java:272)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:3
14)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.ui.JspServlet.service(JspServlet.java:161)
at org.wso2.carbon.ui.TilesJspServlet.service(TilesJspServlet.java:80)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.eclipse.equinox.http.helper.ContextPathServletAdaptor.service(Con
textPathServletAdaptor.java:36)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleR
equest(ServletRegistration.java:90)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(P
roxyServlet.java:111)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyS
ervlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.wso2.carbon.bridge.BridgeServlet.service(BridgeServlet.java:164)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
torBase.java:462)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:100)
at org.wso2.carbon.server.CarbonStuckThreadDetectionValve.invoke(CarbonS
tuckThreadDetectionValve.java:154)
at org.wso2.carbon.server.TomcatServer$1.invoke(TomcatServer.java:254)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
563)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:399)
at org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcesso
r.java:396)
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.pr
ocess(Http11NioProtocol.java:356)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoin
t.java:1534)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec
utor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:908)
at java.lang.Thread.run(Thread.java:662)
The exception indicates that Glassfish response with the following HTTP error:
415 Error: Unsupported Media Type
This likely means that the Content-Type header send by the proxy has a value that is not expected by Glassfish.
I have a WCF service that is giving the following error on live
Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 19/06/2012 10:39:09
Event time (UTC): 19/06/2012 09:39:09
Event ID: 501c1b630958413db7c7f746b0a467f7
Event sequence: 74336
Event occurrence: 742
Event detail code: 0
Application information:
Application domain: /LM/W3SVC/5/ROOT-1-129844753959691296
Trust level: Full
Application Virtual Path: /
Application Path: <private>
Machine name: <private>
Process information:
Process ID: 6112
Process name: w3wp.exe
Account name: IIS APPPOOL\<private>
Exception information:
Exception type: TimeoutException
Exception message: The HTTP request to '<private>/EndPoint.svc' has exceeded the allotted timeout of 00:01:00. The time allotted to this operation may have been a portion of a longer timeout.
at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason)
at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
The operation has timed out
at System.Net.HttpWebRequest.GetResponse()
at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
Request information:
Request URL: http://<private>/
Request path: /
User host address: <private>
User:
Is authenticated: False
Authentication Type:
Thread account name: IIS APPPOOL\<private>
Thread information:
Thread ID: 110
Thread account name: IIS APPPOOL\<private>
Is impersonating: False
Stack trace: at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason)
at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
Custom event details:
Our site is down and I don't know what to do here. Any ideas are most welcome.
Try increasing the SendTimeout and ReceiveTimeout properties in service/client configurations.
WCF Service , how to increase the timeout?