private static void WriteLogPrefix()

in src/Elastic.OpenTelemetry.Core/Diagnostics/LogFormatter.cs [62:102]


	private static void WriteLogPrefix(int managedThreadId, DateTime dateTime, LogLevel level, StringBuilder builder, string spanId = "")
	{
		const int maxLength = 6;

		if (string.IsNullOrEmpty(spanId))
			spanId = EmptySpanId;

		var threadId = new string('-', maxLength);

		if (managedThreadId > 0)
		{
			var digits = (int)Math.Floor(Math.Log10(managedThreadId) + 1);

			if (digits < maxLength)
			{
				Span<char> buffer = stackalloc char[maxLength];
				for (var i = 0; i < maxLength - digits; i++)
					buffer[i] = '0';
				managedThreadId.TryFormat(buffer[(maxLength - digits)..], out _);
				threadId = buffer.ToString();
			}
			else
				threadId = managedThreadId.ToString();
		}

		builder.Append('[')
			.Append(dateTime.ToString("yyyy-MM-dd HH:mm:ss.fff"))
			.Append("][")
			.Append(threadId)
			.Append("][")
			.Append(spanId[..6])
			.Append("][")
			.Append(level.AsString())
			.Append(']');

		var length = builder.Length;
		var padding = 55 - length;

		for (var i = 0; i < padding; i++)
			builder.Append(' ');
	}