Last active
August 25, 2019 06:09
-
-
Save mitsuhirookuno/f8ac9dd7311702c0e6df9dbc139d5db1 to your computer and use it in GitHub Desktop.
リクエストの再実行
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'uri' | |
require 'pry' | |
require 'csv' | |
require 'time' | |
REPRODUCE_HOST = 'localhost:4567' | |
PROTOCOL = 'http' | |
CURL_COMMAND = 'curl' | |
def main | |
CSV.read(ARGV[0], headers: true).each.with_index(1) do |line, index| | |
puts "> #{line}" | |
begin | |
uri = URI.parse(line['url']) | |
reproduce_url = "#{PROTOCOL}://#{REPRODUCE_HOST}#{uri.path}?#{uri.query}" | |
remote_ip_address = line['clientip'] | |
command = "#{CURL_COMMAND} --header \"X-Forwarded-For: #{remote_ip_address}\" \"#{reproduce_url}\"" | |
puts "#{'%06d' % index} [#{Time.now}] < #{command}" | |
`#{command} >/dev/null 2>&1` | |
if $?.exitstatus != 0 | |
STDERR.puts '< [ERROR] curlが異常終了しました' | |
binding.pry if $DEBUG | |
end | |
rescue URI::InvalidURIError => ex | |
STDERR.puts '< [ERROR] パースが出来ません。読み飛ばします' | |
binding.pry if $DEBUG | |
end | |
end | |
rescue => ex | |
STDERR.puts ex | |
STDERR.puts ex.backtrace | |
end | |
main |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
timestamp | clientip | url | |
---|---|---|---|
2019-08-24T15:00:00.197751Z | 160.248.18.15 | https://x-api.cir.io:443/click?tags_id=xta394752174726&session_id=5416271566658800111xta394752174726&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Fshachiku-newdays.com%2Fgameappli-ranking%2F&pd=2019-08-22-6-22-42&user_id=5418961566658800111&language=ja-JP | |
2019-08-24T15:00:00.221669Z | 160.248.18.15 | https://x-api.cir.io:443/click?tags_id=xta394752174726&session_id=5416271566658800111xta394752174726&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Fshachiku-newdays.com%2Fgameappli-ranking%2F&pd=2019-08-22-6-22-42&user_id=5418961566658800111&language=ja-JP | |
2019-08-24T15:00:00.387268Z | 160.248.18.15 | https://x-api.cir.io:443/click?tags_id=xta394752174726&session_id=5416271566658800111xta394752174726&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Fshachiku-newdays.com%2Fgameappli-ranking%2F&pd=2019-08-22-6-22-42&user_id=5418961566658800111&language=ja-JP | |
2019-08-24T15:00:00.413833Z | 160.248.18.15 | https://x-api.cir.io:443/click?tags_id=xta394752174726&session_id=5416271566658800111xta394752174726&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Fshachiku-newdays.com%2Fgameappli-ranking%2F&pd=2019-08-22-6-22-42&user_id=5418961566658800111&language=ja-JP | |
2019-08-24T15:00:00.439400Z | 160.248.18.15 | https://x-api.cir.io:443/click?tags_id=xta394752174726&session_id=5416271566658800111xta394752174726&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Fshachiku-newdays.com%2Fgameappli-ranking%2F&pd=2019-08-22-6-22-42&user_id=5418961566658800111&language=ja-JP | |
2019-08-24T15:00:00.499990Z | 160.248.18.15 | https://x-api.cir.io:443/click?tags_id=xta394752174726&session_id=5416271566658800111xta394752174726&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Fshachiku-newdays.com%2Fgameappli-ranking%2F&pd=2019-08-22-6-22-42&user_id=5418961566658800111&language=ja-JP | |
2019-08-24T15:00:00.881678Z | 153.166.213.163 | https://x-api.cir.io:443/click?tags_id=xta105237797961&session_id=2818561566658800888xta105237797961&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Frisemara-king.com%2Fnothing%2Fmiipazu-kouryaku%2F&pd=2019-08-22-6-22-42&user_id=8443801566658800888&language=ja-JP | |
2019-08-24T15:00:00.906269Z | 153.166.213.163 | https://x-api.cir.io:443/click?tags_id=xta105237797961&session_id=2818561566658800888xta105237797961&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Frisemara-king.com%2Fnothing%2Fmiipazu-kouryaku%2F&pd=2019-08-22-6-22-42&user_id=8443801566658800888&language=ja-JP | |
2019-08-24T15:00:00.929739Z | 153.166.213.163 | https://x-api.cir.io:443/click?tags_id=xta105237797961&session_id=2818561566658800888xta105237797961&ua=Mozilla%2F5.0%20(iPhone%3B%20CPU%20iPhone%20OS%2012_4%20like%20Mac%20OS%20X)%20AppleWebKit%2F605.1.15%20(KHTML%2C%20like%20Gecko)%20Version%2F12.1.2%20Mobile%2F15E148%20Safari%2F604.1&referrer=https%3A%2F%2Frisemara-king.com%2Fnothing%2Fmiipazu-kouryaku%2F&pd=2019-08-22-6-22-42&user_id=8443801566658800888&language=ja-JP |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
想定
nohup ruby reproduce_request.rb ./url_list.csv | tee reproduce_request.rb.log &