Olá, Bruno! Tudo certo?
Sinto muito por encontrar um exercício que utiliza conceitos que ainda não foram apresentados no curso. Vou tentar esclarecer um pouco o que cada parte do script faz para que você possa entender melhor.
Função get_nginx()
: esta função é responsável por coletar e exibir as métricas do Nginx.
local metrics=$(curl -s "http://localhost/nginx_status")
: aqui, o curl
é usado para fazer uma solicitação HTTP ao servidor Nginx e obter o status. A opção -s
suprime a barra de progresso do curl
.
if [[ -n "$metrics" ]]; then
: esta linha verifica se a variável metrics
não está vazia, ou seja, se o curl
conseguiu obter alguma resposta do servidor.
awk 'NR==1 {print $3}' <<< "$metrics"
e awk 'NR==3 {print $2}' <<< "$metrics"
:
- O
awk
é uma ferramenta poderosa para processamento de texto. Aqui, ele está sendo usado para extrair informações específicas das linhas retornadas pelo Nginx. NR==1 {print $3}
significa que estamos interessados na terceira coluna da primeira linha.NR==3 {print $2}
significa que estamos interessados na segunda coluna da terceira linha.- O operador
<<<
é usado para passar a variável metrics
como entrada para o awk
.
echo
: As linhas de echo
são usadas para exibir as métricas coletadas.
A razão para o uso desses comandos pode ser que eles são ferramentas comuns e poderosas no mundo do Linux e DevOps. Mesmo que ainda não tenham sido explicados, são essenciais para manipular e extrair dados de forma eficiente.
Espero que isso ajude a entender melhor o exercício!
Bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.