Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi DLL) Azure Monitor - List Activity LogsProvides the list of records from the activity logs. Note: The $filter criteria cannot specify a time range that begins more than 90 days in the past. For more information, see https://docs.microsoft.com/en-us/rest/api/monitor/activitylogs/list
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Http, HttpResponse, JsonObject; ... procedure TForm1.Button1Click(Sender: TObject); var http: HCkHttp; jsonToken: HCkJsonObject; success: Boolean; resp: HCkHttpResponse; jsonResponse: HCkJsonObject; nextLink: PWideChar; i: Integer; count_i: Integer; authorizationAction: PWideChar; authorizationRole: PWideChar; authorizationScope: PWideChar; caller: PWideChar; claimsAud: PWideChar; claimsIss: PWideChar; claimsIat: PWideChar; claimsNbf: PWideChar; claimsExp: PWideChar; claimsVer: PWideChar; claims_identity_claims_tenantid: PWideChar; claims_claims_authnmethodsreferences: PWideChar; claims_identity_claims_objectidentifier: PWideChar; claims_ws_2005_05_identity_claims_upn: PWideChar; claimsPuid: PWideChar; claims_ws_2005_05_identity_claims_nameidentifier: PWideChar; claims_ws_2005_05_identity_claims_givenname: PWideChar; claims_ws_2005_05_identity_claims_surname: PWideChar; claimsName: PWideChar; claimsGroups: PWideChar; claims_ws_2005_05_identity_claims_name: PWideChar; claimsAppid: PWideChar; claimsAppidacr: PWideChar; claims_identity_claims_scope: PWideChar; claims_claims_authnclassreference: PWideChar; correlationId: PWideChar; description: PWideChar; eventDataId: PWideChar; eventNameValue: PWideChar; eventNameLocalizedValue: PWideChar; httpRequestClientRequestId: PWideChar; httpRequestClientIpAddress: PWideChar; httpRequestMethod: PWideChar; id: PWideChar; level: PWideChar; resourceGroupName: PWideChar; resourceProviderNameValue: PWideChar; resourceProviderNameLocalizedValue: PWideChar; operationId: PWideChar; operationNameValue: PWideChar; operationNameLocalizedValue: PWideChar; propertiesStatusCode: PWideChar; statusValue: PWideChar; statusLocalizedValue: PWideChar; subStatusValue: PWideChar; subStatusLocalizedValue: PWideChar; eventTimestamp: PWideChar; submissionTimestamp: PWideChar; subscriptionId: PWideChar; begin // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http := CkHttp_Create(); // Load an OAuth2 access token previously fetched by this example: Get Azure OAuth2 Access Token jsonToken := CkJsonObject_Create(); success := CkJsonObject_LoadFile(jsonToken,'qa_data/tokens/azureToken.json'); // Assuming success.. CkHttp_putAuthToken(http,CkJsonObject__stringOf(jsonToken,'access_token')); Memo1.Lines.Add('AuthToken: ' + CkHttp__authToken(http)); CkHttp_putAccept(http,'application/json'); resp := CkHttp_QuickRequest(http,'GET','https://management.azure.com/subscriptions/{subscriptionId}/providers/microsoft.insights/eventtypes/management/values?api-version=2015-04-01&$filter=eventTimestamp%20ge%20%272019-05-16T04%3A36%3A37.6407898Z%27%20and%20eventTimestamp%20le%20%272019-06-12T04%3A36%3A37.6407898Z%27'); if (CkHttp_getLastMethodSuccess(http) <> True) then begin Memo1.Lines.Add(CkHttp__lastErrorText(http)); Exit; end; Memo1.Lines.Add('Response Status Code: ' + IntToStr(CkHttpResponse_getStatusCode(resp))); jsonResponse := CkJsonObject_Create(); CkJsonObject_Load(jsonResponse,CkHttpResponse__bodyStr(resp)); CkJsonObject_putEmitCompact(jsonResponse,False); Memo1.Lines.Add(CkJsonObject__emit(jsonResponse)); if (CkHttpResponse_getStatusCode(resp) <> 200) then begin Memo1.Lines.Add('Failed.'); CkHttpResponse_Dispose(resp); Exit; end; CkHttpResponse_Dispose(resp); // Sample output... // (See the parsing code below..) // // Use the this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON // { // "value": [ // { // "authorization": { // "action": "microsoft.support/supporttickets/write", // "role": "Subscription Admin", // "scope": "/subscriptions/089bd33f-d4ec-47fe-8ba5-0753aa5c5b33/resourceGroups/MSSupportGroup/providers/microsoft.support/supporttickets/115012112305841" // }, // "caller": "admin@contoso.com", // "claims": { // "aud": "https://management.core.windows.net/", // "iss": "https://sts.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47/", // "iat": "1421876371", // "nbf": "1421876371", // "exp": "1421880271", // "ver": "1.0", // "http://schemas.microsoft.com/identity/claims/tenantid": "1e8d8218-c5e7-4578-9acc-9abbd5d23315 ", // "http://schemas.microsoft.com/claims/authnmethodsreferences": "pwd", // "http://schemas.microsoft.com/identity/claims/objectidentifier": "2468adf0-8211-44e3-95xq-85137af64708", // "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "admin@contoso.com", // "puid": "20030000801A118C", // "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "9vckmEGF7zDKk1YzIY8k0t1_EAPaXoeHyPRn6f413zM", // "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "John", // "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "Smith", // "name": "John Smith", // "groups": "cacfe77c-e058-4712-83qw-f9b08849fd60,7f71d11d-4c41-4b23-99d2-d32ce7aa621c,31522864-0578-4ea0-9gdc-e66cc564d18c", // "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": " admin@contoso.com", // "appid": "c44b4083-3bq0-49c1-b47d-974e53cbdf3c", // "appidacr": "2", // "http://schemas.microsoft.com/identity/claims/scope": "user_impersonation", // "http://schemas.microsoft.com/claims/authnclassreference": "1" // }, // "correlationId": "1e121103-0ba6-4300-ac9d-952bb5d0c80f", // "description": "", // "eventDataId": "44ade6b4-3813-45e6-ae27-7420a95fa2f8", // "eventName": { // "value": "EndRequest", // "localizedValue": "End request" // }, // "httpRequest": { // "clientRequestId": "27003b25-91d3-418f-8eb1-29e537dcb249", // "clientIpAddress": "192.168.35.115", // "method": "PUT" // }, // "id": "/subscriptions/089bd33f-d4ec-47fe-8ba5-0753aa5c5b33/resourceGroups/MSSupportGroup/providers/microsoft.support/supporttickets/115012112305841/events/44ade6b4-3813-45e6-ae27-7420a95fa2f8/ticks/635574752669792776", // "level": "Informational", // "resourceGroupName": "MSSupportGroup", // "resourceProviderName": { // "value": "microsoft.support", // "localizedValue": "microsoft.support" // }, // "operationId": "1e121103-0ba6-4300-ac9d-952bb5d0c80f", // "operationName": { // "value": "microsoft.support/supporttickets/write", // "localizedValue": "microsoft.support/supporttickets/write" // }, // "properties": { // "statusCode": "Created" // }, // "status": { // "value": "Succeeded", // "localizedValue": "Succeeded" // }, // "subStatus": { // "value": "Created", // "localizedValue": "Created (HTTP Status Code: 201)" // }, // "eventTimestamp": "2015-01-21T22:14:26.9792776Z", // "submissionTimestamp": "2015-01-21T22:14:39.9936304Z", // "subscriptionId": "089bd33f-d4ec-47fe-8ba5-0753aa5c5b33" // } // ], // "nextLink": "https://management.azure.com/########-####-####-####-############$skiptoken=######" // } // nextLink := CkJsonObject__stringOf(jsonResponse,'nextLink'); i := 0; count_i := CkJsonObject_SizeOfArray(jsonResponse,'value'); while i < count_i do begin CkJsonObject_putI(jsonResponse,i); authorizationAction := CkJsonObject__stringOf(jsonResponse,'value[i].authorization.action'); authorizationRole := CkJsonObject__stringOf(jsonResponse,'value[i].authorization.role'); authorizationScope := CkJsonObject__stringOf(jsonResponse,'value[i].authorization.scope'); caller := CkJsonObject__stringOf(jsonResponse,'value[i].caller'); claimsAud := CkJsonObject__stringOf(jsonResponse,'value[i].claims.aud'); claimsIss := CkJsonObject__stringOf(jsonResponse,'value[i].claims.iss'); claimsIat := CkJsonObject__stringOf(jsonResponse,'value[i].claims.iat'); claimsNbf := CkJsonObject__stringOf(jsonResponse,'value[i].claims.nbf'); claimsExp := CkJsonObject__stringOf(jsonResponse,'value[i].claims.exp'); claimsVer := CkJsonObject__stringOf(jsonResponse,'value[i].claims.ver'); claims_identity_claims_tenantid := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.microsoft.com/identity/claims/tenantid"'); claims_claims_authnmethodsreferences := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.microsoft.com/claims/authnmethodsreferences"'); claims_identity_claims_objectidentifier := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.microsoft.com/identity/claims/objectidentifier"'); claims_ws_2005_05_identity_claims_upn := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn"'); claimsPuid := CkJsonObject__stringOf(jsonResponse,'value[i].claims.puid'); claims_ws_2005_05_identity_claims_nameidentifier := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier"'); claims_ws_2005_05_identity_claims_givenname := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"'); claims_ws_2005_05_identity_claims_surname := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname"'); claimsName := CkJsonObject__stringOf(jsonResponse,'value[i].claims.name'); claimsGroups := CkJsonObject__stringOf(jsonResponse,'value[i].claims.groups'); claims_ws_2005_05_identity_claims_name := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"'); claimsAppid := CkJsonObject__stringOf(jsonResponse,'value[i].claims.appid'); claimsAppidacr := CkJsonObject__stringOf(jsonResponse,'value[i].claims.appidacr'); claims_identity_claims_scope := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.microsoft.com/identity/claims/scope"'); claims_claims_authnclassreference := CkJsonObject__stringOf(jsonResponse,'value[i].claims."http://schemas.microsoft.com/claims/authnclassreference"'); correlationId := CkJsonObject__stringOf(jsonResponse,'value[i].correlationId'); description := CkJsonObject__stringOf(jsonResponse,'value[i].description'); eventDataId := CkJsonObject__stringOf(jsonResponse,'value[i].eventDataId'); eventNameValue := CkJsonObject__stringOf(jsonResponse,'value[i].eventName.value'); eventNameLocalizedValue := CkJsonObject__stringOf(jsonResponse,'value[i].eventName.localizedValue'); httpRequestClientRequestId := CkJsonObject__stringOf(jsonResponse,'value[i].httpRequest.clientRequestId'); httpRequestClientIpAddress := CkJsonObject__stringOf(jsonResponse,'value[i].httpRequest.clientIpAddress'); httpRequestMethod := CkJsonObject__stringOf(jsonResponse,'value[i].httpRequest.method'); id := CkJsonObject__stringOf(jsonResponse,'value[i].id'); level := CkJsonObject__stringOf(jsonResponse,'value[i].level'); resourceGroupName := CkJsonObject__stringOf(jsonResponse,'value[i].resourceGroupName'); resourceProviderNameValue := CkJsonObject__stringOf(jsonResponse,'value[i].resourceProviderName.value'); resourceProviderNameLocalizedValue := CkJsonObject__stringOf(jsonResponse,'value[i].resourceProviderName.localizedValue'); operationId := CkJsonObject__stringOf(jsonResponse,'value[i].operationId'); operationNameValue := CkJsonObject__stringOf(jsonResponse,'value[i].operationName.value'); operationNameLocalizedValue := CkJsonObject__stringOf(jsonResponse,'value[i].operationName.localizedValue'); propertiesStatusCode := CkJsonObject__stringOf(jsonResponse,'value[i].properties.statusCode'); statusValue := CkJsonObject__stringOf(jsonResponse,'value[i].status.value'); statusLocalizedValue := CkJsonObject__stringOf(jsonResponse,'value[i].status.localizedValue'); subStatusValue := CkJsonObject__stringOf(jsonResponse,'value[i].subStatus.value'); subStatusLocalizedValue := CkJsonObject__stringOf(jsonResponse,'value[i].subStatus.localizedValue'); eventTimestamp := CkJsonObject__stringOf(jsonResponse,'value[i].eventTimestamp'); submissionTimestamp := CkJsonObject__stringOf(jsonResponse,'value[i].submissionTimestamp'); subscriptionId := CkJsonObject__stringOf(jsonResponse,'value[i].subscriptionId'); i := i + 1; end; CkHttp_Dispose(http); CkJsonObject_Dispose(jsonToken); CkJsonObject_Dispose(jsonResponse); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.