Skip to content

Prometheus + Grafana

Siempre cuando tienes que montar un sistema de monitorización te preguntas ¿cuál? hay varios, nagios/centreon, zabbix, cacti, etc. pero hoy he terminado en una conferencia de debian y un tal tincho ha hecho una charla sobre un nuevo sistema de monitorización llamado Prometheus.
Como en La Mar de Bits tenemos pendiente montar uno y aún no nos hemos decidido por ninguno, pues antes de tirarnos a cualquiera de los otros, vamos a probar éste :)

Prometheus es el sistema de monitorización y tiene varias partes, grafana es un entorno externo que permite conectar con prometheus y mediante querys de prometheus, puedes crear un dashboard para ver los servicios que monitoriza prometheus a simple vista.
Así que vamos a ver la instalación de ambos y su integración.

Primero de todo, las distintas partes de prometheus son:
node_exporter -> equivalente al nrpe de nagios (cliente)
pushgateway -> procesos cortos que procesan datos (server)
alertmanager -> para enviar alertas (server)
blackbox_exporter -> monitor para hacer check de servicios, por ejemplo, para verificar que páginas http funcionen (server)
prometheus -> core (server)

Tincho es el empaquetador de prometheus para debian, pero de momento sólo está en testing, así que en nuestra debian estable vamos a añadir los sources de testing y bajar la prioridad del repositorio testing

Prometheus en el Server

# vi /etc/apt/sources.list
deb http://ftp.debian.org/debian jessie main contrib
deb http://ftp.debian.org/debian jessie-updates main contrib
deb http://security.debian.org jessie/updates main contrib
deb http://ftp.debian.org/debian stretch main contrib

# vi /etc/apt/preferences
Package: *
Pin: release a=testing
Pin-Priority: 10

Actualizamos el repositorio e instalamos prometheus

# apt-get update
# apt-get install prometheus prometheus-node-exporter prometheus-pushgateway

Ahora verificamos que esté el servicio levantado

# netstat -lanp |grep 'LISTEN '
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      11372/rpcbind   
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      11752/sshd      
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1221/master     
tcp6       0      0 :::9090                 :::*                    LISTEN      18642/prometheus
tcp6       0      0 :::9091                 :::*                    LISTEN      15346/prometheus-pu
tcp6       0      0 :::9100                 :::*                    LISTEN      15281/prometheus-no
tcp6       0      0 :::111                  :::*                    LISTEN      11372/rpcbind   
tcp6       0      0 :::22                   :::*                    LISTEN      11752/sshd        
tcp6       0      0 ::1:25                  :::*                    LISTEN      1221/master 

Ahora podemos acceder por http al puerto 9090 al prometheus.
La primera cosa que me ha llamado la atención es que no se ha instalado el servicio a través de apache, prometheus lleva su propio cliente http. La otra es que no pide autenticación, así que es recomendable configurar prometheus para sólo escucha local si luego ponemos grafana.

De momento pero vamos a cambiar la url de prometheus que por defecto es prometheus y no puedo acceder a todo. Para ello editamos el fichero /etc/default/prometheus y añadimos un parámetro en ARGS. ARGS son los parámetros que se pasan al ejecutar prometheus. En el mismo fichero de configuración tenemos más información de los parámetros que le podemos pasar.

# vi /etc/default/prometheus
ARGS="-web.external-url=http://10.139.39.91:9090"

Y reiniciamos prometheus

# /etc/init.d/prometheus restart

Ahora ya tenemos prometheus UP’N’RUNNING! :) vamos a instalar grafana y lo vincularemos a prometheus.

# apt-get install grafana

Se levanta el puerto 3000

# netstat -lanp |grep 'LISTEN ' |grep grafana
tcp6       0      0 :::3000                 :::*                    LISTEN      17816/grafana

Accedemos por http y ponemos el usuario y password que por defecto es usuario admin y password admin

http://10.139.39.91:3000

Y vamos a datasources y añadimos el nuevo source.

Captura-124

Vamos a indicarle 127.0.0.1 y acces proxy, que quiere decir que la puerta va a ser el propio grafana.

Luego para mostrar las graficas, creamos un nuevo dashboard, iconito verde de la izquierda, add row, graph.
En query, por ejemplo: node_network_receive_bytes
Y luego arriba le damos a guardar :P

Para indicarle a prometheus que escuche sólo en local la línea de ARGS sería similar a esto:

# vi /etc/default/prometheus
ARGS="-web.external-url=http://10.139.39.91:9090 -web.listen-address=127.0.0.1:9090"
# vi /etc/default/prometheus-node-exporter
ARGS='-collector.diskstats.ignored-devices="^(ram|loop|fd)\d+$ -web.listen-address=127.0.0.1:9100'
# vi /etc/default/prometheus-pushgateway
ARGS='-web.listen-address=127.0.0.1:9091'

Prometheus en el Cliente
Ahora vamos a añadir un nuevo cliente, vamos a hacer lo mismo de añadir los repositorios de testing

# vi /etc/apt/sources.list
deb http://ftp.debian.org/debian jessie main contrib
deb http://ftp.debian.org/debian jessie-updates main contrib
deb http://security.debian.org jessie/updates main contrib
deb http://ftp.debian.org/debian stretch main contrib

# vi /etc/apt/preferences
Package: *
Pin: release a=testing
Pin-Priority: 10

E instalamod el node-exporter

# apt-get install prometheus-node-exporter

Y ahora volvemos al server y modificamos el fichero de configuración de prometheus (pero no el de default, si no el que está en /etc/prometheus)

root@prometheus:/etc/prometheus# vi prometheus.yml
    target_groups:
      - targets:
        - 'localhost:9100'
        - '10.139.39.81:9100'

Es formato yaml, así que no uses el tabulador, sólo espacios hehe

Reiniciamos prometheus y en unos segundos prometheus empezará a recolectar datos del nuevo server cliente añadido.

Y ésto es todo :P ahora a toquetear y añadir mas cosillas… una de las cosas que me interesa es lo del percentil del tráfico de red, se puede hacer, pero tengo que mirar como!

Muchas gracias tincho! :)

Instalar servidor mumble en Debian

Mumble es uno de estos servicios no muy usados pero realmente muy interesantes. Se trata de un programa cliente-servidor para realizar conferencias sólo con Audio.

Una de las cosas que realmente me gusta es que no es necesario un gran ancho de banda para funcionar, además de que es un canal de comunicación relativamente seguro, por lo menos, al tratarse de un servicio en el que puedes instalar TU el servidor donde TU quieras, da un poco mas de seguridad.

Así que vamos al lío… partimos como casi siempre de una Debian recién instalada, en este caso la versión 8.4.

Vamos a instalar 2 partes, el mumble-server en si y luego el mumble-django, una interfaz web para administrar el mumble-server a partir de dbus.

Mumble-Server

Pues será tan sencillo como instalarlo desde los repositorios :)

# apt-get install mumble-server

A continuación modificamos algunos parámetros de su fichero de configuración

# vi /etc/mumble-server.ini
welcometext="< br />Welcome to La Mar de Bits < b>Mumble< /b> Server.< br />Navigate your stay!< br />"
serverpassword=xxxx

serverpassword: es para que pida un password al acceder al servidor, está publicado a internet, pero sólo pueden conectarse las personas que tienen el password

Ahora simplemente reiniciamos el servicio y ya nos podemos conectar con nuestro cliente mumble

# /etc/init.d/mumble-server restart

Si ya hemos usado alguna vez mumble, hemos visto que hay canales, así que la pregunta es ¿cómo creo canales? pues simple, con el interfaz de cliente y accediendo con el usuario “SuperUser”, el cual tendremos que definir el password con el siguiente comando desde el server:

murmurd -supw MumbleServerPassword

Y con esto ya tenemos el servidor mumble disponible en la red :)

Ahora vamos a la siguiente parte, la del interfaz de administración de mumble, mumble-django.

Mumble-Django
Lo primero será instalar algunas dependencias

# apt-get install apache2 libapache2-mod-wsgi
# a2enmod wsgi
# /etc/init.d/apache2 restart

Y ahora ya nos ponemos con mumble-django

# apt-get install mumble-django

Ahora vamos a activar el dbus y definir algunos parámetros en murmur (como se llama en realidad el servidor mumble)

# vi /etc/mumble-server.ini
ice="tcp -h 127.0.0.1 -p 6502"
icesecretwrite=XXXX
dbus=system

Reiniciamos el servicio y nos aseguramos que ice esté escuchando en local

# /etc/init.d/mumble-server restart
# netstat -lanp |grep 'LISTEN ' |grep murmurd
tcp        0      0 127.0.0.1:6502          0.0.0.0:*               LISTEN      6249/murmurd    
tcp6       0      0 :::64738                :::*                    LISTEN      6249/murmurd 

Ahora modificamos el fichero /etc/mumble-django/settings.py (lo que no esté, simplemente lo añadimos)

# vi /etc/mumble-django/settings.py
DEBUG = False
ALLOWED_HOSTS = ['*']
ADMINS = (
     ('admin-mumble-django', 'mail@domain.org'),
)

Nota: recomiendo que el allowed_hosts sean ips específicas separadas por comas.

Ahora vamos a ejecutar el configurador de mumble-django y seguimos las instrucciones (Más información):

# mumble-django-configure

¡Listo!

Debian nos deja un fichero de configuración en /etc/apache2/conf-enabled/ llamado mumble-django.conf, nos lo vamos a cargar para que no interfiera con la configuración.

# rm /etc/apache2/conf-enabled/mumble-django.conf

Y vamos a crear nuestro propio fichero de configuración

# vi /etc/apache2/sites-enabled/mumble.conf
< VirtualHost *:80>
        ServerName              mumble.lamardebits.org
        ServerAlias             *.mumble.lamardebits.org

        Alias                   /mumble-django/static/mumble/           /usr/share/pyshared-data/python-django-mumble/static/mumble/
        Alias                   /mumble-django/static/admin/            /usr/share/pyshared/django/contrib/admin/static/admin/
        Alias                   /mumble-django/static/                  /usr/share/mumble-django/htdocs/

        WSGIScriptAlias         /mumble-django          /usr/share/mumble-django/mumble-django.wsgi
        WSGIDaemonProcess       mumble-django threads=25
        WSGIProcessGroup        mumble-django
        WSGIScriptReloading     Off

        < Directory /usr/share/mumble-django/htdocs>
                < IfModule mod_headers.c>
                        < FilesMatch ".(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
                                Header set Cache-Control "max-age=86400, must-revalidate"
                        < /FilesMatch>
                < /IfModule>
        < /Directory>

        < Location /mumble-django>
                FileETag None
                < IfModule mod_deflate.c>
                        AddOutputFilterByType DEFLATE text/html text/plain text/css text/javascript image/png image/jpeg image/gif
                        < IfModule mod_headers.c>
                                # properly handle requests coming from behind proxies
                                Header unset ETag
                                Header append Vary User-Agent
                        < /IfModule>
                < /IfModule>
        < /Location>
< /VirtualHost>

Habilitamos el site y reniciamos apache (y el mumble-server por si las moscas)

# a2ensite mumble
# /etc/init.d/apache2 restart
# /etc/init.d/mumble-server restart

Y ahora podremos ir al interfaz web de mumble en la siguiente dirección: http://mumble.lamardebits.org/mumble-django

Más información

Subvenció per a desplegament experimental en el marc del projecte europeu RIFE

La Fundació Privada per a la Xarxa Oberta, LLiure i Neutral, guifi.net (la Fundació) participa com a soci al projecte de recerca del programa Horitzó 2020 de la Comissió Europea "architectuRe for an Internet For Everybody" (RIFE) [1], el qual té per objectiu dissenyar, desenvolupar i validar mitjançant experiments en entorns reals noves arquitectures d'Internet que ajudin a fer-la més inclusiva.

A grans trets, el projecte té el calendari següent:
  2015 - disseny i arquitectura de la solució
  2016 - desenvolupament del software; desplegament i posada en funcionament de l'entorn de proves
  2017 - avaluació mitjançant experiments a l'entorn de proves i difusió de resultats

La Fundació és responsable desplegament i l'operació de l'entorn a on s'executaran els experiments del projecte. És en aquest context, que fa una crida a tots els interessats en acollir l'entorn de proves a proposar la seva candidatura d'acord amb les instruccions següents.

OBJECTE

Desplegar i mantenir en funcionament fins a març de 2018 una xarxa en mode infraestructura (el mode habitual guifi.net).

La xarxa haurà de tenir:

  • Supernodes:
    • hi ha d'haver un total de 5 o 6 supernodes
    • hi ha d'haver supernodes a més d'un salt de distància amb diversos camins possibles entre ells (no val una estrella)
    • hi ha d'haver diversos camins entre supernodes (no val una línia)
    • algun supernode no ha de tenir punts d'accés (no admet nodes client)
    • cada supernode ha de poder allotjar un parell o tres de dispositius de recerca
  • Nodes client:
    • hi ha d'haver com a mínim 20 nodes client, però millor si n'hi ha més
    • estaran repartits entre diversos supernodes
  • Accés a internet
    • hi ha d'haver com a mínim un accés a Internet, però millor si n'hi ha més d'un

