Welcome to Pandora FMS Community!

Find answers, ask questions, and connect with our community around the world.

Welcome to Pandora FMS Community Forums Soporte de la comunidad Mayor precisión decimal en modulo generic_data

  • Mayor precisión decimal en modulo generic_data

    Posted by rsantaella on March 20, 2012 at 23:55

    Saludos,

    Estoy probando la versión opensource de Pandora y realice un plugin de servidor que recoge algunos datos de un sitio en internet pero necesito que los datos de los modulos generados tengan una precisión de 4 decimales. Modifique el campo datos de la tabla tagente_datos (double 18, 4)) pero aun asi en la consola solo muestra un decimal.

    Tengo datos por ejemplo con el valor 0,0024 y siempre se muestra 0.

    Seria interesante que en la configuración del modulo existiera un campo para definir la presición decimal de los datos. Entre tanto podrian, por favor, indicarme cual seria una solución rápida a este problema.

    Muchas gracias por su ayuda y felicitaciones por su trabajo.

    RS.

    aitor replied 12 years, 10 months ago 3 Members · 5 Replies
  • 5 Replies
  • alumbreras

    Member
    March 21, 2012 at 12:23
    0 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    hola

    una cosa que puedes hacer y es rapida es usar el campo postprocess dentro del modulo. Ese campo es un multiplicador/divisor del valor que se te retorna en el modulo. Si pones un 10000 ya puedes consultar los campos decimales que te interesen.

    Si tienes alguna duda nos avisas

    gracias

  • rsantaella

    Member
    March 22, 2012 at 21:43
    0 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    Hola,

    Gracias por su respuesta.

    Veran los valores que estoy monitoreando cambia de una manera muy leve. Por Ejemplo una valor podria ser 0,00244 y un proximo valor podria ser 0,00360. En casos como estos siempre voy a ver un 0 en la consola.

    Por razones de interpretación de los datos a primera vista no me conviene multiplicar por 10000 puesto que veria cosas como 24,4 ó 36.

    Alguna otra sugerencia?

    Saludos.

  • aitor

    Member
    March 23, 2012 at 14:32
    7 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    Postprocess multiplica el valor devuelto por lo que el valor que tu defines, si quieres dividir por 100, pues en postprocess pon 0,01 que viene a ser lo mismo.

  • alumbreras

    Member
    March 23, 2012 at 16:38
    0 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    hola aitor,

    él lo que necesita es multiplicar ya que le interesan los decimales pequeños.

    Yo creo que esa es la unica manera rapida de hacerlo. Lo único que hay que tener en cuenta es la interpretacion de los datos, pero eso se deja indicado en que unidades esta dentro de la descripcion o dentro del nombre del modulo y no tiene que haber ningun problema.

    Otra cosa seria modificar php y cambiar base de datos, pero eso estas a la expectativa de que no hagas ninguna actualizacion en el futuro

    nos vemos

  • aitor

    Member
    March 23, 2012 at 17:12
    7 Karma points
    Community rank: tentacle-noob-1 Tentacle noob
    Like it
    Up
    0
    Down
    Drop it
    ::

    Si el dato devuelto es 0 y el valor real es 0,02, lo que tiene que hacer es dividir por 100, para que el valor que aparece en pandora sea 0,02.

    Postprocess solo multiplica, por lo tanto multiplica por  1 / 100 o 0,01.  1/10 = 0,01
    y lograra que el valor devuelto sea con decimales como el quiere, es este caso 2 decimales.
    si quiere con 3 decimales pues postprocess debe ser 0,001 y asi …