Tous les produits
Search
Centre de documentation

Object Storage Service:Stockage des journaux (SDK Android)

Dernière mise à jour :Aug 18, 2026

La journalisation des accès d'Object Storage Service (OSS) enregistre des informations détaillées sur les requêtes adressées à vos buckets. Une fois la journalisation activée pour un bucket source, OSS génère et transmet automatiquement des fichiers de journaux toutes les heures vers un bucket de destination que vous spécifiez, selon une convention de nommage prédéfinie.

Remarques d'utilisation

  • Avant d'exécuter l'exemple de code de cette rubrique, créez une instance OSSClient, par exemple en utilisant un nom de domaine personnalisé ou le Security Token Service (STS). Pour plus d'informations, consultez Initialisation (SDK Android).

Remarque

Après avoir appelé une opération API pour activer ou désactiver le stockage des journaux, actualisez la page pour voir la modification. Le changement d'onglet ne met pas à jour l'affichage.

Activer le stockage des journaux

L'exemple de code suivant active le stockage des journaux pour un bucket.

PutBucketLoggingRequest request = new PutBucketLoggingRequest();
// Specify the source bucket for which to enable access logging.
request.setBucketName("yourSourceBucketName");
// Specify the destination bucket to store access logs.
// The destination bucket and the source bucket must be in the same region. The source and destination buckets can be the same or different.
request.setTargetBucketName("yourTargetBucketName");
// Set the folder where the log files are stored.
request.setTargetPrefix("<yourTargetPrefix>");

OSSAsyncTask task = oss.asyncPutBucketLogging(request, new OSSCompletedCallback<PutBucketLoggingRequest, PutBucketLoggingResult>() {
    @Override
    public void onSuccess(PutBucketLoggingRequest request, PutBucketLoggingResult result) {
        OSSLog.logInfo("code::"+result.getStatusCode());
    }

    @Override
    public void onFailure(PutBucketLoggingRequest request, ClientException clientException, ServiceException serviceException) {
         OSSLog.logError("error: "+serviceException.getRawMessage());
    }
});
task.waitUntilFinished();

Consulter les configurations de stockage des journaux

L'exemple de code suivant permet de consulter les configurations de stockage des journaux.

Remarque

En cas de succès, la sortie utilise le format testBucket*path, où testBucket correspond au nom du bucket et path au chemin de stockage.

GetBucketLoggingRequest request = new GetBucketLoggingRequest();
request.setBucketName("yourSourceBucketName");
OSSAsyncTask task = oss.asyncGetBucketLogging(request, new OSSCompletedCallback<GetBucketLoggingRequest, GetBucketLoggingResult>() {
    @Override
    public void onSuccess(GetBucketLoggingRequest request, GetBucketLoggingResult result) {
        Log.i("i", "info: " + result.getTargetBucketName()+"*"+result.getTargetPrefix());

    }

    @Override
    public void onFailure(GetBucketLoggingRequest request, ClientException clientException, ServiceException serviceException) {
       // Request error.
              if (clientException != null) {
                  // Client exception, such as a network error.
                  clientException.printStackTrace();
              }
              if (serviceException != null) {
                  // Server exception.
                  Log.e("ErrorCode", serviceException.getErrorCode());
                  Log.e("RequestId", serviceException.getRequestId());
                  Log.e("HostId", serviceException.getHostId());
                  Log.e("RawMessage", serviceException.getRawMessage());
              }
    }
});
task.waitUntilFinished();

Désactiver le stockage des journaux

L'exemple de code suivant désactive le stockage des journaux pour un bucket.

DeleteBucketLoggingRequest request = new DeleteBucketLoggingRequest();
request.setBucketName("yourSourceBucketName");
OSSAsyncTask task = oss.asyncDeleteBucketLogging(request, new OSSCompletedCallback<DeleteBucketLoggingRequest, DeleteBucketLoggingResult>() {
    @Override
    public void onSuccess(DeleteBucketLoggingRequest request, DeleteBucketLoggingResult result) {
        Log.i("i", "code:"+result.getStatusCode());

    }

    @Override
    public void onFailure(DeleteBucketLoggingRequest request, ClientException clientException, ServiceException serviceException) {
        // Request error.
              if (clientException != null) {
                  // Client exception, such as a network error.
                  clientException.printStackTrace();
              }
              if (serviceException != null) {
                  // Server exception.
                  Log.e("ErrorCode", serviceException.getErrorCode());
                  Log.e("RequestId", serviceException.getRequestId());
                  Log.e("HostId", serviceException.getHostId());
                  Log.e("RawMessage", serviceException.getRawMessage());
              }
    }
});

task.waitUntilFinished();
            

Références