La xarxa ha de ser similar a la del diagrama: 

                              R              R               R - Inet

                               |               |               |

                  5xCli····SN-----------SN-----------SN···10xCli

                                                           /

                                    SN------------SN···15xCli

                                     |                 |

                            Inet - R                R

             Legenda:   SN - supernode         Cli - node client         Inet - connexió a internet       R - equip de recerca

guifi.net en “Decentralize: Freedom Out of the Box”

"A group of artists, entrepreneurs, and activists will discuss how we can retain ownership of our data, share information and resources and become independent from the big corporations that want to run the internet."

El Festival Sònar ha invitado a guifi.net a participar en su evento "Decentralize: Freedom Out of the Box" que consiste en presentar proyectos que promueven otra forma de visualizar y diseñar la relación entre tecnología y ciudadanía.

Las iniciativas que se presentan mostrarán tendencias en las negociaciones con el poder, las instituciones y los monopolios tecnológicos: FreedomBox, guifi.net, Goteo, Saga.

 

Click para toda la info

Tunelizar subredes a través de ssh

Quien me conozca sabe que soy la reina de los túneles ssh. Esto va de maravilla cuando quieres saltar host a host, pero si tienes que acceder a muchas ips empieza a ser un rollo el tener que abrir varios túneles y/o irlos cerrando y abriendo.

Así que he pensado… ¿habrá la posibilidad de enrutar un rango de red a través de ssh? ¡pues si! y se llama sshutle

# pip install sshuttle

Ahora lo que quiero hacer es enrutar todo el tráfico de 10.69.0.0/16 por éste tunel ssh:

# sshuttle -r usuario@servidor 10.69.0.0/16 -vv

Et voilà! :D

SAX2016

18/06/2016 10:00
19/06/2016 17:30
Europa/Andorra
18/06/2016 10:00
19/06/2016 17:30
Europa/Andorra

Cartell SAX2016Els dies 18 i 19 de juny de 2016 se celebra, a Barcelona, la trobada anual de guifi·net:

SAX2016
https://sax2016.guifi.net

El SAX (Salut, Amor i Xarxa) té per objectiu reunir tota la comunitat que participa a guifi·net, debatre sobre el projecte (tant a nivell tècnic com social i organitzatiu) i obrir-lo a la participació de tota la ciutadania.

Tothom és benvingut a participar al SAX2016! El SAX és una activitat oberta a tothom, tant per a la comunitat de guifi·net com per a persones interessades en la tecnologia, les xarxes i Internet, els projectes d'economia col·laborativa i de comuns, etc.

Al SAX2016 hi haurà diverses activitats: xerrades, tallers, presentacions, debats, etc., on hi participaran membres de la comunitat de guifi·net (voluntaris, professionals, usuaris, etc.) així com la Fundació guifi·net. Les activitats versen sobre guifi·net i la Xarxa de Comuns, i estan pensades per a un ventall d'assistents amb interessos i coneixements tecnològics heterogenis.

El SAX2016 se celebrarà al Parc Tecnològic de Nou Barris. Visiteu https://sax2016.guifi.net per a meś detalls.

[ [ [ EN CONSTRUCCIÓ ] ] ]

Estem començant a treballar en el programa del SAX d'enguany.

Anirem actualitzant aquesta pàgina i https://sax2016.guifi.net quan hi hagi novetats.

Per suggeriments, dubtes, etc. adreceu-vos per correu electrònic a roger.baig_GARROFA_guifi.net]

 

CRIDA A LA PARTICIPACIÓ

L'organització del SAX és totalment horitzontal i oberta a tothom. Com que hi ha gran quantitat de tasques a fer de ben segur que tothom hi trobarà la seva oportunitat per contribuir a fer-lo millor. La coordinació i els anuncis es farà a través de la llista de coordinació de guifi.net (utilitzeu aquest enllaç per apuntar-vos-hi https://llistes.guifi.net/sympa/info/guifi-coord)

