Monitorización del servicio

Es posible verificar que el servicio AthentoECM se encuentra activo y operativo mediante unas simples comprobaciones.

Desde fuera

Se pueden realizar 2 comprobaciones utilizando la herramienta curl:

Comprobar si el servicio está levantado. No es necesario disponer de credenciales.


curl -X GET   https://<instancia>.athento.com/nuxeo/runningstatus

Servicio OK sí:

  • HTTP response.status es 200
  • HTTP response.text es "Ok"


Comprobar los contadores:

curl -X POST \
https://<instancia>.athento.com/nuxeo/site/automation/Counters.GET \
-H 'authorization: Basic QWRtaW5pc3RyYXRvcjpvZTM0aW5iZzRXRw==' \
-H 'cache-control: no-cache' \
-H 'content-type: application/json' \
-H 'postman-token: 995cb6f6-84c9-bb71-85e0-fc80df3150ec' \
-d '{"params":{"counterNames":"org.nuxeo.web.requests"}}
'

La respuesta tendrá esta pinta:

{"org.nuxeo.web.requests":{"values":[[1498745394266,500],[1498745406223,505],[1498745406471,510],[1498745408988,515],[1498745413146,520],[1498745413350,525],[1498745415388,530],[1498745415553,535],[1498745419819,540],[1498745420227,545],[1498745420392,550],[1498745475703,555],[1498745475826,560],[1498745483091,565],[1498745484433,570],[1498745484617,575],[1498745496628,580],[1498745496794,585],[1498745508741,590],[1498745510584,595],[1498745510779,600],[1498745517015,605],[1498745517181,610],[1498745523021,615],[1498745523738,620],[1498745523901,625],[1498745549105,630],[1498745549265,635],[1498745560297,640],[1498745561020,645],[1498745561148,650],[1498745620167,655],[1498745620294,660],[1498745626414,665],[1498745628272,670],[1498745628475,675],[1498745633089,680],[1498745633250,685],[1498745642830,690],[1498745643458,695],[1498745643610,700],[1498745650968,705],[1498745657771,710],[1498745669054,715],[1498745669215,720],[1498745674486,725],[1498745674912,730],[1498745675093,735],[1498745711155,740],[1498745711323,745]],"deltas":[[1498745394266,500],[1498745406223,5],[1498745406471,5],[1498745408988,5],[1498745413146,5],[1498745413350,5],[1498745415388,5],[1498745415553,5],[1498745419819,5],[1498745420227,5],[1498745420392,5],[1498745475703,5],[1498745475826,5],[1498745483091,5],[1498745484433,5],[1498745484617,5],[1498745496628,5],[1498745496794,5],[1498745508741,5],[1498745510584,5],[1498745510779,5],[1498745517015,5],[1498745517181,5],[1498745523021,5],[1498745523738,5],[1498745523901,5],[1498745549105,5],[1498745549265,5],[1498745560297,5],[1498745561020,5],[1498745561148,5],[1498745620167,5],[1498745620294,5],[1498745626414,5],[1498745628272,5],[1498745628475,5],[1498745633089,5],[1498745633250,5],[1498745642830,5],[1498745643458,5],[1498745643610,5],[1498745650968,5],[1498745657771,5],[1498745669054,5],[1498745669215,5],[1498745674486,5],[1498745674912,5],[1498745675093,5],[1498745711155,5],[1498745711323,5]],"speed":[[1498745406223,25],[1498745406471,300],[1498745408988,100],[1498745413146,75],[1498745413350,300],[1498745415388,150],[1498745415553,300],[1498745419819,60],[1498745420227,300],[1498745420392,300],[1498745475703,5.4545455],[1498745475826,300],[1498745483091,42.857143],[1498745484433,300],[1498745484617,300],[1498745496628,25],[1498745496794,300],[1498745508741,25],[1498745510584,150],[1498745510779,300],[1498745517015,42.857143],[1498745517181,300],[1498745523021,50],[1498745523738,300],[1498745523901,300],[1498745549105,12],[1498745549265,300],[1498745560297,27.272728],[1498745561020,300],[1498745561148,300],[1498745620167,5.084746],[1498745620294,300],[1498745626414,50],[1498745628272,150],[1498745628475,300],[1498745633089,60],[1498745633250,300],[1498745642830,30],[1498745643458,300],[1498745643610,300],[1498745650968,37.5],[1498745657771,50],[1498745669054,25],[1498745669215,300],[1498745674486,60],[1498745674912,300],[1498745675093,300],[1498745711155,8.333333],[1498745711323,300]]}}

La respuesta se considera OK si: 

  • HTTP response.status es 200
  • HTTP response.text no contiene las palabras Error ni Exception

Desde el propio servidor

Conviene también comprobar que el servidor se encuentra operativo desde la propia máquina. Esto puede automatizarse mediante crontab o ejecutarlo manualmente para verificar si el servidor está operativo. Para este caso, además de los 2 procedimientos vistos anteriormente, se pueden realizar las siguientes acciones:

Verificar que el proceso se encuentra activo:


 # ps -ef | grep java | grep nuxeo

Debe devolver un único proceso y su padre debe ser init (1)

Verificar que los ficheros de trazas (nuxeo y bases de datos) aumentan su contenido:

 # tail -f /var/log/nuxeo/server.log & tail -f /var/log/postgresql/postgresql-*-nuxeodb.log & tail -f /var/log/mongodb/mongod.log

Verificar que los puertos se encuentran en escucha:

root@server:~# netstat -tlpn | grep java
tcp 0 0 127.0.0.1:8005 0.0.0.0:* LISTEN 19581/java 
tcp 0 0 0.0.0.0:8009 0.0.0.0:* LISTEN 19581/java 
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 19581/java