GetBucketInventory işlemi, bir paket için belirtilen envanter yapılandırmasını sorgular.
Kullanım notları
Varsayılan olarak, bir Alibaba Cloud hesabı bir paketin belirtilen envanter yapılandırmasını görüntüleme iznine sahiptir. Bu işlemi bir Resource Access Management (RAM) kullanıcısı olarak veya Security Token Service (STS) kullanarak çağırmak için oss:GetBucketInventory iznine sahip olmanız gerekir.
İstek sözdizimi
GET /?inventory&inventoryId=inventoryId HTTP/1.1
İstek parametreleri
| Parametre | Tür | Gerekli | Açıklama |
inventoryId |
string | Evet | Sorgulanacak envanter kuralının kimliği. |
Yanıt öğeleri
Aşağıdaki tabloda yanıtta döndürülen öğeler açıklanmaktadır. Bazı öğeler yalnızca belirli envanter yapılandırmaları için geçerlidir. Örneğin, DayOfMonth yalnızca Frequency değeri Monthly olarak ayarlandığında geçerlidir ve AutoDelete yalnızca Frequency değeri Once olarak ayarlandığında geçerlidir. Artımlı envanterlere özgü öğeler aşağıdaki alt bölümde açıklanmıştır.
| Öğe | Tür | Açıklama |
Id |
string | Envanterin kullanıcı tarafından belirtilen adı. Ad, paket içinde benzersiz olmalıdır. |
IsEnabled |
boolean | Envanterin etkin olup olmadığını belirtir. Geçerli değerler: true ve false. Değer true ise envanter özelliği çalışır. Değer false ise envanter oluşturulmaz. |
Filter |
container | Envanteri filtrelemek için kullanılan önek. Bir önek belirtilirse envanter yalnızca adları bu önekle eşleşen nesneleri içerir. |
Prefix |
string | Filtre kuralının eşleşen öneki. Üst düğüm: Filter |
Destination |
container | Envanter sonuçlarının depolandığı konumla ilgili bilgiler. |
OSSBucketDestination |
container | Dışa aktarılan envanter sonuçlarının depolandığı paketle ilgili bilgiler. Üst düğüm: Destination |
Format |
string | Dışa aktarılan envanter dosyasının biçimi. Geçerli değerler: CSV ve Parquet. Parquet biçimi şu anda yalnızca UK (London) bölgesinde desteklenmektedir. Üst düğüm: OSSBucketDestination |
AccountId |
string | Paket sahibi tarafından yetkilendirilen hesap kimliği. Üst düğüm: OSSBucketDestination |
RoleArn |
string | Paket sahibi tarafından işlem izinleri için yetkilendirilen rolün adı. Biçim: acs:ram::uid:role/rolename Üst düğüm: OSSBucketDestination |
Bucket |
string | Dışa aktarılan envanter dosyasının depolandığı paket. Üst düğüm: OSSBucketDestination |
Prefix |
string | Envanter dosyası için depolama yolunun öneki. Üst düğüm: OSSBucketDestination |
Encryption |
container | Envanter dosyasının şifreleme yöntemi. Geçerli değerler: SSE-OSS ve SSE-KMS. Envanter dosyası şifrelenmemişse bu öğe boştur. Üst düğüm: OSSBucketDestination |
SSE-OSS |
container | SSE-OSS şifreleme yöntemi için kapsayıcı. Üst düğüm: Encryption |
SSE-KMS |
container | SSE-KMS şifreleme yönteminde kullanılan anahtar için kapsayıcı. Üst düğüm: Encryption |
KeyId |
string | KMS anahtarının kimliği. Üst düğüm: SSE-KMS |
Schedule |
container | Envanter dışa aktarma zamanlama bilgileri için kapsayıcı. |
Frequency |
string | Envanter dosyasını dışa aktarma zamanlaması. Geçerli değerler: Daily, Weekly, Monthly ve Once. Üst düğüm: Schedule |
DayOfMonth |
pozitif tamsayı | Envanterin dışa aktarıldığı ayın günü. Bu öğe yalnızca Frequency değeri Monthly olarak ayarlandığında geçerlidir. Geçerli değerler: 1 ile 31 arası. Üst düğüm: Schedule |
AutoDelete |
boolean | Tek seferlik envanter çalıştırması tamamlandıktan sonra envanter yapılandırmasının otomatik olarak silinip silinmeyeceğini belirtir. Bu öğe yalnızca Frequency değeri Once olarak ayarlandığında mevcuttur. Geçerli değerler: true ve false. Üst düğüm: Schedule |
IncludedObjectVersions |
string | Envantere nesne sürüm bilgilerinin dahil edilip edilmeyeceğini belirtir. Geçerli değerler: All ve Current. Değer All ise nesnenin tüm sürümlerine ait sürüm bilgileri dışa aktarılır. Değer Current ise nesnenin geçerli sürümüne ait sürüm bilgileri dışa aktarılır. |
OptionalFields |
container | Envanter sonuçlarına dahil edilecek yapılandırma öğeleri. |
Field |
string | Envanter sonuçlarına dahil edilen yapılandırma öğeleri. İsteğe bağlı yapılandırma öğeleri: Size, LastModifiedDate, TransitionTime, ETag, StorageClass, IsMultipartUploaded, EncryptionStatus, ObjectAcl, TaggingCount, ObjectType ve Crc64. Üst düğüm: OptionalFields |
Artımlı envanter öğeleri
Aşağıdaki tabloda artımlı envanterlere özgü öğeler açıklanmaktadır.
| Öğe | Tür | Açıklama |
IncrementalInventory |
container | Artımlı envanterin yapılandırma bilgileri. |
IsEnabled |
boolean | Artımlı envanterin etkinleştirilip etkinleştirilmeyeceğini belirtir. Geçerli değerler: true (etkin) ve false (devre dışı). Değer true olduğunda artımlı envanter özelliği etkinleşir ve üst öğenin false olarak ayarlanmasından etkilenmez. Üst düğüm: IncrementalInventory |
Schedule |
container | Artımlı envanter dışa aktarma zamanlaması. Üst düğüm: IncrementalInventory |
Frequency |
pozitif tamsayı | Artımlı envanterin dışa aktarma sıklığı (saniye cinsinden). Sistem şu anda sabit bir 600 saniyelik periyot kullanır. Her periyotta sistem otomatik olarak bir dizin öneki oluşturur ve ilgili manifest dosyasını ile o periyotta üretilen birden fazla CSV dosyasını oluşturur. Özel sıklık ayarları desteklenmez. Üst düğüm: Schedule |
OptionalFields |
container | Artımlı envantere dahil edilecek yapılandırma öğeleri. Üst düğüm: IncrementalInventory |
Field |
string | Artımlı envantere dahil edilen yapılandırma öğeleri. Üst düğüm: OptionalFields |
Artımlı envanter kayıt alanları
Aşağıdaki alanlar bir artımlı envanter dosyasındaki kayıtları açıklar:
SequenceNumber: Kaydın seri numarası. Her kaydınSequenceNumberdeğeri benzersizdir. Aynı paketteki aynı nesneye ait kayıtlarSequenceNumberdeğerine göre sıralanabilir ve sıralanan kayıtlar genellikle kronolojik sırada olur.-
RecordType: Olay türü. Geçerli değerler:CREATE: Seçilen önek altında gerçekleşen tüm yükleme işlemleri; örneğinPut,Post,Append,MultipartUploadveCopy.UPDATE_METADATA: Seçilen önek altındaki tüm meta veri güncellemeleri.DELETE: Seçilen önek altındaki nesnelerin tüm silme işlemleri; örneğinDeleteObjectveDeleteMultipleObjects, sürüm oluşturma etkinleştirildikten sonra bir silme işaretçisinin oluşturulması ve yaşam döngüsü tabanlı silme. Silme işlemleri arasında silme işaretçisi oluşturma ve kalıcı silme bulunur. Kalıcı silme durumunda kayıt yalnızcaBucket,Key,SequenceNumber,RecordType,RecordTimestampveVersionIdtemel alanlarını korur ve diğer tüm sütunlar null olur.
RecordTimestamp: Kaydın zaman damgası (Greenwich Ortalama Saati, milisaniye hassasiyetinde). Örnek:2024-08-25 18:08:01.024.Requester: İsteği yapan kişinin Alibaba Cloud kimliği veya Principal ID'si.RequestId: İsteğin benzersiz tanımlayıcısı.SourceIp: İsteği yapan kişinin kaynak IP adresi.Key: Paketteki nesnenin URL kodlamalı adı.-
VersionId: Nesnenin sürüm kimliği. Bu alan yalnızca yapılandırılan envanter kuralı tüm sürümleri dışa aktardığında görünür.Envanter kuralının yapılandırıldığı pakette sürüm oluşturma etkin değilse bu alan boş olur.
Envanter kuralının yapılandırıldığı pakette sürüm oluşturma etkinse bu alan nesnenin
VersionIddeğerini gösterir.
-
IsDeleteMarker: Nesne sürümünün bir silme işaretçisi olup olmadığını belirtir. Bu alan yalnızca yapılandırılan envanter kuralı tüm sürümleri dışa aktardığında görünür.Envanter kuralının yapılandırıldığı pakette sürüm oluşturma etkin değilse bu alan varsayılan olarak
falsedeğerini alır.Envanter kuralının yapılandırıldığı pakette sürüm oluşturma etkinse nesne bir silme işaretçisi olduğunda bu alan
true, silme işaretçisi olmadığındafalseolur.
Size: Nesnenin boyutu.StorageClass: Nesnenin depolama sınıfı.LastModifiedDate: Nesnenin son değiştirilme tarihi.-
ETag: Nesnenin ETag değeri. ETag, nesne oluşturulduğunda oluşturulur ve nesnenin içeriğini tanımlar.PutObject işlemi kullanılarak oluşturulan bir nesne için ETag, içeriğinin MD5 karmasıdır.
Diğer yöntemler kullanılarak oluşturulan bir nesne için ETag, belirli hesaplama kurallarına göre oluşturulan benzersiz bir değerdir ve içeriğinin MD5 karması değildir.
IsMultipartUploaded: Nesnenin çok parçalı yükleme kullanılarak yüklenip yüklenmediğini belirtir.ObjectType: Nesnenin türü.ObjectAcl: Nesnenin erişim kontrol listesi.Crc64: Nesnenin CRC-64 değeri.EncryptionStatus: Nesnenin şifrelenip şifrelenmediğini belirtir.
Örnekler
Örnek istek
GET /?inventory&inventoryId=report1 HTTP/1.1
Örnek yanıt
HTTP/1.1 200 OK
x-oss-request-id: 56594298207FB304438516F9
Date: Mon, 31 Oct 2016 12:00:00 GMT
Server: AliyunOSS
Content-Length: length
<?xml version="1.0" encoding="UTF-8"?>
<InventoryConfiguration>
<Id>report1</Id>
<IsEnabled>true</IsEnabled>
<Destination>
<OSSBucketDestination>
<Format>CSV</Format>
<AccountId>1000000000000000</AccountId>
<RoleArn>acs:ram::1000000000000000:role/AliyunOSSRole</RoleArn>
<Bucket>acs:oss:::bucket_0001</Bucket>
<Prefix>prefix1</Prefix>
<Encryption>
<SSE-OSS/>
</Encryption>
</OSSBucketDestination>
</Destination>
<Schedule>
<Frequency>Daily</Frequency>
</Schedule>
<Filter>
<Prefix>myprefix/</Prefix>
</Filter>
<IncludedObjectVersions>All</IncludedObjectVersions>
<OptionalFields>
<Field>Size</Field>
<Field>LastModifiedDate</Field>
<Field>ETag</Field>
<Field>StorageClass</Field>
<Field>IsMultipartUploaded</Field>
<Field>EncryptionStatus</Field>
</OptionalFields>
</InventoryConfiguration>
SDK'ler
Aşağıdaki SDK'ler bu işlemi destekler:
ossutil CLI
GetBucketInventory işlemine karşılık gelen ossutil komutu için bkz. get-bucket-inventory.