copiar una coleccion en mongodb de un servidor a otro

junio 5, 2014 at 11:33 am

Un comando para copiar de un servidor a otro una collection de mongobd por que se puede hacer con robomongo pero luego se pone sus moños y no quiere funcionar hasta que se cierra y se vuelve a abrir (fuck robomongo), no es para tanto pero si es tedioso aqui el comando de la muerte que es cloneCollection.


db.cloneCollection('192.168.1.1:27017','usuarios',{});

Desmenuzando el comando es simple lo primero que sabemos es que recibe 3 parametros el primero es el from(de donde) que nos indica de donde vamos a obtener la coleccion, el segundo es la coleccion y el tercero es el query.

A una cosa mas la base de datos tiene que tener el mismo nombre para que se pueda copiar por lo menos eso me paso a mi por que en el segundo parametro le enviaba por ejemplo “basededatos.usuarios” y no me funciono.

bueno y ya que estamos tambien les dejo el comando para copiar una base de datos completa a otro server y le pueden cambiar el nombre ahi les va:


db.copyDatabase('fromdb','todb','fromhost','user','password');
//ejemplo
db.copyDatabase('sistemadeventa','sistemadeventa_backup','misistemin.com','superusuario','superpassowrd');

si todos los datos son tipo String.

Saludos.

Fuentes de datos confiables:

http://docs.mongodb.org/manual/reference/method/db.copyDatabase/

http://docs.mongodb.org/manual/reference/command/cloneCollection/

Ruul una regla para medir pixeles

mayo 22, 2014 at 11:05 am

Hoy me toca la casualidad que necesitaba medir unos pixeles de un header de una plantilla y bueno como no soy un genio en mediciones de los pixeles me puse a buscar una regla en las extensiones de google chrome y para mi suerte encontre una aplicación que se llama Ruul que basicamente es una regla que nos permite hacer esos desmadres.

Ya es todo lo que os traigo por hoy, descargan la aplicación hacen sus pruebitas pendejas y ya pueden morir en paz y armonia con la naturaleza de sus computadora.

Esas pequeñas utilidades que nos parecen tontas a veces nos pueden ser de gran ayuda en un futuro no muy lejano, no desprecies tus ideas mas pendejas.

Ah es cierto puedes instalar ruul desde el siguiente enlace RUUL

 

¿sacar un plan o no?

mayo 21, 2014 at 6:08 pm

Hace unos dias unas chicas me preguntaron que si les convenía sacar un plan telefonico, a lo que yo les respondi que depende para que utilicen el celular ya que cada quien lo usa como fue educado en su infancia o como lo requieran sus necesidades y así me puse a preguntarles que si hacían muchas llamadas o para que utilizaban realmente el celular y el por que estaban considerando el sacar un plan.

Me dieron sus respuestas y yo les di mi bendición y les dije que se cambiaran de compañia y la mejor opción para ellas era pagar 200 pesos al mes con los de telefonica ya que con ese te consigues las redes sociales gratis como lo son facebook, twitter y servicio como whatsapp, que basicamente el facebook es el que he visto que le consume mas datos a las personas y esta muy bien que por 200 pesos lo tengas ilimitado, aunque me han dicho que el internet esta medio lento.

Aparte es prepago ósea que primero le metes 200 pesos y luego ya puedes utilizarlo es como tener plan sin tener plan, y no te amarras a un plan forzoso de minimo 18 meses en los que terminas pagando una buena cantidad de dineros.

Asi que si quires cambiarte o sacar un plan tu mejor opcion es la del prepago de 200 pesos con redes sociales y 200 minutos incluidos que si te alivianan durante un mes y si se te acaba le vuelves a meter dinero saldo a tu cel pero lo que deposites ya te lo cobraran como normal de otra forma si no sabes que hacer con tu equipo entonces vende tu celular aqui.

Eso es todo amigos si quieren saber mas de planes y equipos entonces vayan con los expertos vendedores que te violan por que contrates sus planes pero igual a veces te regalan equipos.

Instalar pdfkit rails en ubuntu 12.04

diciembre 18, 2013 at 3:14 pm

A veces se requiere crear pdfs apartir de los htmls según lo que paso aca, para que nuestras vistas en rails al acceder a ellas via .pdf algo asi como ventas/1.pdf por dar un ejemplo, solo con el hecho de instalar el pdfkit te ayuda con esa tarea, pero ojo como pdfkit utiliza wkhtmltopdf entonces primero se tiene que instalar esta libreria pero esta libreria a su vez requiere xserver entonces se tiene que instalar las librerias del cliente xserver bueno vamonos por pasos.

Primero instalar el xserver para esto ejecutamos esta linea

apt-get install xvfb

Ya con esto no saldra este error: wkhtmltopdf: cannot connect to X server

bueno ahora sigue instalar el wkhtmltopdf para esto hay 3 opciones segun la pagina oficial pero utilizaremos la de ubuntu por que somos cholos entonces ejecutamos

