Mix stacked graph and line graph with Mackerel

Mackerelで積み上げと線グラフを混在させることがUIからできるようになりました! エージェントインストール手順ページを刷新しました ほか - Mackerel ブログ #mackerelio カスタムメトリックとサービスメトリックが対象のようです。システムメトリック(mackerel-agentインストール時にデフォルトで取られるグラフ)ではUIから設定できませんでした。 やってみる こんな感じ。簡単! システムメトリックでも積み上げグラフ・線グラフを混在させる方法 さて、公式ブログでは「UI上で設定できるようになりました。」と、ちょっと含みのある表現がされていましたが、これは式によるカスタムグラフでは以前から可能だったからと思われます。 カスタマイズしたグラフを表示する - Mackerel ヘルプ »

Delete Go Map entry and rename Go Map key

Mapの操作を色々する機会があったのでまとめてみます。 The Go Programming Language Specification - Map_types それぞれのセクションごとに動作するコードのリンクがあります。play.golang.org上にあるので、その場で実行することができます。 ゴール pathみたいに/区切りの文字列をキーとして持っているMapに対し、特定の条件を持つキーを削除したり、キー名を変更する。 普通はそんなこと意識しないようにMap作っていくと思うんだけど人生は長い。Mapのキーをごにょごにょしたいときもある。 Mapの作成 いくつか作成方法はありますが今回は以下のように作成。このMapをごにょごにょしていきます。 func defineMap( »

Convert markdown to Google Slide

少し前の話ですが、Decksetが無い環境で既存のDecksetで作成したスライドの手直しをする必要に迫られました。 Decksetが無いのでGoogle Slideに移行して作業しようとしたのですが、スライドのページが数十枚ほどあり、手でGoogle Slideに移すのはツライところでした。 そこで調べたところmd2googleslidesというツールがあったので使ってみました。 JavaScript製のツールみたいです。インストール方法は以下。 npm install -g md2gslides 使い方は簡単で以下のようにmd2gslidesコマンドにマークダウンファイルを渡してあげるだけです。 md2gslides hogehoge.md G Suiteのマイページのトップにスライドは作成されていました(確か)。 初回はプロンプトが開いてGoogleアカウントの認証があります。DecksetのようにHTMLタグは対応していないので、HTMLタグが入っているとエラーが出ます。また、![](./pic. »

DigitalOcean released Cloud Firewalls

DigitalOceanにマネージドなファイアウォールが追加されました! ✨ Cloud Firewalls: Secure Droplets by Default 管理画面やAPIから設定できるファイアウォールで、設定はDigitalOceanのネットワーク層で適用されます(フィルタされたパケットはドロップレットまで届かない)。 この機能によってドロップレット毎にiptablesやfirewalldを設定する必要がなくなるのがうれしいですね。 sourceもしくはdestinationにはIPv4, IPv6, タグ, ドロップレット, ロードバランサを指定することができます。tagを指定することで楽かつ柔軟にスケールできそうですね。 terraformでも近いうち実装されそう。 resource_digitalocean_firewall.go: Add DO Cloud Firewalls »

Post GCP Billing data to Mackerel with Node.js

Node.jsのBigQueryライブラリを使ってGCPのBillingを取得してみました。 Get GCP Billing with Node.js 次はこのBillingの情報をMackerelにサービスメトリックとして送ってみます。 Mackerel側のインターフェースの確認 サービスメトリックは以下のデータ形式で送れば良いみたいです。 [ <metricValue>, <metricValue>, … ] 詳細はこちら。 サービスメトリック - Mackerel API ドキュメント (v0) つまり、今回の場合は以下のようなデータを送れば良いみたいです。 »

Get GCP Billing with Node.js

Node.jsのBigQueryクライアントライブラリを使ってみました。 Node.js client library for Google BigQuery 今回はこれを使ってGCPのBillingデータを取得してみます。 ※ GCPのBillingデータをBigQueryに送る方法は以下。 Export GCP Billing data to Google BigQuery 以下のようなコードを書いてみます。 // Imports the Google Cloud client library // Instantiates »

Visualize illegal ssh access attempts and access source

/var/log/secureをBigQueryに送り始め、sshdへのアクセスがあるIPアドレスを多い順に集計してみたりしています。 Send secure log to BigQuery Visualization of IP address accessing sshd 今回は日毎にssh接続の試行失敗回数を集計して、それに対するIPアドレスの内訳も出してみます。 こんなクエリを作成してみます。 SELECT LEFT(FORMAT_UTC_USEC(UTC_USEC_TO_ »