{"content":{"Nodes":{"Node":[{"@ToolID":"1","ChildNodes":{"Node":[{"@ToolID":"2","Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Font":{"@name":"Lato, Regular","@size":"12","@style":"1"},"Text":"Cloud Quest #29: Server Log Analysis - Consecutive Error Tracking","Shape":{"@shape":"3"},"FillColor":{"@name":"#ffffff"},"TextColor":{"@name":"#252D39"},"Justification":{"@Justification":"3"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.TextBox.TextBox","Position":{"@x":"87","@y":"120","@width":"487","@height":"32"}}},{"@ToolID":"3","Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Font":{"@name":"Lato, Regular","@size":"9","@style":"0"},"Text":"You are given a sample server log dataset containing timestamps and messages. \n\nYour task is to:\n•\tIdentify error messages and extract their 3-digit error codes.\n\n•\tCalculate the number of consecutive errors for each error entry. Consecutive errors are those that occur without any non-error messages in between them.\n\n•\tSolve this problem with as few tools as possible.","Shape":{"@shape":"3"},"FillColor":{"@name":"#ffffff"},"TextColor":{"@name":"#252D39"},"Justification":{"@Justification":"3"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.TextBox.TextBox","Position":{"@x":"89","@y":"153","@width":"479","@height":"136"}}}]},"Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Style":{"@Margin":"25","@UseTheme":"True","@FillColor":"rgba(255,255,255,.9)","@TextColor":"#314c4a","@BorderColor":"#DCE3F0","@Transparency":"25"},"Folded":{"@value":"False"},"Caption":"Scenario","Disabled":{"@value":"False"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.ToolContainer.ToolContainer","Position":{"@x":"67.60000000000002","@y":"75.24921875000003","@width":"50","@height":"145"}}},{"@ToolID":"4","ChildNodes":{"Node":[{"@ToolID":"35","Properties":{"MetaInfo":{"RecordInfo":{"Field":[]},"@connection":"Output"},"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"Server Log","DefaultAnnotationText":""},"Configuration":{"Data":{"r":[{"c":["2023-10-01 08:00:00INFOSystem startup"]},{"c":["2023-10-01 08:05:00ERROR 500Internal Server Error"]},{"c":["2023-10-01 08:10:00ERROR 404Page Not Found"]},{"c":["2023-10-01 08:15:00WARNINGHigh memory usage"]},{"c":["2023-10-01 08:20:00ERROR 503Service Unavailable"]},{"c":["2023-10-01 08:25:00INFOBackup completed"]},{"c":["2023-10-01 08:30:00ERROR 500Internal Server Error"]},{"c":["2023-10-01 08:35:00ERROR 401Unauthorized"]},{"c":["2023-10-01 08:40:00ERROR 403Forbidden"]},{"c":["2023-10-01 08:45:00INFOUser login"]},{"c":["2023-10-01 08:50:00WARNINGDisk usage at 85%"]},{"c":["2023-10-01 08:55:00ERROR 404Page Not Found"]},{"c":["2023-10-01 09:00:00ERROR 404Page Not Found"]},{"c":["2023-10-01 09:05:00ERROR 503Service Unavailable"]},{"c":["2023-10-01 09:10:00INFOScheduled task"]},{"c":["2023-10-01 09:15:00ERROR 400Bad Request"]},{"c":["2023-10-01 09:20:00WARNINGNetwork latency"]},{"c":["2023-10-01 09:25:00ERROR 500Internal Server Error"]},{"c":["2023-10-01 09:30:00ERROR 500Internal Server Error"]},{"c":["2023-10-01 09:35:00ERROR 500Internal Server Error"]},{"c":["2023-10-01 09:40:00INFODatabase connection restored"]},{"c":["2023-10-01 09:45:00ERROR 503Service Unavailable"]},{"c":["2023-10-01 09:50:00ERROR 403Forbidden"]},{"c":["2023-10-01 09:55:00ERROR 401Unauthorized"]},{"c":["2023-10-01 10:00:00WARNINGCPU overload"]},{"c":["2023-10-01 10:05:00ERROR 404Page Not Found"]},{"c":["2023-10-01 10:10:00ERROR 404Page Not Found"]},{"c":["2023-10-01 10:15:00ERROR 404Page Not Found"]},{"c":["2023-10-01 10:20:00INFOCache cleared"]},{"c":["2023-10-01 10:25:00WARNINGAPI rate limit exceeded"]},{"c":["2023-10-01 10:30:00ERROR 500Internal Server Error"]},{"c":["2023-10-01 10:35:00ERROR 503Service Unavailable"]},{"c":["2023-10-01 10:40:00ERROR 503Service Unavailable"]},{"c":["2023-10-01 10:45:00INFOSecurity scan passed"]},{"c":["2023-10-01 10:50:00ERROR 400Bad Request"]},{"c":["2023-10-01 10:55:00ERROR 403Forbidden"]},{"c":["2023-10-01 11:00:00WARNINGFailed backup attempt"]},{"c":["2023-10-01 11:05:00ERROR 401Unauthorized"]},{"c":["2023-10-01 11:10:00ERROR 500Internal Server Error"]},{"c":["2023-10-01 11:15:00ERROR 404Page Not Found"]},{"c":["2023-10-01 11:20:00INFONew user registered"]},{"c":["2023-10-01 11:25:00WARNINGSSL certificate expired"]},{"c":["2023-10-01 11:30:00ERROR 503Service Unavailable"]},{"c":["2023-10-01 11:35:00ERROR 503Service Unavailable"]},{"c":["2023-10-01 11:40:00ERROR 503Service Unavailable"]},{"c":["2023-10-01 11:45:00INFOSystem shutdown"]}]},"Fields":{"Field":[{"@name":"Timestamp,Message"}]},"NumRows":{"@value":"46"}}},"GuiSettings":{"@Plugin":"AlteryxBasePluginsGui.TextInput.TextInput","Position":{"@x":"123.39999999999996","@y":"392"}},"EngineSettings":{"@EngineDll":"AlteryxBasePluginsEngine.dll","@EngineDllEntryPoint":"AlteryxTextInput"}}]},"Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Style":{"@Margin":"25","@UseTheme":"True","@FillColor":"rgba(255,255,255,.9)","@TextColor":"#314c4a","@BorderColor":"#DCE3F0","@Transparency":"25"},"Folded":{"@value":"False"},"Caption":"Start Data","Disabled":{"@value":"False"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.ToolContainer.ToolContainer","Position":{"@x":"68.39999999999996","@y":"323.64921875","@width":"50","@height":"145"}}},{"@ToolID":"6","ChildNodes":{"Node":[{"@ToolID":"31","Properties":{"MetaInfo":{"RecordInfo":{"Field":[]},"@connection":"Output"},"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Data":{"r":[{"c":["2023-10-01 08:05:00","500","1"]},{"c":["2023-10-01 08:10:00","404","2"]},{"c":["2023-10-01 08:20:00","503","1"]},{"c":["2023-10-01 08:30:00","500","1"]},{"c":["2023-10-01 08:35:00","401","2"]},{"c":["2023-10-01 08:40:00","403","3"]},{"c":["2023-10-01 08:55:00","404","1"]},{"c":["2023-10-01 09:00:00","404","2"]},{"c":["2023-10-01 09:05:00","503","3"]},{"c":["2023-10-01 09:15:00","400","1"]},{"c":["2023-10-01 09:25:00","500","1"]},{"c":["2023-10-01 09:30:00","500","2"]},{"c":["2023-10-01 09:35:00","500","3"]},{"c":["2023-10-01 09:45:00","503","1"]},{"c":["2023-10-01 09:50:00","403","2"]},{"c":["2023-10-01 09:55:00","401","3"]},{"c":["2023-10-01 10:05:00","404","1"]},{"c":["2023-10-01 10:10:00","404","2"]},{"c":["2023-10-01 10:15:00","404","3"]},{"c":["2023-10-01 10:30:00","500","1"]},{"c":["2023-10-01 10:35:00","503","2"]},{"c":["2023-10-01 10:40:00","503","3"]},{"c":["2023-10-01 10:50:00","400","1"]},{"c":["2023-10-01 10:55:00","403","2"]},{"c":["2023-10-01 11:05:00","401","1"]},{"c":["2023-10-01 11:10:00","500","2"]},{"c":["2023-10-01 11:15:00","404","3"]},{"c":["2023-10-01 11:30:00","503","1"]},{"c":["2023-10-01 11:35:00","503","2"]},{"c":["2023-10-01 11:40:00","503","3"]}]},"Fields":{"Field":[{"@name":"Timestamp"},{"@name":"ErrorCode"},{"@name":"ConsecutiveErrors"}]},"NumRows":{"@value":"30"}}},"GuiSettings":{"@Plugin":"AlteryxBasePluginsGui.TextInput.TextInput","Position":{"@x":"650.6","@y":"264"}},"EngineSettings":{"@EngineDll":"AlteryxBasePluginsEngine.dll","@EngineDllEntryPoint":"AlteryxTextInput"}}]},"Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Style":{"@Margin":"25","@UseTheme":"True","@FillColor":"rgba(255,255,255,.9)","@TextColor":"#314c4a","@BorderColor":"#DCE3F0","@Transparency":"25"},"Folded":{"@value":"False"},"Caption":"Output Solution","Disabled":{"@value":"False"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.ToolContainer.ToolContainer","Position":{"@x":"607.6","@y":"195.64921875","@width":"50","@height":"145"}}},{"@ToolID":"10","ChildNodes":{"Node":[{"@ToolID":"11","Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Font":{"@name":"Lato, Regular","@size":"9","@style":"0"},"Text":"Practice using RegEx functions in the Formula tool.","Shape":{"@shape":"3"},"FillColor":{"@name":"#ffffff"},"TextColor":{"@a":"1","@b":"57","@g":"45","@r":"37"},"Justification":{"@Justification":"0"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.TextBox.TextBox","Position":{"@x":"627.6","@y":"121","@width":"169","@height":"41"}}}]},"Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Style":{"@Margin":"25","@UseTheme":"True","@FillColor":"rgba(205, 230, 244, 0.9)","@TextColor":"#314c4a","@BorderColor":"rgba(76, 167, 218, 1)","@Transparency":"25"},"Folded":{"@value":"True"},"Caption":"Hint","Disabled":{"@value":"False"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.ToolContainer.ToolContainer","Position":{"@x":"607.6","@y":"75.64921875","@width":"50","@height":"145"}}},{"@ToolID":"12","ChildNodes":{"Node":[{"@ToolID":"13","Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Font":{"@name":"Lato, Regular","@size":"7","@style":"0"},"Text":"Use of this Alteryx asset is for educational purposes only and bound by the conditions set forth on alteryx.com/terms-and-conditions. Alteryx Information may not be reproduced, transmitted or distributed without Alteryx, Inc.'s permission.","Shape":{"@shape":"3"},"FillColor":{"@name":"#ffffff"},"TextColor":{"@a":"1","@b":"255","@g":"255","@r":"255"},"Justification":{"@Justification":"1"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.TextBox.TextBox","Position":{"@x":"56.200000000000045","@y":"734","@width":"552","@height":"26"}}}]},"Properties":{"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Style":{"@Margin":"25","@UseTheme":"True","@FillColor":"rgba(78, 105, 122, 0.9)","@TextColor":"rgba(255, 255, 255, 1)","@BorderColor":"rgba(41, 74, 94, 1)","@Transparency":"25"},"Folded":{"@value":"False"},"Caption":"Alteryx Educational Asset - Terms and Conditions","Disabled":{"@value":"False"}}},"GuiSettings":{"@Plugin":"AlteryxGuiToolkit.ToolContainer.ToolContainer","Position":{"@x":"36.200000000000045","@y":"688.64921875","@width":"50","@height":"145"}}},{"@ToolID":"38","Properties":{"MetaInfo":[{"RecordInfo":{"Field":[]},"@connection":"True"},{"RecordInfo":{"Field":[]},"@connection":"False"}],"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":"[ErrorCode] IsNotEmpty"},"Configuration":{"Mode":"Simple","Simple":{"Field":"ErrorCode","Operands":{"Operand":""},"Operator":"IsNotEmpty","FieldType":"V_WString"},"Expression":"not IsEmpty([ErrorCode])"}},"GuiSettings":{"@Plugin":"AlteryxBasePluginsGui.Filter.Filter","Position":{"@x":"442.20000000000005","@y":"391.8"}},"EngineSettings":{"@EngineDll":"AlteryxBasePluginsEngine.dll","@EngineDllEntryPoint":"AlteryxFilter"}},{"@ToolID":"37","Properties":{"MetaInfo":{"RecordInfo":{"Field":[]},"@connection":"Output"},"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"ID Consecutive Errors","DefaultAnnotationText":"if !isempty([ErrorCode])\nand isempty([Row-1:ErrorCode])\nthen ..."},"Configuration":{"NumRows":{"@value":"1"},"__isOpen":true,"OtherRows":"Empty","Expression":"if !isempty([ErrorCode])\nand isempty([Row-1:ErrorCode])\nthen 1\n\nelseif !isempty([ErrorCode])\nand !isempty([Row-1:ErrorCode])\nthen [Row-1:ConsecutiveErrors] + 1\n\nelse null()\nendif","UpdateField":{"@value":"False"},"GroupByFields":{},"CreateField_Name":"ConsecutiveErrors","CreateField_Type":"Integer","UpdateField_Name":"Timestamp,Message","__outputColumnDefaultName":"NewColumn"}},"GuiSettings":{"@Plugin":"AlteryxBasePluginsGui.MultiRowFormula.MultiRowFormula","Position":{"@x":"351.20000000000005","@y":"392.8"}},"EngineSettings":{"@EngineDll":"AlteryxBasePluginsEngine.dll","@EngineDllEntryPoint":"AlteryxMultiRowFormula"}},{"@ToolID":"36","Properties":{"MetaInfo":{"RecordInfo":{"Field":[]},"@connection":"Output"},"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"Field":"Timestamp,Message","Match":{"Field":"Timestamp,Message_Matched","ErrorUnmatched":{"@value":"False"}},"Method":"ParseComplex","Replace":{"@expression":"","CopyUnmatched":{"@value":"True"}},"ParseSimple":{"RootName":"Timestamp,Message","NumFields":{"@value":3},"SplitToRows":{"@value":"False"},"ErrorHandling":"Warn"},"ParseComplex":{"Field":[{"__id":"0","@type":"String","@field":"Timestamp","__expression":"(\\d+-\\d+-\\d+\\s\\d+:\\d+:\\d+)"},{"__id":"1","@type":"String","@field":"ErrorCode","__expression":"(\\d*)"}]},"CaseInsensitve":{"@value":"False"},"RegExExpression":{"@value":"(\\d+-\\d+-\\d+\\s\\d+:\\d+:\\d+)\\w+\\s(\\d*)"},"__fieldToParseType":"String","OriginalParseComplex":{"Field":[{"__id":"0","@type":"String","@field":"Timestamp","__expression":"(\\d+-\\d+-\\d+\\s\\d+:\\d+:\\d+)"},{"__id":"1","@type":"String","@field":"ErrorCode","__expression":"(\\d*)"}]}}},"GuiSettings":{"@Plugin":"AlteryxBasePluginsGui.RegEx.RegEx","Position":{"@x":"262.20000000000005","@y":"392.8"}},"EngineSettings":{"@EngineDll":"AlteryxBasePluginsEngine.dll","@EngineDllEntryPoint":"AlteryxRegEx"}},{"@ToolID":"44","Properties":{"MetaInfo":{"RecordInfo":{"Field":[]},"@connection":"Output"},"Annotation":{"Left":{"@value":"False"},"Name":"","@DisplayMode":"0","AnnotationText":"","DefaultAnnotationText":""},"Configuration":{"__rowData":[{"id":"Timestamp,Message","selected":false,"fieldName":"Timestamp,Message","isUnknown":false,"savedOrder":0,"incomingSize":"2147483647","incomingType":"V_WString","isDuplicated":false},{"id":"Timestamp","selected":true,"fieldName":"Timestamp","savedOrder":1,"incomingSize":"2147483647","incomingType":"V_WString","isDuplicated":false},{"id":"ErrorCode","selected":true,"fieldName":"ErrorCode","savedOrder":2,"incomingSize":"2147483647","incomingType":"V_WString","isDuplicated":false},{"id":"ConsecutiveErrors","selected":true,"fieldName":"ConsecutiveErrors","savedOrder":3,"incomingSize":"8","incomingType":"Int64","isDuplicated":false},{"id":"*Unknown","selected":true,"fieldName":"*Unknown","isMissing":false,"isUnknown":true,"savedOrder":5,"isDuplicated":false}],"CommaDecimal":{"@value":"False"},"OrderChanged":{"@value":"False"},"SelectFields":{"SelectField":[{"@field":"Timestamp,Message","@selected":"False"},{"@field":"*Unknown","@selected":"True"}]}}},"GuiSettings":{"@Plugin":"AlteryxBasePluginsGui.AlteryxSelect.AlteryxSelect","Position":{"@x":"540.2","@y":"392.8"}},"EngineSettings":{"@EngineDll":"AlteryxBasePluginsEngine.dll","@EngineDllEntryPoint":"AlteryxSelect"}}]},"@yxmdVer":"2021.4","Properties":{"Events":{"Enabled":{"@value":"True"}},"Memory":{"@default":"True"},"MetaInfo":{"Name":"Cloud Quest 20 Sol","Author":"","Company":"","Example":{"File":"","Description":""},"ToolInDb":{"@value":"False"},"Copyright":"","Telemetry":{"OriginWorkflowId":{"@value":"c5c8a194-4fd9-4d59-bd1b-2bb23faa71a1"},"PreviousWorkflowId":{"@value":"01J6AJYPDQ8MYJE6GH5TRNWTZR"}},"SearchTags":"","WorkflowId":{"@value":"00a36d6a-a2b2-4a13-969c-99d0029de685"},"Description":"","ToolVersion":"","CategoryName":"","RootToolName":"","NameIsFileName":{"@value":"True"},"DescriptionLink":{"@actual":"","@displayed":""}},"DefaultTZ":{"@value":"Etc/UTC"},"RunWithE2":{"@value":"True"},"TempFiles":{"@default":"True"},"ZoomLevel":{"@value":"0"},"Annotation":{"@on":"True","@includeToolName":"False"},"LayoutType":"Horizontal","WorkflowMode":{"@value":"standard"},"CancelOnError":{"@value":"False"},"DisableBrowse":{"@value":"False"},"ConvErrorLimit":{"@value":"10"},"DisableAllOutput":{"@value":"False"},"GlobalRecordLimit":{"@value":"0"},"ConvErrorLimit_Stop":{"@value":"False"},"ShowAllMacroMessages":{"@value":"False"},"ShowConnectionStatusIsOn":{"@value":"True"},"EnablePerformanceProfiling":{"@value":"False"},"ShowConnectionStatusOnlyWhenRunning":{"@value":"True"}},"Connections":{"Connection":[{"@name":"","Origin":{"@ToolID":"35","@Connection":"Output"},"Destination":{"@ToolID":"36","@Connection":"Input"}},{"@name":"","Origin":{"@ToolID":"36","@Connection":"Output"},"Destination":{"@ToolID":"37","@Connection":"Input"}},{"@name":"","Origin":{"@ToolID":"37","@Connection":"Output"},"Destination":{"@ToolID":"38","@Connection":"Input"}},{"@name":"","Origin":{"@ToolID":"38","@Connection":"True"},"Destination":{"@ToolID":"44","@Connection":"Input"}}]}},"contentChecksum":"4c9c4d45f67343192d0228b24883237708c5ab352e106c18458c414bc969e38a"}