internal override void LogWrite(LogParameters logInfo) { XmlSerializer serializer = new XmlSerializer(typeof(LogParameters)); var settings = new XmlWriterSettings() { OmitXmlDeclaration = true }; var emptyNs = new XmlSerializerNamespaces(new[] { XmlQualifiedName.Empty }); try { using (FileStream fileStream = new FileStream(logFilePath, FileMode.Open)) { fileStream.Seek(-"</ArrayOfLogParameters>".Length - 1, SeekOrigin.End); LogFormat.WriteString(Environment.NewLine, fileStream); XmlWriter xmlWriter = XmlWriter.Create(fileStream, settings); serializer.Serialize(xmlWriter, logInfo, emptyNs); xmlWriter.Dispose(); LogFormat.WriteString(Environment.NewLine + "</ArrayOfLogParameters>", fileStream); } } catch (Exception) { Console.WriteLine($"DumbLogger. Error, log was not written into log file : {logFilePath}"); throw; } }
internal override void LogWrite(LogParameters logInfo) { var serializer = new DataContractJsonSerializer(typeof(LogParameters)); try { using (FileStream fileStream = new FileStream(logFilePath, FileMode.Open)) { fileStream.Seek(-2, SeekOrigin.End); if (fileStream.Length > 5) { LogFormat.WriteString("," + Environment.NewLine, fileStream); } else { LogFormat.WriteString(Environment.NewLine, fileStream); } serializer.WriteObject(fileStream, logInfo); LogFormat.WriteString(Environment.NewLine + "]", fileStream); } } catch (Exception) { Console.WriteLine($"DumbLogger. Error, log was not written into log file : {logFilePath}"); throw; } }