2012-03-24 7 views
20

Estoy intentando instalar GRAPHITE en ubuntu. Sigo las instrucciones en el blog.Error Django al instalar Graphite - settings.DATABASES está configurado incorrectamente. Proporcione el valor ENGINE

http://geek.michaelgrace.org/2011/09/how-to-install-graphite-on-ubuntu/ 

Cuando llego a la parte donde ejecuto el comando ... obtengo el siguiente error. No tengo ninguna pista sobre cómo resolverlo. Estoy usando la última versión de Django 1.4.

cd /opt/graphite/webapp/graphite/ 
sudo python manage.py syncdb 


sudo python manage.py syncdb 
/opt/graphite/webapp/graphite/thirdparty/pytz/__init__.py:32: UserWarning: Module pytz was already imported from /opt/graphite/webapp/graphite/thirdparty/pytz/__init__.pyc, but /usr/local/lib/python2.7/dist-packages/pytz-2012b-py2.7.egg is being added to sys.path 
    from pkg_resources import resource_stream 
Traceback (most recent call last): 
    File "manage.py", line 11, in <module> 
    execute_manager(settings) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 459, in execute_manager 
    utility.execute() 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 382, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 196, in run_from_argv 
    self.execute(*args, **options.__dict__) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 232, in execute 
    output = self.handle(*args, **options) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 371, in handle 
    return self.handle_noargs(**options) 
    File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/syncdb.py", line 57, in handle_noargs 
    cursor = connection.cursor() 
    File "/usr/local/lib/python2.7/dist-packages/django/db/backends/dummy/base.py", line 15, in complain 
    raise ImproperlyConfigured("settings.DATABASES is improperly configured. " 
django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details. 

En el archivo /opt/graphite/webapp/graphite/settings.py, este es el contenido.

#Database settings, sqlite is intended for single-server setups 
DATABASE_ENGINE = 'sqlite3'      # 'postgresql', 'mysql', 'sqlite3' or 'ado_mssql'. 
DATABASE_NAME = STORAGE_DIR + 'graphite.db'  # Or path to database file if using sqlite3. 
DATABASE_USER = ''        # Not used with sqlite3. 
DATABASE_PASSWORD = ''       # Not used with sqlite3. 
DATABASE_HOST = ''        # Set to empty string for localhost. Not used with sqlite3. 
DATABASE_PORT = ''        # Set to empty string for default. Not used with sqlite3. 

DASHBOARD_CONF = join(CONF_DIR, 'dashboard.conf') 
GRAPHTEMPLATES_CONF = join(CONF_DIR, 'graphTemplates.conf') 

Respuesta

9

necesita editar settings.py y establecer el contenido de la variable DATABASES a algo distinto de las cadenas vacías. Hay comentarios próximos a él que le indican lo que los motores de bases de datos son compatibles:

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 
     'NAME': '',      # Or path to database file if using sqlite3. 
     'USER': '',      # Not used with sqlite3. 
     'PASSWORD': '',     # Not used with sqlite3. 
     'HOST': '',      # Set to empty string for localhost. Not used with sqlite3. 
     'PORT': '',      # Set to empty string for default. Not used with sqlite3. 
    } 
} 

Si no tienes nada más instalado, se puede añadir a la cadena sqlite3ENGINE que es fácil para el desarrollo de su ordenador local.

+0

Hola, ver mi edición. Ese es el archivo de configuración que se crea. – Tampa

+0

¿Qué versión de Django estás usando? Su archivo de configuración tiene múltiples variables 'DATABASE_' (que es la forma antigua de hacerlo) mientras su Django parece estar buscando la variable' DATABASES' (que es la nueva forma de configurar las bases de datos). –

+0

Estoy usando 1.4 desde el tronco – Tampa

1

Acabo de añadir el diccionario bases de datos al final del archivo, que works.I espero que el grafito puede correr en base al Django 1.4.1

14

graphite version 0.9.10 supports Django 1.4 ... sin embargo ponen en la configuración de Django sqlite local_settings.py

[[email protected] graphite]$ cat local_settings.py|grep -v \# 
DATABASES = { 
    'default': { 
     'NAME': '/opt/graphite/storage/graphite.db', 
     'ENGINE': 'django.db.backends.sqlite3', 
     'USER': '', 
     'PASSWORD': '', 
     'HOST': '', 
     'PORT': '' 
    } 
} 
[[email protected] graphite]$ 
[[email protected] graphite]$ pwd 
/opt/graphite/webapp/graphite 
[[email protected] graphite]$ 
9

para los usuarios que aterrizan aquí con el mensaje de error "la configuración SECRET_KEY no debe estar vacío", asegúrese de establecer la clave secreta en /opt/graphite/webapp/graphite/app_settings.py, así como en tu configuración django.

Cuestiones relacionadas