2019年9月18日水曜日

[解決] Rails5でカスタムログにremote_ipを出力する (resolved : Rails5 Logger remort_ip custom log)

中の人です。

もう、SEO担当じゃないけど、タイトルはそのまんま。

RailsのLoggerで以下の様にすればIPアドレスが出力されるのは
色々なブログなんかで紹介されている。
config.log_tags = [:remote_ip]

が、別のログファイルを作成して出力するとlog_tagsは適用されない。
(これもどこかで見かけた。)

じゃあ、どうすればいいのか。

logger.rbのここでIPアドレス(remote_ip)は出力されるが
独自のログファイルには出力されない。
    @logdev.write(
      format_message(format_severity(severity), Time.now, progname, message))

development.rbにて以下を記述するとログファイルは作成されるが
test.logにはremote_ipは出力されない。

  config.log_tags = [:remote_ip, :user_agent, :request_id]
  config.logger = Logger.new("log/development.log", 'daily')
  config.test_logger = Logger.new(Rails.root.join('log/test.log'), 'daily')

  config.logger.formatter  = Logger::Formatter.new
  config.test_logger.formatter = Logger::Formatter.new

  config.logger =ActiveSupport::TaggedLogging.new(config.logger)
  config.test_logger =ActiveSupport::TaggedLogging.new(config.test_logger)

◆対処
前述のformatterを設定する箇所を以下で書き変えるとremote_ipが出力される。
  config.logger.formatter  = Logger::Formatter.new
  config.test_logger.formatter = config.logger.formatter

以上。

2019年1月31日木曜日

[解決?] Windows 10 + NEC Aterm WR8370NでVMWare ゲストを公開できない?

中の人です。

NEC製品のAterm WR8370NでVMWare ゲストを
外部公開した時にはまったので雑記を残してみる。

<現状の結論>
ポートマッピングすれば公開できるが、
ネットワーク内から接続できないので公開状況を確認することはできない。

<現象>
ポートマッピングして外部DNSに登録したホスト名(A)を使用。
ポート指定のURLを
ネットワーク内のPCのブラウザで開くとアクセスできない。
nslookupやtracert(traceroute)は正常に動くが
ページを開くことができない。

スマホ(※1)で開くこともできない。

コレガやバッファロー製品では普通にアクセスできたのに
Atermだと動かないとか、嫌になります。

<原因?>
Atermの仕様としか思えませんが、ネットワーク内から外部DNSの
Aレコードを引いた先のポートマッピングしたPCに至ることができない。

実は外部には公開されていた。以下のサイトを使用して確認できた。
Proxy経由の結果を表示してくれるサイト

スマホもwi-fiをOFFにすれば表示される。

※1
屋内であり、wi-fi接続。

<対処>
ネットワーク内からはどうあがいてもアクセスできないので
hostsにホスト名を書き足すことで対処した。

こんなことですごく時間が・・・・。

改善して欲しい・・・。

2019/9/18
ネットワーク内のPCのアクセスが禁止されていたから。当然だ・・・。禁止されているが合致するPCがあると内側から参照しようとするので見れない。参照を禁止するのであればルーティングで外に飛ばしてくれればいいのに・・・。

2022/6/8
今更ながら読み返すと矛盾してる。
ネットワーク内のアクセスが禁止されているならhostsに記載して
接続できるはずがない。
ちなみに後日購入したWG2600HM4を使用していますが、hostsを
使用しなくても接続できています。
当時の操作が間違っていたのか、形式固有の現象なのか、ファームウェアの
問題なのか切り分けができていません。
単にPCが参照するDNSが書き換わっていなかっただけとかだと
間抜けすぎです。