/ / Как мога да проследявам използването на папка s3 с python? - питон, django, amazon-s3

Как мога да проследя използването на пакета с кошче с Python? - питън, джанго, амазон-s3

Аз изграждам приложение за хостинг на файлове, което ще съхранявавсички клиентски файлове в папка на S3 кофа. След това искам да проследя размера на използването на S3 рекурсивно за всяка папка, за да начислявам обратно разходите за съхранение и честотна лента на всеки съответен клиент.

Front-end е django, но решението може да бъде python по очевидни причини.

По-добре ли е да се създаде кофа за клиент програмно?

Ако се придържам към подхода за създаване на кофа за клиент, възможно ли е тогава да получим цената на експозицията на облака, ако е активирана?

Отговори:

0 за отговор № 1

В зависимост от вашите нужди, може да има множество решения за вашата задача. Първо вижте дали Amazon DevPay отговаря на вашите нужди, това трябва да позволи на клиентите да фактурират чрез използването на ресурсите EC2 и S3.

Втората идея е да се използва Отчети за активност и използване на профила от вашия акаунт на AWS. Достъп до това може да бъде предоставен чрез АЗ СЪМ, Вие получавате подробна статистика за цялото ви ползване там, въпреки че не мисля, че можете да разградите това с кофа.

Друг подход би бил използването на Amazon boto SDK в Python за да получите предметите и техните размери. Или можете да наблюдавате размера на паметта по време на качването в клиентския софтуер. С комбинация от общите ви разходи, дадени с метода по-горе и проследяване на използването на клиент ръчно, вероятно можете да изчислите размера на таксите за всеки клиент.


0 за отговор № 2

Не е възможно да се създаде кофа за всеки потребител, тъй като Amazon позволява само 100 кофи за сметка. Така че, освен ако не сте сигурни, че нямате повече от 100 потребители, това ще бъде много лоша идея.

Идеалното решение е да запомните всекисъхранение на потребителя в себе си Django самото приложение в базата данни. Предполагам, че ще използвате S3 boto библиотека за съхраняване на файловете, отколкото ще върне размера на байта след всяко качване.

Има и друг изход, който можете да създадете в папка с всяка папка, специфична за даден потребител. Но все пак най-добрият начин да запомните използването на хранилището в приложението си