DEV Community

Cover image for FinOps na AWS: configurando o FinOps Agent e integrando com o Slack
Bianca Szimanski
Bianca Szimanski

Posted on Edited on

FinOps na AWS: configurando o FinOps Agent e integrando com o Slack

1. Introdução

Este artigo tem como objetivo documentar a configuração do AWS FinOps Agent e sua integração com o Slack, desde a habilitação dos pré-requisitos até o recebimento das mensagens no canal. O FinOps Agent foi lançado em junho de 2026, com o objetivo de investigar os custos na conta da AWS, sendo possível integrá-lo às ferramentas de trabalho Slack e Jira.

Em ambientes corporativos, os dados de custo da AWS normalmente são consultados nas ferramentas nativas Cost Explorer, Compute Optimizer e Cost Optimization Hub. Esses ferramentas normalmente são acessadas apenas pelo time de FinOps ou de infraestrutura, enquanto os times de desenvolvimento que provisionam os recursos raramente as consultam. Sem monitoramento ativo, o time pode demorar para identificar quando um custo sobe. A integração do FinOps Agent com o Slack ou Jira atende esse ponto, pois o agente consolida as análises das 3 ferramentas e publica o resultado no canal ou em um ticket, onde o time trabalha diariamente. Isso aproxima a informação de custo de quem provisiona os recursos e reduz a chance de uma anomalia passar despercebida.


2. O AWS FinOps Agent

O agente é construído com base no Amazon Bedrock e oferece 4 recursos principais:

  • Consulta de custo em linguagem natural, utilizando os dados reais de custo e uso da conta.
  • Investigação de anomalia disparada por evento. Quando o AWS Cost Anomaly Detection identifica um desvio, o agente investiga a causa raiz e pode publicar um relatório consolidado em um canal do Slack, ou criar um ticket no Jira com o resultado.
  • Consolidação das recomendações do Cost Optimization Hub e do Compute Optimizer.
  • Relatórios recorrentes agendados, em periodicidade diária, semanal ou mensal, nos formatos HTML, PDF ou PPT.

Para isso, o agente lê 5 serviços da conta:

  • AWS Cost Explorer: dados de custo e uso, previsão e análise de Savings Plans e Reserved Instances.
  • AWS Cost Anomaly Detection: monitoramento e detecção de anomalias, que funciona como gatilho das investigações. Está disponível no console do Billing and Cost Management e depende do Cost Explorer habilitado. Em contas recentes, normalmente já existe um monitor padrão criado, mas vale conferir na aba "Cost monitors".
  • AWS Cost Optimization Hub: recomendações de otimização e estimativas de economia.
  • AWS Compute Optimizer: recomendações detalhadas de rightsizing por recurso.
  • AWS CloudTrail: logs de atividade de API, utilizados para identificar as alterações de infraestrutura ocorridas durante uma anomalia. Neste caso, o CloudTrail permite correlacionar o aumento de custo com a ação que o originou, identificando qual usuário ou role executou a alteração e em que momento.

Documentação: https://docs.aws.amazon.com/finops-agent/latest/userguide/what-is.html


3. Pré-requisitos

Para a implementação, alguns recursos precisam estar configurados:

  • Conta da AWS com acesso administrativo, ou permissão para criação de IAM roles.

  • Console na região us-east-1, única região disponível durante a fase de public preview.

  • AWS Cost Anomaly Detection disponível, que é o que dispara as investigações.

  • AWS Cost Optimization Hub e AWS Compute Optimizer habilitados.

  • Workspace do Slack com permissão para autorizar aplicativos.

  • Conta com volume de custos suficiente para gerar recomendações.

OBS: o Cost Optimization Hub e o Compute Optimizer precisam ser habilitados antes da criação do agente. Caso contrário, o agente é criado e responde as consultas normalmente, mas as recomendações de otimização podem retornar vazias.


4. Passo a passo

