jueves, febrero 13, 2014

Comando Linux mail y cron

se necesita enviar un mail a traves del cron
1. debemos probar de que funcione el comando mail (generalmente instalado por defecto en centos)

# mail -s "Hola Mundo" mi@email.com 

2. Saltara a una linea nueva, escribimos por ejemplo: "test de mi servidor" y con ctrl+ D, enviamos el mensaje 3. Deberia llegarte un correo a tu cuenta mi@email.com, en caso de que no te llegara revisa el servicio de sendmail

[root@ip-10-196-225-4 ec2-user]# /etc/init.d/sendmail status
[root@ip-10-196-225-4 ec2-user]# /etc/init.d/sendmail restart
Shutting down sm-client:                                   [FAILED]
Shutting down sendmail:                                    [FAILED]
Package sendmail-cf is required to update configuration.   [WARNING]
Starting sendmail:                                         [  OK  ]
Starting sm-client:                                        [  OK  ]
 
4. Si deseamos que se envie el contenido y el titulo de frente entonces enviamos por consola
# echo "test de mi servidor" | mail -s "Hola Mundo" mi@email.com 

5. si todo ha ido bien, hasta aca, ya sabemos como usar el mail por consola, ahora pasaremos a programar el cron para que se envie un correo automaticamente a jhon.navarro@punto.pe y con copia a mi@email.com y root con el contenido de un script de php cada 5 minutos
Antes considerar que:
-s subject (Cabecera del mail)
-c email-address (Copia or CC)
-b email-address (Mark a blind carbon copy to this “email-address”, or BCC)

# crontab -e 
*/5 * * * * /usr/bin/php /apps/www.orbis.pe/public/index.php actualizar |mail -s "[PROD] actualizar" mi@email.com -c jhon.navarro@orbis.pe -b root 
# crontab -l
*/5 * * * * /usr/bin/php /apps/www.orbis.pe/public/index.php actualizar |mail -s "[PROD] actualizar" mi@email.com -c jhon.navarro@orbis.pe -b root 
*/5 * * * * /usr/bin/php /apps/mediacionweb/mediacionweb.orbis.pe/public/index.php actualizar transacciones | mail -s "[PROD] actualizar transacciones" -c luis.merco@x.pe -b karina.sa@x.pe root
6. Espero te halla ayudado

Linux no registra logs

Si alguna vez te paso que por ejemplo que tu servicio de cron, no genera logs en
/var/log/cron
y empiezas a revisar en tus logs de mensajes y nada /var/log/messages, revisas todos tus logs ssh, mail, etc y nada, ninguno registra.
Esto se debe pincipalmente a que el servicio rsyslog se encuentra parado (el servicio rsyslog es el servicio del sistema que se encarga de realizar el sistema de log)


[root@ip-10-196-225-4 ec2-user]# /etc/init.d/rsyslog restart
Shutting down system logger:                               [FAILED]
Starting system logger:                                    [  OK  ]

Ahora revisa el origen del problema, generalmente la caida ocurre por falta de espacio en disco y si revisas tus logs, ya empezaron a registrar.
Espero haberte ayudado

lunes, febrero 03, 2014

Backupear Colecciones mongo

Llevaremos la coleccion mod_alerta_alerta (en el server 1:site_3mdb) a otra bd mongo (server 2: site_3bpremdb), con el nombre mod_original_alerta_alerta tomar en cuenta la siguiente bibliografia:

Database - Conjunto de - Colecciones (tablas)
Coleccion - Conjunto de - Documentos (Rows)
Documentos - Conjunto de - Fields (Campos)
entonces:
EN SERVER 1 * Backupear la coleccion mod_alerta_alerta

[root@ip-10-180-217-106 ~]# mongodump -h 10.180.217.106  --collection  mod_alerta_alerta --db  site_3mdb -o /tmp/mod_alerta_alerta.dump
connected to: 10.180.217.106
Mon Feb  3 16:26:58.153 DATABASE: site_3mdb    to     /tmp/mod_alerta_alerta.dump/site_3mdb
Mon Feb  3 16:26:58.159         site_3mdb.mod_alerta_alerta to /tmp/mod_alerta_alerta.dump/site_3mdb/mod_alerta_alerta.bson
Mon Feb  3 16:26:58.217                  2301 objects
Mon Feb  3 16:26:58.221         Metadata for site_3mdb.mod_alerta_alerta to /tmp/mod_alerta_alerta.dump/site_3mdb/mod_alerta_alerta.metadata.json

EN SERVER 2 * Importar la coleccion mod_alerta_alerta

[root@ip-10-138-58-82 ~]# mongorestore -h 10.138.58.82 --db=site_3bpremdb --collection=mod_original_alerta_alerta mod_alerta_alerta.dump/site_3mdb/mod_alerta_alerta.bson
connected to: 10.138.58.82
Mon Feb  3 17:02:41.706 /home/ec2-user/mod_alerta_alerta.dump/site_3mdb/mod_alerta_alerta.bson
Mon Feb  3 17:02:41.706         going into namespace [site_3bpremdb.mod_original_alerta_alerta]
2301 objects found
Mon Feb  3 17:02:42.055         Creating index: { key: { _id: 1 }, ns: "site_3bpremdb.mod_original_alerta_alerta", name: "_id_" }
* Eliminar Coleccion

> use site_3bpremdb
switched to db site_3bpremdb

> db.mod_alerta_alerta.drop()
true

> show collections
log
mod_alerta_alerta_historial
mod_aviso_aviso_inmueble
mod_aviso_aviso_inmueble_detalle_historial
mod_aviso_aviso_inmueble_historial
mod_aviso_aviso_proyecto_historial
mod_aviso_inmueble_historial
mod_aviso_perfil_inmueble_historial
mod_distrito_estadistica
mod_estadistica
mod_estadistica_general
mod_impreso_aviso_impreso_historial
mod_original_alerta_alerta
mod_pago_transaccion_historial
mod_pago_transaccion_notificacion
mod_paquete_paquete_agente_detalle_historial
mod_paquete_paquete_proyecto_detalle_historial
mod_peruid_usuario_peruid_historial
mod_usuario_perfil_agente_detalle_totales_historial
mod_usuario_perfil_agente_totales_historial
system.indexes