Monitoring and Managing System Activity

The 'Log' section in the Babel Licensing API is a vital component for overseeing and managing the system's operational data. This section provides functionalities to query log entries within the Babel Licensing Database, making it an indispensable tool for monitoring system activities and maintaining data integrity.

Key Functions and Importance of the Log Section:

  1. Monitoring License Transactions: The Log captures all license transactions made by client applications. This includes requests for license checks, activations, floating license requests, and any other licensing-related interactions. By analyzing these log entries, administrators can gain valuable insights into licensing usage patterns, detect any anomalies, and ensure compliance with licensing terms.

  2. Tracking Management API Calls: In addition to licensing transactions, the Log also records calls made to management API endpoints. This includes operations like creating, updating, or deleting API keys, customers, products, and licenses. This feature is crucial for auditing changes made to the system and understanding the administrative actions performed over time.


Roles: Administrator, LicenseManager, Sales

The GET method in the Log section is designed to retrieve log entries from the Babel Licensing Database. This function allows users to access detailed records of all activities and transactions within the system. It's an essential tool for system administrators and auditors to monitor licensing transactions by client applications, as well as management operations performed through the API.


using System.Net.Http;
using Babel.Licensing.Service.Management;

using var httpClient = CreateHttpClient();
var get = new GetLogRequest();

get.Filter = "Level=\"Warning\"";
get.StartDate = DateTime.Now.Subtract(TimeSpan.FromDays(1)).ToTimestamp();

var httpMessage = MakeApiRequest(get, HttpMethod.Get, "/v1/logs");

var result = await httpClient.SendAsync(httpMessage);
var getResponse = await ParseResponseAsync<GetLogResponse>(result);


Roles: Administrator

The DELETE method in the Log section enables the removal of specific log entries from the Babel Licensing Database. This functionality is crucial for maintaining the log’s relevance and manageability, allowing administrators to clear outdated or unnecessary data.

To completely reset the log set deleteAll to true in the DeleteLogRequest

var delete = new DeleteLogRequest();
delete.DeleteAll = true;
curl -X 'DELETE' \
  'https://localhost:5455/v1/log?deleteAll=true' \
  -H 'accept: application/json' \
  -H 'x-api-key: ApiKey'

Last updated