Skip to content

Instantly share code, notes, and snippets.

View limitusus's full-sized avatar
🏠
Working from home

Tomoya Kabe limitusus

🏠
Working from home
View GitHub Profile
@limitusus
limitusus / xdg-settings.patch
Created May 5, 2021 17:52
xdg-settings for MATE on AmazonLinux2
--- /usr/bin/xdg-settings.orig 2021-05-06 02:11:22.378389658 +0900
+++ /usr/bin/xdg-settings 2021-05-06 02:20:08.014011657 +0900
@@ -687,6 +687,23 @@
}
# }}} KDE
+# {{{ MATE
+get_browser_mate()
+{
+ get_browser_gnome3 "$@"
@limitusus
limitusus / openxpki_v2_v3_migration.sql
Last active July 8, 2020 16:23
OpenXPKI v2 to v3 migration SQL for MySQL
CREATE TABLE IF NOT EXISTS `backend_session` (
`session_id` varchar(255) NOT NULL,
`data` longtext,
`created` int(10) unsigned NOT NULL,
`modified` int(10) unsigned NOT NULL,
`ip_address` varchar(45) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `frontend_session` (
`session_id` varchar(255) NOT NULL,
@limitusus
limitusus / zero_division.md
Last active June 21, 2024 19:35
Zabbix: handle calculated item with zero division

Problem

Want to create a calculated item with last("X") / last("Y"). When Y = 0, the result should be 0.

Answer

last("X") * (1 - count("Y",#1,0)) / (last("Y") + count("Y",#1,0))
@limitusus
limitusus / detect-sigv2.rb
Created March 17, 2019 17:18
AWS S3 SigV2のCloudWatch logsを検出するスクリプト
#!/usr/bin/env ruby
require 'aws-sdk'
require 'zlib'
require 'json'
bucket = ARGV[0]
prefix = ARGV[1]
region = ENV['AWS_REGION']
puts "Bucket: #{bucket}"
@limitusus
limitusus / b-engineer.txt
Created March 10, 2019 07:00
株式会社Branding Engineer
突然のご連絡、失礼致します。
株式会社Branding Engineerの今井と申します。
Githubの過去のリポジトリーを拝見させていただきました。
この度は株式会社Branding Engineerにて運営しております、
プログラミングスクール事業の件でご連絡させていただきました。
☆tech boostメンター(教育エンジニア)募集☆
@limitusus
limitusus / 20190205_pro_bank.txt
Created February 5, 2019 04:50
スカウトメール
ラクスル株式会社
加辺 友也 様
初めてご連絡申し上げます。
私プロフェッショナルバンクの秋山と申します。
ご勤務先への突然のご連絡をお許し下さい。
メールを差し上げましたのは、
ヘッドハンティングを行っております弊社としまして、
是非、加辺様にご連絡差し上げたい想いからでございます。
@limitusus
limitusus / cognito_kibana.md
Last active April 5, 2018 07:53
KibanaをCognitoでユーザ認証する appendix

KibanaをCognitoでユーザ認証する appendix

まずはクラスメソッドの資料を読み、User PoolやIdentitiy Poolを作成しておく

各種要望に応える

サーバからのみ認証なしで使えるようにしたい

  • Curatorとかで自動処理したい
  • Officeからは認証を必須にしたい
@limitusus
limitusus / chefdk_install_fail.log
Created March 23, 2018 14:01
ChefDK installation failed in TravisCI
$ sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install chefdk
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package chefdk
apt-get.diagnostics
apt-get install failed
$ cat ~/apt-get-update.log
Ign:1 http://us-central1.gce.archive.ubuntu.com/ubuntu trusty InRelease
(snip)
@limitusus
limitusus / mysql_bug_32917.md
Last active October 25, 2017 03:09
MySQL Bug:32917

https://bugs.mysql.com/bug.php?id=329175a587b6d2897e786b515d05a09b37ef81695dab7 の和訳

分析

temp-pool が有効になっている場合、本質的に一時テーブルを使うある種のクエリは一時テーブル用ファイル名の衝突によりクラッシュする可能性がある。

temp-pool はLinuxにカーネルにおいて発生する問題を回避するため、一時テーブルのための異なるファイル名を減らすため、<tmp_file_prefix>_<pid>_<temp_pool_slot_num> の3部分から成るファイル名を使った小さなプールから確保しようとする。ファイル名として使ったとき、temp_pool_slot_num に一致するビットが temp-pool のために管理されたビットマップにセットされる。再利用のため一時テーブルが削除された後にこれはクリアされる。

誤った条件下で create_tmp_table() 関数呼び出しが行われると、 free_tmp_table()bitmap_lock_clear_bit() を呼び出してしまい、同じビットを2回クリアしてしまう。free_tmp_table() はテーブルとファイルを削除し、同じ関数である bitmap_lock_clear_bit() を呼び出すことでビットをクリアする。

@limitusus
limitusus / logger-formatter.py
Last active July 19, 2017 10:09
PythonでloggerにFormatterをセットして改行を潰すサンプル
#!/usr/bin/env python
import logging
logger1 = logging.getLogger('test1')
logger1.warn(' foo1 \n bar1')
logger2 = logging.getLogger('test2')