«前の日記(2007-12-29 (土)) 最新 次の日記(2007-12-31 (月))»  

まちゅダイアリー


2007-12-30 (日)

一ヶ月以上前の日記にツッコミできないようにした

503 エラーとツッコミ SPAMの続き。 表には出てこないけど、一日に 5000 件ほどのツッコミ SPAM が来ていて負荷の原因になっている。 なので、一ヶ月以上前の日記には、ツッコミできないようにした。 うーん。これって半分負けだよなぁ。

やったこと。

さて、これでどうなるかな。

追記

やっぱり1ヶ月は短いと思ったので、半年 (130日) にした。

追記 (2)

ここ1ヶ月でやってきた SPAM を、ツッコミ先の日にちごとに集計してみた。 やっぱり半年を過ぎたあたりから SPAM が増加している。

spam to my diary

AntiRefSpamFilter/spamcomments に蓄積されている SPAM を、スクリプトを使って日にちごとに集計。 できたファイルを Excel でグラフにした。

$ grep '^To: ' spamcomments | spamcount.rb > count.txt

スクリプトはこんな感じ。

require 'date'

dates = Hash.new(0)
ARGF.each do |line|
  dates[Date.parse(line)] += 1
end
dates.sort.each do |date, count|
  puts "#{date.year}/#{date.mon}/#{date.day} #{count}"
end
Tags: tDiary

Ruby 1.9.0 で tDiary を動かしてみる (Ruby1.8.5と共用できるよ)

前の日記の続き。 1.8/1.9両対応なんて無理ですかねぇ?ってことなので、 1.8.5 と 1.9.0 の両方で動くように頑張ってみた。

いまのところ、日記の表示、日記の更新(tDiary, Wikiスタイル)までできた。 でも、ツッコミを入れるとエラーになったり、キャッシュを消さないと動かなかったりと、まだまだ不安定すぎる。 それに jdate プラグインを入れると動かない。

とりあえず今はここまでだなぁ。

compatible.rb

tDiary で使う範囲で、 1.8と1.9で非互換なメソッドを吸収する compatible.rb を作ってみた。

  • 1.9 で無くなったメソッドを復活させる (String#to_a, String#each)
  • 1.9 で追加されたメソッドに(適当に)対応させる (String#force_encoding, String#bytesize)
unless "".respond_to?('to_a')
  class String
    def to_a
      [ self ]
    end
  end
end

unless "".respond_to?('force_encoding')
  class String
    def force_encoding(encoding)
    end
  end
end

unless "".respond_to?('bytesize')
  class String
    alias bytesize size
  end
end

class String
  def method_missing(name, *args, &block)
    each_line.__send__(name, *args, &block)
  end
end

index.rb, update.rb

  • 起動オプションに --encoding=EUC-JP を付ける (ここだけ1.8非互換)
  • $defout を $stdout に
  • body.size.to_s を body.bytesize.to_s に
  • 出力直前に body の encoding を ASCII-8BIT に変更 (なぜかこうしないと 1.9 でエラーになる)

String#bytesize と String#force_encoding は compatible.rb で定義しているので 1.8 でも OK 。

tdiary.rb

plugin/00default.rb

以下の箇所が EUC-JP だと動かない。とりあえず保留(ダメじゃん)。

if /[\x80-\xff]/

plugin/ja/05referer.rb

エスケープ文字を「\」から「\\」へ変更。

Tags: tDiary
本日のツッコミ(全2件) [ツッコミを入れる]
しばた (2007-12-30 (日) 09:39)

グラフ、なかなか興味深いですね。まったく spam が来ていない月の特徴が気になるー。

まちゅ (2007-12-30 (日) 12:46)

たぶん日記をあまり書いてない月だと思います(笑)<br>きっと検索エンジン経由で来ているんでしょうね。