public static void InteractiveLogOns(InteractiveLogon _, Dictionary <string, string> deviceObjectIdToDeviceId) { try { var gremlinEdges = new List <GremlinEdge>(); deviceObjectIdToDeviceId.TryGetValue(_.DeviceId, out var deviceId); if (deviceId == null) { return; } var gremlinEdge = new GremlinEdge( deviceId + _.UserId, "HasSession", deviceId, _.UserId, nameof(Computer), nameof(User), deviceId.GetHashCode(), _.UserId.GetHashCode()); gremlinEdges.Add(gremlinEdge); CosmosDbHelper.RunImportEdgesBlock.Post(gremlinEdges); } catch (Exception e) { Console.WriteLine(e); throw; } }
public static void InteractiveLogOns(InteractiveLogon _) { if (_signInOutput.IsCompleted) { _signInOutput = new BlockingCollection <JsonBase>(); _signInWriter = Extensions.StartOutputWriter(_signInOutput); } _signInOutput.Add(new Session { UserName = _.UserDisplayName, ComputerName = _.DeviceDisplayName }); }