google bigquery - Parsing fields out of textPayload in stackdriver logging -
here line tomcat access log:
127.0.0.1 - - [24/may/2016:17:53:05 -0700] "post /users http/1.1" 200 10676
is there way parse out various fields here client ip, http request method, request path, response code, etc., , load separate columns in bigquery table?
the table @ bottom of this page links fluent catch-all config, believe different logs should parsed out , loaded differently in configurable manner ease of querying?
or missing fundamental here?
it might not mean - guess :
how loading log gbq table each log line becomes row in table , parse table below (code not pretending optimal - show idea)
select regexp_extract(log_line, r'(?: (?:.+?)){0} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){1} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){2} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){3} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){4} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){5} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){6} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){7} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){8} (.+?) '), regexp_extract(log_line, r'(?: (?:.+?)){9} (.+?) '), ( select ' ' + regexp_replace(log_line, r'[\[\]\"]', '') + ' ' log_line (select '127.0.0.1 - - [24/may/2016:17:53:05 -0700] "post /users http/1.1" 200 10676' log_line) )