/ / Як я можу відстежувати використання папки s3 відра з python? - пітон, django, amazon-s3

Як я можу відстежувати використання каталогу S3 за допомогою python? - python, django, amazon-s3

Я будую додаток для розміщення файлів, яке зберігатимевсі клієнтські файли в папці на відрі S3. Потім я хочу відстежувати кількість використання в S3 рекурсивно за верхньою папкою, щоб стягувати витрати на зберігання та пропускну здатність для кожного відповідного клієнта.

Передня частина - це джанго, але рішення може бути пітоном з очевидних причин.

Чи краще створити відро на кожного клієнта програмно?

Якщо я все-таки підходитиму до створення відра для кожного клієнта, чи можливо тоді отримати вартість експозиції відра, якщо він включений?

Відповіді:

0 для відповіді № 1

Залежно від ваших потреб, для вашої задачі може бути кілька рішень. Спочатку погляньте, чи Amazon DevPay Відповідно до ваших потреб, це повинно дозволити клієнтам виставляти рахунки за рахунок використання ресурсів EC2 та S3.

Друга ідея полягає у використанні Звіти про активність та використання рахунків розділ вашого акаунта AWS. Доступ до цього може бути наданий через Я. Ви отримуєте детальну статистику для всього свого використання там, хоча я не думаю, що ви можете розбити це на відро.

Іншим підходом було б використання Amazon boto SDK в Python щоб отримати об’єкти та їх розміри. Або ви можете відстежувати розмір пам’яті під час завантажень у клієнтське програмне забезпечення. Завдяки комбінації ваших загальних витрат, наведених вище за методом, та відстеження використання на одного клієнта вручну, ви, ймовірно, можете обчислити суму витрат за кожного клієнта.


0 для відповіді № 2

Ні, неможливо створити відро для кожного користувача, оскільки Amazon дозволяє лише 100 відра на рахунок. Тож якщо ви впевнені, що не маєте більше 100 користувачів, це буде дуже поганою ідеєю.

Ідеальним рішенням буде запам'ятати кожногозберігання користувача у вашому додатку Django в базі даних. Я думаю, ви б використовували Sto boto-бібліотеку для зберігання файлів, ніж він повертає розмір байтів після кожного завантаження. Ви можете використовувати це для зберігання.

Існує також інший вихід, ви можете створити багато папок всередині відра з кожною папкою, специфічною для користувача. Але все-таки найкращий спосіб запам'ятати використання пам’яті у вашому додатку