Powered by Blogger.

Tìm hiểu về tập tin Tomcat Access Log

Trong Tomcat cung cấp các thành phần được gọi là van có thể được đặt trong các dòng yêu cầu xử lý nhằm truy cập vào các nguồn tài nguyên của hệ thống.

1. Tập tin Tomcat Access Log được cấu hình ở đâu?
Để biết tập tin Tomcat Access Log được cấu hình ở đâu thì bạn cần truy cập vào đường dẫn sau trong thư mục chứa tài nguyên Apache Tomcat, ví dụ máy chủ mình như sau:
 
C:\JAVA_HOME\apache-tomcat-8.0.32\conf\server.xml

Bạn mở tập tin server.xml lên để xem tập tin này chứa thông tin gì nào. Bạn để ý thì tập tin server.xml chứa khá nhiều thông tin đến cấu hình máy chủ Tomcat, nhưng đối với bài viết này chúng ta sẽ chỉ để ý đến tập tin Tomcat Access Log được cấu hình như thế nào mà thôi.


Bạn kéo xuống gần cuối trong tập tin server.xml sẽ thấy đoạn mã nằm trong chẳng hạn như sau được dùng để khai báo nơi chứa cũng như thông tin sẽ được ghi trong tập tin server.xml như sau:

<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--<Valve className="org.apache.catalina.authenticator.SingleSignOn" />-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />
</Host>

Như vậy tên của tập tin Tomcat Access Log được lưu trữ trong thư mục logs và tiêu đề của tập tin Tomcat Access Log có tiền tốgiá trị mặc định là access_log và hậu tốgiá trị mặc định là định dạng yyyy-MM-dd

Ví dụ một số tập tin Tomcat Access Log được ghi dạng như sau:
localhost_access_log.2016-12-17
localhost_access_log.2016-12-18
localhost_access_log.2016-12-19

2. Tập tin Tomcat Access Log cho bạn biết điều gì?
Để biết tập tin Tomcat Access Log cho bạn biết điều gì thì hãy xem qua một tập tin Tomcat Access Log mẫu chẳng hạn như sau:
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:39 +0700] "GET / HTTP/1.1" 200 280
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /test-resbeans.html HTTP/1.1" 200 7110
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /css_master-all.css HTTP/1.1" 200 118371
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /test-resbeans.js HTTP/1.1" 200 86110
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /images/pname.png HTTP/1.1" 200 1963
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /test-resbeans.css HTTP/1.1" 200 5933
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /expand.gif HTTP/1.1" 200 112
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /collapse.gif HTTP/1.1" 200 87
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /og.gif HTTP/1.1" 200 884
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /cg.gif HTTP/1.1" 200 890
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:49 +0700] "GET /hms/application.wadl HTTP/1.1" 200 7817
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:50 +0700] "OPTIONS /hms/ HTTP/1.1" 200 4576
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:50 +0700] "GET /cc.gif HTTP/1.1" 200 857
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:50 +0700] "GET /item.gif HTTP/1.1" 200 963
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:50 +0700] "GET /app.gif HTTP/1.1" 200 -
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:50 +0700] "GET /images/primary-roll.gif HTTP/1.1" 200 94
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:50 +0700] "GET /images/masthead_link_enabled.gif HTTP/1.1" 200 51
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:50 +0700] "GET /images/masthead.png HTTP/1.1" 200 2826
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:53 +0700] "GET /images/bg_gradient.gif HTTP/1.1" 200 51
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:54 +0700] "GET /hms/test?timestamp=1482128394395 HTTP/1.1" 200 12
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:54 +0700] "OPTIONS /hms/test?timestamp=1482128394395 HTTP/1.1" 200 556
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:54 +0700] "GET /images/background_border_bottom.gif HTTP/1.1" 200 49
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:54 +0700] "GET /images/level1_deselect.jpg HTTP/1.1" 200 25052
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:19:54 +0700] "GET /images/level1_selected-1lvl.jpg HTTP/1.1" 200 25052
0:0:0:0:0:0:0:1 - - [19/Dec/2016:13:22:42 +0700] "GET /hms/application.wadl HTTP/1.1" 200 7817

Như vậy với tập tin Tomcat Access Log có định dạng %h %l %u %t "%r" %s %b sẽ cho bạn biết:
– %h hiển thị tên máy hoặc địa chỉ IP.
– %l hiển thị tên người dùng từ xa hợp lý, điều này luôn luôn là một dấu gạch ngang (-).
– %u hiển thị người sử dụng từ xa đã được chứng thực.
– %t hiển thị thời gian
– %r hiển thị yêu cầu như GET hay POST chẳng hạn
– %s hiển thị trạng thái HTTP như trong ví dụ là 200 thông báo kết quả OK.
– %b hiển thị số byte gửi trừ tiêu đề HTTP

Lời kết: Qua bài viết trên mình đã trình bày về tập tin Tomcat Access Log được lưu trữ trong Apache Tomcat, trong một số trường hợp tập tin Tomcat Access Log sẽ có nhiều lợi ích mà bạn sẽ cần đến.
    Blogger Comment
    Facebook Comment