Changes for page Wonder JavaMonitor and wotaskd
Last modified by Pascal Robert on 2023/08/10 22:21
From version 82.1
edited by David Avendasora
on 2010/11/30 00:42
on 2010/11/30 00:42
Change comment:
There is no comment for this version
To version 89.1
edited by ted_archibald
on 2010/11/29 22:14
on 2010/11/29 22:14
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. avendasora1 +XWiki.ted_archibald - Content
-
... ... @@ -30,15 +30,8 @@ 30 30 31 31 {{/info}} 32 32 33 -=== BugFixesto Apple'sVersions ===33 +=== Major Improvements over Apple's versions === 34 34 35 -==== JavaMonitor ==== 36 - 37 -* Fixes an issue with the Application Delete page 38 -* Selection in Application Detail page is now Ajax and is maintained 39 - 40 -=== Improvements to Apple's versions === 41 - 42 42 ==== Automatic archive of SiteConfig.xml ==== 43 43 44 44 On every change you make to an application's configuration, a backup of SiteConfig.xml will be created in, by default, /Library/WebObjects/Configuration. ... ... @@ -112,87 +112,49 @@ 112 112 113 113 List of available direct actions : 114 114 115 -* {{{*}info{*}}} : Returns details (number of deaths, state, etc.), in JavaScript Object Notation (JSON) as specified 116 -##info?##{{{}{*}type=all{*}}} 117 -##info?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 118 -##info?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 108 +* {{{*}info{*}}} : returns the details (number of deaths, state, etc.; see example above), in JavaScript Object Notation (JSON) 109 +** ##**?type=all{**##} : Returns details about all instances of all applications 110 +** ##**?type=app&name=**{##}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} : Returns details about all instances of a specific application 111 +** ##**?type=ins&name=**{##}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} : Returns details about one specific instance 112 +* {{{*}running{*}}} : Returns {{{*}YES{*}}} or {{{*}NO{*}}} 113 +** ##**?type=all{**##} : Returns {{{*}YES{*}}} if all instances of all applications are running 114 +** ##**?type=app&name=**{##}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} : Returns {{{*}YES{*}}} if all instances of the specified application are running 115 +** ##**?type=ins&name=**{##}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} : Returns {{{*}YES{*}}} if the instance of the specified application is running 116 +* {{{*}stopped{*}}} : return NO if the instance is running, YES if not. 117 +* {{{*}bounce{*}}} : more on it later. 118 +* {{{*}clearDeaths{*}}} : clear the number of deaths (same action as clicking the "Clear deaths" in JavaMonitor) 119 +* {{{*}turnScheduledOn{*}}} : turn scheduling on for an application or instance. Call ///turnScheduledOff// to do the opposite. 120 +* {{{*}turnRefuseNewSessionsOn{*}}} : turn "Refuse new sessions" on, call //turnRefuseNewSessionsOff// to do the opposite. 121 +* {{{*}turnAutoRecoverOn{*}}} : guess what? It activate "Auto recover" And guess again? ///turnAutoRecoverOff// do the opposite 122 +* {{{*}forceQuit{*}}} : force quit an application, might be useful to call it from a monitoring system. 123 +* {{{*}stop{*}}} : stop an application/instance the normal way. 124 +* {{{*}start{*}}} : start an application/instance the normal way. 119 119 120 -* {{{*}running{*}}} : Returns {{{*}YES{*}}} if **all** of the specified are running, ##NO## if not 121 -##running?##{{{}{*}type=all{*}}} 122 -##running?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 123 -##running?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 126 +##?type=all## : returns details about all applications and instances 127 +##?type=app&name=AppName## : returns details about all instances of a specific application 128 +##?type=ins&name=AppName-InstanceNo## : returns details about one specific instance 124 124 125 -* {{{*}stopped{*}}} : Returns {{{*}YES{*}}} if **all** the specified is running, {{{*}NO{*}}} if not. 126 -##stopped?##{{{}{*}type=all{*}}} 127 -##stopped?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 128 -##stopped?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 130 +For example, if you want to get details about all instances and applications, you call : 129 129 130 -* {{{*}bounce{*}}} : Returns {{{*}OK{*}}} after Bouncing (see description above) as specified 131 -##bounce?##{{{}{*}type=all{*}}} 132 -##bounce?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 132 +[[http://monitorhost:port9/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=all]] 133 133 134 -* {{{*}clearDeaths{*}}} : Returns {{{*}OK{*}}} after clearing deaths as specified 135 -##clearDeaths?##{{{}{*}type=all{*}}} 136 -##clearDeaths?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 134 +To get details about the //AjaxExample// application : 137 137 138 -* {{{*}turnScheduledOn{*}}} : Returns {{{*}OK{*}}} after turning on scheduling as specified. Call ///turnScheduledOff// to do the opposite. 139 -##turnScheduledOn?##{{{}{*}type=all{*}}} 140 -##turnScheduledOn?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 141 -##turnScheduledOn?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 136 +[[http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=app&name=AjaxExample]] 142 142 143 -* {{{*}turnRefuseNewSessionsOn{*}}} : Returns {{{*}OK{*}}} after turning on "Refuse new sessions" as specified 144 -##turnRefuseNewSessionsOn?##{{{}{*}type=all{*}}} 145 -##turnRefuseNewSessionsOn?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 146 -##turnRefuseNewSessionsOn?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 138 +And for a specific instance : 147 147 148 -* {{{*}turnRefuseNewSessionsOff{*}}} : Returns {{{*}OK{*}}} after turning off "Refuse new sessions" as specified 149 -##turnRefuseNewSessionsOn?##{{{}{*}type=all{*}}} 150 -##turnRefuseNewSessionsOn?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 151 -##turnRefuseNewSessionsOn?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 140 +[[http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=ins&name=AjaxExample-1]] 152 152 153 -* {{{*}turnAutoRecoverOn{*}}} : Returns {{{*}OK{*}}} after turning on "Auto Recover" as specified 154 -##turnAutoRecoverOn?##{{{}{*}type=all{*}}} 155 -##turnAutoRecoverOn?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 156 -##turnAutoRecoverOn?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 157 - 158 -* {{{*}turnAutoRecoverOff{*}}} : Returns {{{*}OK{*}}} after turning off "Auto Recover" as specified 159 -##turnAutoRecoverOn?##{{{}{*}type=all{*}}} 160 -##turnAutoRecoverOn?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 161 -##turnAutoRecoverOn?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 162 - 163 -* {{{*}forceQuit{*}}} : Returns {{{*}OK{*}}} after force quitting as specified. This could be useful to call from a monitoring system. 164 -##forceQuit?##{{{}{*}type=all{*}}} 165 -##forceQuit?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 166 -##forceQuit?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 167 - 168 -* {{{*}stop{*}}} : Returns {{{*}OK{*}}} after calling "Stop" as specified 169 -##stop?##{{{}{*}type=all{*}}} 170 -##stop?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 171 -##stop?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 172 - 173 -* {{{*}start{*}}} : Returns {{{*}OK{*}}} after calling "Start" as specified 174 -##start?##{{{}{*}type=all{*}}} 175 -##start?##{{{}{*}type=app&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}} 176 -##start?##{{{}{*}type=ins&name=*{}}}{{color value="maroon"}}{{{}{*}AppName{*}{}}}{{/color}}{{{}*\-*{}}}{{color value="maroon"}}{{{}{*}InstanceNumber{*}{}}}{{/color}} 177 - 178 -To get details about all instances of all applications: 179 -##[[http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=all]]## 180 - 181 -To get details about the **AjaxExample** application: 182 -##[[http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=app&name=AjaxExample]]## 183 - 184 -To get details about instance **1** of the **AjaxExample** application: 185 -##[[http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=ins&name=AjaxExample-1]]## 186 - 187 187 ==== Remote Control via REST Routes ==== 188 188 189 - IfthecontrolofferedbytheDirectActionsisn'tenough,JavaMonitorallowsadditional control via [[REST>>WONDER:ERRestFramework]] calls.Betweenthetwo methods (DirectActions,REST)youhavealmostfullremote-controlof JavaMonitor.Just make sure that your JavaMonitor installation is secureJustlike withDirectActions,you need toappend##?pw=XXXX##to the URLs ifyourJavaMonitor is password protected.144 +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. 190 190 191 191 Examples of REST calls : 192 192 193 193 {{code title="Adding a New Host"}} 194 194 195 -curl -X POST -d "{id: 'otherserver.com',type: 'MHost', osType: 'MACOSX',address: '192.168.20.5', name: 'otherserver.com'}" http://monitorhost:port/ apps/WebObjects/JavaMonitor.woa/ra/mHosts.json150 +curl -X POST -d "{id: 'otherserver.com',type: 'MHost', osType: 'MACOSX',address: '192.168.20.5', name: 'otherserver.com'}" http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/ra/mHosts.json 196 196 197 197 {{/code}} 198 198