4.1. Habilitando o Cost Optimization Hub e o Compute Optimizer

Os dois serviços são gratuitos. Após a habilitação, a AWS pode levar algumas horas para gerar as recomendações, sendo assim, os dashboards podem aparecer vazios no primeiro acesso.

1.Acessar o Billing and Cost Management no console.

2.Localizar o Cost Optimization Hub e habilitar o serviço. No exemplo abaixo, o serviço já estava habilitado e apresentando as recomendações da conta:

3.Acessar o Compute Optimizer e habilitar o serviço. No exemplo abaixo, também já estava habilitado:

--

4.2. Criação do agente

1.Alterar a região do console para us-east-1, pois o serviço não é listado em outras regiões durante a public preview.

2.Em seguida, pesquisar o serviço AWS FinOps Agent, acessar e clicar em “Get started”:

3.Definir o nome e descrição:

4.Na etapa seguinte, configurar as permissões. A opção recomendada, “Auto-create a new FinOps Agent role”, cria automaticamente a role que o agente usa para ler os dados de custo da conta:

5.Em seguida, será necessário configurar a permissão de acesso da aplicação web ao agente. Trata-se de uma segunda permissão, diferente da anterior, que define o que a aplicação pode executar, como criar tarefas, visualizar o histórico de execução e gerenciar os arquivos de contexto. Neste caso, é possível selecionar a opção “Auto-create a new FinOps Operator role” para criar a role automaticamente:

--

4.3. Integração com o Slack

1.Nesta etapa, será necessário selecionar a opção “Connect with Slack” e clicar em “Add integration” para abrir a tela de configuração da integração:

2.Na próxima tela, clicar em “Next”:

3.Em seguida, será necessário permitir que o FinOps Agent acesse o workspace do Slack, clicando em “Authorize with Slack”:

4.Em seguida, adicionar a URL do workspace e clicar em “Continue” para efetuar o login:

5.Após efetuar o login na conta do Slack, clicar em “Allow” para permitir o acesso:

6.O Slack foi conectado com sucesso. Em seguida, clicar em “Close” para fechar a aba e retornar à tela de início da integração:

7.Em seguida, criar um canal no Slack (por exemplo, “aws-finops”), abri-lo, clicar na aba Agents & apps e selecionar “Add Agent or App” para adicionar o AWS FinOps Agent.

OBS: o agente só publica em canais dos quais o app é membro. Se o app não for adicionado ao canal, a entrega falha.

8.Clicar no nome do canal com o botão esquerdo, acessar a aba About e copiar o “Channel ID” exibido ao final:

OBS: o Channel ID começa com a letra C. IDs iniciados com D pertencem a conversas diretas e não funcionam na integração

9.Voltar à tela de integração, colar o Channel ID, selecionar a integração “BS” na etapa Third-party integrations e clicar em “Next” para continuar:

10.Por fim, revisar e clicar em “Create agent”:

--

4.4. Testando o agente e a integração com o Slack

Nesta etapa será realizado o teste de funcionamento do agente e a validação da entrega das mensagens no canal do Slack.

1.Após configurar o canal do Slack, acessar o serviço AWS FinOps Agent e selecionar a aba “Agents” para abrir a interface e realizar as consultas:

-

Primeira consulta:

Os testes foram realizados em uma conta com baixo volume de custo, o que limita o alcance das recomendações.

O arquivo HTML foi gerado, conforme a solicitação:

-

Segunda consulta:

O arquivo HTML foi gerado, conforme a solicitação:

-

Terceira consulta:

O VPC aparece com $3.58 em uma mensagem e $2.58 em outra. O primeiro valor é gasto realizado nos últimos 30 dias, de 8 de agosto a 6 de setembro. O segundo é a previsão para setembro fechado. Antes de comparar valores entre consultas, é necessário verificar o período e se o dado é realizado ou previsto.

O valor atual de $0.63 retornado pelo agente para o custo de VPC em setembro, foi validado no Cost Explorer:


