Last modified by Pascal Robert on 2023/08/10 22:21

From version 109.1
edited by David Avendasora
on 2010/11/29 20:37
Change comment: There is no comment for this version
To version 111.1
edited by David Avendasora
on 2010/11/29 20:24
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -49,15 +49,13 @@
49 49  {{warning title="Database Changes"}}
50 50  
51 51  It is uncertain what will happen if the new version of your application makes changes to your database schema (e.g., uses [ERXMigrations|WO:Project WONDER-Frameworks-ERXMigration]). The old instances may raise exceptions before they can gracefully shut down because the schema no longer matches what the old application's EOF expects. *Try it out on a test server first and then update this page so everyone knows\!*
52 +{note}
52 52  
53 -{{/warning}}
54 +h4. Statistics
54 54  
55 -==== Statistics ====
56 +If you call {noformat:nopanel=true}http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/wa/statistics{noformat}, JavaMonitor will send you back statistics, in JSON format, about instances, per application.
56 56  
57 -If you call ##http:~/~/monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/wa/statistics##, JavaMonitor will send you back statistics, in JSON format, about instances, per application.
58 -
59 -{{code title="Statistics Example Results"}}
60 -
58 +{code:title=Statistics Example Results}
61 61  (
62 62   {
63 63   "configuredInstances" = "2";
... ... @@ -92,93 +92,90 @@
92 92   "sumTransactions" = "1";
93 93   }
94 94  )
93 +{code}
95 95  
96 -{{/code}}
95 +If JavaMonitor is configured with a password, and I hope you do, pass _pw=monitorpassword_ as a argument to the query :
97 97  
98 -If JavaMonitor is configured with a password, and I hope you do, pass //pw=monitorpassword// as a argument to the query :
97 +[http://monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/wa/statistics?pw=monitorpassword]
99 99  
100 -##http:~/~/monitorhost:port/cgi-bin/WebObjects/JavaMonitor.woa/wa/statistics?pw=monitorpassword##
99 +h4. Direct Actions to many tasks
101 101  
102 -==== Direct Actions to many tasks ====
101 +You can do most of the standard tasks you do in Monitor by calling direct actions. They are in a different query handler, _/admin_. They follow the same format and use the same query parameters. Those DA can be useful if you need to restart instances or other tasks within ant or other build/deployment systems.
103 103  
104 -You can do most of the standard tasks you do in Monitor by calling direct actions. They are in a different query handler, ///admin//. They follow the same format and use the same query parameters. Those DA can be useful if you need to restart instances or other tasks within ant or other build/deployment systems.
103 +_?type=all_ : return details about all applications and instances
104 +_?type=app&name=AppName_ : return details about all instances of a specific application
105 +_?type=ins&name=AppName-InstanceNo_ : return details about one specific instance
105 105  
106 -//?type=all// : return details about all applications and instances
107 -//?type=app&name=AppName// : return details about all instances of a specific application
108 -//?type=ins&name=AppName-InstanceNo// : return details about one specific instance
109 -
110 110  For example, if you want to get details about all instances and applications, you call :
111 111  
112 -[[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=all]]
109 +[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=all]
113 113  
114 -To get details about the //AjaxExample// application :
111 +To get details about the _AjaxExample_ application :
115 115  
116 -[[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=app&name=AjaxExample]]
113 +[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=app&name=AjaxExample]
117 117  
118 118  And for a specific instance :
119 119  
120 -[[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=ins&name=AjaxExample-1]]
117 +[http://hostname:56789/cgi-bin/WebObjects/JavaMonitor.woa/admin/info?type=ins&name=AjaxExample-1]
121 121  
122 -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 :
119 +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 :
123 123  
124 -{{code}}
125 -
121 +{code}
126 126  [Hudson Build Server for Wonder|http://webobjects.mdimension.com/hudson/job/Wonder54/lastSuccessfulBuild/artifact/dist/]
123 +{code}
127 127  
128 -{{/code}}
129 -
130 130  List of available direct actions :
131 131  
132 -///info// : return details (number of deaths, state, etc.; see above), in JSON, about an instance.
133 -///running// : return YES if the instance is running, NO if not.
134 -///stopped// : return NO if the instance is running, YES if not.
135 -///bounce//: more on it later.
136 -///clearDeaths// : clear the number of deaths (same action as clicking the "Clear deaths" in JavaMonitor)
137 -///turnScheduledOn// : turn scheduling on for an application or instance. Call ///turnScheduledOff// to do the opposite.
138 -///turnRefuseNewSessionsOn// : turn "Refuse new sessions" on, call //turnRefuseNewSessionsOff// to do the opposite.
139 -///turnAutoRecoverOn// : guess what? It activate "Auto recover" And guess again? ///turnAutoRecoverOff// do the opposite
140 -///forceQuit// : force quit an application, might be useful to call it from a monitoring system.
141 -///stop// : stop an application/instance the normal way.
142 -///start// : start an application/instance the normal way.
127 +_/info_ : return details (number of deaths, state, etc.; see above), in JSON, about an instance.
128 +_/running_ : return YES if the instance is running, NO if not.
129 +_/stopped_ : return NO if the instance is running, YES if not.
130 +_/bounce_: more on it later.
131 +_/clearDeaths_ : clear the number of deaths (same action as clicking the "Clear deaths" in JavaMonitor)
132 +_/turnScheduledOn_ : turn scheduling on for an application or instance. Call _/turnScheduledOff_ to do the opposite.
133 +_/turnRefuseNewSessionsOn_ : turn "Refuse new sessions" on, call _turnRefuseNewSessionsOff_ to do the opposite.
134 +_/turnAutoRecoverOn_ : guess what? It activate "Auto recover"\! And guess again? _/turnAutoRecoverOff_ do the opposite\!
135 +_/forceQuit_ : force quit an application, might be useful to call it from a monitoring system.
136 +_/stop_ : stop an application/instance the normal way.
137 +_/start_ : start an application/instance the normal way.
143 143  
144 -==== Remote Control via REST Routes ====
139 +h4. Remote Control via REST Routes
145 145  
146 -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.
141 +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.
147 147  
148 148  Examples of REST calls :
149 149  
150 -{{code title="Adding a New Host"}}
151 -
152 -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
153 -
154 -{{/code}}
155 -
156 -{{code title="Fetching Details for All Applications"}}
157 -
145 +Fetching the details of all applications :
146 +{code}
158 158  curl -X GET http://127.0.0.1:56789/cgi-bin/WebObjects/JavaMonitor.woa/ra/mApplications.json
148 +{code}
159 159  
160 -{{/code}}
150 +Adding a new application :
161 161  
162 -{{code title="Adding a New Application"}}
163 -
152 +{code}
164 164  curl -X POST -d "{id: 'AjaxExample',type: 'MApplication', name: 'AjaxExample',unixOutputPath: '/opt/Local/Library/WebObjects/Logs', unixPath: '/opt/Local/Library/WebObjects/Applications/AjaxExample.woa/AjaxExample'}" http://127.0.0.1:56789/cgi-bin/WebObjects/JavaMonitor.woa/ra/mApplications.json
154 +{code}
165 165  
166 -{{/code}}
156 +Adding a new instance :
167 167  
168 -{{code title="Delete an Application"}}
158 +{code}
159 +curl -X GET http://127.0.0.1:56789/cgi-bin/WebObjects/JavaMonitor.woa/ra/mApplications/AjaxExample/addInstance&host=localhost
160 +{code}
169 169  
162 +Delete an application :
163 +
164 +{code}
170 170  curl -X DELETE http://127.0.0.1:56789/cgi-bin/WebObjects/JavaMonitor.woa/ra/mApplications/AjaxExample.json
166 +{code}
171 171  
172 -{{/code}}
168 +Delete an instance :
173 173  
174 -{{code title="Adding a New Instance"}}
170 +{code}
171 +curl -X GET http://127.0.0.1:56789/cgi-bin/WebObjects/JavaMonitor.woa/ra/mApplications/AjaxExample/deleteInstance?id=1
172 +{code}
175 175  
176 -curl -X GET http://127.0.0.1:56789/cgi-bin/WebObjects/JavaMonitor.woa/ra/mApplications/AjaxExample/addInstance&host=localhost
174 +Adding a new host :
177 177  
178 -{{/code}}
176 +{code}
177 +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
179 179  
180 -{{code title="Delete an Instance :"}}
181 -
182 -curl -X GET http://127.0.0.1:56789/cgi-bin/WebObjects/JavaMonitor.woa/ra/mApplications/AjaxExample/deleteInstance?id=1
183 -
184 -{{/code}}
179 +{{/warning}}