public void LogSearchStatusSavedEvent(SearchEventLogger.PropertyLogData logData)
 {
     this.logger.LogEvent(StorageEventLogConstants.Tuple_SearchStatusSaved, null, new object[]
     {
         logData
     });
 }
 public void LogInPlaceHoldSettingsSynchronizedEvent(MailboxDiscoverySearch obj)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.InPlaceHoldEnabled.Name, obj.InPlaceHoldEnabled);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ItemHoldPeriod.Name, obj.ItemHoldPeriod);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.InPlaceHoldErrors.Name, obj.InPlaceHoldErrors);
     propertyLogData.AddOrganization(obj.ManagedByOrganization);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_InPlaceHoldSettingsSynchronized, null, new object[]
     {
         propertyLogData
     });
     if (obj.InPlaceHoldErrors != null && obj.InPlaceHoldErrors.Count > 0)
     {
         foreach (string stringToEscape in obj.InPlaceHoldErrors)
         {
             string value = Uri.EscapeDataString(stringToEscape);
             SearchEventLogger.PropertyLogData propertyLogData2 = new SearchEventLogger.PropertyLogData();
             propertyLogData2.AddOrganization(obj.ManagedByOrganization);
             propertyLogData2.AddProperty("Error", value);
             this.logger.LogEvent(StorageEventLogConstants.Tuple_SynchronizeInPlaceHoldError, null, new object[]
             {
                 propertyLogData2
             });
         }
     }
 }
 public void LogDiscoverySearchRpcServerRestartedEvent(Exception exception)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("Exception", exception);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchRpcServerRestarted, null, new object[]
     {
         propertyLogData
     });
 }
 public void LogDiscoverySearchTaskStartedEvent(string name, string organization)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddOrganization(organization);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchTaskStarted, null, new object[]
     {
         propertyLogData
     });
 }
 public void LogSyncDiscoveryHoldToExchangeOnlineDetailsEvent(int numOfHolds, string remoteAddress)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("NumberOfHolds", numOfHolds);
     propertyLogData.AddProperty("RemoteAddress", remoteAddress);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_SyncDiscoveryHoldToExchangeOnlineDetails, null, new object[]
     {
         propertyLogData
     });
 }
 public void LogDiscoverySearchTaskErrorEvent(string name, string organizationHint, Exception exception)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("OrganizationHint", organizationHint);
     propertyLogData.AddProperty("Exception", exception);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchTaskError, null, new object[]
     {
         propertyLogData
     });
 }
 public void LogDiscoverySearchRemoveRequestProcessedEvent(string name, string rbacContext, string orgId)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("RbacContext", rbacContext);
     propertyLogData.AddOrganization(orgId);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchRemoveRequestProcessed, null, new object[]
     {
         propertyLogData
     });
 }
 public void LogDiscoverySearchRemoveRequestedEvent(MailboxDiscoverySearch obj, string rbacContext)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("RbacContext", rbacContext);
     propertyLogData.AddOrganization(obj.ManagedByOrganization);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchRemoveRequested, null, new object[]
     {
         propertyLogData
     });
 }
 public void LogDiscoverySearchPendingWorkItemsChangedEvent(string description, string searchName, string arbitrationMailbox, int pendingItemsCount)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("Description", description);
     propertyLogData.AddProperty("ArbitrationMailbox", arbitrationMailbox);
     propertyLogData.AddProperty("PendingWorkItemsCount", pendingItemsCount);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchWorkItemQueueChanged, null, new object[]
     {
         propertyLogData
     });
 }
示例#10
0
 public void LogDiscoverySearchServerErrorEvent(string description, string name, string arbitrationMailbox, Exception exception)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("Description", description);
     propertyLogData.AddProperty("ArbitrationMailbox", arbitrationMailbox);
     propertyLogData.AddProperty("Exception", exception);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchServerError, null, new object[]
     {
         propertyLogData
     });
 }
