esignbr/qualidade-ar-smac
SMAC air quality data collector
2.1K
Dados de qualidade do ar coletados da Prefeitura do RJ - Secretaria Municipal de Meio Ambiente (SMAC). Os dados são publicados pela SMAC nos seguintes meios:
A API é uma aplicação Spring Boot e para ser inicializada execute (requer Maven):
mvn spring-boot:run
A API também pode ser inicializada como contâiner. Para inicializar a API deste modo, execute (requer Docker):
docker run --name smac -d -p 8080:8080 esignbr/qualidade-ar-smac
Os dados de qualidade do ar dos últimos 365 dias podem ser carregados para uma base de dados InfluxDB e apresentados num dashboard do Grafana. Os passos são os seguintes (requer Python e docker-compose):
python3 -m venv env && source env/bin/activate && pip3 install -r requirements.txt
;./influxdb-data.py 365
;docker-compose up -d
;SMAC
.Se preferir, obtenha diretamente todos os dados da SMAC:
curl -H 'Authorization: Token my-super-secret-auth-token' -G 'http://localhost:8086/query?db=qualidadear' --data-urlencode 'q=SELECT * FROM "IQAR" WHERE "orgao" =~ /SMAC/'
Último índice de qualidade do ar das estações de monitoramento da SMAC:
curl -H 'Authorization: Token my-super-secret-auth-token' -G 'http://localhost:8086/query?db=qualidadear' --data-urlencode 'q=SELECT last(value) AS value FROM "IQAR" WHERE "orgao" =~ /SMAC/ GROUP BY "estacao", "latitude", "longitude"' -s | jq
Poluentes que mais impactaram o índice de qualidade do ar no período:
curl -H 'Authorization: Token my-super-secret-auth-token' -G 'http://localhost:8086/query?db=qualidadear' --data-urlencode 'q=SELECT count(value) FROM "IQAR" WHERE "orgao" =~ /SMAC/ GROUP BY "poluente"' -s | jq -r '.results[].series[] | "\(.tags.poluente) - \(.values[0][1])"'
Distribuição da classificação da qualidade do ar no período:
curl -H 'Authorization: Token my-super-secret-auth-token' -G 'http://localhost:8086/query?db=qualidadear' --data-urlencode 'q=SELECT count(value) FROM "IQAR" WHERE "orgao" =~ /SMAC/ GROUP BY "classificacao"' -s | jq -r '.results[].series[] | "\(.tags.classificacao) - \(.values[0][1])"'
docker pull esignbr/qualidade-ar-smac