private static async Task <string> CreateLog(LoggingManagementClient client, string logGroup, string logDisplayName) { CreateLogRequest createLogRequest = new CreateLogRequest { LogGroupId = logGroup, // Create a createLogDetails to pass to Create Log Request CreateLogDetails = new CreateLogDetails { DisplayName = logDisplayName, LogType = CreateLogDetails.LogTypeEnum.Custom } }; // Pass createLogRequest to client to create the log logger.Info($"Creating Log {logDisplayName}"); logger.Info("============="); CreateLogResponse createLogResponse = await client.CreateLog(createLogRequest); string workRequestId = createLogResponse.OpcWorkRequestId; logger.Info($"CreateLog work request ID is {workRequestId}"); GetWorkRequestResponse workRequestResponse = WaitForWorkRequestFinished(client, workRequestId); string logId = GetLogId(workRequestResponse); logger.Info($"Created Log: {logDisplayName} under Log Group: {logGroup} with Log OCID:{logId}"); return(logId); }
protected override void ProcessRecord() { base.ProcessRecord(); try { client?.Dispose(); int timeout = GetPreferredTimeout(); WriteDebug($"Cmdlet Timeout : {timeout} milliseconds."); client = new LoggingManagementClient(AuthProvider, new Oci.Common.ClientConfiguration { RetryConfiguration = retryConfig, TimeoutMillis = timeout, ClientUserAgent = PSUserAgent }); string region = GetPreferredRegion(); if (region != null) { WriteDebug("Choosing Region:" + region); client.SetRegion(region); } if (Endpoint != null) { WriteDebug("Choosing Endpoint:" + Endpoint); client.SetEndpoint(Endpoint); } } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }
/** * Wait for a work request to finish * @param LoggingManagementClient the service client to use to get work request * @param workRequestId the id of work request * * @return a work request response object */ private static GetWorkRequestResponse WaitForWorkRequestFinished(LoggingManagementClient client, string workRequestId) { var waiterConfiguration = new WaiterConfiguration { MaxAttempts = 20, GetNextDelayInSeconds = DelayStrategy.GetExponentialDelayInSeconds }; GetWorkRequestRequest getWorkRequest = new GetWorkRequestRequest { WorkRequestId = workRequestId }; return(client.Waiters.ForWorkRequest(getWorkRequest, waiterConfiguration, OperationStatus.Succeeded).Execute()); }
private static async Task ListLogs(LoggingManagementClient client, string logGroup) { ListLogsRequest listLogsRequest = new ListLogsRequest { LogGroupId = logGroup }; // Pass the log group whose logs you want to list ListLogsResponse response = await client.ListLogs(listLogsRequest); logger.Info("List Logs"); logger.Info("============="); foreach (LogSummary logSummary in response.Items) { logger.Info($"Log Display Name: {logSummary.DisplayName}, Log Type:{logSummary.LogType}"); } }
private static async Task DeleteLog(LoggingManagementClient client, string logGroupId, string logId) { DeleteLogRequest deleteLogRequest = new DeleteLogRequest { LogGroupId = logGroupId, LogId = logId }; // Pass deleteLogRequest to client to delete the log logger.Info($"Deleting Log {logId}"); logger.Info("============="); DeleteLogResponse response = await client.DeleteLog(deleteLogRequest); string workRequestId = response.OpcWorkRequestId; WaitForWorkRequestFinished(client, workRequestId); logger.Info("Log deleted"); }
public static async Task MainLogging() { string compartmentId = Environment.GetEnvironmentVariable("OCI_COMPARTMENT_ID"); string logGroupId = Environment.GetEnvironmentVariable("OCI_LOG_GROUP"); string logDisplayName = "oci-dotnet-sdk-example-log"; // Accepts profile name and creates a auth provider based on config file var provider = new ConfigFileAuthenticationDetailsProvider(OciConfigProfileName); // Create clients for the service to enable using its APIs var logManagementClient = new LoggingManagementClient(provider, new ClientConfiguration()); var logIngestionclient = new LoggingClient(provider, new ClientConfiguration()); var logSearchClient = new LogSearchClient(provider, new ClientConfiguration()); try { string logId = await CreateLog(logManagementClient, logGroupId, logDisplayName); //string logId = "ocid1.log.oc1.phx.amaaaaaaogrv47iah6om32dahq3g4p6sleadbnsyptckvirmilizekvjptza"; await ListLogs(logManagementClient, logGroupId); await GetLog(logManagementClient, logGroupId, logId); // Wait for log to be accessible System.Threading.Thread.Sleep(50000); await PutLogDetails(logIngestionclient, logId); // Wait for PutLogs to ingest Logs System.Threading.Thread.Sleep(20000); await SearchLog(logSearchClient, compartmentId, logGroupId, logId); await DeleteLog(logManagementClient, logGroupId, logId); } catch (Exception e) { logger.Info($"Received exception due to {e.Message}"); } finally { logManagementClient.Dispose(); logIngestionclient.Dispose(); logSearchClient.Dispose(); } }
private static async Task GetLog(LoggingManagementClient client, string logGroupId, string logId) { GetLogRequest getLogRequest = new GetLogRequest { LogGroupId = logGroupId, LogId = logId }; logger.Info("Getting log Details for this Log"); logger.Info("============="); GetLogResponse getLogResponse = await client.GetLog(getLogRequest); Log log = getLogResponse.Log; logger.Info($"Name:{log.DisplayName}"); logger.Info($"Log ID:{log.Id}"); logger.Info($"Log Group ID:{log.LogGroupId}"); logger.Info($"Log Lifecycle State:{log.LifecycleState}"); logger.Info($"Time Created:{log.TimeCreated}"); logger.Info($"Time Last Modified:{log.TimeLastModified}"); logger.Info($"Retention Duration:{log.RetentionDuration} days"); }
public LoggingManagementWaiters(LoggingManagementClient client) { this.client = client; }
public LoggingManagementPaginators(LoggingManagementClient client) { this.client = client; }