Skip to content

Instantly share code, notes, and snippets.

@rohitner
Created May 20, 2018 17:05
Show Gist options
  • Save rohitner/ad2b7234800f9770e6e33e43328479fb to your computer and use it in GitHub Desktop.
Save rohitner/ad2b7234800f9770e6e33e43328479fb to your computer and use it in GitHub Desktop.
Daru Log Importer
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"application/javascript": [
"if(window['d3'] === undefined ||\n",
" window['Nyaplot'] === undefined){\n",
" var path = {\"d3\":\"https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min\",\"downloadable\":\"http://cdn.rawgit.com/domitry/d3-downloadable/master/d3-downloadable\"};\n",
"\n",
"\n",
"\n",
" var shim = {\"d3\":{\"exports\":\"d3\"},\"downloadable\":{\"exports\":\"downloadable\"}};\n",
"\n",
" require.config({paths: path, shim:shim});\n",
"\n",
"\n",
"require(['d3'], function(d3){window['d3']=d3;console.log('finished loading d3');require(['downloadable'], function(downloadable){window['downloadable']=downloadable;console.log('finished loading downloadable');\n",
"\n",
"\tvar script = d3.select(\"head\")\n",
"\t .append(\"script\")\n",
"\t .attr(\"src\", \"http://cdn.rawgit.com/domitry/Nyaplotjs/master/release/nyaplot.js\")\n",
"\t .attr(\"async\", true);\n",
"\n",
"\tscript[0][0].onload = script[0][0].onreadystatechange = function(){\n",
"\n",
"\n",
"\t var event = document.createEvent(\"HTMLEvents\");\n",
"\t event.initEvent(\"load_nyaplot\",false,false);\n",
"\t window.dispatchEvent(event);\n",
"\t console.log('Finished loading Nyaplotjs');\n",
"\n",
"\t};\n",
"\n",
"\n",
"});});\n",
"}\n"
],
"text/plain": [
"\"if(window['d3'] === undefined ||\\n window['Nyaplot'] === undefined){\\n var path = {\\\"d3\\\":\\\"https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min\\\",\\\"downloadable\\\":\\\"http://cdn.rawgit.com/domitry/d3-downloadable/master/d3-downloadable\\\"};\\n\\n\\n\\n var shim = {\\\"d3\\\":{\\\"exports\\\":\\\"d3\\\"},\\\"downloadable\\\":{\\\"exports\\\":\\\"downloadable\\\"}};\\n\\n require.config({paths: path, shim:shim});\\n\\n\\nrequire(['d3'], function(d3){window['d3']=d3;console.log('finished loading d3');require(['downloadable'], function(downloadable){window['downloadable']=downloadable;console.log('finished loading downloadable');\\n\\n\\tvar script = d3.select(\\\"head\\\")\\n\\t .append(\\\"script\\\")\\n\\t .attr(\\\"src\\\", \\\"http://cdn.rawgit.com/domitry/Nyaplotjs/master/release/nyaplot.js\\\")\\n\\t .attr(\\\"async\\\", true);\\n\\n\\tscript[0][0].onload = script[0][0].onreadystatechange = function(){\\n\\n\\n\\t var event = document.createEvent(\\\"HTMLEvents\\\");\\n\\t event.initEvent(\\\"load_nyaplot\\\",false,false);\\n\\t window.dispatchEvent(event);\\n\\t console.log('Finished loading Nyaplotjs');\\n\\n\\t};\\n\\n\\n});});\\n}\\n\""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"true"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"require 'daru/io'"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<b> Daru::DataFrame(2x17) </b>\n",
"<table>\n",
" <thead>\n",
" \n",
" <tr>\n",
" <th></th>\n",
" \n",
" <th>method</th>\n",
" \n",
" <th>action_path</th>\n",
" \n",
" <th>ip</th>\n",
" \n",
" <th>timestamp</th>\n",
" \n",
" <th>line_type</th>\n",
" \n",
" <th>lineno</th>\n",
" \n",
" <th>source</th>\n",
" \n",
" <th>controller</th>\n",
" \n",
" <th>action</th>\n",
" \n",
" <th>format</th>\n",
" \n",
" <th>params</th>\n",
" \n",
" <th>rendered_file</th>\n",
" \n",
" <th>partial_duration</th>\n",
" \n",
" <th>status</th>\n",
" \n",
" <th>duration</th>\n",
" \n",
" <th>view</th>\n",
" \n",
" <th>db</th>\n",
" \n",
" </tr>\n",
" \n",
"</thead>\n",
" <tbody>\n",
" \n",
" <tr>\n",
" <td>0</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180312205500</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>28</td>\n",
" \n",
" <td>/home/rohitner/blog/log/test.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0032]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.929</td>\n",
" \n",
" <td>0.8945</td>\n",
" \n",
" <td>0.0</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>1</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180312205507</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>47</td>\n",
" \n",
" <td>/home/rohitner/blog/log/test.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0008]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.133</td>\n",
" \n",
" <td>0.1266</td>\n",
" \n",
" <td>0.0</td>\n",
" \n",
" </tr>\n",
" \n",
"\n",
" \n",
"</tbody>\n",
"</table>"
],
"text/plain": [
"#<Daru::DataFrame(2x17)>\n",
" method action_pat ip timestamp line_type lineno source controller action format params rendered_f partial_du status duration view db\n",
" 0 GET nil 127.0.0.1 2018031220 started 28 /home/rohi WelcomeCon index HTML nil welcome/in [0.0032] 200 0.929 0.8945 0.0\n",
" 1 GET nil 127.0.0.1 2018031220 started 47 /home/rohi WelcomeCon index HTML nil welcome/in [0.0008] 200 0.133 0.1266 0.0"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Daru::DataFrame.read_rails_log('/home/rohitner/blog/log/test.log')"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<b> Daru::DataFrame(12x14) </b>\n",
"<table>\n",
" <thead>\n",
" \n",
" <tr>\n",
" <th></th>\n",
" \n",
" <th>remote_host</th>\n",
" \n",
" <th>remote_logname</th>\n",
" \n",
" <th>user</th>\n",
" \n",
" <th>timestamp</th>\n",
" \n",
" <th>http_method</th>\n",
" \n",
" <th>resource_path</th>\n",
" \n",
" <th>http_version</th>\n",
" \n",
" <th>http_status</th>\n",
" \n",
" <th>bytes_sent</th>\n",
" \n",
" <th>referer</th>\n",
" \n",
" <th>user_agent</th>\n",
" \n",
" <th>line_type</th>\n",
" \n",
" <th>lineno</th>\n",
" \n",
" <th>source</th>\n",
" \n",
" </tr>\n",
" \n",
"</thead>\n",
" <tbody>\n",
" \n",
" <tr>\n",
" <td>0</td>\n",
" \n",
" <td>77.179.66.156</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161025144933</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>612</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>1</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>1</td>\n",
" \n",
" <td>77.179.66.156</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161025144934</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>404</td>\n",
" \n",
" <td>571</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>2</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>2</td>\n",
" \n",
" <td>77.179.66.156</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161025145044</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>404</td>\n",
" \n",
" <td>571</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>3</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>3</td>\n",
" \n",
" <td>77.179.66.156</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207103443</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>612</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>4</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>4</td>\n",
" \n",
" <td>77.179.66.156</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207103443</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>404</td>\n",
" \n",
" <td>571</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>5</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>5</td>\n",
" \n",
" <td>77.179.66.156</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207104318</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>404</td>\n",
" \n",
" <td>571</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>6</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>6</td>\n",
" \n",
" <td>77.179.66.156</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207104321</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>404</td>\n",
" \n",
" <td>571</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>7</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>7</td>\n",
" \n",
" <td>77.179.66.156</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207104323</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>404</td>\n",
" \n",
" <td>571</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>8</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>8</td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207110437</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>404</td>\n",
" \n",
" <td>571</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>9</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>9</td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207110458</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>304</td>\n",
" \n",
" <td>0</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>10</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>10</td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207110459</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>304</td>\n",
" \n",
" <td>0</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>11</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>11</td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>20161207110507</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>1.1</td>\n",
" \n",
" <td>404</td>\n",
" \n",
" <td>169</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>12</td>\n",
" \n",
" <td>/home/rohitner/blog/log/access.log</td>\n",
" \n",
" </tr>\n",
" \n",
"\n",
" \n",
"</tbody>\n",
"</table>"
],
"text/plain": [
"#<Daru::DataFrame(12x14)>\n",
" remote_hos remote_log user timestamp http_metho resource_p http_versi http_statu bytes_sent referer user_agent line_type lineno source\n",
" 0 77.179.66. nil nil 2016102514 GET nil 1.1 200 612 nil nil access 1 /home/rohi\n",
" 1 77.179.66. nil nil 2016102514 GET nil 1.1 404 571 nil nil access 2 /home/rohi\n",
" 2 77.179.66. nil nil 2016102514 GET nil 1.1 404 571 nil nil access 3 /home/rohi\n",
" 3 77.179.66. nil nil 2016120710 GET nil 1.1 200 612 nil nil access 4 /home/rohi\n",
" 4 77.179.66. nil nil 2016120710 GET nil 1.1 404 571 nil nil access 5 /home/rohi\n",
" 5 77.179.66. nil nil 2016120710 GET nil 1.1 404 571 nil nil access 6 /home/rohi\n",
" 6 77.179.66. nil nil 2016120710 GET nil 1.1 404 571 nil nil access 7 /home/rohi\n",
" 7 77.179.66. nil nil 2016120710 GET nil 1.1 404 571 nil nil access 8 /home/rohi\n",
" 8 127.0.0.1 nil nil 2016120711 GET nil 1.1 404 571 nil nil access 9 /home/rohi\n",
" 9 127.0.0.1 nil nil 2016120711 GET nil 1.1 304 0 nil nil access 10 /home/rohi\n",
" 10 127.0.0.1 nil nil 2016120711 GET nil 1.1 304 0 nil nil access 11 /home/rohi\n",
" 11 127.0.0.1 nil nil 2016120711 GET nil 1.1 404 169 nil nil access 12 /home/rohi"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Daru::IO::Importers::Log.new.read('/home/rohitner/blog/log/access.log',format: :apache).call"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<b> Daru::DataFrame(1x20) </b>\n",
"<table>\n",
" <thead>\n",
" \n",
" <tr>\n",
" <th></th>\n",
" \n",
" <th>bucket_owner</th>\n",
" \n",
" <th>bucket</th>\n",
" \n",
" <th>timestamp</th>\n",
" \n",
" <th>remote_ip</th>\n",
" \n",
" <th>requester</th>\n",
" \n",
" <th>request_id</th>\n",
" \n",
" <th>operation</th>\n",
" \n",
" <th>key</th>\n",
" \n",
" <th>request_uri</th>\n",
" \n",
" <th>http_status</th>\n",
" \n",
" <th>error_code</th>\n",
" \n",
" <th>bytes_sent</th>\n",
" \n",
" <th>object_size</th>\n",
" \n",
" <th>total_time</th>\n",
" \n",
" <th>turnaround_time</th>\n",
" \n",
" <th>referer</th>\n",
" \n",
" <th>user_agent</th>\n",
" \n",
" <th>line_type</th>\n",
" \n",
" <th>lineno</th>\n",
" \n",
" <th>source</th>\n",
" \n",
" </tr>\n",
" \n",
"</thead>\n",
" <tbody>\n",
" \n",
" <tr>\n",
" <td>0</td>\n",
" \n",
" <td>8aefdcbf18ef13fe9f82be73697a945f423e4299c995e9e96bb619975db40bd6</td>\n",
" \n",
" <td>drat</td>\n",
" \n",
" <td>20150612054010</td>\n",
" \n",
" <td>208.54.5.245</td>\n",
" \n",
" <td>-</td>\n",
" \n",
" <td>40D2FE0D1C76A065</td>\n",
" \n",
" <td>WEBSITE.GET.OBJECT</td>\n",
" \n",
" <td>file</td>\n",
" \n",
" <td>GET /file HTTP/1.1</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>5</td>\n",
" \n",
" <td>5</td>\n",
" \n",
" <td>0.02</td>\n",
" \n",
" <td>0.019</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0</td>\n",
" \n",
" <td>access</td>\n",
" \n",
" <td>1</td>\n",
" \n",
" <td>/home/rohitner/blog/log/s3.log</td>\n",
" \n",
" </tr>\n",
" \n",
"\n",
" \n",
"</tbody>\n",
"</table>"
],
"text/plain": [
"#<Daru::DataFrame(1x20)>\n",
" bucket_own bucket timestamp remote_ip requester request_id operation key request_ur http_statu error_code bytes_sent object_siz total_time turnaround referer user_agent line_type lineno source\n",
" 0 8aefdcbf18 drat 2015061205 208.54.5.2 - 40D2FE0D1C WEBSITE.GE file GET /file 200 nil 5 5 0.02 0.019 nil Mozilla/5. access 1 /home/rohi"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Daru::IO::Importers::Log.new.read('/home/rohitner/blog/log/s3.log',format: :amazon_s3).call"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<b> Daru::DataFrame(150x17) </b>\n",
"<table>\n",
" <thead>\n",
" \n",
" <tr>\n",
" <th></th>\n",
" \n",
" <th>method</th>\n",
" \n",
" <th>action_path</th>\n",
" \n",
" <th>ip</th>\n",
" \n",
" <th>timestamp</th>\n",
" \n",
" <th>line_type</th>\n",
" \n",
" <th>lineno</th>\n",
" \n",
" <th>source</th>\n",
" \n",
" <th>controller</th>\n",
" \n",
" <th>action</th>\n",
" \n",
" <th>format</th>\n",
" \n",
" <th>params</th>\n",
" \n",
" <th>rendered_file</th>\n",
" \n",
" <th>partial_duration</th>\n",
" \n",
" <th>status</th>\n",
" \n",
" <th>duration</th>\n",
" \n",
" <th>view</th>\n",
" \n",
" <th>db</th>\n",
" \n",
" </tr>\n",
" \n",
"</thead>\n",
" <tbody>\n",
" \n",
" <tr>\n",
" <td>0</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180226071524</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>1</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>Rails::WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>/home/rohitner/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.5/lib/rails/templates/rails/welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0021000000000000003]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.131</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>1</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227165745</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>8</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>Rails::WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>/home/rohitner/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.5/lib/rails/templates/rails/welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0086]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.566</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>2</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227171715</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>15</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>Rails::WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>/home/rohitner/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.5/lib/rails/templates/rails/welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0019]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.004</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>3</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227171930</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>22</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0007]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.897</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>4</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227171934</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>29</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0004]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.015</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>5</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172152</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>36</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>Rails::WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>/home/rohitner/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.5/lib/rails/templates/rails/welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0022]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.005</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>6</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172155</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>43</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>Rails::WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>/home/rohitner/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/railties-5.1.5/lib/rails/templates/rails/welcome/index.html.erb</td>\n",
" \n",
" <td>[0.002]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.004</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>7</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172214</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>50</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0003]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.023</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>8</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172326</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>57</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0004]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.015</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>9</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172508</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>64</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>10</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172531</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>119</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0004]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.013</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>11</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172542</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>126</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0015]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.041</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>12</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172543</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>133</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0014]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.039</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>13</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172547</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>140</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0004]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.013</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>14</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172556</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>147</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>15</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172849</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>178</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>16</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172853</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>209</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>WelcomeController</td>\n",
" \n",
" <td>index</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>welcome/index.html.erb</td>\n",
" \n",
" <td>[0.0019]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.238</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>17</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172900</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>216</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>18</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227172905</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>268</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>ArticlesController</td>\n",
" \n",
" <td>new</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>406</td>\n",
" \n",
" <td>0.023</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>19</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227173933</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>346</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>ArticlesController</td>\n",
" \n",
" <td>new</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>articles/new.html.erb</td>\n",
" \n",
" <td>[0.0003]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.015</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>20</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227173947</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>353</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>ArticlesController</td>\n",
" \n",
" <td>new</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>articles/new.html.erb</td>\n",
" \n",
" <td>[0.0009]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.026</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>21</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227174224</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>360</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>ArticlesController</td>\n",
" \n",
" <td>new</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>articles/new.html.erb</td>\n",
" \n",
" <td>[0.11090000000000001]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.139</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>22</td>\n",
" \n",
" <td>POST</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227174403</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>367</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>23</td>\n",
" \n",
" <td>POST</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227175932</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>398</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>24</td>\n",
" \n",
" <td>POST</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227180805</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>429</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>25</td>\n",
" \n",
" <td>PUT</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227180830</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>460</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>26</td>\n",
" \n",
" <td>PUT</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227180834</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>461</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>27</td>\n",
" \n",
" <td>PUT</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227180834</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>462</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>28</td>\n",
" \n",
" <td>PUT</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227180835</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>463</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
" <tr>\n",
" <td>29</td>\n",
" \n",
" <td>POST</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180227180840</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>464</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" <td></td>\n",
" \n",
" </tr>\n",
" \n",
"\n",
" \n",
" <tr>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" <td>...</td>\n",
" \n",
" </tr>\n",
"\n",
" \n",
"\n",
" <tr>\n",
" <td>149</td>\n",
" \n",
" <td>GET</td>\n",
" \n",
" <td></td>\n",
" \n",
" <td>127.0.0.1</td>\n",
" \n",
" <td>20180312174118</td>\n",
" \n",
" <td>started</td>\n",
" \n",
" <td>1881</td>\n",
" \n",
" <td>/home/rohitner/blog/log/development.log</td>\n",
" \n",
" <td>ArticlesController</td>\n",
" \n",
" <td>show</td>\n",
" \n",
" <td>HTML</td>\n",
" \n",
" <td>{:id=>\"9\"}</td>\n",
" \n",
" <td>articles/show.html.erb</td>\n",
" \n",
" <td>[0.0029]</td>\n",
" \n",
" <td>200</td>\n",
" \n",
" <td>0.097</td>\n",
" \n",
" <td>0.0506</td>\n",
" \n",
" <td>0.0014</td>\n",
" \n",
" </tr>\n",
" \n",
"</tbody>\n",
"</table>"
],
"text/plain": [
"#<Daru::DataFrame(150x17)>\n",
" method action_pat ip timestamp line_type lineno source controller action format params rendered_f partial_du status duration view db\n",
" 0 GET nil 127.0.0.1 2018022607 started 1 /home/rohi Rails::Wel index HTML nil /home/rohi [0.0021000 200 0.131 nil nil\n",
" 1 GET nil 127.0.0.1 2018022716 started 8 /home/rohi Rails::Wel index HTML nil /home/rohi [0.0086] 200 0.566 nil nil\n",
" 2 GET nil 127.0.0.1 2018022717 started 15 /home/rohi Rails::Wel index HTML nil /home/rohi [0.0019] 200 0.004 nil nil\n",
" 3 GET nil 127.0.0.1 2018022717 started 22 /home/rohi WelcomeCon index HTML nil welcome/in [0.0007] 200 0.897 nil nil\n",
" 4 GET nil 127.0.0.1 2018022717 started 29 /home/rohi WelcomeCon index HTML nil welcome/in [0.0004] 200 0.015 nil nil\n",
" 5 GET nil 127.0.0.1 2018022717 started 36 /home/rohi Rails::Wel index HTML nil /home/rohi [0.0022] 200 0.005 nil nil\n",
" 6 GET nil 127.0.0.1 2018022717 started 43 /home/rohi Rails::Wel index HTML nil /home/rohi [0.002] 200 0.004 nil nil\n",
" 7 GET nil 127.0.0.1 2018022717 started 50 /home/rohi WelcomeCon index HTML nil welcome/in [0.0003] 200 0.023 nil nil\n",
" 8 GET nil 127.0.0.1 2018022717 started 57 /home/rohi WelcomeCon index HTML nil welcome/in [0.0004] 200 0.015 nil nil\n",
" 9 GET nil 127.0.0.1 2018022717 started 64 /home/rohi nil nil nil nil nil nil nil nil nil nil\n",
" 10 GET nil 127.0.0.1 2018022717 started 119 /home/rohi WelcomeCon index HTML nil welcome/in [0.0004] 200 0.013 nil nil\n",
" 11 GET nil 127.0.0.1 2018022717 started 126 /home/rohi WelcomeCon index HTML nil welcome/in [0.0015] 200 0.041 nil nil\n",
" 12 GET nil 127.0.0.1 2018022717 started 133 /home/rohi WelcomeCon index HTML nil welcome/in [0.0014] 200 0.039 nil nil\n",
" 13 GET nil 127.0.0.1 2018022717 started 140 /home/rohi WelcomeCon index HTML nil welcome/in [0.0004] 200 0.013 nil nil\n",
" 14 GET nil 127.0.0.1 2018022717 started 147 /home/rohi nil nil nil nil nil nil nil nil nil nil\n",
" ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..."
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Daru::IO::Importers::Log.new.read('/home/rohitner/blog/log/development.log',format: :rails3).call"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Ruby 2.4.2",
"language": "ruby",
"name": "ruby"
},
"language_info": {
"file_extension": ".rb",
"mimetype": "application/x-ruby",
"name": "ruby",
"version": "2.4.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment