microsoftgraph / microsoftgraph/msgraph-beta-sdk-java

Cannot delete audit log query using

オープン
#1,162 コメント 1 件 リアクション 1 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

type:bug
主要言語
Java
スター
32
フォーク
14
平均マージ
1日 3時間
マージ済み PR(30日)
6

説明

Describe the bug

Using the com.microsoft.graph.beta.serviceclient.GraphServiceClient as betaGraphClient
I can successfully create audit log queries using betaGraphClient.security().auditLog().queries().post(auditLogQuery) but cannot delete the queries using betaGraphClient.security().auditLog().queries().byAuditLogQueryId(queryId).delete()
The call fails with

com.microsoft.graph.beta.models.odataerrors.ODataError: {"message":"No HTTP resource was found that matches the request URI 'https://o365adtsearchapi-na002-es.westus.cloudapp.azure.com/security/auditLog/queries('9032b6a1-04bb-440e-973f-637ddc63bac8')'.","messageDetail":"No type was found that matches the controller named 'queries'."}
        at com.microsoft.graph.beta.models.odataerrors.ODataError.createFromDiscriminatorValue(ODataError.java:36)
        at com.microsoft.kiota.serialization.JsonParseNode.getObjectValue(JsonParseNode.java:212)
        at com.microsoft.kiota.http.OkHttpRequestAdapter.lambda$throwIfFailedResponse$0(OkHttpRequestAdapter.java:673)
        at com.microsoft.kiota.ApiExceptionBuilder.<init>(ApiExceptionBuilder.java:26)
        at com.microsoft.kiota.http.OkHttpRequestAdapter.throwIfFailedResponse(OkHttpRequestAdapter.java:672)
        at com.microsoft.kiota.http.OkHttpRequestAdapter.sendPrimitive(OkHttpRequestAdapter.java:342)
        at com.microsoft.graph.beta.security.auditlog.queries.item.AuditLogQueryItemRequestBuilder.delete(AuditLogQueryItemRequestBuilder.java:64)
        at com.microsoft.graph.beta.security.auditlog.queries.item.AuditLogQueryItemRequestBuilder.delete(AuditLogQueryItemRequestBuilder.java:53)
Expected behavior

Able to delete an audit log query

How to reproduce
        // Build a ClientSecretCredential for authentication
        ClientSecretCredential clientSecretCredential = new ClientSecretCredentialBuilder()
                .clientId(clientId)
                .tenantId(tenantId)
                .clientSecret(clientSecret)
                .build();
        com.microsoft.graph.beta.serviceclient.GraphServiceClient betaGraphClient = new com.microsoft.graph.beta.serviceclient.GraphServiceClient(
                clientSecretCredential, scopes);
        com.microsoft.graph.beta.models.security.AuditLogQuery auditLogQuery = new com.microsoft.graph.beta.models.security.AuditLogQuery();
        auditLogQuery.setOdataType("#microsoft.graph.security.auditLogQuery");
        auditLogQuery.setDisplayName("Test query");
        auditLogQuery.setFilterStartDateTime("2025-04-20T00:00:00Z");
        auditLogQuery.setFilterEndDateTime("2025-04-20T01:00:00Z");
        // submit the query
        AuditLogQuery auditLogQuerySubmitted = betaGraphClient.security().auditLog().queries().post(auditLogQuery);
        String queryId = auditLogQuerySubmitted.getId();
        // wait for completion
        // delete the query
        betaGraphClient.security().auditLog().queries().byAuditLogQueryId(queryId).delete();
SDK Version

6.36.0

Latest version known to work for scenario above?

No response

Known Workarounds

none

Debug output
Click to expand log ```
</details>


### Configuration

_No response_

### Other information

_No response_

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

スタックトレースで参照されている AuditLogQueryItemRequestBuilder.java の生成された削除パスから始め、監査ログクエリの作成時に使用されるリクエストパスと比較します。SDK 6.36.0 に対する再現を使用して、生成されたリクエストが削除用のサービスエンドポイントと一致するかを検証します。作成したクエリを OData リソースエラーなしで削除できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java
領域
api
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。