public override void Write()

in src/Elastic.CommonSchema/Serialization/EcsDocumentJsonConverter.Generated.cs [104:180]


		public override void Write(Utf8JsonWriter writer, TBase value, JsonSerializerOptions options)
		{
			if (value == null)
			{
				writer.WriteNullValue();
				return;
			}
			writer.WriteStartObject();

			WriteTimestamp(writer, value, options);
			WriteLogLevel(writer, value);
			WriteMessage(writer, value);
			WriteEcsVersion(writer, value);
			WriteLogEntity(writer, value.Log, options);
			WriteEcsEntity(writer, value.Ecs, options);

			// Base fields
			WriteProp(writer, "tags", value.Tags, options);
			WriteProp(writer, "span.id", value.SpanId, options);
			WriteProp(writer, "trace.id", value.TraceId, options);
			WriteProp(writer, "transaction.id", value.TransactionId, options);
			WriteProp(writer, "labels", value.Labels, options);

			// Complex types
			WriteProp(writer, "agent", value.Agent, EcsJsonContext.Default.Agent, options);
			WriteProp(writer, "as", value.As, EcsJsonContext.Default.As, options);
			WriteProp(writer, "client", value.Client, EcsJsonContext.Default.Client, options);
			WriteProp(writer, "cloud", value.Cloud, EcsJsonContext.Default.Cloud, options);
			WriteProp(writer, "code_signature", value.CodeSignature, EcsJsonContext.Default.CodeSignature, options);
			WriteProp(writer, "container", value.Container, EcsJsonContext.Default.Container, options);
			WriteProp(writer, "data_stream", value.DataStream, EcsJsonContext.Default.DataStream, options);
			WriteProp(writer, "destination", value.Destination, EcsJsonContext.Default.Destination, options);
			WriteProp(writer, "device", value.Device, EcsJsonContext.Default.Device, options);
			WriteProp(writer, "dll", value.Dll, EcsJsonContext.Default.Dll, options);
			WriteProp(writer, "dns", value.Dns, EcsJsonContext.Default.Dns, options);
			WriteProp(writer, "elf", value.Elf, EcsJsonContext.Default.Elf, options);
			WriteProp(writer, "email", value.Email, EcsJsonContext.Default.Email, options);
			WriteProp(writer, "error", value.Error, EcsJsonContext.Default.Error, options);
			WriteProp(writer, "event", value.Event, EcsJsonContext.Default.Event, options);
			WriteProp(writer, "faas", value.Faas, EcsJsonContext.Default.Faas, options);
			WriteProp(writer, "file", value.File, EcsJsonContext.Default.File, options);
			WriteProp(writer, "geo", value.Geo, EcsJsonContext.Default.Geo, options);
			WriteProp(writer, "group", value.Group, EcsJsonContext.Default.Group, options);
			WriteProp(writer, "hash", value.Hash, EcsJsonContext.Default.Hash, options);
			WriteProp(writer, "host", value.Host, EcsJsonContext.Default.Host, options);
			WriteProp(writer, "http", value.Http, EcsJsonContext.Default.Http, options);
			WriteProp(writer, "interface", value.Interface, EcsJsonContext.Default.Interface, options);
			WriteProp(writer, "macho", value.Macho, EcsJsonContext.Default.Macho, options);
			WriteProp(writer, "network", value.Network, EcsJsonContext.Default.Network, options);
			WriteProp(writer, "observer", value.Observer, EcsJsonContext.Default.Observer, options);
			WriteProp(writer, "orchestrator", value.Orchestrator, EcsJsonContext.Default.Orchestrator, options);
			WriteProp(writer, "organization", value.Organization, EcsJsonContext.Default.Organization, options);
			WriteProp(writer, "os", value.Os, EcsJsonContext.Default.Os, options);
			WriteProp(writer, "package", value.Package, EcsJsonContext.Default.Package, options);
			WriteProp(writer, "pe", value.Pe, EcsJsonContext.Default.Pe, options);
			WriteProp(writer, "process", value.Process, EcsJsonContext.Default.Process, options);
			WriteProp(writer, "registry", value.Registry, EcsJsonContext.Default.Registry, options);
			WriteProp(writer, "related", value.Related, EcsJsonContext.Default.Related, options);
			WriteProp(writer, "risk", value.Risk, EcsJsonContext.Default.Risk, options);
			WriteProp(writer, "rule", value.Rule, EcsJsonContext.Default.Rule, options);
			WriteProp(writer, "server", value.Server, EcsJsonContext.Default.Server, options);
			WriteProp(writer, "service", value.Service, EcsJsonContext.Default.Service, options);
			WriteProp(writer, "source", value.Source, EcsJsonContext.Default.Source, options);
			WriteProp(writer, "threat", value.Threat, EcsJsonContext.Default.Threat, options);
			WriteProp(writer, "tls", value.Tls, EcsJsonContext.Default.Tls, options);
			WriteProp(writer, "url", value.Url, EcsJsonContext.Default.Url, options);
			WriteProp(writer, "user", value.User, EcsJsonContext.Default.User, options);
			WriteProp(writer, "user_agent", value.UserAgent, EcsJsonContext.Default.UserAgent, options);
			WriteProp(writer, "vlan", value.Vlan, EcsJsonContext.Default.Vlan, options);
			WriteProp(writer, "vulnerability", value.Vulnerability, EcsJsonContext.Default.Vulnerability, options);
			WriteProp(writer, "x509", value.X509, EcsJsonContext.Default.X509, options);
			WriteProp(writer, "metadata", value.Metadata, options);

			if (typeof(EcsDocument) != value.GetType())
				value.WriteAdditionalProperties((k, v) => WriteProp(writer, k, v, options));
			writer.WriteEndObject();
		}