Skip to content
This repository was archived by the owner on Dec 7, 2021. It is now read-only.
This repository was archived by the owner on Dec 7, 2021. It is now read-only.

Undocumented required folders, nested dashboards not working #109

@charlesdunbar

Description

@charlesdunbar

I really hope I'm doing something horribly wrong here, but I've been trying to get nested dashboards working and am running into issues along the way.

Here's the config file:

:graphite: http://graphite.server.url
:templatedir: /opt/gdash/graph_templates/

:username: admin

:password: secret

:options:
:title: My Dashboard
:prefix: ""
:refresh_rate: 60
:graph_columns: 2
:graph_width: 500
:graph_height: 250
:interval_filters:
- 🏷️ Last Hour
:from: -1hour
:to: now
- 🏷️ Last Day
:from: -1day
- 🏷️ Last Week
:from: -1week
- 🏷️ Last Month
:from: -1month
- 🏷️ Last Year
:from: -1year
:intervals:
- [ "-1hour", "1 hour" ]
- [ "-2hour", "2 hour" ]
- [ "-1day", "1 day" ]
- [ "-1month", "1 month" ]
- [ "-1year", "1 year" ]

Following the picture of the example directory in the README, my tree looks like:

graph_templates
`-- virtualization
    |-- dom0
    |   |-- dash.yaml
    |   `-- switch.graph
    `-- kvm1
        |-- dash.yaml
        `-- switch.graph

However, when I hit gdash, I get: "Internal Server Error" with the error log saying:

[ 2013-07-26 10:24:23.1050 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] Errno::ENOENT - No such file or directory - /opt/gdash/graph_templates/dashboards:
[ 2013-07-26 10:24:23.1050 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /opt/gdash/lib/gdash.rb:47:in open' [ 2013-07-26 10:24:23.1050 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /opt/gdash/lib/gdash.rb:47:inentries'
[ 2013-07-26 10:24:23.1050 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /opt/gdash/lib/gdash.rb:47:in dashboards' [ 2013-07-26 10:24:23.1050 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /opt/gdash/lib/gdash/sinatra_app.rb:60:inblock (2 levels) in class:SinatraApp'
[ 2013-07-26 10:24:23.1050 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /opt/gdash/lib/gdash/sinatra_app.rb:59:in each' [ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /opt/gdash/lib/gdash/sinatra_app.rb:59:inblock in class:SinatraApp'
[ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:1265:in call' [ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:1265:inblock in compile!'
[ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:872:in []' [ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:872:inblock in process_route'
[ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:870:in catch' [ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:870:inprocess_route'
[ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:827:in block in filter!' [ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:827:ineach'
[ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:827:in filter!' [ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:935:indispatch!'
[ 2013-07-26 10:24:23.1051 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in block in call!' [ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:inblock in invoke'
[ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:in catch' [ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:921:ininvoke'
[ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:769:in call!' [ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:755:incall'
[ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in call' [ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/rack-protection-1.2.0/lib/rack/protection/path_traversal.rb:16:incall'
[ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/rack-protection-1.2.0/lib/rack/protection/json_csrf.rb:17:in call' [ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/rack-protection-1.2.0/lib/rack/protection/base.rb:47:incall'
[ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb:22:in call' [ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/rack-1.4.5/lib/rack/nulllogger.rb:9:incall'
[ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/rack-1.4.5/lib/rack/head.rb:9:in call' [ 2013-07-26 10:24:23.1052 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/sinatra-1.3.3/lib/sinatra/base.rb:99:incall'
[ 2013-07-26 10:24:23.1053 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/passenger-4.0.8/lib/phusion_passenger/rack/thread_handler_extension.rb:77:in process_request' [ 2013-07-26 10:24:23.1053 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/passenger-4.0.8/lib/phusion_passenger/request_handler/thread_handler.rb:140:inaccept_and_process_next_request'
[ 2013-07-26 10:24:23.1053 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/passenger-4.0.8/lib/phusion_passenger/request_handler/thread_handler.rb:108:in main_loop' [ 2013-07-26 10:24:23.1053 22700/7f44b6d50700 Pool2/Implementation.cpp:1182 ]: [App 25076 stderr] /var/lib/gems/1.9.1/gems/passenger-4.0.8/lib/phusion_passenger/request_handler.rb:441:inblock (3 levels) in start_threads'

Apparently need the dashboards folder. Not exactly mentioned that that directory is required in the example directory structure.

New tree:

graph_templates
|-- dashboards
`-- virtualization
    |-- dom0
    |   |-- dash.yaml
    |   `-- switch.graph
    `-- kvm1
        |-- dash.yaml
        `-- switch.graph

Still internal server error. This time: Errno::ENOENT - No such file or directory - /opt/gdash/graph_templates/node_templates:

Not mentioned anywhere I can see.

graph_templates
|-- dashboards
|-- node_templates
`-- virtualization
    |-- dom0
    |   |-- dash.yaml
    |   `-- switch.graph
    `-- kvm1
        |-- dash.yaml
        `-- switch.graph

Gdash loads!

screen shot 2013-07-26 at 10 27 11 am

virtualization isn't an option on the top menu, nor does anything appear. Maybe I need to put virtualization in the dashboards folder.

graph_templates
|-- dashboards
|   `-- virtualization
|       |-- dom0
|       |   |-- dash.yaml
|       |   `-- switch.graph
|       `-- kvm1
|           |-- dash.yaml
|           `-- switch.graph
`-- node_templates

I'll save the screenshot, but it's the same blank as before. Maybe I need to put them directly under dashboards.

graph_templates
|-- dashboards
|   |-- dom0
|   |   |-- dash.yaml
|   |   `-- switch.graph
|   |-- kvm1
|   |   |-- dash.yaml
|   |   `-- switch.graph
|   `-- virtualization
`-- node_templates

screen shot 2013-07-26 at 10 30 16 am

Success! Except I don't know where/what's causing node_templates to be needed, dashboards to be needed, or how to have nested directories like the readme says it supports. Any ideas? For the installation, I followed the bundle install steps found in #45, not sure if that's related at all.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions