patorashのブログ

方向性はまだない

ActiveJobのコールバックは2系統に分かれている

ActiveJobの処理が時々コケることがあったので調査した。 Active Job の基礎 - Railsガイド を参照したところ、ActiveJobのコールバックは以下のようになる。 before_enqueue around_enqueue after_enqueue before_perform around_perform after_perform 問…

Elasticsearchを5.6から7.9にバージョンアップ

過去にElasticsearchのバージョンアップをしたのだけれど、そのバージョンも既にEOLとなり、早く最新のバージョンにしたいと思いつつも、なかなかできずにいた。 ようやくできるタイミングがきたので、取り組んでみた。まだステージング環境では検証が終わっ…

タブレット型Chromebookは実質Androidタブレットだった

先日、ふとChromebookが気になり始めてググっていたら、LenovoのChromebookでSurfaceみたいにタブレットにもなるタイプのやつを売っているのを見つけました。タブレットにもなるし、普通にキーボードも付いてくるのに4万円ちょいだったので、ボーナスが入っ…

CircleCIで使う処理をShellScriptにしていっている

CircleCIで時々思わぬところでライブラリ系のキャッシュがされずにエラーになってしまうことがあった。 処理を速くするために複雑なキャッシュをするようになっていたので、それが原因である…。久々に自分で見てみても複雑だなぁ〜と思う。 patorash.hatenab…

tmuxに慣れようとしている最中

便利なツールにも慣れていきたいなと思って、最近まで放置していたものにも挑戦していこうと思い、tmuxに再チャレンジしている。再チャレンジというのは、昔に使おうとして面倒になって断念していたからだ。 tmuxはターミナルの多重接続ソフトウェアである。…

ansibleでSSH接続時にToo many authentication failuresが出た場合の対処法

小ネタです。表題の通りですけど、エラーが出ました。 ちょうど他のサーバにSSHするときにも同じエラーが出ていました。 kou-i.hatenadiary.org 通常のSSHでは、.ssh/configの中でIdentitiedOnly yesを設定すれば、問題なく接続できるようになりました。 そ…

ansibleでheroku cli経由でherokuに自動ログインする方法

herokuへのメンテナンスを行うための中継サーバの構成をansibleで作っている最中です。 やりたいことはほぼできたのですが、1つだけ課題が残っていました。それは、ansibleでherokuに自動ログインできないことです。今回、それをなんとか自動ログインさせる…

isucon10の予選に参加しました。

いい感じにスピードアップコンテスト、略してisuconの第十回目の予選に参加してました。 実は初参加でした。メンバーは私と、上司の@kazuhisa1976の2名です。 isucon.net もう全然惜しくもないし、点数も800点くらいだったので全然ダメでした。あぁ~、技術…

スクラムで開発しようとしている

弊社の他のプロジェクトでスクラムを導入しているので、今期から、うちのプロジェクトでもスクラムやってみるか~と思って勉強中です。勉強中というかチケットの管理方法とかを本を読みながら模索してルールを作ったりしました。 元々ある課題 結論からいう…

aws-sdk-s3を使いつつ、timecopで時間をずらす

ストレージを伴うテストのためにminioを使うようにしようとしたのですが、設定をしただけではうまく動きませんでした。 timecopを使っているところで、aws-sdkがエラーを起こしました。timecopは時間を固定したり過去・未来に移動したりするライブラリです。…

UNIXという考え方を読んだ

タイトルと本の見た目から、なんとなく難しそうだからと読んでなかったんじゃないかと思うんだけれど、お薦めの本として紹介されていたので読んでみた。感想としては、もっと若い時に読んでおくべき本だったなぁ~と思った。私、もうオッサンなので…。いや、…

OSS-DB Gold Ver.2.0不合格体験記

