Respondendo a minha própria pergunta com: Houve uploads de várias partes abandonados que foram contados corretamente no CloudWatch.
Eu uso as ferramentas awscli para verificar o tamanho dos meus buckets. Primeiro a chamada S3 (todos os arquivos sem versionamento, apenas um upload normal):
$ aws s3 ls s3://XXX --recursive --human-readable --summarize
(...)
Total Objects: 2
Total Size: 82.5 GiB
Então usei a métrica CloudWatch:
$ aws cloudwatch get-metric-statistics --namespace "AWS/S3" --start-time 2015-08-29 --end-time 2015-08-31 --metric-name BucketSizeBytes --period 3600 --statistics Average --unit Bytes --dimensions Name=BucketName,Value=XXX Name=StorageType,Value=StandardStorage
{
"Datapoints": [
{
"Timestamp": "2015-08-30T00:00:00Z",
"Average": 141012339184.0,
"Unit": "Bytes"
}, (...)
Agora estou me perguntando por que o CloudWatch mostra um número muito maior do que a chamada S3. Eu não encontrei nenhuma dica da documentação e, portanto, ficaria grato se alguém pudesse ajudar.
(Os mesmos números são mostrados no console de gerenciamento; cerca de 82,5 GiB no console do S3 e 141,012,339,184 bytes no console do CloudWatch).