Skip to content

Developer Productivity Engineering - metrics dashboards

Notifications You must be signed in to change notification settings

ash-singh/dpe-insights

Repository files navigation

dpe-insights

Config Parameters

Add Git Oauth2 Token

https://github.com/settings/tokens

create a copy of .env.example as .env and set own values for env variables

cp .env.example .env

vim .env 

PLUGIN_GITHUB_OAUTH2_TOKEN=<you git oauth2 token>

Project Initialization

    $ docker-compose build
    $ docker-compose up -d 

App

Build commands executables

    $ make build

Import and transform daily GitHub data

    bash ./cmd/daily_import_and_transform.sh

DPE cli tool documentation

Import daily pull requests count data for last n days

    $ ./build/dpe-cli github import pull-request-counts --days=30

Import all pull requests data for a range startDate and endDate or number of days

    $ ./build/dpe-cli github import pull-requests --days=30
    $ ./build/dpe-cli github import pull-requests --startDate=2020-11-01 --endDate=2020-11-07

Import Teams related data

    $ ./build/dpe-cli github import teams

Transform pull requests data

    $ ./build/dpe-cli github transform pull-requests

Transform requests count data for last n days

    $ ./build/dpe-cli github transform pull-request-counts --days=30

Transform team - pull request count data for last n weeks

    $ ./build/dpe-cli github transform team-pull-request-counts --weeks=10

Sync imported pull request data

    $ ./build/dpe-cli github sync  

Provisioning Grafana Dashboard

You can manage dashboards in Grafana by adding one or more YAML config files in the:

.docker/grafana/var/lib/grafana/provisioning/dashboards/

directory. By default, these dashboards cannot be updated from Grafana UI, and an app restart is required to reflect any changes in JSON files. Docs

API details

Check api/routing.go file

Grafana Dashboard

Grafana is accessible under the following URL: http://localhost:3002 using the following credentials:

  • User: admin
  • Password: admin123

For Development

Live reload of app

https://github.com/cosmtrek/air

Lint and Fix

 <project_root> make lint
 <project_root> make lint-fix

Tests

 <project_root> make test

About

Developer Productivity Engineering - metrics dashboards

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages