Search code examples
databasetime-seriesquestdb

Basic auth for web console but not for metrics endpoint


I enabled basic auth for QuestDB web console and API using these config variables

export QDB_HTTP_USER=******
export QDB_HTTP_PASSWORD=*******

It is all good, but my metrics endpoint at port 9003 now requires basic auth as well, which is breaking my monitoring. Can it be disabled for the metrics endpoint while keeping it active for the rest of HTTP?


Solution

  • Checking the questdb repository on github, I found this undocumented flag that does exactly what is needed (tested on version 8.1.1)

    export QDB_HTTP_HEALTH_CHECK_AUTHENTICATION_REQUIRED=false
    

    Now I can do this to access API:

    curl -u ***:*** http://localhost:9000/exec
    

    And this to access the metrics:

    curl http://localhost:9003/metrics