ADS-Bレシーバー運用始めました

きっかけ

沖縄で飛行機を見ながら id:masawada さんとFlightradar24の仕組みについての話をしていて、ADS-Bレシーバー作ったらどうですか?と言ってもらったことがきっかけになりました。家にRaspberry Piがあり、mackerel-agentを入れて遊んでいるだけでした。何かやりたいことがあれば良いなと思って放置していたのでちょうどよかったのでした。ADS-Bレシーバーについて調べてみるとFMのUSBチューナーを買うだけでレシーバーを組めることがわかったので帰ってすぐにポチりました。

運用開始

買ったのはこれ↓

amzn.to

構築手順(chefとかAnsible)にしたい気持ちもあるがまだできていないです。dump1090というソフトウェアが落ちたらすぐにサーバーとしての機能を停止してしまう状況なので、まずはsystemctlで管理できるようにして自動再起動などを取り入れたいと思っています。

アンテナは窓際に置いています。本当は屋上とかに置きたいくらいではあるけれども。

暮らしのご紹介

dump1090というソフトウェアを動かすとレシーバーから受信したデータをこのように標準出力に定期的に吐き出してくれます。分かる人にはわかると思うので書いておきますが最寄りの空港は大阪伊丹空港です。

Hex     Mode  Sqwk  Flight   Alt    Spd  Hdg    Lat      Long   Sig  Msgs   Ti|
-------------------------------------------------------------------------------
85D7C0  S     2150  ANA772   24000  383  218   35.962  136.095    5    55    2
84B982  S     2321           18000  327  258                      5    14   28
851186  S                    26000                                4    13    7
861E56  S     3356  JAL184   22825  437  154   35.860  136.567    4    52    0
71C004  S                    32000  340  270                      4    20    7
86DD66  S     2113            5500                                6    72   22
8464B0  S     3314  ANA654A  25000  535  093   34.867  135.796   16  1882    0
71C343  S     4335  ESR601   35000  585  078   36.395  135.420    5   199    6
85C5DC  S     2274  ANA633   21975  361  261   35.022  135.862   18  1066    0
86DDF0  S     2421           26000  366  268                      5    63    0
841EBC  S     2331  JJP641   24000  347  257   35.252  136.492    6   399    0
8694FA  S     3721  ANA961   26000  393  271   35.907  135.740    6   298    2
84013F  S     3325           21000                                5   683   15
71BA08  S     3654  KAL744   24000  381  276   35.351  135.639    5  1370    2
850E59  S     2275           35975                                3   140    5
86EBFA  S     6030  ANA857   25975  383  257   34.919  135.304   15  3233    0
86D98E  S     3747  ANA861   39975  358  269   35.978  134.565    6   507    0
84CB66  S     2446  SFJ61    26000  306  257   34.919  134.326    5  2696    3

Flightradar24へADS-Bデータを送信するデーモンであるfr24のログも面白いので紹介します。ASCIIアートでFlightradar24と書かれているのがかわいい。きちんとS3上でaptのリポジトリを持っているというのも個人的には高ポイントでした。