A continuació hi ha una llista de tasques a realitzar amb el nom del responsable en cas que ja hi hagi algun voluntari que se n'hagi fet. La tasca dels responsables és assegurar que la tasca en qüestió es durà a terme correctament, per tant, que una tasca tingui responsable no vol dir pas que ja no s'hi pugui contribuir, sinó que simplement ja hi ha algú que s'ha fet responsable de coordinar-la. Les contribucions sempre són benvingudes. Si voleu contribuir en una tasca que ja té responsable poseu-vos en contacte amb aquesta persona. Si no sabeu com contactar amb algun responsable, no sabeu amb qui heu de contactar, o voleu proposar una tasca nova, adreceu-vos per correu electrònic a roger.baig_GARROFA_guifi.net.

Tasques

  • Coordinació general (Roger Baig roger.baig_GARROFA_guifi.net)
  • Programa d'activitats (Roger Baig)
  • Dinamització web https://sax2016.guifi.net (Roger Pueyo roger.pueyo_GARROFA_guifi.net)
  • Inscripció (Miquel Martos, ???)
  • Streaming (Pedro i Eloi)
  • Accés a internet i WiFi (Víctor)
  • Participació remota (Agustí Moll, ???)
  • Allotjament (Josan, ???)
  • Samarretes (Isaac Rachine, Aureli Gomez)
  • Premsa (Lluís Dalmau, ???)
  • Ràdio de Comuns (Mexmafia)

 

PROGRAMA D'ACTIVITATS

dijous 16 de juny

ACTIVITAT PARAL.LELA: dins del programa Sònar +D (cal entrada) "FreedomBox: Freedom out of the Box" http://sonarplusd.com/activity/decentralize-freedom-box/

 

divendres 17 de juny

TALLER: "Jornada sobre xarxes comunitàries: eficiència en col·laboració entre administracions públiques, la ciutadania i les empreses." Jornada prèvia al SAX. Més informació a: https://guifi.net/ca/node/87204

 

dissabte 18 de juny

 

