Executando verificação de segurança...
9

Perdi US$1.230 em um dia na AWS. No dia seguinte, construí esse app para Apple Watch e iPhone.

Sou Head de TI de duas empresas e preciso estar sempre de olho nos custos de infraestrutura. Na semana passada, um deslize com a AWS me custou US$1.230 em um único dia. O tipo de erro que qualquer um que trabalha com cloud já viu acontecer.

Depois do susto, decidi que precisava de uma forma mais rápida e visual de acompanhar esses custos. Algo que eu pudesse olhar no pulso, literalmente.

O que construí

Em uma tarde, desenvolvi um app nativo para iOS e Apple Watch que se conecta diretamente à AWS Cost Explorer API e mostra:

No iPhone:

  • Dashboard com custo total e tendência (subiu/desceu vs período anterior)
  • Filtros por período: Hoje, Últimos 7 dias, Este mês, Mês anterior, ou período customizado
  • Gráfico dos Top 5 serviços que mais consomem (EC2, S3, Lambda, RDS, etc.)
  • Suporte a múltiplas contas AWS - ideal para quem gerencia mais de uma empresa
  • Comparação lado-a-lado entre períodos

texto

No Apple Watch:

  • Custo resumido no pulso: "$1.2K" com indicador de tendência
  • Top 3 serviços em formato compacto
  • Filtros de período e empresa direto no relógio
  • Complicação no mostrador que rotaciona automaticamente entre as empresas cadastradas
    texto

Segurança

  • Credenciais armazenadas no Keychain do dispositivo
  • Nunca são transmitidas para servidores externos
  • Você cadastra apenas uma IAM User com permissão ReadOnlyAccess ao Cost Explorer
    texto

Por que não uso o app da AWS?

O app oficial da AWS é genérico demais. Ele tenta fazer tudo e acaba não fazendo bem o essencial: mostrar rapidamente quanto estou gastando.

Eu queria algo que:

  1. Abrisse e em 2 segundos eu visse o número
  2. Funcionasse no Watch (o app da AWS nem tem versão para Watch)
  3. Me deixasse comparar múltiplas contas de forma simples

Próximos passos

A ideia é evoluir para integrar com:

  • Grafana - para ver meus dashboards de observabilidade
  • Alertas proativos - notificação quando o custo diário passar de X

Pergunta para a comunidade

Antes de decidir se disponibilizo isso de alguma forma, queria saber:

  1. Vocês teriam interesse em uma ferramenta assim?
  2. Alguém conhece algum app semelhante? Procurei e não achei nada específico para Watch.
  3. Que outras integrações seriam úteis? (GCP, Azure, DigitalOcean?)

Construí isso para resolver meu problema, mas se fizer sentido para mais gente, posso pensar em disponibilizar.


Desenvolvido em SwiftUI com integração nativa AWS SDK. Design inspirado em terminais (verde sobre preto) e muita ajuda do meu amigo claudinho(Claude Code).

Carregando publicação patrocinada...
1
2

CloudWatch Logs, na verdade. Temos uma operação de telemetria que rastreia cerca de 200k dispositivos, e um dos workers que alimenta a fila de processamento entrou em loop. O problema é que cada iteração do loop estava gerando log normalmente, então em poucas horas tinha quase 2TB de ingestão no CloudWatch.
O pior é que o custo do CloudWatch Logs escala muito rápido quando você está ingestando nesse volume - é algo em torno de $0.50/GB só para colocar o log lá dentro. Somando retenção e queries que os alertas automáticos faziam, a conta explodiu.

1

Que irado meu amigo. Sinto muito pelo transtorno da cloud mas como voce mesmo disse, quem nunca ne?
Como voce conseguiu exportar o app pro watch tão "rapido"? Nao sei se você conseguiu usar ja na mesma tarde em que fez o app, não ficou explícito pra mim no texto isso mas fiquei curioso. Tô perguntando pois tenho alguns projetos pensando neste mercado (nao de monitoramento de cloud mas de app pra SmartWatch).

1

A IA ajudou muito onde a estrutura do projeto a criação do app IOS e Watch é feita na mesma estrutura até com componentes shared e logica shared. e com isso é gerado os target de cada estrutura separadamente.