2018年5月16日水曜日

Google Wifi でトラブル、25% もパケットロスが!?

昨日 Google Wifi が来て初期設定だけして、

  • なんか遅いなぁ
と思っていました。
本日は、少し早めに帰宅して本格チェック。

なんとパケットロスが 25% !?



$ ping www.yahoo.co.jp
PING edge.g.yimg.jp (183.79.248.124): 56 data bytes
64 bytes from 183.79.248.124: icmp_seq=0 ttl=56 time=8.229 ms
64 bytes from 183.79.248.124: icmp_seq=1 ttl=56 time=7.103 ms
64 bytes from 183.79.248.124: icmp_seq=2 ttl=56 time=108.120 ms
64 bytes from 183.79.248.124: icmp_seq=3 ttl=56 time=6.680 ms
64 bytes from 183.79.248.124: icmp_seq=4 ttl=56 time=8.895 ms
Request timeout for icmp_seq 5
Request timeout for icmp_seq 6
Request timeout for icmp_seq 7
64 bytes from 183.79.248.124: icmp_seq=8 ttl=56 time=7.489 ms
64 bytes from 183.79.248.124: icmp_seq=9 ttl=56 time=8.735 ms
64 bytes from 183.79.248.124: icmp_seq=10 ttl=56 time=9.816 ms
64 bytes from 183.79.248.124: icmp_seq=11 ttl=56 time=7.682 ms
64 bytes from 183.79.248.124: icmp_seq=12 ttl=56 time=8.922 ms
64 bytes from 183.79.248.124: icmp_seq=13 ttl=56 time=7.138 ms
64 bytes from 183.79.248.124: icmp_seq=14 ttl=56 time=8.508 ms
Request timeout for icmp_seq 15
Request timeout for icmp_seq 16
64 bytes from 183.79.248.124: icmp_seq=17 ttl=56 time=15.497 ms
64 bytes from 183.79.248.124: icmp_seq=18 ttl=56 time=7.985 ms
64 bytes from 183.79.248.124: icmp_seq=19 ttl=56 time=9.265 ms
^C
--- edge.g.yimg.jp ping statistics ---
20 packets transmitted, 15 packets received, 25.0% packet loss
round-trip min/avg/max/stddev = 6.680/15.338/108.120/24.878 ms

マジっすか。。。他のサイトを IPアドレスで ping しても 25%から30%ぐらいのパケットロスをコンスタントに叩き出してくれます。「ここは日本じゃない!?」って思いました。

メッシュネットワークでなにか起こっているのか


3台をメッシュネットワーク化していますので、2台の電源を落としてチェック。
 > パケットロスが出る。

2台を初期化してメッシュネットワークから外す
 > パケットロスが出る。

最近ネットの調子が悪かったし、プロバイダ側の機器の問題か


eo光 1Ghps であり、光終端装置と有線ルータがセットで設置されている。これらを再起動。でもパケットロスは変わらず。ふむ、、、、

前の無線ルータに戻してみた


運良くまだ動作した、しかもパケットロスなし!
Google Wifi のせいじゃないか!

初心に戻る!Google Wifiを初期化し、メイン1台構成(非メッシュ) 


初心に戻りましょう。全部初期化してやり直す!
ふむ、パケットロスは 0%になった。そうでしょう、そうでしょう!そうこなくっちゃ!

