Advertisement
Guest User

Untitled

a guest
Jan 24th, 2017
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.19 KB | None | 0 0
  1. #!/bin/bash
  2. # Regex:
  3. # (?s) multiline search
  4. # Capturegroup 1 = date
  5. # Capturegroup 2 = time
  6. # Capturegroup 3 = error type (ERROR, WARN or DEBUG)
  7. # Capturegroup 4 = error details
  8. # Positive lookahed, until new line (windows/linux) starts with date, OR (if it's the last line matching the pattern, till the end of the last line.
  9. #
  10. REGEX_MULTILINE="(?s)([0-9]{4}-[0-9]{2}-[0-9]{2})[[:space:]]([0-9]{2}:[0-9]{2}:[0-9]{2}[,|.][0-9]{3})[[:space:]]+(ERROR|WARN|DEBUG)(.*?)(?=(?:rn|[rn])[0-9]{4}-[0-9]{2}-[0-9]{2}|z)
  11. LOGFILE="test.log"
  12.  
  13. # write to logfile gives exactly the info I want
  14. write_log(){
  15. echo -n $(grep -Pzo $REGEX_MULTILINE $LOGFILE) > output_grep1.txt
  16. }
  17.  
  18. # I'm stuck in this part to generate, for example, an XML-file
  19. write_xml(){
  20. local LOGDATE=""
  21. local LOGTIME=""
  22. local LOGTYPE=""
  23. local LOGINFO=""
  24. while IFS= read -r LINE ; do
  25. #For testing purposes, to see if brackets contain the full string,
  26. #or a line of that string
  27. printf '%sn' "[$LINE]"
  28. #processing logic here. Didn't get this far yet
  29. while [[ $LINE =~ $REGEX_MULTILINE ]] ; do
  30. # regex capturegoups
  31. LOGDATE=${BASH_REMATCH[1]}
  32. LOGTIME=${BASH_REMATCH[2]}
  33. LOGTYPE=${BASH_REMATCH[3]}
  34. LOGINFO=${BASH_REMATCH[4]}
  35. # send vars to function for output
  36. # write_xml_function $LOGDATE $LOGTIME $LOGTYPE $LOGINFO
  37. # for testing purposes
  38. echo -e "log entry:nt 1: $LOGDATE nt 2: $LOGTIME nt 3: $LOGTYPE nt 4: $LOGINFO n"
  39. break
  40. done
  41. done < <(grep -Pzo $REGEX_MULTILINE $LOGFILE)
  42. }
  43.  
  44. 2017-01-01 11:09:42,439 INFO server.service.function.property.PropertyService - Props (re)loaded.
  45. 2017-01-01 11:15:46,155 DEBUG server.service.ApiController - api/start called! params:
  46. ${params}
  47. 2017-01-01 13:01:29,675 ERROR server.service.util.base.FtpClient - Error retrieving file. Directory does not exist.
  48. 2017-01-01 13:15:12,803 DEBUG server.service.ApiController - api/start called! params:
  49. ${params}
  50. 2017-01-01 13:15:13,932 INFO server.service.ControllerService - Filter:server.service.model.Filters
  51. 2017-01-01 15:36:04,914 INFO server.service.ControllerService - Filter:server.service.model.Filters
  52. 2017-01-01 15:55:50,279 ERROR server.service.WebClient - server API failed: [(someError.java:12345)]
  53. {"someId":"etc","otherId":123,"token":{}}
  54. 2017-01-01 15:55:50,366 ERROR server.service.controller.Search - Server error for [/service/search/load]: java.lang.NullPointerException stack[etc]
  55. java.lang.NullPointerException
  56. at server.common.stack(SomeApi.java:123)
  57. at server.service.trace(SomeService.java:456)
  58. at java.lang.Thread.run(Thread.java:789)
  59. etc.
  60. etc.
  61. 2017-01-01 16:17:55,175 DEBUG server.config.app -
  62.  
  63. STARTING...
  64.  
  65.  
  66. 2017-01-01 16:18:00,040 INFO server.common.service.base.property - Props (re)loaded.
  67. 2017-01-01 17:44:43,959 DEBUG server.service.controller - api/start called! params:
  68. ${params}
  69.  
  70. [2017-01-01 13:15:13,932 INFO server.service.ControllerService - Filter:server.service.model.Filters]
  71. [2017-01-01 15:36:04,914 INFO server.service.ControllerService - Filter:server.service.model.Filters]
  72. [2017-01-01 15:55:50,279 ERROR server.service.WebClient - server API failed: [(someError.java:12345)]
  73. {"someId":"etc","otherId":123,"token":{}}]
  74. [2017-01-01 15:55:50,366 ERROR server.service.controller.Search - Server error for [/service/search/load]: java.lang.NullPointerException stack[etc]
  75. java.lang.NullPointerException
  76. at server.common.stack(SomeApi.java:123)
  77. at server.service.trace(SomeService.java:456)
  78. at java.lang.Thread.run(Thread.java:789)
  79. etc.
  80. etc.]
  81.  
  82. [2017-01-01 13:15:13,932 INFO server.service.ControllerService - Filter:server.service.model.Filters]
  83. [2017-01-01 15:36:04,914 INFO server.service.ControllerService - Filter:server.service.model.Filters]
  84. [2017-01-01 15:55:50,279 ERROR server.service.WebClient - server API failed: [(someError.java:12345)]
  85. {"someId":"etc","otherId":123,"token":{}}]
  86. [2017-01-01 15:55:50,366 ERROR server.service.controller.Search - Server error for [/service/search/load]: java.lang.NullPointerException stack[etc]]
  87. [java.lang.NullPointerException]
  88. [ at server.common.stack(SomeApi.java:123)]
  89. [ at server.service.trace(SomeService.java:456)]
  90. [ at java.lang.Thread.run(Thread.java:789)]
  91. [ etc.]
  92. [ etc.]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement