tree: 91fb43f625ccfb5026f0c3bbe4ea6f943a03b0ac [path history] [tgz]
  1. .gitignore
  2. .stylelintrc.json
  4. assets/
  5. babel.config.js
  6. console-config.js
  7. favicon.png
  8. lib/
  9. package-lock.json
  10. package.json
  11. pom.xml
  12. sasslint.json
  13. script/
  14. src/
  15. tsconfig.json
  16. tslint.json
  17. unified-console.html
  18. webpack.config.js

Apache Druid web console

This is the unified Druid web console that servers as a data management layer for Druid.

How to watch and run for development

  1. You need to be withing the web-console directory
  2. Install the modules with npm install
  3. Run npm start will start in development mode and will proxy druid requests to localhost:8888

Note: you can provide an environment variable to proxy to a different Druid host like so: druid_host= npm start Note: you can provide an environment variable use webpack-bundle-analyzer as a plugin in the build script or like so: BUNDLE_ANALYZER_PLUGIN='TRUE' npm start

To try the console in (say) coordinator mode you could run it as such:

druid_host=localhost:8081 npm start

Description of the directory structure

A lot of the directory structure was created to preserve the existing console structure as much as possible.

As part of this repo:

  • console.html - Entry file for the overlord console
  • lib/ - A place where some overrides to the react-table stylus files live, this is outside of the normal SCSS build system.
  • old-console/ - Files for the overlord console
  • public/ - The compiled destination of the file powering this console
  • assets/ - The images (and other assets) used within the console
  • script/ - Some helper bash scripts for running this console
  • src/ - This directory (together with lib) constitutes all the source code for this console

Generated/copied dynamically

  • index.html - Entry file for the coordinator console
  • pages/ - The files for the older coordinator console
  • coordinator-console/ - Files for the coordinator console

List of non SQL data reading APIs used

GET /status
GET /druid/indexer/v1/supervisor?full
POST /druid/indexer/v1/worker
GET /druid/indexer/v1/workers
GET /druid/indexer/v1/tasks
GET /druid/coordinator/v1/loadqueue?simple
GET /druid/coordinator/v1/config
GET /druid/coordinator/v1/metadata/datasources?includeUnused
GET /druid/coordinator/v1/rules
GET /druid/coordinator/v1/config/compaction
GET /druid/coordinator/v1/tiers

Updating the list of license files

From the web-console directory run script/licenses