$ ping www.yahoo.co.jp
PING edge.g.yimg.jp (183.79.250.251): 56 data bytes
64 bytes from 183.79.250.251: icmp_seq=0 ttl=55 time=86.836 ms
64 bytes from 183.79.250.251: icmp_seq=1 ttl=55 time=88.096 ms
64 bytes from 183.79.250.251: icmp_seq=2 ttl=55 time=96.478 ms
64 bytes from 183.79.250.251: icmp_seq=3 ttl=55 time=124.331 ms
64 bytes from 183.79.250.251: icmp_seq=4 ttl=55 time=83.197 ms
64 bytes from 183.79.250.251: icmp_seq=5 ttl=55 time=110.515 ms
64 bytes from 183.79.250.251: icmp_seq=6 ttl=55 time=80.482 ms
64 bytes from 183.79.250.251: icmp_seq=7 ttl=55 time=97.563 ms
64 bytes from 183.79.250.251: icmp_seq=8 ttl=55 time=85.711 ms
64 bytes from 183.79.250.251: icmp_seq=9 ttl=55 time=77.199 ms
64 bytes from 183.79.250.251: icmp_seq=10 ttl=55 time=86.426 ms
64 bytes from 183.79.250.251: icmp_seq=11 ttl=55 time=82.986 ms
64 bytes from 183.79.250.251: icmp_seq=12 ttl=55 time=73.943 ms
64 bytes from 183.79.250.251: icmp_seq=13 ttl=55 time=98.292 ms
64 bytes from 183.79.250.251: icmp_seq=14 ttl=55 time=103.789 ms
64 bytes from 183.79.250.251: icmp_seq=15 ttl=55 time=105.699 ms
64 bytes from 183.79.250.251: icmp_seq=16 ttl=55 time=101.571 ms
64 bytes from 183.79.250.251: icmp_seq=17 ttl=55 time=63.384 ms
64 bytes from 183.79.250.251: icmp_seq=18 ttl=55 time=49.811 ms
64 bytes from 183.79.250.251: icmp_seq=19 ttl=55 time=69.931 ms
64 bytes from 183.79.250.251: icmp_seq=20 ttl=55 time=60.449 ms
64 bytes from 183.79.250.251: icmp_seq=21 ttl=55 time=66.471 ms
64 bytes from 183.79.250.251: icmp_seq=22 ttl=55 time=84.729 ms
64 bytes from 183.79.250.251: icmp_seq=23 ttl=55 time=87.999 ms
64 bytes from 183.79.250.251: icmp_seq=24 ttl=55 time=85.227 ms
64 bytes from 183.79.250.251: icmp_seq=25 ttl=55 time=82.506 ms
64 bytes from 183.79.250.251: icmp_seq=26 ttl=55 time=66.317 ms
64 bytes from 183.79.250.251: icmp_seq=27 ttl=55 time=61.330 ms
^C
--- edge.g.yimg.jp ping statistics ---
28 packets transmitted, 28 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 49.811/84.331/124.331/16.623 ms

とりあえずサポートに電話するのはもうしばらく待ちましょう。

ではメッシュネットワークにするため、残り2台を追加してみよう。

メッシュネットワークを有効化しています.... 追加できない!!


おーい、、、、設定がすすまない。。。しばらくして「メッシュネットワークエラー」とか、、、後から追加するとおかしくなるのか!?
メインに選んだ Google Wifi が腐っているのか...


こいつは初期化して、もう1台をメイン端末として再セットアップ(メッシュあり!)


じゃあ、メインとなる Google Wifi を別の1台にして、再度セットアップ。その過程で、メッシュネットワークも合わせて設定。

できるじゃん!パケットロスもでないじゃん!
ついでに ゲスト Wi-Fi も設定しておいた。
ネットワークチェックも ダウンロード 590Mbps 、、そうそう、昨日 60 Mbps とかいってたよなぁ。。。よしよし。

ping の time もいい感じ!


$ ping www.yahoo.co.jp
PING edge.g.yimg.jp (182.22.31.252): 56 data bytes
64 bytes from 182.22.31.252: icmp_seq=0 ttl=56 time=13.637 ms
64 bytes from 182.22.31.252: icmp_seq=1 ttl=56 time=14.944 ms
64 bytes from 182.22.31.252: icmp_seq=2 ttl=56 time=14.199 ms
64 bytes from 182.22.31.252: icmp_seq=3 ttl=56 time=14.673 ms
64 bytes from 182.22.31.252: icmp_seq=4 ttl=56 time=14.991 ms
64 bytes from 182.22.31.252: icmp_seq=5 ttl=56 time=16.639 ms
64 bytes from 182.22.31.252: icmp_seq=6 ttl=56 time=13.712 ms
64 bytes from 182.22.31.252: icmp_seq=7 ttl=56 time=16.865 ms
64 bytes from 182.22.31.252: icmp_seq=8 ttl=56 time=15.024 ms
64 bytes from 182.22.31.252: icmp_seq=9 ttl=56 time=16.747 ms
64 bytes from 182.22.31.252: icmp_seq=10 ttl=56 time=14.846 ms
64 bytes from 182.22.31.252: icmp_seq=11 ttl=56 time=16.460 ms
64 bytes from 182.22.31.252: icmp_seq=12 ttl=56 time=14.806 ms
64 bytes from 182.22.31.252: icmp_seq=13 ttl=56 time=16.567 ms
64 bytes from 182.22.31.252: icmp_seq=14 ttl=56 time=14.095 ms
64 bytes from 182.22.31.252: icmp_seq=15 ttl=56 time=13.618 ms
64 bytes from 182.22.31.252: icmp_seq=16 ttl=56 time=15.425 ms
64 bytes from 182.22.31.252: icmp_seq=17 ttl=56 time=14.976 ms
^C
--- edge.g.yimg.jp ping statistics ---
18 packets transmitted, 18 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 13.618/15.124/16.865/1.074 ms