2020-02-07 22:15:02 | ______  _  _         _      _                    _              _____    ___
2020-02-07 22:15:02 | |  ___|| |(_)       | |    | |                  | |            / __  \  /   |
2020-02-07 22:15:02 | | |_   | | _   __ _ | |__  | |_  _ __  __ _   __| |  __ _  _ __`' / /' / /| |
2020-02-07 22:15:02 | |  _|  | || | / _` || '_ \ | __|| '__|/ _` | / _` | / _` || '__| / /  / /_| |
2020-02-07 22:15:02 | | |    | || || (_| || | | || |_ | |  | (_| || (_| || (_| || |  ./ /___\___  |
2020-02-07 22:15:02 | \_|    |_||_| \__, ||_| |_| \__||_|   \__,_| \__,_| \__,_||_|  \_____/    |_/
2020-02-07 22:15:02 |                __/ |
2020-02-07 22:15:02 |               |___/
2020-02-07 22:15:02 | [main][i]FR24 Feeder/Decoder
2020-02-07 22:15:02 | [main][i]Version: 1.0.24-7/generic
2020-02-07 22:15:02 | [main][i]Built on Nov  7 2019 11:23:04 (HEAD-be32703.git/Linux/static_armel)
2020-02-07 22:15:02 | [main][i]Running on: raspbian9
2020-02-07 22:15:02 | [main][i]Local IP(s): xxx.xxx.xxx.xxx
2020-02-07 22:15:02 | [main][i]Copyright 2012-2019 Flightradar24 AB
2020-02-07 22:15:02 | [main][i]https://www.flightradar24.com
2020-02-07 22:15:02 | [main][i]DNS mode: PING
2020-02-07 22:15:03 | [main][i]Automatic updates are ENABLED
2020-02-07 22:15:03 | info | [httpd]Server started, listening on 0.0.0.0:8754
2020-02-07 22:15:05 | [i]PacketSenderConfiguration::fetch_config(): Yoda configuration for this receiver is disabled
2020-02-07 22:15:07 | [d]TLSConnection::ctor(): Enable verify_peer in production code!
2020-02-07 22:15:07 | [main][i]Reader thread started
2020-02-07 22:15:07 | [time][i]Synchronizing time via NTP
2020-02-07 22:15:07 | [master][i]Starting processing thread
2020-02-07 22:15:07 | [reader][i]Initializing reader
2020-02-07 22:15:07 | [reader][i]Connecting to AVR-TCP receiver via (avr-tcp://127.0.0.1:30002)

Flightradar24で自分の住んでいるエリアを飛んでいる飛行機を見ているときに、自分の提供しているデータが活きてるんだろうなぁと想像すると楽しい気持ちになってきます。ADS-Bのデータを提供するとFlightradar24のビジネスプランが無料で使えるようになります。これにより航空機のテキストラベル機能が強化されて便名・高度・スピード・出発地/目的地が確認しやすくなったり、ウェイポイントを表示することでどの経路を飛んでいるのかわかりやすくなったり、Webブラウザで見ている際の30分セッション切れがなくなったりととても暮らしが便利になりました。 f:id:hokkai7go:20200220095920p:plain

羽田空港のRWY16R/Lへの着陸を運用確認している様子や、羽田空港PMSが運用開始されたっぽい様子を眺めるのに大変重宝しました。PMSについて知りたい方は↓

Point Merge Systemについて|Ukyo Nagata|note

面白いこと

Flightradar24に、ADS-Bレシーバーをもらうということも可能なのが面白いです。いかにもブラックボックスという感じの筐体、アンテナ、Remove Before FlightタグのFlightradar24版などが同梱されている模様。同梱品でマニア心をくすぐる感じもさすが分かっている感がありますね。 www.flightradar24.com

ssh接続してるとRaspberry Piサーバーが不安定になるのがおもしろいです。観測者効果じゃん。普段扱っているサーバーたちよりも圧倒的に非力なのでこのようなことが起きているのだなーと思い、最近は放置することにしています。ありがたいことに、Flightradar24のADS-Bデータ提供者用のWebUIには、ADS-Bレシーバーがn時間Offlineになったらメールでアラートをくれる機能があります。よく分かっている感があるのがニクいですね。

参考にしたサイト

makoro.hatenablog.jp

osmocom.org

github.com

批判の仕方と褒めについて

shimobayashi.hatenablog.com

このエントリは上記エントリに触発されて書いたものですが、上記エントリについて否定的な内容を述べているものではありません。ナイスアウトプットだなぁと思っています。

最近、批判の仕方について思うことがあったのでこのエントリを書いてみました。

  • 未知の領域にみんなで挑戦していこうというときに経験主義的なアプローチを取ることがある。筋がいい悪いがわかっていないときもある
  • こういう未来が見えていない状況でやっていきを示した人は賞賛されてほしいと個人的に思っている
  • 筋が悪いと批判するとしたらその前に一旦受け止めてあげると良さそう
    • すでに筋が悪いと経験上わかっているならばその根拠を示すと良さそう
    • 個人的には批判のみをする人と仕事するのは大変しんどいので、代案を出すとか、提案した事自体を褒めると良さそう
    • もしくはリアクションをしてあげると良さそう
    • そのやり方やアイデアは批判するけどより良く出来るので一緒に考えるぜ!という姿勢を示すとよさそう

似たようなことをTwitterで発言していたら良い文化を教えてもらった。「肯定ファースト」良いですね。

社会性と体力・気力

立食パーティーであっても、初対面の人がいても特に緊張しないので自分はある程度社会性があると思っていた。実際、そこそこあると思っている。しかし、この社会性は体力と気力によって支えられていることがわかってきた。

なぜわかってきたかと言うと、三十代になり体力が微減し、あわせて気力も微減し、これらの回復に時間がかかるようになったことで、これまでの社会性的なものを発揮するのが難しく感じるタイミングが発生してきたと体感したためである。

傾向と対策

まだ傾向は見えていないが、もう少しつかんでいきたい。同僚氏が作ったPixelaや、ボディバッテリーを記録できるスマートウォッチなどで体調を記録して、自らの身体についてのObservabilityを獲得していくことで傾向をつかんでいきたいと考えている。

対策はもっと難しい…。どうやったら自分の心身の不調の悪循環を断ち切れるかを実験していきたい

職業選択と生涯を通した学習についての話

職業選択について

職業選択の意味において父親にはとても感謝しており、先日実際に感謝を直接伝えることができた。父親は公務員なのだが、公務員にはならないでくれ、これからはITだと言いファミコンやPC98シリーズを家に設置してくれた。そして中学生になるころかそのちょっと前には、なぜか放送室にあったWindowsサーバに憧れるようになり、大学はコンピュータサイエンス系の学部に入り、自宅サーバを持つようになる。このようにして職業を選択した。環境に恵まれていたのだと思う。

生涯を通した学習

今すぐに仕事に活きる専門知識だけでなく、興味のある分野や、自分自身についてまで、かなり広い範囲について生涯を通して学び続けるのだろうなと最近は考えている。なぜかと言うと、自分を高め続けるには学び続けるしかないと思うようになったし、知的好奇心の赴くままに専門外の分野について調べることが楽しいことに気がついたからだ。義務教育のころは勉強が好きではなかったし、高校に行ってももっとすごい人がいて気持ちが折れていた。基礎の大事さもあまりわかっていなかった。

最近のお気持ちです

勉強している内容についてのブログも書いていけたらいいなと思っている

犬派から猫派へ

小学生の頃から大学生の間くらいまで実家で大型犬を飼っていて、きちんと看取った経験があり自分は犬派であった。(大学生の夏休みで実家に帰るタイミングで、家族みんなが集まったときに亡くなっていった。かわいいやつだった)。今でもTwitterで犬という公開リストを作っていて癒やしの場として使うくらいには犬が好きだ。

結婚して猫との距離が近づいて状況が変わってきた。相手の実家にいる猫が懐いてくれており、猫も含めて家族として受け入れてもらえつつある感覚がある。最近になって猫を吸うというやつを体感し、これはたまらんものだ。と思えたので犬だけでなく猫も大好きになったのであった。

言いたいことをすぐに言う訓練

あくまで体感値だが、苛ついたときに何故苛ついたのか、どのようにするとよいかを当日中に何らかの形でアウトプットできることは僕の中では稀であり確率的には20%程度であることがわかってきた。これはなぜかというと、自分が苛ついているのは自分の誤りによるものなのか、他者からの影響によるものなのかという切り分けに自分の中で時間がかかっているからということがわかってきた。このプロセスは自分の場合たいてい場所か時間をおいたときに行われるものであって、即座に行わないのは冷静さを欠いているので適切ではないと考えているためである。そしてなぜか、シャワーをしているときに思い出し怒りをして、そのタイミングで整理が始まることが多い。

改善のサイクルを高速に回すためには、即座にフィードバックする必要があると信じているので、できる限り素早く苛つきの原因を言語化したいと考えるようになってきた。ここでタイトルに戻ってくるのだが、言いたいことをすぐに言う訓練をしていくことにしようと決めた。

追記

https://twitter.com/_inductor_/status/122160661060838604

 

こういう良い反応をもらった。そういえば自分が前提にしているところについて書けてなかったことに気がついた。ありがたいコメント

自分はどうもこの数年で上記の「苛つきの原因の切り分け」にかかる時間が伸びてしまったようだった。自分の感情を封じることに慣れすぎてしまったよくない状況だったのだと思う。そして昔からできるだけ褒めたり、いいじゃんと即レスすることを信条としている。感謝を伝えるのに恥ずかしいという感情は僕の中でほぼ皆無になっているのだった。

 

 

 

 

SRE NEXT 2020に行ってよかった

まとめ

sre-next.dev

最初にまとめを書いておこうと思う。

  • SRE NEXTよかった。楽しかったし、情報量多く、情報の質も高かった。次回があるなら確実に参加したい。
  • 実際にやってみたいと思ったこと
    • オンボーディングの改善
      • オンコール対応のシャドウイング
      • ある人のオンボーディング専用のSlackチャンネル設置
    • 物理的な障害対応エリアの設置を提案
    • ポストモーテムを書いた人を称賛する
  • 久しぶりにあった開発者っぽいと認識してた人が、いつの間にか似たような仕事をする人になっていたようで同窓会成分も少しあって楽しかった
  • 他のSREの人たちがどのように情報収集しているのかの一端が見えて、自分のアンテナが増えた or より正確にチューニングされた感じがしてよかった
  • 発表資料で割れ窓タイムの取り組みについて触れてくれている人がいてアゲでした

ツイート

うっかりSREクイズをやったところ、4/6問正解することができた。最近社内でコンテナ関係の勉強会があり、この写真で持っているk8s本をおすすめされていたところなのでAmazonでポチる前にもらうことが出来て嬉しい。一緒に写っているのは前職の同僚かつ友人であるおかしん。

どこまでSRE本のプラクティスをやればSREと名乗って良いのか?という質問がパネルディスカッションであったらしい。僕はどうでも良い質問だなと思っており、自分の組織に有効そうなプラクティスをつまみ食いすればいいんじゃないですかね?という答えが出てきていたことに安心感を持った。「完璧な文章などといったものは存在しない。完璧な絶望が存在しないようにね。」この村上春樹の言葉のように、完璧なSREなどといったものは存在しないと思うのでやってみて名乗ってしまえばいいと思う。したいようにしよう。

ANAボーイングの話についてはこちらを参照されたい。直リンPDF注意: https://www.ana.co.jp/ana-info/ana/csr/report/pdf2007/CSR2007_P49.pdf 先日参加したRegional Scrum Gathering Tokyo 2020でも、一緒にやることの大切さをいくつものセッションで聞いた。大好きな「チームが機能するとはどういうことか」という本でもチームが機能するためにはチーミングが必要で、チーミングの成功に必要な行動の一つに「協働すること」が入っている。

blog.hokkai7go.jp

社内でBPF本の輪読会を始めたところなので、brendan greggの名前にオッとなった。詳解システムパフォーマンスという本もとても良く、USEメソッドなど知見の塊みたいな本を書く人だ。

心身の可観測性がほしい

最後に

主催者のみなさんお疲れさま!とても快適で楽しいカンファレンスだった。

また英語漬けになりたいしSREcon確実に行きたいなと思うようになった。どこの開催での参加を狙おうかな。