... |
... |
@@ -6,84
+6,86 @@ |
6 |
6 |
|
7 |
7 |
The beans are registered under the following names: |
8 |
8 |
|
|
9 |
+; Frontend-Server |
|
10 |
+: de.xima.fc:type=FSMonitor,qualifier=<contextName> |
|
11 |
+; Master-Server |
|
12 |
+: de.xima.fc:type=MSMonitor,qualifier=<contextName> |
9 |
9 |
|
10 |
|
-* {{litem title="{{fserver/~}~}"}}de.xima.fc:type=FSMonitor,qualifier=<contextName> {{/litem}} |
11 |
|
-* {{litem title="{{mserver/~}~}"}} de.xima.fc:type=MSMonitor,qualifier=<contextName> {{/litem}} |
|
14 |
+The context name is the context name of the applications. It is necessary for supporting parallel installations of {{formcycle/}} on a server. By default, the context name is the name of {{formcycle/}}'s WAR file, but it can be changed by modifying the context name parameter //XFC_CONTEXT_NAME// within the //web.xml//. |
12 |
12 |
|
13 |
|
-The context name is the context name of the applications. It is necessary for supporting parallel installations of {{formcycle/}} on a server. By default, the context name is the name of {{formcycle/}}'s WAR file, but it can be changed by [[modifying the context name parameter>>doc:Tomcat Einstellungen]]. |
|
16 |
+When starting the server, the current context name is logged. You may need to modify the [[logging settings>>doc:.UserInterface.Logging]] to see the name. There are different monitoring attributes available for each bean, which are listed below. |
14 |
14 |
|
15 |
|
-When starting the server, the current context name is logged. You may need to modify the [[logging settings>>doc:LogginMenue]] to see the name. There are different monitoring attributes available for each bean, which are listed below. |
16 |
|
- |
17 |
|
-=== {{mserver/}} (MSMonitor) === |
18 |
|
- |
19 |
|
-{{table caption="Overview of the settings for MSMonitor" dataTypeAlpha="0" preSort="0-asc"}} |
|
18 |
+{{table dataTypeAlpha="0" preSort="0-asc" caption="Overview of the settings for MSMonitor (master server)"}} |
20 |
20 |
|=Key|=Description|=Possible options |
21 |
|
-|running|Whether the {{mserver/}} has been started successfully.|true ~| false |
22 |
|
-|db_connected|Whether the {{mserver/}} could establish a connection to the database.| true ~| false |
23 |
|
-|fs_connected|A map of the names of all {{fserver number="plural"/}} and whether they are connected to this {{mserver/}}|<serverName> : true ~| false |
24 |
|
-|fs_active|A map of the names of all {{fserver number="plural"/}} and whether this {{mserver/}} should attempt to establish a connection to that server automatically.|<serverName> : true ~| false |
25 |
|
-|fs_status|A map of the names of all {{fserver number="plural"/}} and the connection status of that server.|<serverName> : CONNECTED ~| NOT_CONNECTED ~| ERROR ~| RECONNECTING ~| DISCONNECTING ~| CONNECTING ~| AUTHENTICATING ~| WAIT_FOR_CONNECTION |
|
20 |
+|running|Whether the {{mserver/}} has been started successfully.|true/false |
|
21 |
+|db_connected|Whether the {{mserver/}} could establish a connection to the database.|true/false |
|
22 |
+|fs_connected|A map of the names of all {{fserver number="plural"/}} and whether they are connected to this master server|__Key:__ <serverName> |
|
23 |
+__Return value:__ true/false |
|
24 |
+|fs_active|A map of the names of all {{fserver number="plural"/}} and whether this master server should attempt to establish a connection to that server automatically.|__Key:__ <serverName> |
|
25 |
+__Return value:__ true/false |
|
26 |
+|fs_status|A map of the names of all {{fserver number="plural"/}} and the connection status of that server.|__Key:__ <serverName> |
|
27 |
+__Return values:__ CONNECTED, NOT_CONNECTED, ERROR, RECONNECTING, DISCONNECTING , CONNECTING, AUTHENTICATING, WAIT_FOR_CONNECTION |
26 |
26 |
|fs_disconnected_count|The number of {{fserver number="plural"/}} not connected to this {{mserver/}}|A non-negative number. |
27 |
27 |
|fs_connected_count|The number of {{fserver number="plural"/}} connected to this {{mserver/}}|A non-negative number. |
|
30 |
+|failed_login_count|For each login name, the login cache contains how many times a user made a failed login attempt with that login name. This is the number of login names in that cache.|A non-negative number. |
|
31 |
+|connect_frontendserver_by_name|Triggers a connection to the frontend server by name.|__Key:__ <serverName>, true/false to trigger reconnect always (no matter if there is a connection) |
|
32 |
+__Return value:__ true/false |
|
33 |
+|connect_frontendserver_by_id|Triggert eine Verbindung zum Frontend-Servers per ID an.|__Key:__ <serverName>, true/false to trigger reconnect always (no matter if there is a connection) |
|
34 |
+__Return value:__ true/false |
28 |
28 |
{{/table}} |
29 |
29 |
|
30 |
|
-=== {{fserver/}} (FSMonitor) === |
31 |
|
- |
32 |
|
-{{table caption="Overview of the settings for FSMonitor" dataTypeAlpha="0" preSort="0-asc"}} |
|
37 |
+{{table dataTypeAlpha="0" preSort="0-asc" caption="Overview of the settings for FSMonitor (frontend server)"}} |
33 |
33 |
|=Key|=Description|=Possible options |
34 |
|
-|running|Whether the {{fserver/}} has been started successfully.|true ~| false |
35 |
|
-|connected|Whether this {{fserver/}} is connected to a {{mserver/}}.|true ~| false |
36 |
|
-|status|The connection status of this {{fserver/}}.|CONNECTED ~| NOT_CONNECTED ~| ERROR ~| RECONNECTING ~| DISCONNECTING ~| CONNECTING ~| AUTHENTICATING ~| WAIT_FOR_CONNECTION |
|
39 |
+|running|Whether the {{fserver/}} has been started successfully.|true, false |
|
40 |
+|connected|Whether this {{fserver/}} is connected to a {{mserver/}}.|true, false |
|
41 |
+|failed_login_count|For each login name, the login cache contains how many times a user made a failed login attempt with that login name. This is the number of login names in that cache.|A non-negative number. |
|
42 |
+|status|The connection status of this {{fserver/}}.|CONNECTED, NOT_CONNECTED, ERROR, RECONNECTING, DISCONNECTING, CONNECTING, AUTHENTICATING, WAIT_FOR_CONNECTION |
|
43 |
+|restart|xxx|None |
|
44 |
+{{/table}} |
37 |
37 |
|
38 |
38 |
== JSON REST API == |
39 |
39 |
|
40 |
|
-The monitoring beans can also be accessed via a JSON REST API. It can be accessed as follows: |
|
48 |
+The JSON interface has been removed since version 6.0.0 in favor of a separate Jolokia installation. The beans used for monitoring are still available. The JSON interface of the monitoring allowed read-only access and could only be called via the application server (localhost/127.0.0.1). If this is wanted, the access would have to be configured within the Jolokia application, more information can be found [[here>>https://jolokia.org/reference/html/security.html#d0e3128||rel="noopener noreferrer" target="_blank"]]. |
41 |
41 |
|
|
50 |
+A possible call, after installation of Jolokia, looks like the following: |
|
51 |
+ |
42 |
42 |
{{info}} |
43 |
|
-http://localhost/formcycle/monitoring/read/de.xima.fc:type=MSMonitor,qualifier=formcycle |
|
53 |
+[[http:~~/~~/localhost/jolokia/read/de.xima.fc:type=MSMonitor,qualifier=formcycle>>http://localhost/jolokia/read/de.xima.fc:type=MSMonitor,qualifier=formcycle]] |
44 |
44 |
{{/info}} |
45 |
45 |
|
46 |
|
-=== JSON response === |
|
56 |
+(% class="wikigeneratedid" id="HJSONresponse" %) |
|
57 |
+JSON response: |
47 |
47 |
|
48 |
48 |
{{code language="JSON"}} |
49 |
49 |
{ |
50 |
|
-"timestamp":1440603508, |
51 |
|
-"status":200, |
52 |
|
-"request":{ |
53 |
|
- "mbean":"de.xima.fc:qualifier=formcycle,type=MSMonitor", |
54 |
|
- "type":"read" |
55 |
|
-}, |
56 |
|
-"value":{ |
57 |
|
- "fs_active":{ |
58 |
|
- "sas":true, |
59 |
|
- "localhost":false, |
60 |
|
- "mko":true |
61 |
|
- }, |
62 |
|
- "fs_connected":{ |
63 |
|
- "sas":false, |
64 |
|
- "localhost":false, |
65 |
|
- "mko":false |
66 |
|
- }, |
67 |
|
- "db_connected":true,"fs_status":{ |
68 |
|
- "sas":"ERROR", |
69 |
|
- "localhost":"NOT_CONNECTED", |
70 |
|
- "mko":"ERROR" |
71 |
|
- }, |
72 |
|
- "fs_disconnected_count":3, |
73 |
|
- "fs_connected_count":0, |
74 |
|
- "running":true |
75 |
|
- } |
|
61 |
+ "request": { |
|
62 |
+ "mbean": "de.xima.fc:qualifier=formcycle,type=MSMonitor", |
|
63 |
+ "type": "read" |
|
64 |
+ }, |
|
65 |
+ "value": { |
|
66 |
+ "running": true, |
|
67 |
+ "failed_login_count": 0, |
|
68 |
+ "fs_active": { |
|
69 |
+ "localhost": true |
|
70 |
+ }, |
|
71 |
+ "db_connected": true, |
|
72 |
+ "fs_connected_count": 1, |
|
73 |
+ "fs_connected": { |
|
74 |
+ "localhost": true |
|
75 |
+ }, |
|
76 |
+ "fs_disconnected_count": 0, |
|
77 |
+ "fs_status": { |
|
78 |
+ "localhost": "CONNECTED" |
|
79 |
+ } |
|
80 |
+ }, |
|
81 |
+ "timestamp": 1579186291, |
|
82 |
+ "status": 200 |
76 |
76 |
} |
77 |
77 |
{{/code}} |
78 |
78 |
|
79 |
|
-=== URL === |
|
86 |
+(% class="wikigeneratedid" %) |
|
87 |
+More information about the integration of the framework [[Jolokia>>url:https://jolokia.org/||rel="__blank"]] and a more detailed documentation can be found [[here>>https://jolokia.org/reference/html/||rel="noopener noreferrer" target="_blank"]]. |
80 |
80 |
|
81 |
|
-The monitoring servlet is available as the sub resource {{code}}monitoring{{/code}} of the application context URL, eg. {{code}}http://localhost/formcycle/{{/code}}. This servlet processes the monitoring bean and provides the monitoring info as JSON. The servlet makes use of the framework [[Jolokia>>url:https://jolokia.org/||rel="__blank"]]. Further servlet options provided by Jolokia are described on their [[documentation pages>url:https://jolokia.org/reference/html/||rel="__blank"]]. |
82 |
|
- |
83 |
|
-{{warning}} |
84 |
|
-The JSON REST API only allow read-access, but no write-access. It is available only for the application server, eg. {{code}}localhost/127.0.0.1{{/code}}. |
85 |
|
-{{/warning}} |
86 |
|
- |
87 |
87 |
== Nagios integration == |
88 |
88 |
|
89 |
89 |
The Nagios monitoring application may be used for reading and showing monitoring info as well by using the JSON REST API described above. This requires the Nagios plugin [[jmx4perl>>url:http://search.cpan.org/~~roland/jmx4perl/||rel="__blank"]] to be installed. A detailed installation instruction can be found on [[their website>>url:https://jolokia.org/tutorial.html||rel="__blank"]]. This allows querying the JSON REST API with the corresponding commands. |
... |
... |
@@ -95,7
+95,7 @@ |
95 |
95 |
{{/info}} |
96 |
96 |
|
97 |
97 |
{{panel title="Command" fullwidth="true" initial="hidden" triggerable="true"}} |
98 |
|
-{{code}} |
|
100 |
+{{code language="none"}} |
99 |
99 |
define command{ |
100 |
100 |
command_name check_jmx4perl |
101 |
101 |
command_line check_jmx4perl --url $ARG1$ --mbean $ARG2$ --attribute $ARG3$ $ARG4$ |
... |
... |
@@ -104,9
+104,9 @@ |
104 |
104 |
{{/panel}} |
105 |
105 |
|
106 |
106 |
{{panel title="Service definitions" fullwidth="true" initial="hidden" triggerable="true"}} |
107 |
|
-Querying the number of {{fserver number="plurar"/}} not connected to this {{mserver/}}. When there are any disconnected servers, a warning will be displayed. When there is more than one disconnected server, Nagios will treat this warning as critical. |
108 |
|
- |
109 |
|
-{{code}} |
|
109 |
+Querying the number of {{fserver number="plurar"/}} not connected to this {{mserver/}}. When there are any disconnected servers, a warning will be displayed. When there is more than one disconnected server, Nagios will treat this warning as critical.<br> |
|
110 |
+<br> |
|
111 |
+{{code language="none"}} |
110 |
110 |
define service{ |
111 |
111 |
use generic-service |
112 |
112 |
host_name localhost |
... |
... |
@@ -117,7
+117,7 @@ |
117 |
117 |
{{/panel}} |
118 |
118 |
|
119 |
119 |
{{panel title="Querying the database connection status of the {{mserver/~}~}" fullwidth="true" initial="hidden" triggerable="true"}} |
120 |
|
-{{code}} |
|
122 |
+{{code language="none"}} |
121 |
121 |
define service{ |
122 |
122 |
use generic-service |
123 |
123 |
host_name localhost |
... |
... |
@@ -128,7
+128,7 @@ |
128 |
128 |
{{/panel}} |
129 |
129 |
|
130 |
130 |
{{panel title="Querying whether the {{fserver/~}~} localhost is connected to the {{mserver/~}~}" fullwidth="true" initial="hidden" triggerable="true"}} |
131 |
|
-{{code}} |
|
133 |
+{{code language="none"}} |
132 |
132 |
define service{ |
133 |
133 |
use generic-service |
134 |
134 |
host_name localhost |
... |
... |
@@ -139,7
+139,7 @@ |
139 |
139 |
{{/panel}} |
140 |
140 |
|
141 |
141 |
{{panel title="Querying the {{fserver/~}~} whether it is connected to a {{mserver/~}~}" fullwidth="true" initial="hidden" triggerable="true"}} |
142 |
|
-{{code}} |
|
144 |
+{{code language="none"}} |
143 |
143 |
define service{ |
144 |
144 |
use generic-service |
145 |
145 |
host_name localhost |
... |
... |
@@ -165,7
+165,7 @@ |
165 |
165 |
|
166 |
166 |
When Jolokia is run parallel to {{formcycle/}}, the connection to the {{fserver/}} //localhost// must be modified as follows: |
167 |
167 |
|
168 |
|
-{{code}} |
|
170 |
+{{code language="none"}} |
169 |
169 |
define service{ |
170 |
170 |
use generic-service |
171 |
171 |
host_name fc-test |
... |
... |
@@ -173,4
+173,3 @@ |
173 |
173 |
check_command check_jmx4perl!http://fc-test/jolokia/!de.xima.fc:type=MSMonitor,qualifier=formcycle!fs_connected!--path=localhost --string --critical 'false' |
174 |
174 |
} |
175 |
175 |
{{/code}} |
176 |
|
-{{/table}} |