動かざることバグの如し

近づきたいよ 君の理想に

2020-01-01から1年間の記事一覧

何故Elasticsearchに32GB以上メモリ割り振るのはNGなのか

その理由を探るべく、我々はアマゾンの奥地へと向かった。 環境 少なくともElasticsearch 2以上はこの記事該当 概要 古事記にも書かれていたんじゃないかってレベルで、「Elasticsearchには32GB以上のメモリを割り当てるべきではない」とよく言われる。ESの…

UbuntuでOpenSSLをソースからビルド

環境 Ubuntu 18.04 概要 色々あって最新のOpenSSLの環境を作る必要があり、そのためにソースからOpenSSLをビルドした手順のメモ 依存ライブラリのインストール 入ってないことないと思うけど apt install build-essential 手順 まずはソースのダウンロードし…

Docker実行時に「the input device is not a TTY」エラー

環境 Docker version 19.03.13, build 4484c46d9d docker-compose version 1.27.4, build 40524192 概要 いつものようにdocker-compose exec xxxしたら見慣れないエラーが。 the input device is not a TTY は???? 解決策 docker-compose実行時の場合 -T…

Linuxで特定の古いプロセスを一括killしたい

環境 Ubuntu CentOS やりたいこと 普通プロセスは終了したらexit(0)なりなんなりでなくなるが、なにか予期しないことが発生すると残り続けてしまう。 それによってメモリを食い潰してしまってサーバーがダウンしてしまう、、なんてこともありうる。 そこで特…

mitmproxyをDocker使って秒速で起動させる

mitmproxyとは HTTPS対応のプロキシサーバー 一言でプロキシサーバーといってもnginxやsquidなどと違って主に通信の傍受に使う これを公式が出しているdockerイメージで一発で起動させたい docker run --rm -it -v $(pwd)/data:/home/mitmproxy/.mitmproxy -…

WireGuardで格安SIMをサーバー化する

概要 格安SIMは名前の通り安いし、サーバー運用にできそうだが、一般的なSIMだとグローバルIPは固定ではないので他のサーバーからアクセスできないし、そもそもポート開放を許可していないSIMのほうが多かったりする。 しかし、今回の様にWireGuardを使って…

暗号化されたHLS形式(m3u8)の動画をダウンロードする

環境 ffmpeg 4.3 やりたいこと タイトルで完結しているが、WEB配信している動画にはストリーミング再生できるようにHLS形式で配信されている。 が、これはChromeのネットワークタブ等で監視してもm3u8ファイルしか出てこない。それは動画本体ではなく、ただ…

シャニマス 言ってないセリフシリーズ

ここではシャニマスのギリギリ言ってそうだけど実は公式では発言していないセリフを残しておく 風野灯織(かざのひおり) 風野灯織「助けて……真乃……めぐる……」←言ってない 月岡恋鐘(つきおかこがね) 月岡恋鐘「かーっ!卑しか女ばい!」←言ってない (adsby…

シャニマスの黛冬優子の改変前自己紹介

最近アイドルマスター シャイニーカラーズこと、シャニマスにハマってしまったんだが、その中に黛 冬優子というアイドルがいる。 shinycolors.idolmaster.jp 「現在」のプロフィール文章では、 常に控えめな笑顔で、清楚に見える女の子。 可愛いものが大好き…

最高音質のLAMEコマンドラインオプション

昔mp3lameのオプションを調べていた頃に、面白いサイトに出会った記憶がある。 再度探したが全然見つからなかったが、どうやらインフォシークが閉鎖していたからっぽい。 幸い文字化けしつつもInternet Archiveからサルベージできたので一部を記載する。 こ…

Python3で

globが最強だと思ってた時期が僕にもありました pathlib使ったほうが書きやすいと思う ファイル一覧を取得してfor in でループ処理 for f in Path('voices').glob("**/*.wav"): print(f) サクッと確認する場合はlist()でリスト型に変換してあげれば確認でき…

ニコ動で再生数1位が公式じゃないアニメを探す

成果物 やっつけでHTML化した ニコ動で再生数1位が公式じゃないアニメ一覧 やりたかったこと ニコニコ動画では多くのアニメを無料/有料で配信している。 色んなアニメをニコニコで見ていて思ったのが、一般人がアップロードした動画が再生回数TOPになってい…

ニコニコ動画で使えるAPI一覧

公式 コンテンツ検索APIドキュメント ニコニコチャンネルAPI https://public.api.nicovideo.jp/v1/channel/channelapp/content/videos.json?page=1&channelId=2645675&sort=startedAt https://public.api.nicovideo.jp/v1/channel/channelapp/content/videos…

Rubyで2つの配列を同時にeachさせる

環境 ruby 2.7 やりたいこと 普通にコード見たほうが10000倍早い odd = [1,3,5] even = [2,4,6] odd.zip(even) do |x, y| p [x, y] end すると出力は $ ruby multi.rb [1, 2] [3, 4] [5, 6] となる そうじゃないって場合 あなたが探してるのは多分こっ…

ラピスリライツ アニメの小ネタ・演出まとめ 9話~12話

1話から4話までのまとめ thr3a.hatenablog.com 5話から8話までのまとめ thr3a.hatenablog.com 9話 Gradience 失恋男 9話の途中で登場するモブ男は、1話の最初の馬車の中のカップル。泥酔しながら『いつまでも一緒にって言ってたくせに…』と供述してお…

ラピスリライツ アニメの小ネタ・演出まとめ 1話~4話

ラピスリライツとは 公式のコンセプトは「アイドルx魔法」2020年夏の私的覇権アニメである。 www.lapisrelights.com だが悲しいことに他のアニメと比較するとイマイチ盛り上がっていない。。。食傷気味のアイドルという属性と「3話ぐらいで誰か死にそ…

ラピスリライツ アニメの小ネタ・演出まとめ 5話~8話

1話から4話までのまとめ thr3a.hatenablog.com 9話から12話までのまとめ thr3a.hatenablog.com 5話 Sunny day 鼻歌で歌うシャンペ 班に別れて行動中、シャンペが鼻歌で歌っているのは自分が所属しているシュガーポケッツの曲「シャノワール」である。 …

`` request_header_access Accept-Language deny all request_header_replace Accept-Language en-US

Node.jsのMySQLでAsync/Awaitで接続する

環境 Nodejs 12 やりたいこと Nodejsを使ってMySQLに接続したい。今どきのasync / awaitを使っていい感じに書きたい。というかコールバック書きたくない インストール 有名なのは mysql なのだが、mysql2というのもある。 すごく昔にsidorares/nodejs-mysql-…

Alpine Linuxで日本語の明朝体フォントを使えるようにする方法

環境 Docker Alpine Linux 3 やりたいこと Dockerで軽量イメージを作る上で欠かせないAlpine Linuxで日本語フォントを使う場合、実は RUN apk add font-ipa fontconfig && fc-cache -f を実行するだけで日本語は表示できる。が、今回は明朝体もきれいに表示…

Rubyでクラスメソッドを上書きする方法

環境 Ruby 2.6 やりたいこと 方法1 class_eval class Cat def self.hello "nyaa" end end Cat.class_eval do def self.hello "bowwow" end end puts Cat.hello 方法2 define_singleton_method class Cat def self.hello "nyaa" end end orig = Cat.method(…

Rubyでメソッドを色んな方法で上書きしてみる

環境 Ruby 2.6 やりたいこと 使ってるGemの挙動を一部変えたくて、インスタンスメソッドを上書きしたい できれば黒魔術にならずにシンプルに変えたい コード例ではCatクラスがあって、本来はhello()で「nyaa」を返すが「bowwow」に変更したい うまくいかない…

NodejsでFluentdにデータを送信する

答え 公式クライアントの「fluent-logger」を使う。 fluent/fluent-logger-node: A structured logger for Fluentd (Node.js) やり方 デバッグしやすいように以下のfluendの設定をしたサーバーを用意する。 <source> @type forward port 24224 </source> <match *.*> @type stdout </match> 受け…

Railsで削除時にネストしたモデルも削除する

環境 Rails 6 やりたいこと Railsでは 1対多 とか 多対多 の関係のときに親レコードを削除したときにそれに紐づく子レコードも一緒に削除することができる。方法は簡単で has_many(has_one)にdependent: :destroyを追加するだけ ここで以下のようなparent>ch…

ddコマンドを使って簡易ディスク速度を測定する

環境 Linux やりたいこと ddコマンドはどのOSにも最初からインストールされている。それを使って簡易的なディスクのパフォーマンスを確認したい。 しっかり見るならfioってツール使ったほうがいい。 thr3a.hatenablog.com コマンド 以下 dd if=/dev/zero of=…

コピペで使えるcurlでHTTPリクエストする.php

php

使用頻度高いのでテンプレートってことでメモ 確認環境 PHP 5.6 PHP 7.4 コード 'value' ]; $url = 'https://httpbin.org/get?' . http_build_query($params); // $url = 'https://httpbin.org/status/500'; $curl = curl_init(); $curl_options = [ CURLOP…

RspecでRaw post dataなPOSTを実行する

環境 Rails 5以降 経緯 そもそもRaw post dataとはなんぞや、から。 RailsでRequest Specを書く場合、当然POSTメソッドのテストも書くケースがある。 そんなときはこんな感じになると思う。 # spec/requests/logins_spec.rb require "rails_helper" RSpec.de…

PHPのImageMagickでsetCompressionQualityが効かない件

php

結論 setCompressionQuality ではなく setImageCompressionQuality を使え 経緯 以下のようなPHPのコードでImageMagickで画像を圧縮しようとした。しかし一向に画像サイズが小さくならない。 setCompressionQuality(10); $im->writeImage('test_1.jpg'); お…

PHP DockerにImageMagickをインストールする

php

環境 docker php 7 多分5系でも可能 やりたいこと 公式のphp dockerイメージのPHPでImageMagickで画像処理を使いたい。 やり方 そのままでは無いので自分でImageMagickを追加する必要がある。がpeclでインストールしてdocker-php-ext-enable imagick するだ…

RubyのMechanizeでフォームなしでPOST送信

環境 ruby 2.6 やりたいこと Mechanizeでフォーム送信はできるが、普通はすでにページに存在するフォームに対してsubmitするのが一般的 ここではあえてコードだけでデータを付けた状態でフォーム送信をしてみる コード agent = Mechanize.new url = "https:/…