OSS-DB Gold Ver.2.0を受けてきたのですが、落ちました完全に準備不足でしたが、まぁまぁ問題集が解けるようになってきていたので、運が良ければ合格するんじゃないかな?と思っていたのですが、蓋を開けてみると56点という超微妙なレベルで(ちなみに合格ラ…

コンテナのTimezoneは統一しよう

Railsアプリの開発中に、ちょっと物によっては時間がかかる処理があったので、ActiveJobに処理を移行させたのですが、perform_nowとperform_laterでデータを保存した時のcreated_at等が9時間ずれる現象が発生しました。 結論から書くと… 結論は、rails serve…

PITRを試してみた

PITRとは、ポイント・イン・タイム・リカバリーと言って、指定した時間まで遡ってリカバリすることができます。pg_dumpだとそのときのスナップショットになるので、実際に稼働しているサービスが突然落ちた時などに、直前まで復旧することができませんが、PI…

pgbenchでチューニング前後でベンチマークを取ってみた

PC Lenovo L380 yoga OS: Windows 10 Pro バージョン: 2004 CPU: Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz 1.99GHz (4コア8スレッド) メモリ: 32GB PostgreSQLサーバ Hyper-VでVM上に構築した。 OS: Amazon Linux 2 CPU: 1つ メモリ: 1GB PostgreSQLのバー…

もう一つ仮想環境を作って、そこからpgbenchを実行してみた

Hyper-VでAmazon Linux2を立ち上げていて、前回はそこでpgbenchを実行してみていた。 patorash.hatenablog.com pgbenchでtwitterで検索していたら、pgbenchを実行するホストとPostgreSQLが動いているホストが同じ場合、pgbenchにCPUを使われるのでもっと正確…

pgbenchをとりあえず使ってみた

勉強をしているので、pgbenchを使ってみた。pgbenchはPostgreSQLのベンチマークツール。 lets.postgresql.jp ただし、pgbenchは厳密な意味でのベンチマークツールではありません。TPC(http://www.tpc.org)などで「公式」に認められているような性能測定を行…

Amazon Linux2にPostgreSQL11を入れる

Hyper-V環境のAmazon Linux2にPostgreSQLをインストールしようとしたらちょっとハマったのでメモを残す。 Amazon Linux2でyumでPostgreSQLを入れようとすると、9.2という古いものが出てくる。 新しいものを入れるには、amazon-linux-extrasを使う。listと打…

後輩との1on1で話したことをまとめておく

1on1というか、今後どうしていきたいか等を話し合っている。継続的に話し合っていくので、まぁ1on1になっていくのかなとも思う。 「一人前」を定義する 目標がめちゃくちゃザックリとしていて、「一人前になる」というものなので、まずは一人前の定義を二人…

Rails 5.2.3から5.2.4.3に更新したらActiveStorageでエラー発生した

社内のRailsアプリのバージョンアップを行ってテストを実行したところ、システムテストが通らなくなりました。 ArgumentError: unexpected value at params[:whitelist_headers] というエラーが出たので、ググったところ、RailsにPRが…。 github.com これはR…

zshでpecoを使って色々

zsh

fishからzshに移行したのですが、便利に使っていた関数を移植し忘れていたのでzsh版を作ってgistで公開しておきます。 pecoでhistory選択 pecoでSSH pecoとghqでリポジトリ移動 pecoでgit switch pecoでgitのブランチを削除 pecoでkill zsh functions

herokuでjemallocのbuildpackの新しいバージョンが出ていた

過去にこのような記事を書いていました。 patorash.hatenablog.com この記事を見返しながら、他のHerokuアプリケーションにもjemallocのbuildpackを適用しようと思ってたのですが、なんとなくbuildpackのページに移動したところ、メンテナンス停止になってい…

activerecord-importの削除は難しい

Rails6にしたので、insert_allメソッドが使えるようになったので、意気揚々とgem activerecord-importを削除しようと修正していってたのだけれど、思ったより難しそうだったので、一旦止めることにした。 activerecord-importの削除が難しい理由 recursiveオ…

PaperclipがImageMagickのデフォルト設定の影響で動かなくなったのを直した

昨日、Macのセットアップが終わったという話をしました。 patorash.hatenablog.com そして、Docker立ち上げて作業後にrspecを流したら、全然関係ないところがエラーで落ちるじゃないですか… pryで止めて、@model.errorsを出力してみると… @details={:report=…

会社のMacを初期化してセットアップし直した

ただの日記です。 ずっとMacの調子が悪くて、よくbundle installに失敗するようになって、その原因もわからなくて、そのため、開発環境のDocker化などに踏み切って、それはそれで功を奏していた。 patorash.hatenablog.com 普段の開発環境なら、まぁそれでい…

昔に作ったgemのメンテを開始した

ただの日記です。 gemはいくつか作っているのだけれど、大体がRailsに関連するgemだったり、Railsでよく使われているgemの関連gemだったりする。 どれもあんまり使われているわけでもないのだけれど、自社サービスで使っているので、RubyやRailsのバージョン…

SprocketsをやめてWebpackerに移行したのでどうやったか公開する

ようやくSprocketsからWebpackerに移行したので、そのためにやったことをまとめておきます。 移行前の状態 Railsのバージョンは6.0系 Sprockets4 CoffeeScript Sass Bootstrap3を使用 yarnは使ってる 筆者(私)はECMAScriptに関してはそこまで詳しくなくて…

WSL2のUbuntuに環境構築の続き

ただのメモです。 postgresql-client, postgresql-contrib, libpq-devのインストールなど。 pyenvのインストール Python 2系のインストール Python 3系のインストール PythonをインストールしようとしてWARNIGが出たのでメモ。 obel.hatenablog.jp その後、…

WSL2のUbuntuに環境構築中

これはただの日記というかメモです。 WSL2のUbuntuに開発環境を作ってみようと思って作業中。 やったことをリストにします。 zshのセットアップ zplugを使ってみる goenvのインストール goのインストール ghqのインストール rbenvのインストール rubyのイン…

webpack実践入門を読んだ

先日子供を車に乗せるときに背中を痛めてしまってしんどいです 寝返りを打つのも痛いし、咳・クシャミしても痛い状態です。どうも「ぎっくり背中」というらしいです。 出かけるのもしんどかったため、家でゴロゴロしつつ、この本を読んでみました。 webpack …