public async void SaveHttpRequestAudit(HttpRequestAudit httpRequestAudit) { var blobSafeResult = await GetPersistenceManager(PersistenceTechnologies.AZURE_BLOBS).GetHttpRequestAuditDao().Save(httpRequestAudit); if (blobSafeResult) { _ = GetPersistenceManager(PersistenceTechnologies.AZURE_TABLE_STORAGE).GetHttpRequestAuditDao().Save(httpRequestAudit); } }
public HttpRequestAuditDto(HttpRequestAudit httpRequestAudit) { PartitionKey = httpRequestAudit.Id.ToString(); RowKey = Guid.NewGuid().ToString(); ETag = "*"; CreationDate = httpRequestAudit.CreatedDate; BlobUrl = httpRequestAudit.BlobUrl; Login = httpRequestAudit.Login; ClientIP = httpRequestAudit.ClientIP; UrlRequest = httpRequestAudit.UrlRequest; }
public async Task <bool> Save(HttpRequestAudit httpRequestAudit) { var accountConnectionString = "DefaultEndpointsProtocol=https;AccountName=between;AccountKey=kS8y6N3ILffm7wfe6n+ZpzkauFNKe4EHsaLz1Zs8c3cp/8tnFQM2OT9WL8xaHgLPenWMrCsKKKtUb8FNdRhwuA==;EndpointSuffix=core.windows.net"; var tablename = "wehttprequestaudits"; var tableClient = GetCloudTableClient(accountConnectionString); CloudTable wehttprequestaudits = tableClient.GetTableReference(tablename); HttpRequestAuditDto httpRequestAuditDto = new HttpRequestAuditDto(httpRequestAudit); var insertData = TableOperation.Insert(httpRequestAuditDto); var result = await wehttprequestaudits.ExecuteAsync(insertData); return(true); }
public async Task <bool> Save(HttpRequestAudit httpRequestAudit) { var accountConnectionString = "DefaultEndpointsProtocol=https;AccountName=between;AccountKey=kS8y6N3ILffm7wfe6n+ZpzkauFNKe4EHsaLz1Zs8c3cp/8tnFQM2OT9WL8xaHgLPenWMrCsKKKtUb8FNdRhwuA==;EndpointSuffix=core.windows.net"; var containerName = "wehttprequestaudits"; var blobName = httpRequestAudit.Id + ".json"; var blobClient = GetCloudBlobClient(accountConnectionString); CloudBlobContainer container = blobClient.GetContainerReference(containerName); CloudBlockBlob blob = container.GetBlockBlobReference(blobName); string json = Newtonsoft.Json.JsonConvert.SerializeObject(httpRequestAudit); await blob.UploadTextAsync(json); httpRequestAudit.BlobUrl = blob.Uri.AbsoluteUri; return(true); }
public override void OnActionExecuted(ActionExecutedContext context) { var serviceManager = new ServiceManager(); HttpRequestAudit httpRequestAudit = new HttpRequestAudit(); httpRequestAudit.UrlRequest = context.HttpContext.Request.Scheme + @"://" + context.HttpContext.Request.Host + context.HttpContext.Request.Path; httpRequestAudit.PathUrl = context.HttpContext.Request.Path; httpRequestAudit.Action = context.ActionDescriptor.DisplayName; httpRequestAudit.Entity = context.Result; //peticionHttpAudit.EntityType // httpRequestAudit.Login = GetUsuarioId(context.HttpContext)?.ToString(); httpRequestAudit.ClientIP = context.HttpContext.Connection.RemoteIpAddress.MapToIPv4().ToString(); httpRequestAudit.Status = "RESPUESTA"; serviceManager.GetAuditService().SaveHttpRequestAudit(httpRequestAudit); base.OnActionExecuted(context); }