using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"^\<\d+\>(?<last_seen>\w+\s+\d+\s+\d+:\d+:\d+).*namespace_name\=(?<namespace_name>[^,]+),\s+container_name\=(?<container_name>[^,]+),\s+pod_name\=(?<pod_name>[^,]+),\s+message\=(?<message1>[^\]]+).*object\=\""(?<object>[^\""]+)\""\s+kind\=\""(?<kind>[^\""]+)\""\s+apiVersion\=\""(?<apiVersion>[^\""]+)\""\s+type\=\""(?<type>[^\""]+)\""\s+reason\=\""(?<reason>[^\""]+)\""\s+message\=\""(?<message2>[^\""]+)\""";
string input = @"<135>Dec 30 06:59:07 9000n2.nodes.com kubernetes.var.log.containers.ku: namespace_name=openshift-kube-controller-manager, container_name=kube-controller-manager, pod_name=kube-controller-manager-9000n2.nodes.com, message=I1230 06:58:56.139184 1 event.go:291] ""Event occurred"" object=""openshift-logging/elasticsearch-im-infra"" kind=""CronJob"" apiVersion=""batch/v1beta1"" type=""Warning"" reason=""FailedNeedsStart"" message=""Cannot determine if job needs to be started: too many missed start time (> 100). Set or decrease .spec.startingDeadlineSeconds or check clock skew""
<135>Dec 30 06:59:07 9000n2.nodes.com kubernetes.var.log.containers.ku: namespace_name=openshift-kube-controller-manager, container_name=kube-controller-manager, pod_name=kube-controller-manager-9000n2.nodes.com, message=I1230 06:58:56.133312 1 event.go:291] ""Event occurred"" object=""openshift-logging/elasticsearch-im-audit"" kind=""CronJob"" apiVersion=""batch/v1beta1"" type=""Warning"" reason=""FailedNeedsStart"" message=""Cannot determine if job needs to be started: too many missed start time (> 100). Set or decrease .spec.startingDeadlineSeconds or check clock skew""";
RegexOptions options = RegexOptions.Multiline;
foreach (Match m in Regex.Matches(input, pattern, options))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx