coûts s3 qui explosent sans raison apparente après migration de logs

Posté par marie-lebreton le 04/01/2025
RÉSOLU

marie-lebreton

Membre depuis le 03/06/2024

salut tout le monde. on a migré nos logs applicatifs de nos machines vers un bucket s3 pour centraliser. on s'attendait à une augmentation des coûts stockage s3 mais là c'est x5 sur la facture sans avoir X5 de logs. je pige pas ce qui se passe. j'ai regardé les metrics cloudwatch pour s3 mais ça me dit pas grand chose à part le nombre de requêtes qui a monté en flèche. on utilise le sdk aws pour uploader.

# exemple de code python pour upload (simplifié)
import boto3
s3 = boto3.client('s3')
s3.put_object(Bucket='my-log-bucket', Key='app/logs/file.log', Body=log_content)

Commentaires

adrien53

Membre depuis le 18/08/2024

hello. "nombre de requêtes qui a monté en flèche" ça sent le small objects problem. si tes logs sont des petits fichiers que tu uploades un par un à chaque ligne ou chaque petit chunk tu vas faire des millions de put requests et ça coûte cher

carpentier-aurore

Membre depuis le 29/05/2024

ouais carrément. s3 facture par requête. mieux vaut agréger les logs en gros fichiers (plusieurs Mo ou Go) avant de les uploader. et si tu as beaucoup de petits updates sur des mêmes fichiers s3 c'est pas fait pour. un truc genre kinesis firehose ou fluentd/fluentbit avec des buffers seraient mieux adaptés

orenard

Membre depuis le 16/07/2024

check aussi si tu as pas activé la versioning sur le bucket. chaque version d'un log file c'est du stockage en plus. et si tu deletes pas les vieilles versions ça peut exploser vite

cecile-guyon

Membre depuis le 15/12/2024

et les classes de stockage. si tu balances tout en s3 standard alors que c'est du log qui est pas accédé souvent, un passage en intelligent-tiering ou infrequent access (ia) peut faire des économies massives sur le stockage

adrien53

Membre depuis le 18/08/2024

le intelligent-tiering est top pour ça. il va automagiquement bouger les objets entre standard et ia en fonction de l'accès. ça te sauve des tunes sans te casser la tête

carpentier-aurore

Membre depuis le 29/05/2024

une autre piste le cycle de vie du bucket. as-tu défini des règles pour purger les logs de plus de n jours ou pour archiver les plus vieux vers glacier ? sinon tu gardes tout ad vitam aeternam

marie-lebreton

Membre depuis le 03/06/2024

mince la versioning était activée par défaut ! et effectivement on upload des millions de petits fichiers à la ligne de log. je vais revoir toute la stratégie. je vais implémenter un batching pour agréger les logs et configurer le cycle de vie + intelligent-tiering. gros boulot en perspective.

marie-lebreton

Membre depuis le 03/06/2024

merci à tous pour les infos cruciales. c'est exactement ce qu'il me fallait pour comprendre et corriger le tir. la facture du mois prochain devrait être plus raisonnable !

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire