public static SnowflakeId Default() { if (_snowflakeId == null) { lock (SLock) { if (_snowflakeId == null) { var random = new Random(); var workerId = random.Next((int)MaxWorkerId); var datacenterId = random.Next((int)MaxDatacenterId); return(_snowflakeId = new SnowflakeId(workerId, datacenterId)); } } } return(_snowflakeId); }
private long GetTraceId(SegmentContext parentSegmentContext) { return(parentSegmentContext?.TraceId ?? SnowflakeId.Default().NextId()); }
private long GetSegmentId() { return(SnowflakeId.Default().NextId()); }
private long GetTraceId(ICarrier carrier) { return(carrier.HasValue ? (carrier.TraceId > 0 ? carrier.TraceId : SnowflakeId.Default().NextId()) : SnowflakeId.Default().NextId()); }