internet-pi icon indicating copy to clipboard operation
internet-pi copied to clipboard

No airgradient dashboard after install even though ansible-playbook says dashboard was copied

Open SamuelCarson opened this issue 1 year ago • 2 comments

after installing using your instructions there is no airgradient dashboard. Everything else works.

/grafana/provisioning/dashboards contents: dashboard.yml internet-connection.json node-exporter-full.json

/grafana/provisioning/datasources contents: datasource.yml

datasource,yml contents:

apiVersion: 1

list of datasources that should be deleted from the database

deleteDatasources:

  • name: prometheus orgId: 1

list of datasources to insert/update depending

whats available in the database

datasources:

  • name: prometheus type: prometheus access: proxy orgId: 1 url: http://prometheus:9090 password: user: database: basicAuth: true basicAuthUser: admin basicAuthPassword: foobar withCredentials: isDefault: jsonData: graphiteVersion: "1.1" tlsAuth: false tlsAuthWithCACert: false secureJsonData: tlsCACert: "..." tlsClientCert: "..." tlsClientKey: "..." version: 1 editable: true config.yml contents:

Location where configuration files will be stored.

config_dir: '~'

Domain names configuration (related services need to be enabled).

domain_name_enable: false domain_name: 'home.local' domain_pihole: 'pihole' # to access pihole via: http://pihole.home.local domain_grafana: 'grafana' # to access grafana via: http://grafana.home.local domain_prometheus: 'prometheus' # to access prometheus via: http://prometheus.home.local

Pi-hole configuration.

pihole_enable: false pihole_hostname: pihole pihole_timezone: America/Chicago pihole_password: "change-this-password"

Internet monitoring configuration.

monitoring_enable: true monitoring_grafana_admin_password: "admin" monitoring_speedtest_interval: 60m monitoring_ping_interval: 5s monitoring_ping_hosts: # [URL];[HUMAN_READABLE_NAME]

  • http://www.google.com/;google.com
  • https://github.com/;github.com
  • https://www.apple.com/;apple.com

Prometheus configuration.

prometheus_monitor_prometheus: true prometheus_node_exporter_targets:

  • 'nodeexp:9100' prometheus_extra_scrape_configs: '' prometheus_tsdb_retention_time: 90d

Shelly Plug configuration. (Also requires monitoring_enable)

shelly_plug_enable: false shelly_plug_hostname: my-shelly-plug-host-or-ip shelly_plug_http_username: username shelly_plug_http_password: "password"

AirGradient configuration. (Also requires monitoring_enable)

airgradient_enable: true airgradient_sensors:

ID Should be limited to no more than 38 characters, in the set a-z.

  • id: airgradient-office ip: "192.168.1.142" port: 9926

Starlink configuration. (Also requires monitoring_enable)

starlink_enable: false

Output from ansible-playbook main.yml PLAY [Configure Internet Pi.] **************************************************

TASK [Gathering Facts] ********************************************************* ok: [127.0.0.1]

TASK [Load configuration (with defaults from example file).] ******************* ok: [127.0.0.1] => (item=example.config.yml) ok: [127.0.0.1] => (item=config.yml)

TASK [Ensure apt cache is up to date.] ***************************************** changed: [127.0.0.1]

TASK [Ensure pacman cache is up to date] *************************************** skipping: [127.0.0.1]

TASK [Check if Docker is already present.] ************************************* ok: [127.0.0.1]

TASK [Download Docker install convenience script.] ***************************** skipping: [127.0.0.1]

TASK [Run Docker install convenience script.] ********************************** skipping: [127.0.0.1]

TASK [Ensure Docker is started.] *********************************************** ok: [127.0.0.1]

TASK [Ensure dependencies are installed (Debian).] ***************************** ok: [127.0.0.1]

TASK [Ensure dependencies are installed (Archlinux).] ************************** skipping: [127.0.0.1]

TASK [Ensure user is added to the docker group: pi] **************************** ok: [127.0.0.1]

TASK [Reset connection so docker group is picked up.] ************************** [WARNING]: Reset is not implemented for this connection

TASK [Gather package facts.] *************************************************** skipping: [127.0.0.1]

TASK [Add Buster backports apt key.] ******************************************* skipping: [127.0.0.1] => (item=04EE7237B7D453EC) skipping: [127.0.0.1] => (item=648ACFD622F3D138) skipping: [127.0.0.1] => (item=0E98404D386FA1D9) skipping: [127.0.0.1] => (item=6ED0E7B82643E131) skipping: [127.0.0.1]

TASK [Add Buster backports for fixed libseccomp2.] ***************************** skipping: [127.0.0.1]

TASK [Install >libseccomp2.4.4 to fix 32-bit OS issue.] ************************ skipping: [127.0.0.1]

TASK [Synchronize internet-monitoring directory.] ****************************** changed: [127.0.0.1]

TASK [Ensure internet-monitoring directory is not a Git repository.] *********** ok: [127.0.0.1]

TASK [Copy templated internet-monitoring files into place.] ******************** ok: [127.0.0.1] => (item={'src': 'docker-compose.yml.j2', 'dest': 'docker-compose.yml'}) ok: [127.0.0.1] => (item={'src': 'grafana-config.monitoring.j2', 'dest': 'grafana/config.monitoring'}) changed: [127.0.0.1] => (item={'src': 'prometheus.yml.j2', 'dest': 'prometheus/prometheus.yml'}) ok: [127.0.0.1] => (item={'src': 'prometheus-pinghosts.yaml.j2', 'dest': 'prometheus/pinghosts.yaml'})

TASK [Ensure internet-monitoring environment is running.] ********************** ok: [127.0.0.1]

TASK [Create Pi-hole folder on Pi.] ******************************************** skipping: [127.0.0.1]

TASK [Copy Pi-hole docker-compose template to Pi.] ***************************** skipping: [127.0.0.1]

TASK [Ensure Pi-hole is running.] ********************************************** skipping: [127.0.0.1]

TASK [Ensure resolveconf exists.] ********************************************** skipping: [127.0.0.1]

TASK [Update resolveconf for local name server use.] *************************** skipping: [127.0.0.1]

TASK [Regenerate resolvconf if file is changed.] ******************************* skipping: [127.0.0.1]

TASK [Clone shelly-plug-prometheus repo to Pi.] ******************************** skipping: [127.0.0.1]

TASK [Copy Shelly Plug docker-compose template to Pi.] ************************* skipping: [127.0.0.1]

TASK [Ensure Shelly Plug Prometheus exporter is running.] ********************** skipping: [127.0.0.1]

TASK [Copy shelly dashboard config to grafana] ********************************* skipping: [127.0.0.1]

TASK [Copy airgradient dashboard configs to Grafana.] ************************** changed: [127.0.0.1] => (item={'id': 'airgradient-office', 'ip': '192.168.1.142', 'port': 9926})

TASK [Ensure Starlink directory exists.] *************************************** skipping: [127.0.0.1]

TASK [Copy Starlink docker-compose template to Pi.] **************************** skipping: [127.0.0.1]

TASK [Ensure Starlink Prometheus exporter is running.] ************************* skipping: [127.0.0.1]

TASK [Copy starlink dashboard config to grafana.] ****************************** skipping: [127.0.0.1]

RUNNING HANDLER [Restart internet-monitoring] ********************************** changed: [127.0.0.1]

PLAY RECAP ********************************************************************* 127.0.0.1 : ok=13 changed=5 unreachable=0 failed=0 skipped=22 rescued=0 ignored=0

main.yml contents:

  • name: Configure Internet Pi. hosts: internet_pi become: true

    pre_tasks:

    • name: Load configuration (with defaults from example file). ansible.builtin.include_vars: "{{ item }}" loop:

      • example.config.yml
      • config.yml
    • name: Ensure apt cache is up to date. ansible.builtin.apt: update_cache: true cache_valid_time: 3600 when:

      • ansible_facts.os_family == "Debian"
    • name: Ensure pacman cache is up to date community.general.pacman: update_cache: true when:

      • ansible_facts.os_family == "Archlinux"

    handlers:

    • name: Include handlers. ansible.builtin.import_tasks: tasks/handlers.yml

    tasks:

    • name: Setup Docker. ansible.builtin.import_tasks: tasks/docker.yml

    • name: Set up Internet Monitoring. ansible.builtin.import_tasks: tasks/internet-monitoring.yml when: monitoring_enable

    • name: Set up Pi Hole. ansible.builtin.import_tasks: tasks/pi-hole.yml when: pihole_enable

    • name: Set up Shelly Plug Monitoring. ansible.builtin.import_tasks: tasks/shelly-plug.yml when: shelly_plug_enable

    • name: Set up Air Gradient Monitoring. ansible.builtin.import_tasks: tasks/airgradient.yml when: airgradient_enable

    • name: Set up Starlink Monitoring. ansible.builtin.import_tasks: tasks/starlink.yml when: starlink_enable

The output from ansible-playbook says airgradient WAS copied to dashboards!!!!!!!!

what's wrong?

SamuelCarson avatar Aug 12 '24 16:08 SamuelCarson

Ccorretion: Airgradient dashboard is present but no data. RPi 4 Bookworm

SamuelCarson avatar Aug 13 '24 15:08 SamuelCarson

nodeexporter:9100 is showing only core metrics

SamuelCarson avatar Aug 13 '24 15:08 SamuelCarson

This issue has been marked 'stale' due to lack of recent activity. If there is no further activity, the issue will be closed in another 30 days. Thank you for your contribution!

Please read this blog post to see the reasons why I mark issues as stale.

github-actions[bot] avatar Dec 16 '24 21:12 github-actions[bot]

This issue has been closed due to inactivity. If you feel this is in error, please reopen the issue or file a new issue with the relevant details.

github-actions[bot] avatar Feb 17 '25 21:02 github-actions[bot]