そうそう、おかしくなっていた時には、パケットロス以外に time が 360 ms とか「なんでだ!」って思うぐらいに遅かったのでした。これなら許容範囲!

まだ油断はできないが


とはいえ、「今」だけ調子がよいのかもしれません。
いろんな時間帯に使ってみたいとわかりませんしね!
今回、初期設定時に Google Wifi で 
  • LANの設定変更できない(ネットワーク情報読み取りエラー)
  • ゲストWifiの設定できない(ネットワーク情報読み取りエラー)
  • 動画とか見ていると数十秒に1度途切れる(パケットロス)
って異常状態になっていたのが、解消されました(とりあえず)。

まぁこういったトラブルがあるほうが、メッシュネットワークとして他に安価な同等製品があるなかで、「やっぱ Google Wifi」を試してみないとね!って思って購入した我が身としては、いろいろ体験できてよかったとは思います(イラッとしましたけど。。。)

ってなわけで、皆さんも Google Wifi に限らずルータ変更したら、 ping してみましょう。もしかしたら、パフォーマンスが出ていないかもしれませんよ!(そんなの珍しいって、、私もそう思います ^^;)

って書いてたら、トラブルシューティングみたいになっちゃいましたね。
Google Wifi は初期化しても再セットアップがとても素早くできて、楽でした。
なんていってもスマホのアプリで全部やっちゃえますしね!


2018年5月16日 @kimipooh

2018年4月26日木曜日

【G Suite】新しい Gmail の EAP が開始されました!(+ユーザーは複数の組織に所属可能に!)

一般 Gmail のほうは、4月25日(米国時間)にリリースされて、すでに使っている方々もいるのではないでしょうか。G Suite については、4月25日より Early Adaptor Program(EAP)が開始されました!

早速筆者が管理している G Suite で EAP に申し込んで有効にしてみました!

気になる新機能「Confidential Mode」



上記のブログを参考にすると
  • Confidential  Mode
なるものが追加されている模様。「機密モード」ですか!何か響きがよいですね!
上記ブログ内の動画が説明をみると、有効期限、SMSによる確認とかもあるみたいですね。SMSによる確認(相手のSMSを入れるのか?)がないとメールが読めなかったりするんでしょうかねぇ。新しい Gmailを手持ちの G Suite で有効にしてみましたが、まだ Confidential Modeは使えないようです。

上記ブログには、今後数週間かけて無料の GmailユーザーとG Suite の一部に適用していくってことです。これは楽しみですね!

G Suite で EAP を申請するには


今回は特別な申請は不要で、管理コンソールから有効にするだけで適用されます。
その範囲も全体か組織かを選択できます。
の末尾に書かれています。
管理コンソール > App > Gmail > 詳細設定内にあります。



有効にしてしばらくすると(筆者の場合には30分ぐらい)、Gmailの右上にある歯車アイコンのトップに、「新しい (企業名等設定した管理コンソールで設定した名)メールをお試しください」のメッセージがでます。これを選択することで、新しい Gmailを体験できます。もちろん同じ箇所の「以前の Gmailに戻す」もありますので、暫くの間は行き来可能です。



Labs が 詳細設定に名称変更




されてますね!ただ内容はかなり絞り込まれて少なくなってます。

Gmailから、カレンダー、Keep、TODO から直接アクセス可能に!




これは結構便利です!
Gmailにスヌーズ機能が追加されましたし、
以前「【備忘録】Inbox by Gmail, Keep, Google カレンダーの「リマインダー」の連携」という記事を書きましたが、そういった機能を使えば手軽に使えそうですね!

【G Suite専用】待望のユーザーに対して複数組織の割り当てが可能に!


実は一番これが小躍りするぐらい嬉しかったりします。
なんで1つの組織にしか入れないんだ!組織はそんな単純じゃなーい!って思っていたのですが、これで問題解決です。


上記のように管理コンソールのユーザーで、「選択した組織部門のユーザー」を選択すると「複数を選択」というリンクが表示され、これをクリックすることで複数の組織を選択出来るのです!ワーイ!

まだ使い始めたばかりですし、まだ今後数週間かけて適用されている機能もあるので、しばらくいろいろ試してみないとですね!

関連情報

2018年4月26日 @kimipooh

2018年4月13日金曜日

【GAS】Google スプレットシート で BOM付きUTF-8 な CSV出力をしてみよう!

Chrome 管理コンソールなど、BOM付きUTF-8 のCSVしかインポートを受け付けないシステムがあるようです。Windows なら「メモ帳」で UTF-8 保存すると BOM付きになります。macOS なら、CotEditor あたりを使えば、BOMあり、なしを選択できます。

Chromebook では Chromeブラウザしかつかえなーい!


下記の事例のように、Chromebook ではBOM付きUTF-8に保存することが難しい模様。


Google スプレットシート > 形式を指定してダウンロード > カンマ区切りの値(.csv 現在のシート)

は、BOMなしのUTF-8なのでした。
下記のようにバイナリエディタ(HexEdit)でみるとBOMがないのが分かります。



ちなみに BOMありの場合には、先頭が EF BB BF で始まります。
参考:Byte_order_mark  (Wikipedia)



CotEditor で見ても BOMなしですね。



BOMありの場合




じゃあ Google Apps Script で実装できるのかな


と思って
を参考に作成してみました。ちょっとハマったところがあったり、バタバタしていたので、小一日掛かってしまいました。

以下、ツールの利用方法です。

実装 - Google スプレットシートに CSV出力のカスタムメニューを追加する


今回3種類追加してみました。


  • OUTPUT to CSV カスタムメニューを追加
    1. Shift_JISコードの CSVを保存
    2. UTF-8(BOM付き)の CSVを保存
    3. UTF-8(BOM無し)のCSVを保存
なお Microsoft Excel で文字化けせずに開くことができるのは、「1」「2」です。つまりは Googleスプレットシートの標準機能で CSV保存したものは Microsoft Excel で開くと日本語が文字化けしまーす。

STEP 1. Google スプレットシートを作成


適当に日本語テキストを入力します。

な感じ。

STEP 2. スクリプトエディタを開き、サンプルコードをコピー&ペーストします。


1. ツール > スクリプトエディタを開きます。
2. 中身を、outputSheetToCsvFile.gs (GitHUB)にあるコードに置き換えます。
3. 保存します。



な感じですね。

STEP 3. コードのいくつかの箇所を変更する


var drive = DriveApp.getFolderById('=== Folder ID ===');

=== Folder ID === は、スプレットシートを保存した Googleドライブのフォルダに移動して、URLの
https://drive.google.com/drive/u/0/folders/=== Folder ID====
の部分をコピー&ペーストで入れて下さい。

var base_fileName = "aaa";
ファイル名のプレフィックス名を設定してください。
aaa_UTF8.csv、aaa_Shift_JIS.csv などで保存されます。

var entries 内の name 変数の値を変更することで、


上記の名称を変更できます。

spreadsheet.addMenu("OUTPUT to CSV", entries);

カスタムメニューの名称を変更できます。

※上記変更をしたら保存してください。

STEP 4. Google スプレットシートを再読込する


開いていた スクリプトエディタが閉じ、カスタムメニュー「OUTPUT to CSV」が表示されているはずです。



のように、それぞれ選択してみましょう。
最初の一度だけ、「承認が必要」画面がでてきます。


「続行」ボタンを押すと



のように警告がでますが、自分がつくったものですので「詳細」リンクをクリックし、
「outputSheetToCsvFile(安全ではないページ)に移動」
リンクをクリックしてください。



そうすれば、このコードが Googleドライブへアクセスしてよいかどうかの許可をきいてくるので「許可」ボタンを押します。

※もし警告を出したくないなら、下記を参考に申請してみてください。
https://support.google.com/cloud/answer/7454865

以上で完了です。
3つのCSV出力をすると下図のように、3つのファイルができると思います。



  • aaa_UTF8N.csv = UTF-8 (BOMなし)
  • aaa_UTF8.csv = UTF-8 (BOMあり)
  • aaa_Shift_JIS.csv = Shift_JIS


です。

STEP 5. 正しくコンバートされているか確認する


aaa_UTF8N.csv


下記のようにバイナリエディタ(HexEdit)でみるとBOMがないのが分かります。



CotEditor で見ても BOMなしですね。



aaa_UTF8.csv


ちなみに BOMありの場合には、先頭が EF BB BF で始まります。
参考:Byte_order_mark  (Wikipedia)



BOMありの場合



aaa_Shift_JIS.csv



のように正しく判定されていますね!!

2018年4月13日 @kimipooh

2018年4月6日金曜日

【GAS】Google Analytics データを Googleスプレットシートに集約し、PDFでメール添付する方法

最近 Google Script を使ったプログラムにハマりつつあります。

さて今回は、
  1. (前半)複数ある Google Analytics データの一部を Googleスプレットシートで一括取得
  2. (後半)一括取得した Googleスプレットシートの特定シートデータをメール本文(HTML)と PDF にして添付したメール送信
について紹介したいと思います。

毎回ログインして調べるのはやってられない!


ということと、問い合わせや登録関係に Googleフォーム + Google スプレットシートを使い始めて、Google Script でゴニョゴニョしだしたので、やってみるか!というノリでやってみました。

ようするに、ウェブサイトのアクセスログが知りたい!っていう度に、Google Analytics にログインして調べるのはやってられない! そこはまぁ簡単に実装できたけど、メール添付できたら更に楽だなぁというノリです。


(前半)複数ある Google Analytics データの一部を Googleスプレットシートで一括取得


やりかたはネットで調べたら結構でてきます。
が一番参考になりました。
今回、「2018年4月1日から一日前までの自動取得」を設定してみます。

2018年3月26日月曜日

【備忘録】Gmail アドレスを追加した Google アカウントの解除について

 以前試したのは、 Gmail サービスの削除(Gmailアドレスを削除)することで、改めて Gmailアドレスに追加する前のメールアドレスで Googleアカウントを再登録できて使えます。ただしこの場合には、作成したGmailアドレスは永久欠番(再度同じアドレスの作成不可)になります。他の方法はないのでしょうか。

Google アカウントに Gmail アドレスを追加した場合


Googleアカウント(Gmail アドレス)
 ┗ 予備のメールアドレス:Googleアカウントで使用していたメールアドレス

となり、どちらのメールアドレスでもログインできますが、表示されるのは Gmailアドレスのみになります。

で、Googleアカウント(Gmail アドレス)から、Gmail アドレスのサービスを削除 (Googleアカウントは削除しない)すると、Googleアカウントとして必要なメールアドレスが不明になるので、新たなメールアドレスを追加するよう聞いてきます。ここで、「Googleアカウントで使用していたメールアドレス」をいれることで、

Google アカウント(GmailアドレスGoogleアカウントで使用していたメールアドレス)
 ┗ 予備のメールアドレス:なし

のように復活できるわけです。
では、次のようにしたらどうなるでしょうか。

予備のメールアドレスを削除して、新たに Google アカウントを作成


Googleアカウント(Gmail アドレス)
 ┗ 予備のメールアドレス:Googleアカウントで使用していたメールアドレス

の状況から、予備のメールアドレスを削除します。
その方法は
から削除するということです。
そうしておいて、「Googleアカウントで使用していたメールアドレス」で新規の Googleアカウントを作成するということです。

結論


作成自体はできましたが、全く新規の Google アカウントの扱いになります。
ので、本体の Gmail アドレスのサービスを削除する以外にデータを引継ぎつつ、追加前のGmail 以外のメールアドレスに戻す方法はないなぁという感じです。

つまり

  1. Gmail でないメールアドレスで Google アカウントを作成
  2. Googleドライブに適当なファイルを作成
  3. 作成した Google アカウントに Gmail を追加
    ※この時点では 「2」で作成したファイルは存在する
  4. 作成した Gmailの予備のメールアドレスから、「1」のGmailでないメールアドレスを削除
  5. Gmail でないメールアドレスで Google アカウントを作成できる
    ※「2」で作成したファイルはなく、完全新規扱いになっている
となります。以上より、「2」の時点で「Gmail でないメールアドレスで Google アカウント」は消えて、Gmailの方へ統合される。と判断したらいいかなと思います。
「1」ー「4」は2度ほど繰り返して検証しました(おかげで手持ち携帯はこれ以上作成できないというメッセージが。。。)。


2018年3月26日 @kimipooh

2018年3月6日火曜日

【備忘録】Inbox by Gmail, Keep, Google カレンダーの「リマインダー」の連携

Inbox by Gmail, Keep, Googleカレンダーには、それぞれ「リマインダー」という機能があります。Android の Googleアプリにもありますが、検証していないので割愛します。
それぞれどのように連携しているかチェックしたものをメモとして残しておきます。

Google カレンダーで「リマインダー」を有効にする



ToDoリストが有効の場合には、リマインダーは設定できません。
サイドメニューに「ToDo リスト」あるいは「リマインダー」のいずれかの名称が出ていますので、その設定(縦・)をクリックして切り替えてください。



検証


Inbox by Gmail, Googleカレンダー, Keep に各1つずつリマインダーを作成。
それを各サービスからどのように見えるかをチェックしました。

Googleカレンダー


Inbox by Gmail, Googleカレンダー, Keep すべてのリマインダーが「リマインダー」カレンダーとして表示されます。


Inbox by Gmail


Inbox by Gmail, Googleカレンダー, Keep すべてのリマインダーが「リマインダー」メニューに一覧として表示されます。Keepはリンク先も表示されますね。



Google Keep


この流れでいくと、Keepもすべて出るのかなぁと思ったら、Keepのものしかでない (^^;


結果


Googleカレンダー、Inbox by Gmailは、すべてのリマンダーが表示されるっぽい(Android の Googleアプリのリマインダーは未検証)ですが、Keep側では連携できてないなーという感じですね。

2018年3月6日 @kimipooh

2018年2月1日木曜日

【備忘録】Chrome Developer Tools でスクリーンショットサイズがおかしくなる場合について

Google Chrome の Developer Tools は自由なサイズでスクリーンショットをとることができる優れたツールです。しかし保存したスクリーンショットのサイズが合わない場合があることにお気づきでしょうか。それは、各端末固有の「Device Pixel Ratio」が原因だったのです。それに気づいたので備忘録として残しておきます。

Developer Tools でスクリーンショットを撮る方法


まずはおさらいです。


  1. スクリーンショットを撮りたいページを開く
  2. 右クリックして「検証」を選択(表示メニュー > 開発 / 管理 > デベロッパーツール でもよい)
  3. エミュレーションするサイズを設定(Responsive だと自由に設定できる)
  4. 右端の縦三本の・をクリックし、Capture screenshot (画面に見えている範囲)あるいは Capture full size screenshot(ページ全体)を選択する

Responsive (400 x 600) でスクリーンショットしてみたら・・


※Capture full size screenshot の場合には、ページ全体なのでサイズはサイト設定によっても変わります。なので、試すのは、 Capture screenshot (画面に見えている範囲)のほうにします。


あれ、倍になってる(800 x 1200)!!

Device Pixel Ratio を設定してみよう!!



※これなにか知らなかったのですが、画像 1ピクセルを、実際の端末で何ピクセルで描写するかというレートということです。この数値が大きければ大きいほど、より繊細な表示ができるようになります。MacBookPro Retina Display は、2.0 になってます。
2.0ということは、容量の観点からいくと縦横各2倍の容量を使うということですね。



1. Developer tools のメニューある「Add device pixel ratio」を選択します。


2. すると、下図のように、DPR(Device Pixel Ratio)の設定が出てきます。
手持ちの MacBook Pro Retina Display は、2.0ですね。


3. デバイスサイズを選ぶか、Responsive にして自由にサイズを選ぶかして、DPR: 1.0 に設定します。

4. メニューより、Capture screenshot を選択して保存します。


おおー意図したサイズになったーーってな感じです。

2018年2月1日 @kimipooh

Google+ Badge