5. Lições aprendidas

  • O Cost Optimization Hub e o Compute Optimizer devem ser habilitados antes da criação do agente. Sem isso, as recomendações retornam vazias, mesmo que o agente esteja configurado corretamente.

  • A configuração envolve duas permissões diferentes, sendo a IAM role utilizada pelo agente para leitura dos dados da conta e a permissão de acesso da aplicação web ao agente.

  • O CloudTrail é o componente que permite a correlação entre variação de custo e alteração de infraestrutura, identificando o usuário ou role responsável.

  • A integração com o Slack ou Jira é o que viabiliza o uso pelo time de engenharia.

  • As respostas devem ser validadas no Cost Explorer durante as primeiras semanas de uso, para verificar se o agente está retornando os dados corretos.

  • O arquivo de contexto é opcional no fluxo, mas determina a qualidade prática das respostas, por incorporar informações que não estão disponíveis nas APIs de custo. (https://docs.aws.amazon.com/finops-agent/latest/userguide/getting-started.html).


6. Conclusão

Neste artigo foi possível validar a configuração do AWS FinOps Agent e sua integração com o Slack. O processo não exigiu provisionamento de infraestrutura adicional. O agente ainda está em public preview, com restrição de região, resposta em inglês e resultado que depende de conferência na conta. Por esses motivos, ainda não é indicado como fonte oficial de dados para basear o fechamento de custo, pois se trata de uma ferramenta recente que está passando por uma fase de testes.

Top comments (5)

Collapse
 
vlad_z_16b6320e21f32bee0d profile image
Vlad Z •

Levar o FinOps Agent para o Slack resolve a visibilidade, o que costuma travar depois é quem age sobre cada alerta e em quanto tempo, alerta sem dono vira ruído em duas semanas

Como vocês definiram quem responde quando o agente aponta um desperdício?

Collapse
 
biancaszimanski profile image
Bianca Szimanski •

Sim, esse é um ponto importante a se definir, para não deixar um alerta simplesmente cair no Slack. Na implementação, pode ser definido quem fica responsável por cada tipo de oportunidade identificada. Em casos de compute e rightsizing, por exemplo, a análise pode partir do time de FinOps com infra/cloud. Quando a oportunidade está mais ligada a um desperdício na aplicação, pode ficar com o time de desenvolvimento. O Agent ajuda bastante nessa identificação, mas não pode ser a única fonte. Também deve ser feita uma análise mais detalhada pelos dashboards de custos e consumo para entender melhor antes de tomar alguma ação. A partir daí, o alerta também pode virar um ticket no Jira, por exemplo, já com responsável e prazo para tratativa.

Collapse
 
seohyun0903 profile image
Seohyun Lee •

I really appreciate how clearly you walk through the FinOps Agent setup and the Slack integration—those steps often get lost in the documentation. In my work, I’ve started using AI‑powered chat assistants to surface cost alerts from the same data, which cuts the manual monitoring time by about half. Have you tried any automated summarization of the cost reports, and did it change how your team reacts to spikes?

Collapse
 
biancaszimanski profile image
Bianca Szimanski •

Thanks, Seohyun! Glad the step by step was useful. So far I've only used on-demand queries with the agent, where it generated HTML cost summaries. But I've also worked with a Lambda function that scanned AWS costs and sent daily Slack notifications about idle resources, such as unused IPs, old snapshots and more. I'm digging deeper into the topic to test scheduled reports and automatic anomaly summaries. I'd love to hear more about how you set up your alerts.

Collapse
 
vlad_z_16b6320e21f32bee0d profile image
Vlad Z •

Levar o FinOps Agent para o Slack resolve a visibilidade, o que costuma travar depois é quem age sobre cada alerta e em quanto tempo, alerta sem dono vira ruído em duas semanas

Como vocês definiram quem responde quando o agente aponta um desperdício?