[ADVERTIMENT: la programació per aquest dia és provisional; per fer una proposta d'activitat adreceu-vos per correu electrònic a roger.baig_GARROFA_guifi.net. Podeu sol·licitar tants blocs de mitja hora com necessiteu. Si voleu menys temps indiqueu-nos-ho]

11:30 – 12:00 Pausa cafè

12:00 - 12:15 Benvinguda

12:15 - 13:00 Fundació bloc 1

13:00 - 14:00 Fundació bloc 2

14:00 - 15:30 Dinar

15:30 - 16:00 (provisional) Taller - Configuració de VLANS, túnels i NATs, Sergi Garcia

16:00 - 16:30 (provisional) Presentació i discussió - Resultados de un anàlisi del uso del servicio de proxies, Manos Dimogerontakis

16:30 - 17:00 (provisional) Presentació - Novetats a Cloudy, Agustí Moll

17:00 - 17:30 (provisional) Presentació - GLIR: què és?, què hi fem?, com s'hi participa?, Miquel Martos

17:30 - 18:00 Pausa cafè

17:30 - 18:00 (provisional) Activitat paralel·la - Reunió membres del GLIR, Miquel Martos

18:00 - 18:30 DISPONIBLE

18:30 - 19:00 DISPONIBLE

19:00 - 19:30 DISPONIBLE

20:00 - 24:00 Sopar i sobretaula

 

diumenge 19 de juny

[ADVERTIMENT: la programació per aquest dia és provisional; per fer una proposta d'activitat adreceu-vos per correu electrònic a roger.baig_GARROFA_guifi.net.]

10:15 – 10:30 Benvinguda

10:30 – 11:00 DISPONIBLE

11:00 – 11:30 DISPONIBLE

11:30 – 12:00 Pausa cafè

12:00 - 12:30 (provisional) Diseño y debate - RADIO DE COMUNS: ¿podemos hacer una radio abierta, libre y neutral?, Efraín Foglia

12:30 - 13:00 Xerrades llampec (exposa el que vulguis en 5 transparències i 5 minuts)

13:00 - 14:00 SAX - Reunió comunitària

14:00 - 17:00 Dinar i sobretaula

 

 

 

RADIO DE COMUNS

Durant la trobada del SAX2016 s'activarà una emissora de ràdio en format de Comuns la qual s'obrirà a entitats i col·lectius perquè hi aportin continguts propis i se la facin seva. Podeu demanar més informació o aportar els arxius amb aquest contingut o les adreces des d'on es poden descarregar al correu fundacio_GARROFA_guifi.net

 

RETRANSMISSIÓ EN DIRECTE (STREAMING) I PARTICIPACIÓ REMOTA

Retransmissió: http://guifitv.guifi.net/

Participació: TODO (irc?)

 

INSCRIPCIÓ, COST I PAGAMENT

PROVISIONAL Com a primera opció treballem per fer una tarifa única igual per a tothom independentment de la quantitat d'àpats i de si es fa pernoctació. que sigui ben econòmica. És per això que estem buscant patrocinadors.

 

ALLOTJAMENT

TODO

 

PATROCINADORS

Ajuntament de Barcelona

AdjuntMida
cartell_sax_2016.svg123.83 KB

Net Futures 2016

20/04/2016 09:00
21/04/2016 13:00
Europe/Brussels
20/04/2016 09:00
21/04/2016 13:00
Europe/Brussels

Net Futures 2016Net Futures 2016: Driving Growth in the #DigitalSingleMarket

Guifi.net és present al Net Futures 2016: Driving Growth in the #DigitalSingleMarket, de la mà de la Universitat Politècnica de Catalunya (UPC) en el marc del projecte de recerca NetCommons.

L'objectiu de Net Futures és maximitzar la competitivitat de la indústria tecnològica europea. La conferència atreu més de 1000 assistents, formant una comunitat interconnectada que involucra empreses, organitzacions i persones en els camps de:

  • Recerca i innovació
  • Anàlisi de mercats i Recerca experimental
  • Desenvolupament de negoci, emprenedoria i estratègia d'empresa
  • Política y legislació

Des de Net Futures es creu fermament que unint aquestes comunitats la innovació arribarà més fàcilment i efectiva al mercat.

Ver el progreso de un dd

¿Cuantas veces estás copiando una imagen o directamente un disco duro y no tienes la idea de cuanto tiempo va a durar la tarea? el dd es el “en la informática sabes cuando empiezan las cosas pero no cuando terminan” en toda regla.
Con esto, vas a seguir igual, pero al menos puedes hacer algunos cálculos para hacerte una idea de cuando va a terminar :P

Vamos a usar pv, pipe viewer, que es una herramienta para monitorizar el progreso de los datos a través de un pipe. Lo podemos insertar tal cual como un pipe o entre dos procesos para obtener un indicador visual de la velocidad con la que están pasando los datos y así realizar una estimación para que termine la tarea.

Primero lo instalamos

# apt-get install pv

Y ahora por ejemplo, queremos clonar un disco a otro disco

# dd if=/dev/sda | pv | dd of=/dev/sdb

La salida sería algo similar a esto

1,74MB 0:00:09 [ 198kB/s] [      <=>                               ]

También lo podríamos usar en la salida de un comando

root@carboni:/home/laura/isos# pv kali-linux-2016.1-amd64.iso |md5sum
12MiB 0:00:03 [ 217MiB/s] [=============================>                ] 25% ETA 0:00:08

Fuente: askubuntu

Gracias Josep Vergés por el reto ;)

Exportar consulta SQL a un fichero csv

select callrates.id, users.usr, callrates.extension, callrates.destination, callrates.calldate, callrates.duration, callrates.description, callrates.stablishment, callrates.rate INTO OUTFILE '/tmp/export_201603.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\' LINES TERMINATED BY 'n' FROM callrates, users WHERE users.id=callrates.user and year(calldate) = 2016 AND month(calldate) = 03;

No hay opción de exportar la cabecera.

James Vincent McMorrow – Wicked Game (versión)

James Vincent McMorrow – Wicked Game

“Wicked Game”
(originally by Chris Isaak)

The world was on fire, and no one could save me but you
It’s strange what desire will make foolish people do
I never dreamed that I’d need somebody like you
I never dreamed that I’d know somebody like you

And I wanna fall in love
And I wanna fall in love with you
with you

What a wicked game you play, you make me feel this way
What a wicked thing to do, make me dream of you
What a wicked thing to say, never felt that way
What a wicked thing to do, make me dream of you

And I wanna fall in love
And I wanna fall in love with you
with you

My world was on fire, and no one could save me but you
It’s strange what desire will make foolish people do
I never dreamed that I’d need somebody like you
I never dreamed that I’d miss somebody like you

And I wanna fall in love
And I wanna fall in love
And I wanna fall in love with you
with you

Nobody loves no one