Running Graphite WebApp on Windows

January 2, 2013, with 11 comments
by admin

In my previous blog post I wrote about how to make Graphite monitoring system run on Windows.
Coming with Graphite (respectively the Carbon component), the Graphite WebApp is availalable to view monitoring information.

This application is completely cross-platform, so it doesn’t need any adoptions to the Windows operating system.

It only requires certain third party components to be available on the system:

  • Install Python 2.7 (as mentioned in the other blog post)
  • Install PyPi (as mentioned in the other blog post)
  • Install PythonGTK+ (for Cairo graphics) from here
  • Install Django using a package from here. In my case, I used Django 1.4.2. Drop me a message if Graphite WebApp also works with newer versions of Django.
  • Install twisted using:
    pip install Twisted
  • Install zope.interface using:
    pip install zope.interface

The installation itself works just like described in the base Graphite installation post:

  • python check-dependencies.py
  • python setup.py install

You can test Graphite WebApp using Django development tools:

django-admin.py runserver --pythonpath d:\graphite\webapp --settings graphite.settings 0.0.0.0:8080

with the following important parameters:

Ron Cordell from RelayHealth reported that they run Graphite WebApp in IIS with  Helicon Zoo which is available for free here. I didn’t try this and if you should have experience with it, let me know and I’ll add detailed steps for it in this post.

Aktualisiert am February 15, 2013

Keine Kommentare

  1. Hi,

    Thanks for all, I’m trying configure it now

    Regards

  2. When I start my Apache after following all the instructions, I get the following error. any ideas?

    mod_wsgi (pid=3456): Exception occurred processing WSGI script ‘C:\\graphite\\conf\\graphite.wsgi’.
    Traceback (most recent call last):
    File “C:\\graphite\\conf\\graphite.wsgi”, line 4, in
    from graphite.wsgi import application
    File “C:\\graphite\\webapp\\graphite\\wsgi.py”, line 12, in
    from graphite.logger import log
    File “C:\\graphite\\webapp\\graphite\\logger.py”, line 95, in
    log = GraphiteLogger() # import-shared logger instance
    File “C:\\graphite\\webapp\\graphite\\logger.py”, line 41, in __init__
    level = logging.INFO,
    File “C:\\graphite\\webapp\\graphite\\logger.py”, line 63, in _config_logger
    log_file = os.path.join(settings.LOG_DIR, log_file_name)
    File “C:\\Python27\\lib\\site-packages\\django\\conf\\__init__.py”, line 54, in __getattr__
    self._setup(name)
    File “C:\\Python27\\lib\\site-packages\\django\\conf\\__init__.py”, line 49, in _setup
    self._wrapped = Settings(settings_module)
    File “C:\\Python27\\lib\\site-packages\\django\\conf\\__init__.py”, line 128, in __init__
    mod = importlib.import_module(self.SETTINGS_MODULE)
    File “C:\\Python27\\lib\\site-packages\\django\\utils\\importlib.py”, line 40, in import_module
    __import__(name)
    File “C:\\graphite\\webapp\\graphite\\settings.py”, line 172, in
    import whisper
    File “C:\\Python27\\lib\\site-packages\\whisper.py”, line 47, in
    libc = ctypes.CDLL(libc_name)
    File “C:\\Python27\\Lib\\ctypes\\__init__.py”, line 365, in __init__
    self._handle = _dlopen(self._name, mode)
    WindowsError: [Error 126] The specified module could not be found

  3. By the way, the DLL that it can’t load is called msvcr90.dll. I did a bit of googling and installed the redist package and that didn’t fix it so I’m not sure what to do next. I assume I need to copy the three DLLs and the manifest somewhere but I’m not sure if I need to copy them to the Python or Apache installation and where under that?

  4. I copied the three DLLs and the manifest file to a folder named Microsoft.VC90.CRT in the Python installation and then added this to my wsgi.py: sys.path.append(“C:\Python27\Microsoft.VC90.CRT”)

    Still not enough. It gets the same error trying to find the DLL that I pointed it to. I’m not sure what to try next.

  5. I’m curious. Have you gotten Graphite to work on a Windows 7 64-bit machine with daily updated patches? Also, when I installed the redist stuff, since I didn’t have Visual Studio v2008 (too old), it stuck the files in C:\Windows\WinSxS under a bunch of sub-directories. I had to do a lot of surgery to find them and the manifest file. Depending on this ancient stuff is a real problem.

    It seems that the issues I’m having may be due to the fact that all the dependencies in this Python oriented world are very old. When will Graphite move to Python 3.3 or beyond on 64-bit?

    I’m thinking that overall, Graphite will not run on a modern Windows install. I’m moving on to other things unless you have a suggestion you feel confident about.

  6. When I python check-dependencies.py on windows 8, I get the following error. any ideas?

    [OPTIONAL] Unable to import the ‘python-rrdtool’ module,this is required for reading RRD.

    thanks

  7. On windows, the path is not correct by default, “pip setup.py install” gives me the error: ValueError: path ‘/opt/graphite/webapp’ cannot be absolute

    where to set it?

  8. ok, python install.py –help install would give the answer

  9. after installation, i have another problem with this:
    django-admin.py runserver –pythonpath d:\graphite\webapp –settings graphite.settings 0.0.0.0:8080

    Where is the graphite.settings? I copy from local.settings, but i still have an error:
    no such table: auth_user

Schreibe einen Kommentar

Kommentar absenden >>