Mac版PowerPanel復活法

社長:また iMacでPowerPanelの表示が止まってます。

開発:なんで表示した時点の時刻を表示しないんでしょうね?

基盤:どうやらこの「daemon」という気の抜けた名前のサーバプロセスが固まってる模様。

開発:われこそがdaemonなりみたいな。

社長:server っていう名前のプログラムがあったらびっくりしますよね。

開発:Windows なんていう名前のOSが出てきた時にはびっくりしました。

基盤:コールスタックを覗いてみます。

社長:ものすごい再帰呼び出しですね。

開発:見るからにバグっぽいですね。

基盤:でもってこれを一旦Force Quitさせます。

基盤:サーバの切断が表示され、数値の表示が消えました。

基盤:で、速攻でまたdaemonプロセスが生えてきて、しばらくすると…

基盤:接続が復活して表示が再開されます。

社長、開発:おーっ。

基盤:正常な状態でも、再帰の深さが尋常ではありませんが…

開発:ということは、固まったら、というかいっそ定期的に、このサーバプロセスをkillしてやれば良いというわけですね。

基盤:固まった時のコールスタックはこう。

基盤:正常な時のコールスタックはこうです。

開発:いかにもPythonで書いて有りそうですね。

社長:バイナリ化されて配布されてるんでしょうか。

基盤:固まってない状態でも、この ffi_call というの暴発は存在します。

開発:普通に再帰的なプログラムなのかも知れないですね。暴走しているわけではないと。

社長:となると、これが原因では無いと。

開発:組み込みの世界で再帰関数使いますかね。しかも単にUPSから読んだ値を表示してるだけ。なにか難しいことがあるのか、さっぱりわからない。

社長:それにしてもこの、アクティビティモニタの「sample」という機能は、strace 的なものみたいですが、面白いですね。

基盤:昔からあったみたいですね。

基盤:それで、 UPSとはUSBでつながっているわけですが、これが何かおかしいのではないかと。syslogを見るとParallelsが何か出しています。ParallelsはUSBをどこにつなぐか差配してますから、これが邪魔をしているのではないかと。

開発:Parallelsは止めてあるんじゃないでしたっけ。

基盤:Parallels Toolboxは動いてました。もうひとつ何かのプロセス。とりあえずこれをkillしてみました。USBを抜き差ししても復活。今の所快調です。

社長:でも、UPSは会社設立直後から使ってて、Parallelsを入れたのはずっと後ですよね。

経理:UPSの購入は4/12、Parallelsは7/24に試用版開始でした。

開発:でもたしかに、当初はPowerPanelが固まる症状は無かったようにも思うんです。MacMini ででしたけど。

社長:思うに、PowerPanel は Windows10 レノボくんで見てた気がします。で、仕事環境をMacに移行した後に、なんだか表示ができなくて、これだけはレノボで表示してたような…

基盤:そういえばブログによると、消費電力に最初に大注目したのは8/4のエアコン復活の日かもしれません。ちょうどParallelsのVMの消費電力を見てますね。

基盤:とにかくこれまで観察した iMac での現象としては、PowerPanel for Mac 1.1.1のdaemonをインストールして1.1.1自体は終了させる。その後 PowerPanel Personal 2.2.2 を起動する。するとつながる。ということです。

基盤:MacMiniでやってみます。まずUPSとUSBを繋いでも… 検出しない。1.1.1のデーモンをインストール。Power Panel Personal を起動…

全員:おーっ。

基盤:なんか懐かしいような。日本語表示設定で。

社長:ちょっと真偽は確定しませんが、Parallelsと干渉するように思われるので、これからは PowerPanelは MacMini で動かすことにしましょう。

経理:ところでこれ、iMacを落としたら消費電力何ワットになるでしょうか?

基盤:やってみましょう。iMacシャットダウンなう。

社長:うーん、うちは60ワット台で最小限の業務ができちゃう会社ですか。

基盤:そのうちフィリップス君のバックライトが40Wくらいと思われます。

開発:まあそれはそのまま、部屋の照明にも寄与してますけどね。

基盤:照明と冷蔵庫といくつかの待機電力を合わせると、本来業務用の消費よりそっちのほうが多そうです。

社長:それにしても、通常見たいのはこの部分だけなんですよね。

社長:ただし、どのマシンからも見たい。HTTPサーバになってるだけで良いと思うのですが。かつ、少なくとも毎秒、できれば0.1秒単位で消費電力をグラフで見たいです。

開発:原理的には、技術的にも負荷的にも問題なく可能と思いますが。

基盤:Linux版はコマンドラインで使えるみたいなんですけどね。

社長:かといってそのための仮想マシンていうのもなんですしね。

開発:ここはひとつ、眠れるラズパイ君の出番ですかね。

社長:まあ、USBでシリアルにコマンド投げてるだけだと思いますから、その仕様さえわかればなんですけど。

開発:USB自体はGoにパッケージがありますね。

社長:ともかく、他の社とは比較してませんがこのUPS、1万円ぽっきりでこの満載機能、とってもお買い得だと思うんです。消費電力計として活用できるなら、もう一台欲しいくらいです。

開発:でも我が社の業務はこのこ1台の能力、330Wで十分まかなえますけどねw

-- 2020-1115 SatoxITS

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です