Changes for page Wonder JavaMonitor and wotaskd
Last modified by Pascal Robert on 2023/08/10 22:21
From version 144.1
edited by Pascal Robert
on 2010/11/25 18:23
on 2010/11/25 18:23
Change comment:
There is no comment for this version
To version 136.1
edited by David Avendasora
on 2010/11/29 19:35
on 2010/11/29 19:35
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. probert1 +XWiki.avendasora - Content
-
... ... @@ -1,10 +1,35 @@ 1 +{{toc}}{{/toc}} 2 + 1 1 === Introduction === 2 2 3 -wotaskd and JavaMonitor were open sourced when WebObjects 5.4was released in 2007.In 2008 and 2009, the source was modified and included in Project Wonder.This is thelistofadditionsthatwere addedto theWonder versions ofhetools.5 +WebObject's wotaskd and JavaMonitor deployment tools were open sourced in WebObjects 5.4. The source was then quickly modified and included in Project Wonder. Substantial improvements in both functionality and look-and-feel have been made over the years since their release as open source. These improved versions of **wotaskd.woa** and **JavaMonitor.woa** are available as full Wonder applications. 4 4 7 +[[image:WonderJavaMonitor.png||border="1"]] 8 + 9 +=== Where to get them === 10 + 11 +You can either download them pre-built from [[Wonder's Hudson build server>>http://webobjects.mdimension.com/hudson/job/Wonder54/lastSuccessfulBuild/artifact/dist/]] or build them from the source code. 12 + 13 +To build them from the source, simply run the following Command from the Wonder directory at the root of the Wonder source code directory: 14 + 15 +{{code}} 16 +ant frameworks deployment.tools -Dwonder.patch=54 -Ddeployment.standalone=true 17 +{{/code}} 18 + 19 +{{info title="What this command does:"}} 20 + 21 +* *ant*: calls Ant 22 +* *frameworks*: tells Ant to build the "frameworks" target 23 +* *deployment.tools* tells Ant to build the "deployment.tools" target 24 +* *\-Ddeployment.standalone=true*: argument will embed the required Wonder and WebObjects frameworks in the wotaskd.woa 25 + 26 + 27 + 28 +{{/info}} 29 + 5 5 === Statistics === 6 6 7 -If you call http: ~/~/monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/wa/statistics, the answer send you back statistics, in JSON format, about instances, per application. Sample :32 +If you call [[http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/wa/statistics]], the answer send you back statistics, in JSON format, about instances, per application. Sample : 8 8 9 9 {{code}} 10 10 ... ... @@ -47,7 +47,7 @@ 47 47 48 48 If JavaMonitor is configured with a password, and I hope you do, pass //pw=monitorpassword// as a argument to the query : 49 49 50 -http: ~/~/monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/wa/statistics?pw=monitorpassword75 +[[http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/wa/statistics?pw=monitorpassword]] 51 51 52 52 === Direct Actions to many tasks === 53 53 ... ... @@ -59,28 +59,21 @@ 59 59 60 60 For example, if you want to get details about all instances and applications, you call : 61 61 62 -http: ~/~/hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=all87 +[[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=all]] 63 63 64 64 To get details about the //AjaxExample// application : 65 65 66 -http: ~/~/hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=app&name=AjaxExample91 +[[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=app&name=AjaxExample]] 67 67 68 68 And for a specific instance : 69 69 70 -http: ~/~/hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=ins&name=AjaxExample-195 +[[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=ins&name=AjaxExample-1]] 71 71 72 72 The response for the direct actions will either send a JSON array or YES/NO. For example, the query //info// for all instances will return : 73 73 74 74 {{code}} 75 75 76 -[{"name": "AjaxExample", "id": "1", "host": "leopards.macti.lan", "port": "2001", "state": "ALIVE", "deaths": "0", "refusingNewSessions": false, "scheduled": false, 77 - "transactions": "88", "activeSessions": "0", "averageIdlePeriod": "2.078", "avgTransactionTime": "0.197"}, 78 -{"name": "AjaxExample", "id": "2", "host": "leopards.macti.lan", "port": "2002", "state": "ALIVE", "deaths": "0", "refusingNewSessions": false, "scheduled": false, 79 -"transactions": "0", "activeSessions": "0", "averageIdlePeriod": "0.0", "avgTransactionTime": "0.0"}, 80 -{"name": "AjaxExample2", "id": "1", "host": "leopards.macti.lan", "port": "2003", "state": "ALIVE", "deaths": "0", "refusingNewSessions": false, "scheduled": false, 81 -"transactions": "0", "activeSessions": "0", "averageIdlePeriod": "0.0", "avgTransactionTime": "0.0"}, 82 -{"name": "AjaxExample2", "id": "2", "host": "leopards.macti.lan", "port": "2004", "state": "ALIVE", "deaths": "0", "refusingNewSessions": false, "scheduled": false, 83 -"transactions": "1", "activeSessions": "0", "averageIdlePeriod": "325.443", "avgTransactionTime": "0.0"}] 101 +[Hudson Build Server for Wonder|http://webobjects.mdimension.com/hudson/job/Wonder54/lastSuccessfulBuild/artifact/dist/] 84 84 85 85 {{/code}} 86 86 ... ... @@ -93,7 +93,7 @@ 93 93 ///clearDeaths// : clear the number of deaths (same action as clicking the "Clear deaths" in JavaMonitor) 94 94 ///turnScheduledOn// : turn scheduling on for an application or instance. Call ///turnScheduledOff// to do the opposite. 95 95 ///turnRefuseNewSessionsOn// : turn "Refuse new sessions" on, call //turnRefuseNewSessionsOff// to do the opposite. 96 -///turnAutoRecoverOn// : guess what? It activate "Auto recover" !And guess again? ///turnAutoRecoverOff// do the opposite!114 +///turnAutoRecoverOn// : guess what? It activate "Auto recover" And guess again? ///turnAutoRecoverOff// do the opposite 97 97 ///forceQuit// : force quit an application, might be useful to call it from a monitoring system. 98 98 ///stop// : stop an application/instance the normal way. 99 99 ///start// : start an application/instance the normal way. ... ... @@ -100,7 +100,7 @@ 100 100 101 101 === Automatic archive of SiteConfig.xml === 102 102 103 -On every change you do to the configuration, a backup of SiteConfig.xml will be done in, by default, /Library/WebObjects/Configuration. 121 +On every change you do to the configuration, a backup of SiteConfig.xml will be done in, by default, /Library/WebObjects/Configuration. 104 104 105 105 === Bounce feature === 106 106 ... ... @@ -114,7 +114,7 @@ 114 114 115 115 === REST routes === 116 116 117 -On September 28th 2010, REST routes were added in JavaMonitor. Those routes + the direct actions explained in this document allow you to control almost everything remotely (make sure that your JavaMonitor installation is secure !). As the direct actions, append //?pw=XXXX// to the URLs if JavaMonitor is password protected.135 +On September 28th 2010, REST routes were added in JavaMonitor. Those routes + the direct actions explained in this document allow you to control almost everything remotely (make sure that your JavaMonitor installation is secure). As the direct actions, append //?pw=XXXX// to the URLs if JavaMonitor is password protected. 118 118 119 119 Examples of REST calls : 120 120 ... ... @@ -126,7 +126,7 @@ 126 126 127 127 {{/code}} 128 128 129 -Adding a new application : 147 +Adding a new application : 130 130 131 131 {{code}} 132 132 ... ... @@ -165,19 +165,3 @@ 165 165 curl -X POST -d "{id: 'otherserver.com',type: 'MHost', osType: 'MACOSX',address: '192.168.20.5', name: 'otherserver.com'}" http://127.0.0.1:56789/apps/WebObjects/JavaMonitor.woa/ra/mHosts.json 166 166 167 167 {{/code}} 168 - 169 -=== Misc === 170 - 171 -wotaskd and JavaMonitor are now full Wonder applications, and needs Ajax.framework, ERExtensions.framework, ERJars.framework, JavaWOExtensions.framework and JavaMonitor.framework to work correctly. If you get wotaskd.woa and JavaMonitor.woa from the //Wonder-latest-Applications-54// archive, those frameworks are NOT embedded inside wotaskd.woa and JavaMonitor.woa, so either build them from source and embed the frameworks or copy the frameworks into the //appserver// user home (on OS X 10.5, it's in ///var/empty//). 172 - 173 -If you build everything from Wonder source, you can run : 174 - 175 -{{code}} 176 -ant deployment.tools -Dwonder.patch=54 -Ddeployment.standalone=true 177 -{{/code}} 178 - 179 -Please note that you have to build the Wonder before calling //ant deployment.tools//, if you get classpath errors when building the deployment tools, first run: 180 - 181 -{{code}} 182 -ant frameworks 183 -{{/code}}