我有以下日志文件:
*** 2018-09-14T12:36:39.560671+02:00 (DB_NAME)
*** SESSION ID:(12345) 2018-09-14T12:36:39.560750+02:00
*** CLIENT ID:() 2018-09-14T12:36:39.560774+02:00
*** SERVICE NAME:(DB_NAME) 2018-09-14T12:36:39.560798+02:00
*** MODULE NAME:(mod_name_action (TNS V1-V3)) 2018-09-14T12:36:39.560822+02:00
*** ACTION NAME:() 2018-09-14T12:36:39.560848+02:00
*** CLIENT DRIVER:() 2018-09-14T12:36:39.560875+02:00
*** CONTAINER ID:(1) 2018-09-14T12:36:39.560926+02:00
我想存储从这一行提取的 MODULE_NAME 值:
*** MODULE NAME:(mod_name_action (TNS V1-V3)) 2018-09-14T12:36:39.560822+02:00
即只是这个:
mod_name_action (TNS V1-V3)
我必须使用 python 来做到这一点。我正在尝试类似的东西:
log_i=open(logname,"r")
for line_of_log in log_i:
#search the MODULE
module = "MODULE NAME:("
str_found_at = line_of_log.find(module)
if str_found_at != -1:
regex = r"MODULE NAME:([a-zA-Z]+)"
MODULE = re.findall(regex, line_of_log)
print "MODULE_A==>", MODULE
log_i.close()
但它不起作用。有人能帮我吗?