public static string EscapeChars(this string val, bool escapeEqualSign = true)
{
if (val.Contains(','))
val = val.Replace(",", "\\,");
if (val.Contains(' '))
val = val.Replace(" ", "\\ ");
if (val.Contains('\n'))
val = val.Replace(" ", "\\n");
if (escapeEqualSign && val.Contains('='))
val = val.Replace("=", "\\=");
//edge case, which will trigger Unbalanced Quotes exception in InfluxDB
if (val.EndsWith("\\"))
val = val.Substring(0, val.Length - 1);
return val;
}