apt-get install wkhtmltopdf

Despues creamos un archivo que se llame wkhtmltopdf.sh en la carpeta /usr/bin/ que contenga el siguiente comando ‘xvfb-run –server-args=”-screen 0, 1024x768x24″ /usr/bin/wkhtmltopdf $*’

vi /usr/bin/wkhtmltopdf.sh
xvfb-run --server-args="-screen 0, 1024x768x24" /usr/bin/wkhtmltopdf $*

Bueno las opciones son para que sea la pantalla 0, de resolucion 1025×768 de 24 pulgadas.

Guardamos y le asignamos permisos de ejecucion y creamos un link simbolico a /usr/local/bin/wkhtmltopdf:

chmod a+x /usr/bin/wkhtmltopdf.sh
ln -s /usr/bin/wkhtmltopdf.sh /usr/local/bin/wkhtmltopdf

y hacemos una prueba para ver si wkhtml quedo bien configurado

wkhtmltopdf http://www.google.com output.pdf

Ahora solo falta configurar el pdfkit esto esta mas facil, agregas al gemfile

gem 'pdfkit'

y ejecutas:

 bundle install

En nuestro archivo application.rb agregamos estas lineas

require 'pdfkit'
config.middleware.use PDFKit::Middleware

Tambien para modificar las opciones de pdfkit crea un archivo pdfkit.rb en la carpeta initializers de rails:

# config/initializers/pdfkit.rb
PDFKit.configure do |config|
  config.wkhtmltopdf = '/path/to/wkhtmltopdf'
  config.default_options = {
    :page_size => 'Legal',
    :print_media_type => true
  }
  # Use only if your external hostname is unavailable on the server.
  config.root_url = "http://localhost" 
end

Listo reinicias el servidor y ya debería de funcionar.

Documentacion de pdfkit
Script de wkhtmltopdf

Cualquier duda en los comentarios.

Renderizar un archivo en Rails 3.2

diciembre 3, 2013 at 5:15 pm

Un dia tube la necesidad de mostrar un archivo en vez de una vista en rails por que se generan y se guardan para no usar procesamiento del servidor solo ocupaba leer ese archivo y mostrarlo tal cual sin ningún tipo de modificación, mi archivo era xml yo tenia una vista xml, por si no se generaba el archivo mostraba la vista y ahi si usaba poder de procesamiento del servidor pero bueno para renderizar un archivo se tiene que hacer lo siguiente:

  1. Que el archivo exista
  2. Comprobar que tipo de archivo es
  3. Renderizar

Mas o menos son los pasos que tenemos que seguir bueno aqui va el codigo:

 

    file_path = "#{Rails.root}/public/{@post.title}.xml"
     xml_file = File.new(file_path, 'r') if File::exists?( file_path )
 
respond_to do |format|
    if !xml_file
        format.xml 
      else
        extname = File.extname(xml_file)[1..-1]
       mime_type = Mime::Type.lookup_by_extension(extname)
      content_type = mime_type.to_s unless mime_type.nil?
       format.xml {render :file => file_path, :content_type => content_type}
 
        end
end

Bueno explicado por lineas seria algo asi

     file_path = "#{Rails.root}/public/{@post.title}.xml"
     xml_file = File.new(file_path, 'r') if File::exists?( file_path )

Tenemos la ruta del archivo y luego preguntamos si existe si existe la variable xml_file tendra el contenido del archivo de lo contrario false.

if !xml_file
        format.xml

Si no existe el archivo tendremos que procesar los datos en la vista.

        extname = File.extname(xml_file)[1..-1]

Extramos la extencion del archivo en este caso es un xml.

            mime_type = Mime::Type.lookup_by_extension(extname)
          content_type = mime_type.to_s unless mime_type.nil?

obtenemos el tipo de de mime es osea algo asi para saber si es xml y el content_type para ver si el contenido es efectivamente un xml.

format.xml {render :file => file_path, :content_type => content_type}

Al final renderizamos el archivo enviando la ruta(file_path) y el tipo de contenido(content_type)

Listo

Instala el whatsapp en tu pc o mac

noviembre 15, 2013 at 1:19 pm

logo-whatsapp

El otro dia instale el whatapp en mi mac pero no sirve de mucho por que no puedes usar el mismo numero en diferentes dispositivos con el whatsapp esto te puede servir con un telefono al que no puedas instalarle el whatsapp como un lamparin  o uno que no sea smartphone, pues esta es una buena opcion.

Pasos:

  1.  Instalar bluestacks de la pagina oficial
  2. Abrir el bluestatcks
  3. Una vez en el bluestacks abrir tuiter o facebook con tu cuenta
  4. Desde tu maquina publicar en tu cuenta de tuiter o facebook la direccion de descarga de whatsapp http://www.whatsapp.com/android/ de android
  5. Abrir la url en el tuiter o facebook en bluestacks y descargar el apk
  6. Instalar Whatsapp y listo