SaltyCrane Blog — Notes on JavaScript and web development

lla

Install MongoDB (Linux 64-bit)

Working directory is /srv.

$ wget http://downloads.mongodb.org/linux/mongodb-linux-x86_64-1.4.2.tgz
$ tar -zxf mongodb-linux-x86_64-1.4.2.tgz
$ ln -s mongodb-linux-x86_64-1.4.2 mongodb
$ mkdir mongodb_data

Install live-log-analyzer and dependencies

Assumes you have pip and virtualenv. Assumes working directory is /srv.

  • Make a virtualenv and activate it
    $ virtualenv --no-site-packages --distribute llavenv
    New python executable in llavenv/bin/python
    A globally installed setuptools was found (in /usr/lib/python2.5/site-packages)
    Use the --no-site-packages option to use distribute in the virtualenv.
    Installing distribute.................................................................................................................................................................................done.
    
    $ source venv/bin/activate
    
  • Get live-log-analyzer source code
    $ git clone http://github.com/saltycrane/live-log-analyzer.git
    
  • Install live-log-analyzer dependencies
    $ pip install -E llavenv -r live-log-analyzer/pip-requirements.txt
    Downloading/unpacking supervisor (from -r live-log-analyzer/pip-requirements.txt (line 8))
      Downloading supervisor-3.0a8.tar.gz (287Kb): 287Kb downloaded
      Running setup.py egg_info for package supervisor
    Downloading/unpacking simplejson (from -r live-log-analyzer/pip-requirements.txt (line 5))
      Downloading simplejson-2.1.1.tar.gz (131Kb): 131Kb downloaded
      Running setup.py egg_info for package simplejson
    Downloading/unpacking stompservice (from -r live-log-analyzer/pip-requirements.txt (line 4))
      Downloading stompservice-0.1.0.tar.gz
      Running setup.py egg_info for package stompservice
    Downloading/unpacking Twisted==10.0.0 (from -r live-log-analyzer/pip-requirements.txt (line 2))
      Downloading Twisted-10.0.0.tar.bz2 (2.6Mb): 2.6Mb downloaded
      Running setup.py egg_info for package Twisted
    Downloading/unpacking pytz (from -r live-log-analyzer/pip-requirements.txt (line 6))
      Downloading pytz-2010h.zip (527Kb): 527Kb downloaded
      Running setup.py egg_info for package pytz
        warning: no files found matching '*.pot' under directory 'pytz'
        warning: no previously-included files found matching 'test_zdump.py'
    Downloading/unpacking orbited==0.7.10 (from -r live-log-analyzer/pip-requirements.txt (line 3))
      Downloading orbited-0.7.10.tar.gz (168Kb): 168Kb downloaded
      Running setup.py egg_info for package orbited
    Downloading/unpacking nose (from -r live-log-analyzer/pip-requirements.txt (line 7))
      Downloading nose-0.11.3.tar.gz (256Kb): 256Kb downloaded
      Running setup.py egg_info for package nose
        no previously-included directories found matching 'doc/.build'
    Downloading/unpacking pymongo (from -r live-log-analyzer/pip-requirements.txt (line 1))
      Downloading pymongo-1.6.tar.gz (123Kb): 123Kb downloaded
      Running setup.py egg_info for package pymongo
    Downloading/unpacking meld3>=0.6.5 (from supervisor->-r live-log-analyzer/pip-requirements.txt (line 8))
      Downloading meld3-0.6.6.tar.gz
      Running setup.py egg_info for package meld3
    Downloading/unpacking stomper (from stompservice->-r live-log-analyzer/pip-requirements.txt (line 4))
      Downloading stomper-0.2.2.tar.gz
      Running setup.py egg_info for package stomper
    Downloading/unpacking zope.interface (from Twisted==10.0.0->-r live-log-analyzer/pip-requirements.txt (line 2))
      Downloading zope.interface-3.5.3.tar.gz (115Kb): 115Kb downloaded
      Running setup.py egg_info for package zope.interface
    Downloading/unpacking demjson (from orbited==0.7.10->-r live-log-analyzer/pip-requirements.txt (line 3))
      Downloading demjson-1.4.tar.gz (62Kb): 62Kb downloaded
      Running setup.py egg_info for package demjson
    Downloading/unpacking morbid>=0.8.7.1 (from orbited==0.7.10->-r live-log-analyzer/pip-requirements.txt (line 3))
      Downloading morbid-0.8.7.3.tar.gz
      Running setup.py egg_info for package morbid
    Downloading/unpacking uuid>=1.2 (from stomper->stompservice->-r live-log-analyzer/pip-requirements.txt (line 4))
      Downloading uuid-1.30.tar.gz
      Running setup.py egg_info for package uuid
    Requirement already satisfied (use --upgrade to upgrade): distribute in ./llavenv/lib/python2.5/site-packages/distribute-0.6.10-py2.5.egg (from zope.interface->Twisted==10.0.0->-r live-log-analyzer/pip-requirements.txt (line 2))
    Installing collected packages: demjson, meld3, morbid, nose, orbited, pymongo, pytz, simplejson, stomper, stompservice, supervisor, Twisted, uuid, zope.interface
      Running setup.py install for demjson
      Running setup.py install for meld3
      Running setup.py install for morbid
        Installing morbid_restq_test script to /srv/llavenv/bin
        Installing morbid script to /srv/llavenv/bin
      Running setup.py install for nose
        no previously-included directories found matching 'doc/.build'
        Installing nosetests script to /srv/llavenv/bin
        Installing nosetests-2.5 script to /srv/llavenv/bin
      Running setup.py install for orbited
        Installing orbited script to /srv/llavenv/bin
      Running setup.py install for pymongo
        building 'pymongo._cbson' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Ipymongo -I/usr/include/python2.5 -c pymongo/_cbsonmodule.c -o build/temp.linux-x86_64-2.5/pymongo/_cbsonmodule.o
        pymongo/_cbsonmodule.c: In function ‘write_element_to_buffer’:
        pymongo/_cbsonmodule.c:311: warning: implicit declaration of function ‘asprintf’
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Ipymongo -I/usr/include/python2.5 -c pymongo/time_helpers.c -o build/temp.linux-x86_64-2.5/pymongo/time_helpers.o
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Ipymongo -I/usr/include/python2.5 -c pymongo/encoding_helpers.c -o build/temp.linux-x86_64-2.5/pymongo/encoding_helpers.o
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.5/pymongo/_cbsonmodule.o build/temp.linux-x86_64-2.5/pymongo/time_helpers.o build/temp.linux-x86_64-2.5/pymongo/encoding_helpers.o -o build/lib.linux-x86_64-2.5/pymongo/_cbson.so
      Running setup.py install for pytz
        warning: no files found matching '*.pot' under directory 'pytz'
        warning: no previously-included files found matching 'test_zdump.py'
      Running setup.py install for simplejson
        building 'simplejson._speedups' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c simplejson/_speedups.c -o build/temp.linux-x86_64-2.5/simplejson/_speedups.o
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.5/simplejson/_speedups.o -o build/lib.linux-x86_64-2.5/simplejson/_speedups.so
      Running setup.py install for stomper
      Running setup.py install for stompservice
      Running setup.py install for supervisor
        Skipping installation of /srv/llavenv/lib/python2.5/site-packages/supervisor/__init__.py (namespace package)
        Installing /srv/llavenv/lib/python2.5/site-packages/supervisor-3.0a8-py2.5-nspkg.pth
        Installing echo_supervisord_conf script to /srv/llavenv/bin
        Installing pidproxy script to /srv/llavenv/bin
        Installing supervisorctl script to /srv/llavenv/bin
        Installing supervisord script to /srv/llavenv/bin
      Running setup.py install for Twisted
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c conftest.c -o conftest.o
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c conftest.c -o conftest.o
        building 'twisted.runner.portmap' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c twisted/runner/portmap.c -o build/temp.linux-x86_64-2.5/twisted/runner/portmap.o
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.5/twisted/runner/portmap.o -o build/lib.linux-x86_64-2.5/twisted/runner/portmap.so
        building 'twisted.protocols._c_urlarg' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c twisted/protocols/_c_urlarg.c -o build/temp.linux-x86_64-2.5/twisted/protocols/_c_urlarg.o
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.5/twisted/protocols/_c_urlarg.o -o build/lib.linux-x86_64-2.5/twisted/protocols/_c_urlarg.so
        building 'twisted.test.raiser' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c twisted/test/raiser.c -o build/temp.linux-x86_64-2.5/twisted/test/raiser.o
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.5/twisted/test/raiser.o -o build/lib.linux-x86_64-2.5/twisted/test/raiser.so
        building 'twisted.python._epoll' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c twisted/python/_epoll.c -o build/temp.linux-x86_64-2.5/twisted/python/_epoll.o
        twisted/python/_epoll.c: In function ‘__pyx_f_6_epoll_5epoll___dealloc__’:
        twisted/python/_epoll.c:168: warning: label ‘__pyx_L1’ defined but not used
        twisted/python/_epoll.c: In function ‘__pyx_f_6_epoll_5epoll_wait’:
        twisted/python/_epoll.c:432: warning: label ‘__pyx_L7’ defined but not used
        twisted/python/_epoll.c:430: warning: label ‘__pyx_L6’ defined but not used
        twisted/python/_epoll.c: In function ‘__pyx_tp_new_6_epoll_epoll’:
        twisted/python/_epoll.c:508: warning: unused variable ‘p’
        twisted/python/_epoll.c: In function ‘__pyx_tp_dealloc_6_epoll_epoll’:
        twisted/python/_epoll.c:513: warning: unused variable ‘p’
        twisted/python/_epoll.c: In function ‘__pyx_tp_traverse_6_epoll_epoll’:
        twisted/python/_epoll.c:528: warning: unused variable ‘p’
        twisted/python/_epoll.c:527: warning: unused variable ‘e’
        twisted/python/_epoll.c: In function ‘__pyx_tp_clear_6_epoll_epoll’:
        twisted/python/_epoll.c:533: warning: unused variable ‘p’
        twisted/python/_epoll.c: At top level:
        twisted/python/_epoll.c:32: warning: ‘__Pyx_UnpackItem’ declared ‘static’ but never defined
        twisted/python/_epoll.c:33: warning: ‘__Pyx_EndUnpack’ declared ‘static’ but never defined
        twisted/python/_epoll.c:34: warning: ‘__Pyx_PrintItem’ declared ‘static’ but never defined
        twisted/python/_epoll.c:35: warning: ‘__Pyx_PrintNewline’ declared ‘static’ but never defined
        twisted/python/_epoll.c:37: warning: ‘__Pyx_ReRaise’ declared ‘static’ but never defined
        twisted/python/_epoll.c:38: warning: ‘__Pyx_Import’ declared ‘static’ but never defined
        twisted/python/_epoll.c:39: warning: ‘__Pyx_GetExcValue’ declared ‘static’ but never defined   
        twisted/python/_epoll.c:40: warning: ‘__Pyx_ArgTypeTest’ declared ‘static’ but never defined   
        twisted/python/_epoll.c:41: warning: ‘__Pyx_TypeTest’ declared ‘static’ but never defined
        twisted/python/_epoll.c:42: warning: ‘__Pyx_GetStarArgs’ declared ‘static’ but never defined   
        twisted/python/_epoll.c:43: warning: ‘__Pyx_WriteUnraisable’ declared ‘static’ but never defined
        twisted/python/_epoll.c:45: warning: ‘__Pyx_ImportType’ declared ‘static’ but never defined
        twisted/python/_epoll.c:46: warning: ‘__Pyx_SetVtable’ declared ‘static’ but never defined
        twisted/python/_epoll.c:47: warning: ‘__Pyx_GetVtable’ declared ‘static’ but never defined
        twisted/python/_epoll.c:48: warning: ‘__Pyx_CreateClass’ declared ‘static’ but never defined   
        twisted/python/_epoll.c:50: warning: ‘__Pyx_InitStrings’ declared ‘static’ but never defined   
        twisted/python/_epoll.c:51: warning: ‘__Pyx_InitCApi’ declared ‘static’ but never defined
        twisted/python/_epoll.c:52: warning: ‘__Pyx_ImportModuleCApi’ declared ‘static’ but never defined
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.5/twisted/python/_epoll.o -o build/lib.linux-x86_64-2.5/twisted/python/_epoll.so
        building 'twisted.python._initgroups' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c twisted/python/_initgroups.c -o build/temp.linux-x86_64-2.5/twisted/python/_initgroups.o
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.5/twisted/python/_initgroups.o -o build/lib.linux-x86_64-2.5/twisted/python/_initgroups.so
        changing mode of build/scripts-2.5/tap2rpm from 644 to 755
        changing mode of build/scripts-2.5/manhole from 644 to 755
        changing mode of build/scripts-2.5/pyhtmlizer from 644 to 755
        changing mode of build/scripts-2.5/tapconvert from 644 to 755
        changing mode of build/scripts-2.5/mktap from 644 to 755
        changing mode of build/scripts-2.5/trial from 644 to 755
        changing mode of build/scripts-2.5/twistd from 644 to 755
        changing mode of build/scripts-2.5/tap2deb from 644 to 755
        changing mode of build/scripts-2.5/conch from 644 to 755
        changing mode of build/scripts-2.5/cftp from 644 to 755
        changing mode of build/scripts-2.5/ckeygen from 644 to 755
        changing mode of build/scripts-2.5/tkconch from 644 to 755
        changing mode of build/scripts-2.5/lore from 644 to 755
        changing mode of build/scripts-2.5/mailmail from 644 to 755
        changing mode of /srv/llavenv/bin/tap2rpm to 755
        changing mode of /srv/llavenv/bin/conch to 755
        changing mode of /srv/llavenv/bin/cftp to 755
        changing mode of /srv/llavenv/bin/ckeygen to 755
        changing mode of /srv/llavenv/bin/lore to 755
        changing mode of /srv/llavenv/bin/manhole to 755
        changing mode of /srv/llavenv/bin/pyhtmlizer to 755
        changing mode of /srv/llavenv/bin/tapconvert to 755
        changing mode of /srv/llavenv/bin/mktap to 755
        changing mode of /srv/llavenv/bin/mailmail to 755
        changing mode of /srv/llavenv/bin/trial to 755
        changing mode of /srv/llavenv/bin/twistd to 755
        changing mode of /srv/llavenv/bin/tkconch to 755
        changing mode of /srv/llavenv/bin/tap2deb to 755
      Running setup.py install for uuid
      Running setup.py install for zope.interface
        building 'zope.interface._zope_interface_coptimizations' extension
        gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.5 -c src/zope/interface/_zope_interface_coptimizations.c -o build/temp.linux-x86_64-2.5/src/zope/interface/_zope_interface_coptimizations.o
        gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-x86_64-2.5/src/zope/interface/_zope_interface_coptimizations.o -o build/lib.linux-x86_64-2.5/zope/interface/_zope_interface_coptimizations.so
        Skipping installation of /srv/llavenv/lib/python2.5/site-packages/zope/__init__.py (namespace package)
        Installing /srv/llavenv/lib/python2.5/site-packages/zope.interface-3.5.3-py2.5-nspkg.pth
    Successfully installed demjson meld3 morbid nose orbited pymongo pytz simplejson stomper stompservice supervisor Twisted uuid zope.interface
    

Run live-log-analyzer

Working dir: /srv

  • Edit supervisord.conf:
    [program:mongodb]
    directory=/srv
    command=mongodb/bin/mongod --dbpath mongodb_data --logpath log/mongodb.log
    
    [program:orbited]
    directory=/srv
    command=/srv/llavenv/bin/orbited --config /srv/live-log-analyzer/orbited.cfg
  • Run supervisor:
    $ llaenv/bin/supervisord -c live-log-analyzer/supervisord.conf
    

Comments