rbatch 1.6.3 → 1.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +2 -5
- data/doc/rdoc/CHANGELOG.html +182 -0
- data/doc/rdoc/LICENSE.html +98 -0
- data/doc/rdoc/RBatch/Cmd.html +333 -0
- data/doc/rdoc/RBatch/CmdException.html +158 -0
- data/doc/rdoc/RBatch/CmdResult.html +496 -0
- data/doc/rdoc/RBatch/Config/Exception.html +158 -0
- data/doc/rdoc/RBatch/Config.html +355 -0
- data/doc/rdoc/RBatch/Log.html +743 -0
- data/doc/rdoc/RBatch.html +457 -0
- data/doc/rdoc/created.rid +8 -0
- data/doc/rdoc/images/brick.png +0 -0
- data/doc/rdoc/images/brick_link.png +0 -0
- data/doc/rdoc/images/bug.png +0 -0
- data/doc/rdoc/images/bullet_black.png +0 -0
- data/doc/rdoc/images/bullet_toggle_minus.png +0 -0
- data/doc/rdoc/images/bullet_toggle_plus.png +0 -0
- data/doc/rdoc/images/date.png +0 -0
- data/doc/rdoc/images/find.png +0 -0
- data/doc/rdoc/images/loadingAnimation.gif +0 -0
- data/doc/rdoc/images/macFFBgHack.png +0 -0
- data/doc/rdoc/images/package.png +0 -0
- data/doc/rdoc/images/page_green.png +0 -0
- data/doc/rdoc/images/page_white_text.png +0 -0
- data/doc/rdoc/images/page_white_width.png +0 -0
- data/doc/rdoc/images/plugin.png +0 -0
- data/doc/rdoc/images/ruby.png +0 -0
- data/doc/rdoc/images/tag_green.png +0 -0
- data/doc/rdoc/images/wrench.png +0 -0
- data/doc/rdoc/images/wrench_orange.png +0 -0
- data/doc/rdoc/images/zoom.png +0 -0
- data/doc/rdoc/index.html +136 -0
- data/doc/rdoc/js/darkfish.js +116 -0
- data/doc/rdoc/js/jquery.js +32 -0
- data/doc/rdoc/js/quicksearch.js +114 -0
- data/doc/rdoc/js/thickbox-compressed.js +10 -0
- data/doc/rdoc/lib/rbatch/cmd_rb.html +56 -0
- data/doc/rdoc/lib/rbatch/config_rb.html +56 -0
- data/doc/rdoc/lib/rbatch/log_rb.html +58 -0
- data/doc/rdoc/lib/rbatch_rb.html +58 -0
- data/doc/rdoc/rdoc.css +706 -0
- data/sample/bin/apache_log_insert.rb +108 -0
- data/sample/bin/file_batch_copy.rb +13 -0
- data/sample/bin/mysql_data_backup.rb +42 -0
- data/sample/bin/openam_log_insert.rb +105 -0
- data/sample/bin/openldap_backup.rb +7 -0
- data/sample/bin/webagent_log_insert.rb +108 -0
- data/sample/conf/apache_log_insert.yaml +8 -0
- data/sample/conf/file_batch_copy.yaml +5 -0
- data/sample/conf/mysql_data_backup.yaml +5 -0
- data/sample/conf/openam_log_insert.yaml +35 -0
- data/sample/conf/openldap_backup.yaml +2 -0
- data/sample/conf/rbatch.yaml +68 -0
- data/sample/conf/test.yaml +5 -0
- data/sample/conf/webagent_log_insert.yaml +16 -0
- data/sample/data/access_log.1 +50 -0
- data/sample/data/access_log.2012-07-10 +50 -0
- data/sample/data/amAgent_localhost_80.log.1 +39 -0
- data/sample/data/amAgent_localhost_80.log.2012-07-10 +40 -0
- data/sample/data/amAuthentication.access.1 +30 -0
- data/sample/data/amAuthentication.access.2012-07-10 +30 -0
- data/sample/data/amAuthentication.error.1 +10 -0
- data/sample/data/amAuthentication.error.2012-07-10 +6 -0
- data/sample/log/20130120_apache_log_insert.log +171 -0
- data/sample/log/20130120_openam_log_insert.log +143 -0
- data/sample/log/20130121_apache_log_insert.log +103 -0
- data/sample/log/20130121_file_batch_copy.log +15 -0
- data/sample/log/20130121_openam_log_insert.log +39 -0
- data/sample/log/20130121_webagent_log_insert.log +432 -0
- data/sample/log/empty +0 -0
- data/sample/moto/README +16 -0
- data/sample/moto/auditlog.src.zip +0 -0
- data/sample/moto/build.gradle +106 -0
- data/sample/moto/gradle/wrapper/gradle-wrapper.jar +0 -0
- data/sample/moto/gradle/wrapper/gradle-wrapper.properties +7 -0
- data/sample/moto/gradle.properties +12 -0
- data/sample/moto/gradlew +164 -0
- data/sample/moto/gradlew.bat +90 -0
- data/sample/moto/settings.gradle +1 -0
- data/sample/moto/src/main/bin/delete_auditlog.sh +176 -0
- data/sample/moto/src/main/bin/delete_workflowinstances.sh +315 -0
- data/sample/moto/src/main/bin/import_auth_log.sh +23 -0
- data/sample/moto/src/main/etc/delete_auditlog.param +39 -0
- data/sample/moto/src/main/etc/delete_workflowinstances.param +30 -0
- data/sample/moto/src/main/etc/log4j.xml +28 -0
- data/sample/moto/src/main/etc/status.properties +27 -0
- data/sample/moto/src/main/etc/sysparam.properties +54 -0
- data/sample/moto/src/main/java/jp/ossc/imortAuditlog/DateUtil.java +48 -0
- data/sample/moto/src/main/java/jp/ossc/imortAuditlog/ImportAuthLogMain.java +36 -0
- data/sample/moto/src/main/java/jp/ossc/imortAuditlog/LogReader.java +521 -0
- data/sample/moto/src/main/java/jp/ossc/imortAuditlog/MysqlController.java +315 -0
- data/sample/moto/src/main/logrotate/delete_auditlog +6 -0
- data/sample/moto/src/main/logrotate/delete_workflowinstanceslog +6 -0
- data/sample/moto/src/main/sql/tables.sql +36 -0
- data/test/cases/test_cmd.rb +120 -0
- data/test/cases/test_config.rb +41 -0
- data/test/cases/test_log.rb +599 -0
- data/test/conf/rbatch.yaml +0 -0
- data/test/mocks/PrintArgs.exe +0 -0
- data/test/mocks/win_cmd.exe +0 -0
- metadata +100 -1
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
require 'rbatch'
|
|
3
|
+
require 'mysql'
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
#
|
|
8
|
+
# Apacheのアクセスログを解析してMySQLに挿入する
|
|
9
|
+
#
|
|
10
|
+
|
|
11
|
+
# ログの1行を表すクラス
|
|
12
|
+
class Entry
|
|
13
|
+
# 行をマッチさせる正規表現
|
|
14
|
+
@@reg=/^
|
|
15
|
+
(\S+) # 0 ip_address
|
|
16
|
+
\s+
|
|
17
|
+
(\S+) # 1 X-Forwarded-For
|
|
18
|
+
\s+
|
|
19
|
+
(\S+) # 2 identity_check
|
|
20
|
+
\s+
|
|
21
|
+
(\S+) # 3 user
|
|
22
|
+
\s+
|
|
23
|
+
\[ (.*?) \] # 4 date
|
|
24
|
+
\s+
|
|
25
|
+
(\S+) # 5 sec
|
|
26
|
+
\s+
|
|
27
|
+
(\S+) # 6 msec
|
|
28
|
+
\s+
|
|
29
|
+
" (.*?) " # 7 request
|
|
30
|
+
\s+
|
|
31
|
+
(\S+) # 8 status
|
|
32
|
+
\s+
|
|
33
|
+
(\S+) # 9 size
|
|
34
|
+
\s+
|
|
35
|
+
" (.*?) " # 10 user_agent
|
|
36
|
+
\s+
|
|
37
|
+
" (.*?) " # 11 referer
|
|
38
|
+
$/x
|
|
39
|
+
|
|
40
|
+
@entry
|
|
41
|
+
|
|
42
|
+
# ログの1行を解析してEntryクラスを作る。
|
|
43
|
+
# 解析できない時は例外を発生させる。
|
|
44
|
+
#
|
|
45
|
+
# 期待しているフォーマットは以下の通り。
|
|
46
|
+
#
|
|
47
|
+
# %h %{X-Forwarded-For}i %l %u %t %T %D \"%r\" %>s %b \"%{User-Agent}i\" \"%{Referer}i\"
|
|
48
|
+
#
|
|
49
|
+
def initialize(line)
|
|
50
|
+
match = line.match(@@reg)
|
|
51
|
+
raise "parse error. line: <#{line}> " if match.nil?
|
|
52
|
+
captures = match.captures
|
|
53
|
+
@entry = {
|
|
54
|
+
:ip_address => captures[1].split(",")[0],
|
|
55
|
+
:user => captures[3],
|
|
56
|
+
:datetime => DateTime.strptime( captures[4], '%d/%b/%Y:%T %z'),
|
|
57
|
+
:sec => captures[5].to_i,
|
|
58
|
+
:request => captures[7],
|
|
59
|
+
:status => captures[8].to_i,
|
|
60
|
+
:user_agent => captures[10],
|
|
61
|
+
:referer => captures[11]
|
|
62
|
+
}
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
# Insert用のSQLを返す
|
|
66
|
+
def insert_sql(table_name,host_name,company_id)
|
|
67
|
+
value = [ "'" + company_id + "'" ,
|
|
68
|
+
"'" + @entry[:datetime].strftime("%Y/%m/%d %H:%M:%S") + "'",
|
|
69
|
+
"'" + @entry[:user] + "'" ,
|
|
70
|
+
"'" + @entry[:ip_address] + "'",
|
|
71
|
+
"'" + host_name + "'" ,
|
|
72
|
+
"'" + @entry[:request] + "'" ,
|
|
73
|
+
@entry[:sec].to_s,
|
|
74
|
+
@entry[:status].to_s,
|
|
75
|
+
"'" + @entry[:user_agent] + "'" ,
|
|
76
|
+
"'" + @entry[:referer] + "'"
|
|
77
|
+
].join(",")
|
|
78
|
+
|
|
79
|
+
return "INSERT INTO #{table_name} (companyId,date,login_id,access_ip,host_name,access_url,forward_time,httpstatus,user_agent,referer) VALUES (#{value})"
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
# メイン
|
|
84
|
+
|
|
85
|
+
RBatch::Log.new do |log|
|
|
86
|
+
log.info("Start -----------------");
|
|
87
|
+
entries = []
|
|
88
|
+
|
|
89
|
+
# アクセスログ読み込み
|
|
90
|
+
File.foreach(RBatch::config["apache_log_path"]) do |line|
|
|
91
|
+
entries << Entry.new(line.chomp)
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
# MySQLに接続
|
|
95
|
+
con = Mysql.new(RBatch::config["mysql_server"],
|
|
96
|
+
RBatch::config["mysql_user"],
|
|
97
|
+
RBatch::config["mysql_password"],
|
|
98
|
+
RBatch::config["mysql_db_name"])
|
|
99
|
+
# MySQLに挿入
|
|
100
|
+
entries.each do |entry|
|
|
101
|
+
sql = entry.insert_sql(RBatch::config["mysql_table_name"],
|
|
102
|
+
RBatch::config["host_name"],
|
|
103
|
+
RBatch::config["company_id"])
|
|
104
|
+
log.info("exec sql: " + sql);
|
|
105
|
+
con.query(sql)
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
require 'rbatch'
|
|
3
|
+
require 'fileutils'
|
|
4
|
+
|
|
5
|
+
# ファイル一括コピー
|
|
6
|
+
RBatch::Log.new do |log|
|
|
7
|
+
target_dir = RBatch::config["target_dir"]
|
|
8
|
+
RBatch::config["file_list"].each do | file |
|
|
9
|
+
log.info("copy " + file + " -> " + target_dir)
|
|
10
|
+
FileUtils.cp_r(file,target_dir)
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
require 'fileutils'
|
|
2
|
+
require 'rbatch'
|
|
3
|
+
|
|
4
|
+
RBatch::Log.new do | log |
|
|
5
|
+
log.info "Start mysql data backup"
|
|
6
|
+
# read config
|
|
7
|
+
remote_backup_dir = RBatch::config["remote_backup_dir"]
|
|
8
|
+
local_backup_dir = RBatch::config["local_backup_dir"]
|
|
9
|
+
gpg_passphrase_file = RBatch::config["gpg_passphrase_filepath"]
|
|
10
|
+
local_delete_date = RBatch::config["local_delete_date"]
|
|
11
|
+
file_dump = RBatch::config["work_dir"] + Time.now.strftime("%Y%m%d_%H%M%S") + ".mysqldump"
|
|
12
|
+
file_targz = file_dump + ".tar.gz"
|
|
13
|
+
file_gpg = file_targz + ".gpg"
|
|
14
|
+
# main
|
|
15
|
+
cmd1 = "mysqldump --single-transaction --flush-logs --master-data=2 --all-databases > #{file_dump}"
|
|
16
|
+
log.info(cmd1)
|
|
17
|
+
RBatch::cmd(cmd1)
|
|
18
|
+
|
|
19
|
+
cmd2 = "tar zcvf #{file_targz} #{file_dump}"
|
|
20
|
+
log.info(cmd2)
|
|
21
|
+
RBatch::cmd(cmd2)
|
|
22
|
+
|
|
23
|
+
cmd3 = "gpg --batch --cipher-algo AES256 --passphrase-file #{gpg_passphrase_file} --passphrase-repeat 0 --output #{file_gpg} -c #{file_targz}"
|
|
24
|
+
log.info(cmd3)
|
|
25
|
+
RBatch::cmd(cmd3)
|
|
26
|
+
|
|
27
|
+
log.info("cp #{file_gpg} #{local_backup_dir}")
|
|
28
|
+
FileUtils.cp(file_gpg, local_backup_dir)
|
|
29
|
+
|
|
30
|
+
log.info "cp #{file_gpg} #{remote_backup_dir}"
|
|
31
|
+
FileUtils.cp(file_gpg, remote_backup_dir)
|
|
32
|
+
|
|
33
|
+
# delete old local backup files
|
|
34
|
+
Dir::foreach(local_backup_dir) do |file|
|
|
35
|
+
reg = Regexp.new("([0-9][0-9][0-9][0-9][0-1][0-9][0-3][0-9])_[0-2][0-9][0-5][0-9][0-5][0-9].mysqldump.tar.gz.gpg")
|
|
36
|
+
if reg =~ file && Date.strptime($1,"%Y%m%d") <= Date.today - local_delete_date
|
|
37
|
+
log.info "Delete old backup file: " + File.join(local_backup_dir, file)
|
|
38
|
+
File::delete(File.join(local_backup_dir, file))
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
log.info("Success Finish")
|
|
42
|
+
end
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
require 'rbatch'
|
|
3
|
+
require 'mysql'
|
|
4
|
+
|
|
5
|
+
#
|
|
6
|
+
# OpenAMの認証アクセスログと認証エラーログを解析してMySQLに挿入する
|
|
7
|
+
#
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
# ログの1行を表すクラス
|
|
11
|
+
class Entry
|
|
12
|
+
|
|
13
|
+
# 行をマッチさせる正規表現
|
|
14
|
+
@@reg=/^
|
|
15
|
+
\"(\S+\s\S+)\" # 0 "YYYY-MM-DD HH:MM:SS"
|
|
16
|
+
\t # タブ
|
|
17
|
+
\S+ # xxx
|
|
18
|
+
\t # タブ
|
|
19
|
+
(\S+) # 1 "DN"
|
|
20
|
+
\t # タブ
|
|
21
|
+
\S+ # xxx
|
|
22
|
+
\t # タブ
|
|
23
|
+
(\S+) # 2 IP
|
|
24
|
+
\t # タブ
|
|
25
|
+
\S+ # xxx
|
|
26
|
+
\t # タブ
|
|
27
|
+
\S+ # xxx
|
|
28
|
+
\t # タブ
|
|
29
|
+
\S+ # xxx
|
|
30
|
+
\t # タブ
|
|
31
|
+
(\S+) # 3 ステータス
|
|
32
|
+
\t # タブ
|
|
33
|
+
\S+ # xxx
|
|
34
|
+
\t # タブ
|
|
35
|
+
\S+ # xxx
|
|
36
|
+
\t # タブ
|
|
37
|
+
\S+ # xxx
|
|
38
|
+
$/x
|
|
39
|
+
|
|
40
|
+
@entry
|
|
41
|
+
|
|
42
|
+
def initialize(line)
|
|
43
|
+
match = line.match(@@reg)
|
|
44
|
+
raise "parse error. line: <#{line}> " if match.nil?
|
|
45
|
+
captures = match.captures
|
|
46
|
+
captures[1] = "-" if ! captures[1] =~ /uid=|id=/
|
|
47
|
+
@entry = {
|
|
48
|
+
:date => DateTime.strptime(captures[0], '%Y-%m-%d %H:%M:%S'),
|
|
49
|
+
:login_id => captures[1].split(",")[0].split("=")[1],
|
|
50
|
+
:access_ip => captures[2],
|
|
51
|
+
:status => RBatch::config["auth_status"][captures[3]]
|
|
52
|
+
}
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# Insert用のSQLを返す
|
|
56
|
+
def insert_sql(table_name,host_name,companyId)
|
|
57
|
+
value = [ companyId ,
|
|
58
|
+
@entry[:date].strftime("%Y/%m/%d %H:%M:%S"),
|
|
59
|
+
@entry[:login_id],
|
|
60
|
+
@entry[:access_ip],
|
|
61
|
+
host_name,
|
|
62
|
+
@entry[:status]
|
|
63
|
+
].map{|s| "'#{s}'"}.join(",")
|
|
64
|
+
return "INSERT INTO #{table_name} (companyId,date,login_id,access_ip,host_name,status) VALUES (#{value})"
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# メイン
|
|
69
|
+
|
|
70
|
+
RBatch::Log.new do |log|
|
|
71
|
+
log.info("Start -----------------");
|
|
72
|
+
entries = []
|
|
73
|
+
|
|
74
|
+
# 認証アクセスログ読み込み
|
|
75
|
+
File.foreach(RBatch::config["openam_access_log_path"]) do |line|
|
|
76
|
+
begin
|
|
77
|
+
entries << Entry.new(line)
|
|
78
|
+
rescue => e
|
|
79
|
+
p e
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
# 認証エラーログ読み込み
|
|
84
|
+
File.foreach(RBatch::config["openam_error_log_path"]) do |line|
|
|
85
|
+
begin
|
|
86
|
+
entries << Entry.new(line)
|
|
87
|
+
rescue => e
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
# MySQLに接続
|
|
92
|
+
con = Mysql.new(RBatch::config["mysql_server"],
|
|
93
|
+
RBatch::config["mysql_user"],
|
|
94
|
+
RBatch::config["mysql_password"],
|
|
95
|
+
RBatch::config["mysql_db_name"])
|
|
96
|
+
# MySQLに挿入
|
|
97
|
+
entries.each do |entry|
|
|
98
|
+
sql = entry.insert_sql(RBatch::config["mysql_table_name"],
|
|
99
|
+
RBatch::config["host_name"],
|
|
100
|
+
RBatch::config["company_id"])
|
|
101
|
+
log.info("exec sql: " + sql);
|
|
102
|
+
con.query(sql)
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
require 'rbatch'
|
|
3
|
+
require 'mysql'
|
|
4
|
+
|
|
5
|
+
#
|
|
6
|
+
# WebAgentの認可ログを解析してMySQLに挿入する
|
|
7
|
+
#
|
|
8
|
+
|
|
9
|
+
# OpenAMエージェントの認可ログの一行
|
|
10
|
+
class Entry
|
|
11
|
+
# 行をマッチさせる正規表現
|
|
12
|
+
@@reg=/^
|
|
13
|
+
(\S+\s\S+) # 0 YYYY-MM-DD HH:MM:SS
|
|
14
|
+
\.\d\d\d # .sss
|
|
15
|
+
\s # 半角スペース
|
|
16
|
+
\s # 半角スペース
|
|
17
|
+
\s # 半角スペース
|
|
18
|
+
\s # 半角スペース
|
|
19
|
+
Info
|
|
20
|
+
\s # 半角スペース
|
|
21
|
+
\S+ # xxxxxx:xxxxxx
|
|
22
|
+
\s # 半角スペース
|
|
23
|
+
LocalAuditLog:
|
|
24
|
+
\s # 半角スペース
|
|
25
|
+
User
|
|
26
|
+
\s # 半角スペース
|
|
27
|
+
(\S+) # 1 user_id
|
|
28
|
+
\s # 半角スペース
|
|
29
|
+
was
|
|
30
|
+
\s # 半角スペース
|
|
31
|
+
(\S+) # 2 allowed or denied
|
|
32
|
+
\s # 半角スペース
|
|
33
|
+
access
|
|
34
|
+
\s # 半角スペース
|
|
35
|
+
to
|
|
36
|
+
\s # 半角スペース
|
|
37
|
+
(\S+) # 3 request
|
|
38
|
+
$/x
|
|
39
|
+
|
|
40
|
+
@@status_map = {"allowed" => "ALLOW","denied" => "DISALLOW"}
|
|
41
|
+
@entry
|
|
42
|
+
|
|
43
|
+
# ログの1行を解析してEntryクラスを作る。
|
|
44
|
+
# 解析できない時は例外を発生させる。
|
|
45
|
+
#
|
|
46
|
+
# 期待しているフォーマットは以下の通り。
|
|
47
|
+
#
|
|
48
|
+
# 2012-07-20 11:04:45.059 Info 24006:16ed0460 LocalAuditLog: User amadmin was allowed access to http://www.fx.develop.jp:80/.
|
|
49
|
+
#
|
|
50
|
+
def initialize(line,url_ignore_keywords)
|
|
51
|
+
match = line.match(@@reg)
|
|
52
|
+
raise "parse error. line: <#{line}> " if match.nil?
|
|
53
|
+
captures = match.captures
|
|
54
|
+
url_ignore_keywords.each do | keyword |
|
|
55
|
+
raise "ignore keyword include in access_url: <#{line}}>" if captures[3].include?(keyword)
|
|
56
|
+
end
|
|
57
|
+
@entry = {
|
|
58
|
+
:datetime => DateTime.strptime( captures[0], '%Y-%m-%d %H:%M:%S'),
|
|
59
|
+
:login_id => captures[1],
|
|
60
|
+
:status => @@status_map[captures[2]],
|
|
61
|
+
:access_url => captures[3]
|
|
62
|
+
}
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
# Insert用のSQLを返す
|
|
66
|
+
def insert_sql(table_name,host_name,company_id)
|
|
67
|
+
value = [ company_id ,
|
|
68
|
+
@entry[:datetime].strftime("%Y/%m/%d %H:%M:%S"),
|
|
69
|
+
@entry[:login_id],
|
|
70
|
+
host_name,
|
|
71
|
+
@entry[:access_url],
|
|
72
|
+
@entry[:status]
|
|
73
|
+
].map{|s| "'#{s}'"}.join(",")
|
|
74
|
+
|
|
75
|
+
return "INSERT INTO #{table_name} (companyId,date,login_id,host_name,access_url,status) VALUES (#{value})"
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
# メイン
|
|
81
|
+
|
|
82
|
+
RBatch::Log.new do |log|
|
|
83
|
+
log.info("Start -----------------");
|
|
84
|
+
entries = []
|
|
85
|
+
url_ignore_keywords = RBatch::config["url_ignore_keywords"]
|
|
86
|
+
# ログ読み込み
|
|
87
|
+
File.foreach(RBatch::config["log_path"]) do |line|
|
|
88
|
+
begin
|
|
89
|
+
entries << Entry.new(line,url_ignore_keywords)
|
|
90
|
+
rescue => e
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
# MySQLに接続
|
|
95
|
+
con = Mysql.new(RBatch::config["mysql_server"],
|
|
96
|
+
RBatch::config["mysql_user"],
|
|
97
|
+
RBatch::config["mysql_password"],
|
|
98
|
+
RBatch::config["mysql_db_name"])
|
|
99
|
+
# MySQLに挿入
|
|
100
|
+
entries.each do |entry|
|
|
101
|
+
sql = entry.insert_sql(RBatch::config["mysql_table_name"],
|
|
102
|
+
RBatch::config["host_name"],
|
|
103
|
+
RBatch::config["company_id"])
|
|
104
|
+
log.info("exec sql: " + sql);
|
|
105
|
+
con.query(sql)
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
mysql_server : "localhost"
|
|
2
|
+
mysql_user : "root"
|
|
3
|
+
mysql_password : ""
|
|
4
|
+
mysql_db_name : "test"
|
|
5
|
+
mysql_table_name : "authentication_log"
|
|
6
|
+
company_id : "sample.co"
|
|
7
|
+
host_name : "server1"
|
|
8
|
+
openam_access_log_path : "/root/rbatch/sample/data/amAuthentication.access.2012-07-10"
|
|
9
|
+
openam_error_log_path : "/root/rbatch/sample/data/amAuthentication.error.2012-07-10"
|
|
10
|
+
auth_status:
|
|
11
|
+
AUTHENTICATION-100 : Login Success
|
|
12
|
+
AUTHENTICATION-101 : Login Success
|
|
13
|
+
AUTHENTICATION-102 : Login Success
|
|
14
|
+
AUTHENTICATION-103 : Login Success
|
|
15
|
+
AUTHENTICATION-104 : Login Success
|
|
16
|
+
AUTHENTICATION-105 : Login Success
|
|
17
|
+
AUTHENTICATION-200 : Login Failed
|
|
18
|
+
AUTHENTICATION-201 : Invalid Password
|
|
19
|
+
AUTHENTICATION-202 : No user profile
|
|
20
|
+
AUTHENTICATION-203 : User Profile does not exist
|
|
21
|
+
AUTHENTICATION-204 : Not active
|
|
22
|
+
AUTHENTICATION-205 : User is Locked out
|
|
23
|
+
AUTHENTICATION-206 : User account has expired
|
|
24
|
+
AUTHENTICATION-207 : Login Timed Out
|
|
25
|
+
AUTHENTICATION-208 : Authentication module is denied
|
|
26
|
+
AUTHENTICATION-209 : maximum number of session
|
|
27
|
+
AUTHENTICATION-240 : Login Failed
|
|
28
|
+
AUTHENTICATION-241 : Invalid Password
|
|
29
|
+
AUTHENTICATION-245 : User is Locked out
|
|
30
|
+
AUTHENTICATION-247 : Login Timed Out
|
|
31
|
+
AUTHENTICATION-300 : Logout
|
|
32
|
+
AUTHENTICATION-301 : Logout
|
|
33
|
+
AUTHENTICATION-302 : Logout
|
|
34
|
+
AUTHENTICATION-303 : Logout
|
|
35
|
+
AUTHENTICATION-304 : Logout
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# RBatch config
|
|
2
|
+
#
|
|
3
|
+
# This file format is YAML
|
|
4
|
+
#
|
|
5
|
+
|
|
6
|
+
# -------------------
|
|
7
|
+
# Global setting
|
|
8
|
+
# -------------------
|
|
9
|
+
|
|
10
|
+
# Forbit Double Run
|
|
11
|
+
#
|
|
12
|
+
# Default : false
|
|
13
|
+
#
|
|
14
|
+
#forbid_double_run: true
|
|
15
|
+
|
|
16
|
+
# -------------------
|
|
17
|
+
# Cmd setting
|
|
18
|
+
# -------------------
|
|
19
|
+
|
|
20
|
+
# Raise Exception
|
|
21
|
+
#
|
|
22
|
+
# Default : false
|
|
23
|
+
#
|
|
24
|
+
# If command exit status is not 0, raise exception.
|
|
25
|
+
#
|
|
26
|
+
cmd_raise : true
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
# -------------------
|
|
30
|
+
# Log setting
|
|
31
|
+
# -------------------
|
|
32
|
+
|
|
33
|
+
# Log File Name
|
|
34
|
+
#
|
|
35
|
+
# Default : "<date>_<time>_<prog>.log"
|
|
36
|
+
#
|
|
37
|
+
# Reservation words
|
|
38
|
+
# <data> --> replace to YYYYMMDD date string
|
|
39
|
+
# <time> --> replace to hhmmss time string
|
|
40
|
+
# <prog> --> Program file base name (except extention)
|
|
41
|
+
#
|
|
42
|
+
#log_name : "<date>_<time>_<prog>.log"
|
|
43
|
+
log_name : "<date>_<prog>.log"
|
|
44
|
+
|
|
45
|
+
# Log Output Directory
|
|
46
|
+
#
|
|
47
|
+
# Default : "(Script path)/../log"
|
|
48
|
+
#
|
|
49
|
+
#log_dir : "/tmp/log"
|
|
50
|
+
|
|
51
|
+
# Append log or not
|
|
52
|
+
#
|
|
53
|
+
# Default : ture
|
|
54
|
+
#
|
|
55
|
+
#log_append : false
|
|
56
|
+
|
|
57
|
+
# Log Level
|
|
58
|
+
#
|
|
59
|
+
# Default : "info"
|
|
60
|
+
# Value : "debug","info","wran","error","fatal"
|
|
61
|
+
#
|
|
62
|
+
#log_level : "debug"
|
|
63
|
+
|
|
64
|
+
# Print log-string both file and STDOUT
|
|
65
|
+
#
|
|
66
|
+
# Default : false
|
|
67
|
+
#
|
|
68
|
+
log_stdout : true
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
mysql_server : "localhost"
|
|
2
|
+
mysql_user : "root"
|
|
3
|
+
mysql_password : ""
|
|
4
|
+
mysql_db_name : "test"
|
|
5
|
+
mysql_table_name : "authorization_log"
|
|
6
|
+
company_id : "sample.co"
|
|
7
|
+
host_name : "server1"
|
|
8
|
+
log_path : "/root/rbatch/sample/data/amAgent_localhost_80.log.2012-07-10"
|
|
9
|
+
url_ignore_keywords:
|
|
10
|
+
- ".jpg"
|
|
11
|
+
- ".gif"
|
|
12
|
+
- ".html"
|
|
13
|
+
- ".css"
|
|
14
|
+
- ".js"
|
|
15
|
+
- ".jpeg"
|
|
16
|
+
- ".ico"
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
192.168.58.1 192.168.1.111 - test.user1 [19/Jul/2012:06:15:40 +0900] 4 4358119 "GET /test/sample.html HTTP/1.1" 200 182 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http://www.hoge.develop.jp/test/sample.html"
|
|
2
|
+
192.168.58.1 192.168.1.111 - test.user1 [19/Jul/2012:06:15:50 +0900] 0 747 "GET /test/sample.html HTTP/1.1" 200 182 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http://www.hoge.develop.jp/test/sample.html"
|
|
3
|
+
192.168.58.1 192.168.1.111 - test.user1 [19/Jul/2012:06:15:59 +0900] 0 717 "GET /test/sample.html HTTP/1.1" 200 182 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http://www.hoge.develop.jp/test/sample.html"
|
|
4
|
+
192.168.58.1 192.168.1.111 - test.user1 [19/Jul/2012:06:15:59 +0900] 0 865 "GET /test/sample.html HTTP/1.1" 200 182 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http://www.hoge.develop.jp/test/sample.html"
|
|
5
|
+
192.168.58.1 192.168.1.111 - test.user1 [19/Jul/2012:06:16:00 +0900] 0 778 "GET /test/sample.html HTTP/1.1" 200 182 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http://www.hoge.develop.jp/test/sample.html"
|
|
6
|
+
192.168.58.1 192.168.1.111 - test.user1 [19/Jul/2012:06:16:00 +0900] 0 730 "GET /test/sample.html HTTP/1.1" 200 182 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http://www.hoge.develop.jp/test/sample.html"
|
|
7
|
+
192.168.58.1 192.168.1.111 - test.user1 [19/Jul/2012:06:16:00 +0900] 0 747 "GET /test/sample.html HTTP/1.1" 200 182 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http://www.hoge.develop.jp/test/sample.html"
|
|
8
|
+
192.168.58.1 - - test.user1 [19/Jul/2012:06:16:04 +0900] 0 23620 "GET / HTTP/1.1" 200 44 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
9
|
+
192.168.58.1 - - test.user1 [19/Jul/2012:06:22:22 +0900] 1 1073134 "GET / HTTP/1.1" 200 44 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
10
|
+
192.168.58.1 - - test.user1 [19/Jul/2012:06:23:11 +0900] 0 16550 "GET /test/sample.html HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
11
|
+
192.168.58.1 192.168.1.116 - test.user1 [19/Jul/2012:06:23:33 +0900] 0 674 "GET /test/sample.html HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
12
|
+
192.168.58.1 - - amadmin [19/Jul/2012:06:24:48 +0900] 0 553979 "GET /test/sample.html HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http%3A%2F%2Fwww.hoge.develop.jp%2Ftest%2Fsample.html&gx_charset=UTF-8"
|
|
13
|
+
192.168.58.1 - - amadmin [19/Jul/2012:06:25:41 +0900] 0 865 "GET / HTTP/1.1" 200 44 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
14
|
+
192.168.58.1 - - - [19/Jul/2012:22:20:19 +0900] 0 76219 "GET / HTTP/1.1" 403 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
15
|
+
192.168.58.1 - - - [19/Jul/2012:22:20:19 +0900] 0 902 "GET /favicon.ico HTTP/1.1" 403 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
16
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:23:25 +0900] 0 50720 "GET / HTTP/1.1" 200 44 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
17
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:24:11 +0900] 0 828 "GET / HTTP/1.1" 200 44 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
18
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:24:51 +0900] 0 25372 "GET /test/cmx_test01.html HTTP/1.1" 404 1299 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
19
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:24:52 +0900] 0 29118 "GET /barerrors/js/chgCss.js HTTP/1.1" 200 1377 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/cmx_test01.html"
|
|
20
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:24:52 +0900] 0 20638 "GET /barerrors/images/logo.gif HTTP/1.1" 200 4321 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/cmx_test01.html"
|
|
21
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:24:52 +0900] 0 17983 "GET /barerrors/images/nri_logo.gif HTTP/1.1" 200 3111 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/cmx_test01.html"
|
|
22
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:24:52 +0900] 0 20996 "GET /barerrors/css/win_ff.css HTTP/1.1" 200 10482 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/cmx_test01.html"
|
|
23
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:24:52 +0900] 0 1560 "GET /barerrors/images/header_bg.jpg HTTP/1.1" 200 8712 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/barerrors/css/win_ff.css"
|
|
24
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:24:57 +0900] 0 1040 "GET /test/cmx-test01.html HTTP/1.1" 404 1299 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
25
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:25:07 +0900] 0 1047 "GET /test/smx_test01.html HTTP/1.1" 404 1299 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
26
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:25:56 +0900] 0 960 "GET /test/smx_test01.html HTTP/1.1" 200 296 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
27
|
+
192.168.58.1 - - test.user1@example.com [19/Jul/2012:22:25:56 +0900] 0 2073 "GET /test/company_logo.jpg HTTP/1.1" 200 31670 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/smx_test01.html"
|
|
28
|
+
192.168.58.1 - - - [20/Jul/2012:00:41:37 +0900] 0 57292 "GET /test/smx_test01.html HTTP/1.1" 302 297 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
29
|
+
192.168.58.1 - - test.user1@example.com [20/Jul/2012:00:41:45 +0900] 0 167683 "GET /test/smx_test01.html HTTP/1.1" 200 296 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http%3A%2F%2Fwww.hoge.develop.jp%3A80%2Ftest%2Fsmx_test01.html"
|
|
30
|
+
192.168.58.1 - - test.user1@example.com [20/Jul/2012:00:41:45 +0900] 0 725 "GET /test/company_logo.jpg HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/smx_test01.html"
|
|
31
|
+
192.168.58.1 - - test.user1@example.com [20/Jul/2012:00:44:49 +0900] 0 401812 "GET /test/smx_test01.html HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
32
|
+
192.168.58.1 - - test.user1@example.com [20/Jul/2012:00:44:50 +0900] 0 650 "GET /test/company_logo.jpg HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/smx_test01.html"
|
|
33
|
+
192.168.58.1 - - test.user1@example.com [20/Jul/2012:00:45:41 +0900] 0 961 "GET / HTTP/1.1" 200 44 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
34
|
+
192.168.58.1 - - test.user1@example.com [20/Jul/2012:00:46:05 +0900] 0 820 "GET /test/smx_test02.html HTTP/1.1" 200 305 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
35
|
+
192.168.58.1 - - test.user1@example.com [20/Jul/2012:00:46:05 +0900] 0 677 "GET /test/company_logo.jpg HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/smx_test02.html"
|
|
36
|
+
192.168.58.1 - - test.user2@example.com [20/Jul/2012:10:51:27 +0900] 0 98765 "GET /test/smx_test01.html HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp:8080/amserver/UI/Login?goto=http%3A%2F%2Fwww.hoge.develop.jp%3A80%2Ftest%2Fsmx_test01.html&gx_charset=UTF-8"
|
|
37
|
+
192.168.58.1 - - test.user2@example.com [20/Jul/2012:10:51:27 +0900] 0 649 "GET /test/company_logo.jpg HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/smx_test01.html"
|
|
38
|
+
192.168.58.1 - - test.user2@example.com [20/Jul/2012:10:51:51 +0900] 0 700 "GET /test/smx_test02.html HTTP/1.1" 304 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
39
|
+
192.168.58.1 - - - [20/Jul/2012:10:52:32 +0900] 0 176 "GET / HTTP/1.1" 302 262 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
40
|
+
192.168.58.1 - - test.user1 [20/Jul/2012:10:56:16 +0900] 0 665 "GET /test/smx_test01.html HTTP/1.1" 200 296 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
41
|
+
192.168.58.1 - - test.user1 [20/Jul/2012:10:56:16 +0900] 0 1965 "GET /test/company_logo.jpg HTTP/1.1" 200 31670 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/test/smx_test01.html"
|
|
42
|
+
192.168.58.1 - - test.user1 [20/Jul/2012:10:56:26 +0900] 0 729 "GET /test/smx_test02.html HTTP/1.1" 200 305 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
43
|
+
192.168.58.1 - - test.user1 [20/Jul/2012:10:56:36 +0900] 0 807 "GET / HTTP/1.1" 200 44 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
44
|
+
192.168.58.1 - - test.user1 [20/Jul/2012:10:56:45 +0900] 0 1106 "GET /tes HTTP/1.1" 404 1299 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
45
|
+
192.168.58.1 - - - [20/Jul/2012:11:04:01 +0900] 0 17008 "GET /te HTTP/1.1" 403 - "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
46
|
+
192.168.58.1 - - amadmin [20/Jul/2012:11:04:39 +0900] 1 1283886 "GET /te HTTP/1.1" 404 1299 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|
|
47
|
+
192.168.58.1 - - amadmin [20/Jul/2012:11:04:40 +0900] 0 523 "GET /barerrors/images/nri_logo.gif HTTP/1.1" 200 3111 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/te"
|
|
48
|
+
192.168.58.1 - - amadmin [20/Jul/2012:11:04:40 +0900] 0 15864 "GET /barerrors/css/win_ff.css HTTP/1.1" 200 10482 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/te"
|
|
49
|
+
192.168.58.1 - - amadmin [20/Jul/2012:11:04:40 +0900] 0 956 "GET /barerrors/images/header_bg.jpg HTTP/1.1" 200 8712 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "http://www.hoge.develop.jp/barerrors/css/win_ff.css"
|
|
50
|
+
192.168.58.1 - - amadmin [20/Jul/2012:11:04:45 +0900] 0 714 "GET / HTTP/1.1" 200 44 "Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28" "-"
|