示例#11
0
 public void LogSingleFailureSyncDiscoveryHoldToExchangeOnlineEvent(string searchId, string holdAction, string query, string inPlaceHoldIdentity, string errorCode, string errorMessage)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("HoldAction", holdAction);
     propertyLogData.AddProperty("InPlaceHoldIdentity", inPlaceHoldIdentity);
     propertyLogData.AddProperty("ErrorCode", errorCode);
     propertyLogData.AddProperty("ErrorMessage", errorMessage);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_SingleFailureSyncDiscoveryHoldToExchangeOnline, null, new object[]
     {
         propertyLogData
     });
 }
示例#12
0
 public void LogDiscoverySearchWorkItemQueueNotProcessedEvent(string searchName, string arbitrationMailbox, string workItemAction, bool isEstimateOnly, int queueLength, int runningWorkItemsCount, int copySearchesInProgressCount, int maxRunningCopySearches)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("WorkItemAction", workItemAction);
     propertyLogData.AddProperty("IsEstimateOnly", isEstimateOnly);
     propertyLogData.AddProperty("ArbitrationMailbox", arbitrationMailbox);
     propertyLogData.AddProperty("QueueLength", queueLength);
     propertyLogData.AddProperty("RunningWorkItemsCount", runningWorkItemsCount);
     propertyLogData.AddProperty("CopySearchesInProgressCount", copySearchesInProgressCount);
     propertyLogData.AddProperty("MaxRunningCopySearches", maxRunningCopySearches);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchWorkItemQueueNotProcessed, searchName + arbitrationMailbox, new object[]
     {
         propertyLogData
     });
 }
示例#13
0
 public void LogDiscoverySearchStatusChangedEvent(MailboxDiscoverySearch obj, string parentCallerInfo, [CallerMemberName] string callerMember = null)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("CallerInfo", parentCallerInfo + ": " + callerMember);
     propertyLogData.AddProperty(EwsStoreObjectSchema.Identity.Name, obj.Identity);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.Status.Name, obj.Status);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.StatisticsOnly.Name, obj.StatisticsOnly);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.IncludeUnsearchableItems.Name, obj.IncludeUnsearchableItems);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.IncludeKeywordStatistics.Name, obj.IncludeKeywordStatistics);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.Query.Name, (obj.Query != null) ? obj.Query.Length : 0);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.Language.Name, obj.Language);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.Sources.Name, obj.Sources);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.CreatedTime.Name, obj.CreatedTime);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.LastModifiedTime.Name, obj.LastModifiedTime);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ExcludeDuplicateMessages.Name, obj.ExcludeDuplicateMessages);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.InPlaceHoldEnabled.Name, obj.InPlaceHoldEnabled);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ItemHoldPeriod.Name, obj.ItemHoldPeriod);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.InPlaceHoldIdentity.Name, obj.InPlaceHoldIdentity);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.FailedToHoldMailboxes.Name, obj.FailedToHoldMailboxes);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.KeywordHits.Name, (obj.KeywordHits != null) ? obj.KeywordHits.Count : 0);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ScenarioId.Name, obj.ScenarioId);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.Resume.Name, obj.Resume);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.LastStartTime.Name, obj.LastStartTime);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.LastEndTime.Name, obj.LastEndTime);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.PercentComplete.Name, obj.PercentComplete);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.NumberOfMailboxes.Name, obj.NumberOfMailboxes);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ResultItemCountCopied.Name, obj.ResultItemCountCopied);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ResultItemCountEstimate.Name, obj.ResultItemCountEstimate);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ResultSizeCopied.Name, obj.ResultSizeCopied);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ResultSizeEstimate.Name, obj.ResultSizeEstimate);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ResultsPath.Name, obj.ResultsPath);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ResultsLink.Name, obj.ResultsLink);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.CompletedMailboxes.Name, obj.CompletedMailboxes);
     propertyLogData.AddOrganization(obj.ManagedByOrganization);
     if (obj.Errors != null && obj.Errors.Count > 0)
     {
         propertyLogData.AddProperty(MailboxDiscoverySearchSchema.Errors.Name, string.Join(",", obj.Errors.ToArray()));
     }
     if (obj.IsFeatureFlighted("SearchStatsFlighted") && obj.SearchStatistics != null && obj.SearchStatistics.Count > 0 && obj.SearchStatistics[0] != null)
     {
         propertyLogData.AddProperty(MailboxDiscoverySearchSchema.SearchStatistics.Name, obj.SearchStatistics[0].ToString());
     }
     propertyLogData.AddProperty("Flighted Features", obj.FlightedFeatures);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchStatusChanged, null, new object[]
     {
         propertyLogData
     });
 }
