我が子Macの体温を表示して健康状態を知る。

※ この記事は Tech KAYAC Advent Calendar 2016 6日目の記事になります

皆さんはじめまして、デニール(@ryusukefuda)と申します。
去年のアドベントカレンダーだは"ドレッドヘアのエンジニアが教えるAndroid Wear Watch Faceのつくりかた" という記事を書いたのですが、あれからもう1年経つのですね... 今年はMacユーザーというそれはそれは幅広い人が読める内容でいきたいとおもいます。

はじめに

皆さんはMacの体温とも言うべきCPU温度をどのくらい把握しているでしょうか。
人間世界では親が自分の子どもの体温を測り、熱が高くなったら病院へ行きますよね。
今回はMacでもそれをやった方がいいんじゃないかと思い、やってみました。

CPU温度を測るスクリプト

探してみると、GitHubにちょうど良さそうなリポジトリを発見しました。

github.com

中身を見てみると、IOKit というAppleが提供しているFrameworkを使用してゴニョゴニョしていました。

インストール

READMEの通りソース一式を落としてきて、sudo make install でインストールします。

早速実行してみる

コンソールで実行。

$ /usr/local/bin/osx-cpu-temp
69.9°C

それらしい温度が表示されました。
これが我が子の体温ですね。

どこに表示するか

コンソールから温度を取得することはできましたが、
どこに表示するかという問題が残っています。毎回コンソール叩くのは面倒ですよね。

  • Macアプリをつくる
  • Macのcronにスクリプトをセットして通知させる

などが候補にあがりました。
どれもお手軽感がないですね...

そこでBitBarの登場!

BitBarをご存知でしょうか。 これはMac上部のバーから任意のスクリプトを実行したり、結果を表示させることができるというなんともエンジニア心をくすぐるソフトです。

getbitbar.com

インストール

Release v1.9.2 · matryer/bitbar · GitHub からBitBar.app.zipをダウンロードし、解凍した後/Applicationsフォルダにコピーするだけでインストール完了です。

挙動確認

BitBarはサイトに様々なプラグインがあり、自由にダウンロードして実行することができます。
BitBarの左メニューから好きなプラグインをダウンロードしてバーに表示させてみてください。

オススメをいくつか紹介します。

BitBar用のプラグインを作成

一瞬で終わります。

#!/bin/bash

echo "`/usr/local/bin/osx-cpu-temp`"

ファイル名を cpu-temp.10s.sh としてBitBarのプラグインディレクトリに保存してください。 BitBarはスクリプトの定期実行をファイル名で設定できます。 上記では10s.shとしているので、10秒毎に温度表示のスクリプトを実行していることになります。

確認

f:id:schile:20161205181618p:plain

ちゃんと表示されていますね。
これで常に我が子の体温を見ることが可能になりました。
安心して生きていけますね。

番外編~どんだけ温度あがるか~

スペック
- MacBook Pro 13inch
- Core i5 - メモリ8GB

PC起動直後

f:id:schile:20161206095458p:plain

平熱

VirtualBoxを起動しRailsのサーバー起動, Chromeも起動。

f:id:schile:20161205182247p:plain

Chromeを起動すると結構上がります。

Lobi Androidビルド

f:id:schile:20161205182545p:plain

ぶっちぎりで上がっております。
このくらいになると私のMacはうなりはじめます。
ちなみにLobi Androidのソースコードは37万行を超えてます。

予告

明日は最近入社したおかむーがフレッシュな記事を書いてくれるのでどうぞご期待ください!