Monitorización
Monitorización de Máquina Virtual y Métricas del Sistema
JMX
Activar acceso remoto mediante JMX autenticado.
La monitorización de las instancias de Athento ECM sobre Tomcat deben estar monitorizadas en estado de DESarrollo y debemos tener en cuenta en ocasiones de cambios de contexto la monitorización sobre entornos de PREproducción. A continuación se describe el procedimiento de activación de la monitorización mediante JMX.
Para activar el acceso remoto mediante JMX autenticado es necesario habilitar las siguientes líneas del archivo nuxeo.conf:
## Enable jconsole
JAVA_OPTS=$JAVA_OPTS -Dcom.sun.management.jmxremote=true
## Enable JMX
JAVA_OPTS=$JAVA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1089 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file=/path/of/password/jmxremote.password -Dcom.sun.management.jmxremote.access.file=/path/of/access/jmxremote.accessEs posible que sea necesario añadir estas 2 líneas si la máquina tiene varias tarjetas de red, para que el servidor JMX se auto-identifique:
MY_IP=`ifconfig | grep "Bcast" | awk -F':' '{ print $2; }' | awk -F ' ' '{ print $1; }'`
JAVA_OPTS=$JAVA_OPTS -Djava.rmi.server.hostname=$MY_IP
El archivo jmxremote.password debe tener sólo acceso de lectura para el usuario nuxeo.
Ejemplo: -rw------- 1 nuxeo nuxeo 2,9K feb 16 12:18 ../jmxremote.password
Para hacer monitorizar la instancia mediante JMX debemos usar la herramienta de Java jvisualvm. Para arrancarlo, basta con ejecutar el comando jvisualvm en consola (por defecto, la variable de entorno JAVA_HOME se encuentra correctamente definida).
Para visualizar las métricas establecidas por Nuxeo podemos instalar el addon para la visualización de MBeans en la herramienta jvisualvm. Podemos visualizar las métricas establecidas en el siguiente enlace: https://doc.nuxeo.com/display/ADMINDOC/Metrics+and+Monitoring
Monitorización de Estabilidad del Servicio
Para monitorizar que el servicio está levantado y corriendo, podemos utilizar la siguiente URL:
Disponibilidad del Servicio
http://localhost/nuxeo/runningstatusEl sistema nos devolverá un OK si el servicio está levantado.
Para monitorizar que durante el arranque no se hayan producido problemas:
Monitorización de la carga durante el reinicio
http://localhost/nuxeo/runningstatus?info=summary&key=XXXXXXXXLa clave (key) podemos encontrarla en el fichero nuxeoconf. Es el valor que aparece en server.status.key
El sistema debería devolvernos una respuesta como la siquiente si no ha experimentado problemas:
Monitorización de Funcionamiento del Sistema Mediante Endpoints
Podemos comprobar que operaciones como la creación de documentos, eliminación o consulta estén funcionando adecuadamente.
Para monitorizar la consulta de un espacio:
Con este endpoint (GET) vamos a controlar el acceso y obtención del espacio de trabajo de un determinado usuario. Indicará que el acceso VCS (Visible Content Store) y lectura de documento es correcta.
Consulta de espacio
http://localhost/nuxeo/api/v1/path/{path}Ejemplo:
Ejemplo consulta de espacio de usuario
https://my.athento.com/nuxeo/api/v1/path/default-domain/UserWorkspaces/user1
Para monitorizar la creación de documentos:
Con este endpoint validaremos el correcto funcionamiento de creación de documentos en el sistema. Para ello debemos seleccionar el identificador del documento del contenedor padre donde queremos crear el documento colocar el tipo documental y, por ejemplo, el metadato título.
Creación de documento
http://localhost/nuxeo/restAPI/default/{parentDocId}/createDocument?docType=File&dublincore:title={title}
El contenedor padre en este caso será el espacio de usuario servicehibu.
Creación de documento
http://my.athento.com/nuxeo/restAPI/default/4987801c-8d15-4c39-95af-e8096e3ce5ed/createDocument?docType=File&dublincore:title=TestComo resultado de la correcta creación, el sistema nos devolverá:
Respuesta de creación
<document>
<repository>default<repository/>
<docRef>4457807c-8d15-4c76-44af-e5676e444ce5ed<docRef>
<docTitle>Test</docTitle>
<docPath>/default-domain/Userworkspaces/user1/Test</docPath>
</document>
Para monitorizar el borrado de documentos:
Con este endpoint validaremos la eliminación correcta de un documento creado en el sistema.
Eliminación de documento
http://localhost/nuxeo/restAPI/default/{docId}/deleteDocumentEjemplo de endpoint para el borrado de un documento:
Ejemplo eliminación de documento
https://my.athento.com/nuxeo/restAPI/default/4457807c-8d15-4c76-44af-e5676e444ce5ed/deleteDocument
Si el borrado se ha llevado a cabo de manera satisfactoria, el sistema nos devolverá una respuesta como la siguiente:
Respuesta borrado
<document>
<repository>default<repository/>
<docRef>Document 4457807c-8d15-4c76-44af-e5676e444ce5ed deleted <docRef>
</document>