示例#14
0
 public void LogDiscoverySearchWorkItemQueueChangedEvent(string description, string searchName, string arbitrationMailbox, string workItemAction, bool isEstimateOnly, int queueLength, int runningWorkItemsCount, int copySearchesInProgressCount, int semaphoreCount = 0)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty("Description", description);
     propertyLogData.AddProperty("WorkItemAction", workItemAction);
     propertyLogData.AddProperty("IsEstimateOnly", isEstimateOnly);
     propertyLogData.AddProperty("ArbitrationMailbox", arbitrationMailbox);
     propertyLogData.AddProperty("QueueLength", queueLength);
     propertyLogData.AddProperty("RunningWorkItemsCount", runningWorkItemsCount);
     propertyLogData.AddProperty("CopySearchesInProgressCount", copySearchesInProgressCount);
     propertyLogData.AddProperty("SemaphoreCount", semaphoreCount);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoverySearchWorkItemQueueChanged, null, new object[]
     {
         propertyLogData
     });
 }
        private void LogSaveEvent(SearchObjectBase obj)
        {
            SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
            if (base.ADUser.OrganizationId != null && base.ADUser.OrganizationId.ConfigurationUnit != null)
            {
                propertyLogData.AddOrganization(base.ADUser.OrganizationId.ConfigurationUnit.ToString());
            }
            switch (obj.ObjectType)
            {
            case ObjectType.SearchObject:
                break;

            case ObjectType.SearchStatus:
            {
                SearchStatus searchStatus = (SearchStatus)obj;
                propertyLogData.AddSearchStatus(searchStatus);
                SearchEventLogger.Instance.LogSearchStatusSavedEvent(propertyLogData);
                if (searchStatus.Errors == null)
                {
                    return;
                }
                using (MultiValuedProperty <string> .Enumerator enumerator = searchStatus.Errors.GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        string errorMsg = enumerator.Current;
                        SearchEventLogger.Instance.LogSearchErrorEvent(obj.Id.ToString(), errorMsg);
                    }
                    return;
                }
                break;
            }

            default:
                return;
            }
            propertyLogData.AddSearchObject((SearchObject)obj);
            SearchEventLogger.Instance.LogSearchObjectSavedEvent(propertyLogData);
        }
示例#16
0
 public void LogDiscoveryAndHoldSavedEvent(MailboxDiscoverySearch obj)
 {
     SearchEventLogger.PropertyLogData propertyLogData = new SearchEventLogger.PropertyLogData();
     propertyLogData.AddProperty(EwsStoreObjectSchema.Identity.Name, obj.Identity);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.StatisticsOnly.Name, obj.StatisticsOnly);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.IncludeUnsearchableItems.Name, obj.IncludeUnsearchableItems);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.IncludeKeywordStatistics.Name, obj.IncludeKeywordStatistics);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.LogLevel.Name, obj.LogLevel);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.Query.Name, (obj.Query != null) ? obj.Query.Length : 0);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.Language.Name, obj.Language);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.CreatedTime.Name, obj.CreatedTime);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.LastModifiedTime.Name, obj.LastModifiedTime);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ExcludeDuplicateMessages.Name, obj.ExcludeDuplicateMessages);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.InPlaceHoldEnabled.Name, obj.InPlaceHoldEnabled);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.ItemHoldPeriod.Name, obj.ItemHoldPeriod);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.InPlaceHoldIdentity.Name, obj.InPlaceHoldIdentity);
     propertyLogData.AddProperty(MailboxDiscoverySearchSchema.KeywordHits.Name, (obj.KeywordHits != null) ? obj.KeywordHits.Count : 0);
     propertyLogData.AddOrganization(obj.ManagedByOrganization);
     this.logger.LogEvent(StorageEventLogConstants.Tuple_DiscoveryAndHoldSaved, null, new object[]
     {
         propertyLogData
     });
 }