行く記憶の流れは絶えずして

戻ってこないのでメモするところ

横浜のバスにやられる

定期券の範囲内に横浜駅があり、そこからバスで銭湯が最近の気分転換。

ただ往復440円くらいとられるのも癪なので何かないかと探していたら、市営バス一日券600円を見つける。

センター南に寄り道していろいろお店見てでちょうどいいのではと思い実行。

 

…のはずが。

IC一日券くださいで着席し、suica引去額を見ると想定より多い。1030円。

調べた結果。

横浜駅で乗ったバスは市営ではなく神奈川中央交通(かなちゅう)バスで、一日券の範囲も値段も全く違う。

センターなんていかないし、厚木~町田~橋本の方に広がっている。

そりゃあ高いしそちらに用があるつもりで買ったわけではないし。

加えて思ったより不便。

私鉄(今回は市営も含めてしまうが)はそれぞれバスを持っており、自分の駅からは自分のバスを出したいのが当然。

なのでそのあたりの便利っぽい路線は抑えられてて、かなちゅうは私鉄から別の私鉄の駅を結ぶ感じの路線が多い。

 

加えて、かなちゅう縛りは思った以上に不便。

運営会社を間違えると一日券が効かないので、同じ路線でも会社を選んで乗らなきゃいけない。

銭湯入ってドトールで必死に考えて、曇りの昼過ぎだから今日は損切りで帰宅にしました。

仮に今回、偶然市営バスに乗れて思った通りになったとしてもいつかはこうなるわけだし、今だったと思うことにする。

 

で、使い倒すコースも一応立案。

近日実行予定(かなちゅうの思惑通りかもしれない)。

房総半島一周の旅

18きっぷが余り気味だったので房総半島1周してきました。

余った18きっぷは新橋で売ってくる縛りつきです。

内房線から周るコースで君津、館山、安房鴨川、千葉で乗換。

 

電車で緑や海を眺める以外は、乗換待ちが館山の1時間と安房鴨川の30分。

金券屋は閉まるのが早いから。

 

・君津

 グリーン車を使用。実に快適。

 18きっぷの旅の楽しみの一つだと思う。

 ただ不慣れなのでスピーカー真下に座ってしまった。

・館山

 房総半島1周は18きっぷ消化が半分目的だけど、ここは来て良かった。

 先週は山、今週は海と自然に飢えてるのが分かる。

f:id:taketsuru:20190831205636j:plain

駅出てこれですよ、テンション上がる

f:id:taketsuru:20190831205716j:plain

海岸まで歩く。海の匂いとか久しぶり

f:id:taketsuru:20190831205822j:plain

渚の駅たてやま。館山とさかなクンさんはご縁があるようで

 海岸散歩も充分よかったけどこの渚の駅が予想以上によかった。 

 さかなクンさん謹製の魚の絵が飾ってある。

 絵なのでそれなりにデフォルトしてあったり色使いの癖とかあるんだけれど現物と比較して違和感がない。

 絵が水槽の奥でスクロールしてても違和感がないというか。驚き。

 手癖で写真撮りたくなった。禁止と書いてなかったけどよかったのかな?

 それを見た後に現物の魚がいる水槽もあり、時間があったら見比べたかった。

 イセエビがなんか引っかかってて窮屈そうにしてたのが印象深い。

 ここまで全部タダ。水槽とかお手入れ大変なのにタダ。非常にありがたい。

 水槽も海も絵もたまに見るからありがたいのかなと思う。

 自分で水槽持ってたり海が近かったりするのには憧れるけど飽きが怖い。

 あと地元の漁業の歴史もあったり。公共施設ですからね。

 紹介ページが非常に簡素。公共施設ですからね。

f:id:taketsuru:20190831211022j:plain

帰り道から見える館山駅

f:id:taketsuru:20190831211105j:plain

特急さざなみ?だったかな。お金がないので乗れない

 これだけの観光地だがアクアラインの影響が大きく、意外に特急の本数が少ない。

 休日なのに館山までの特急は2本。悲しい。


安房鴨川

 30分なのであまり冒険できず。

 イオンで弁当を買って車内で食べた。

 寿司がおいしそうだったけどコスパ思考で普通の弁当(398円)に。

 ちょっと後悔している。

f:id:taketsuru:20190831205435j:plain

内房線外房線の境界

18きっぷの売却結果

 残り3回を3000円。

 足元見られてた気もするが、ほとんどの金券屋が休んでたのと残りが夏休み明け10日というのを考えると文句は言えない。

 以前、計画的に使って不要分即売却とかしてたころは残2が5000円のときもあった。

 今度から計画的に使いましょう。

 

18きっぷの件も含め、最近は判断遅れや事前調査不足で後悔することが多い。

山と海でリフレッシュできたはずなので以降立て直したい。

丹沢大山登ってきました

お盆前に計画していたのですが気温が高いので様子を見続けてました。

最近相対的に涼しくなってきたので本日決行。

 

概要

山旅ロガーを使ってログを取りました。

8時間21分

鶴巻温泉駅スタート
・上り:4時間30分(下社経由)
・頂上休憩:25分
・下り:3時間26分(下社経由せず)

東海大学前駅手前のイートイン付きファミマでゴール
距離:23km
てっぺん:1258m
獲得標高:2341m

f:id:taketsuru:20190825212218p:plain

標高と時間のログ

服装

ワークマン半袖
ワークマンチノパン
20Lくらい?のリュック
メレルの靴

今回は晴れと曇りを繰り返すような、麓の最高気温も31℃くらいの日なのでワークマンで問題ありませんでした。

( 用途に合わせて選んだのではなく、予算面からこれしか持ってない )

 

持ち物

水2.6L
BCAA500ml用一袋
ようかん8個(100均で4個入りのやつを2セット)
カレーパン、おにぎり2つ
カッパ
帰りの着替え
銭湯セット
モバイルバッテリー
塩(ヒル用)

 最近ほぼ全くといっていいくらい運動していないので水がこれでも足りませんでした。

詳細は後程。

登ってる途中で思い出しましたが、トイレットペーパー、ガムテープ忘れてましたね。

 

感想

文章下手なので箇条書きです。

写真もないとかPV稼ぐ気ないですね。

・曇りと晴れを繰り返すような天気
・最初の吾妻山がいきなりきつい登り
・吾妻山~念仏山~高取山~蓑毛越えまで登ったり降りたり
ヒルはでなかった
・下社から頂上までで、疲れが開始から下社までと同じくらい
・下社まで人は全然いない、下社から大賑わい

・下社~頂上間は初心者向けか?と思う
・ようかんは1時間に1つを目安、5つ消費
 口がある程度乾くので水の節約のため下りは控える
・水の消費
 開始から下社までで600ml
 下社から頂上までで1200ml+BCAA
 頂上から終了までで800ml
 ずっと晴れだったら足りなかったかもしれない
 下ってコンビニのイートインで700ml飲む
 その後マクドでアイスコーヒーL(350mlくらい?)を飲む
 でもトイレには行ってない
・銭湯
 さざんか:850円
 登山客を意識した作り
 ・内装キレイ
 ・ロッカーでかい
 ・お湯は40度統一
  運動後って熱いの入りたくない
 ・休憩スペース(浴室内、エントランス)が狭い
  疲れから長居されると回転率悪いからねぇ

・体の異常?とか

 太ももの筋肉痛と両足の人差し指の爪にチマメ

 以外にもそれだけ

一番衝撃だったのが水の件。

家についてウーロン茶とか水とかコップ数杯飲んでますが未だにトイレには行ってないです。

 

雑感

運動量も資金も知識も不足していた人間の割にはうまくできたと思います。

筋肉痛の完治にどれだけかかるか見ものです。

cloudformationに必要なiamポリシーとか

試行錯誤でなんとかデプロイ達成。

まあ、ワイがIAMに始まりAWSを理解していないのがいけないのですが。

 

事の発端はgoバイナリをlambdaにデプロイしようと思ったこと。

2年前くらいにlambdaとApiGatewayをひいひい言いながら動かしたことがあるけど

それっきりで身についておらず苦労したことしか覚えてない。

 

というわけで何かないかググる。楽するために努力する。

と、cloudformationとかいうなんかすごそうなものを見つける。

少し前からあったらしいけど全然知らなかった。ので読む。

インフラをドキュメントで定義して管理しましょうね的なサービス。

そういえば弊社でもterraform使ってたような。

 

で使ってみることに。

①samを入れてinitする

②作りかけのgoを混ぜてtemplate.yamlをそれっぽく修正する

awsコンソールから必要な権限を準備する

④sam package --s3-bucket 中間生成物用S3 --output-template-file packaged.yaml

⑤sam deploy --template-file packaged.yaml --stack-name {stack}  --capabilities CAPABILITY_IAM

⑥失敗するとstackに情報が残るのでコンソールからチェックしたら消す

 aws cloudformation delete-stack --stack-name {stack}

⑥成功すると(iamと)lambdaとapigatewayができてる

みたいな流れ。

 

って書くと簡単そうだけど②③でひたすら詰まる。

仕事後の貴重な自由時間3日分くらい。

 

詰まったポイント:

・samを実行するlinux(今回はlightsail)のiamに権限が必要

 用意しておいたロールを使うときにはiam:GetRoleとiam:PassRoleが必要、

 専用の権限を同時に作成する場合は7つくらい必要(後述)

・lambdaに紐づけるロールを用意してやると"lambdaにふさわしくない権限"と弾かれる

 cloudwatch?lamdainvoke?昔の残骸を見ながら試すも無事死亡、あきらめる

 

で、cloudformationからのlambdaのiam生成に必要な権限はこちら(2019/08/23時点)

・iam:DetachRolePolicy
・iam:DeleteRolePolicy
・iam:DeleteRole
・iam:PutRolePolicy
・iam:AttachRolePolicy
・iam:GetRolePolicy

実はGetRoleも必要かも、試す気力がないです...

だいたいAdminでやるから意味のない情報かも。なぜワイはそうしなかったのか。

sam deployをする→failed→メッセージに"iam:~が必要です"と都度表示されるので

短気なワイは結構つらかった。

failedのときはrollbackしようとするのでそこでdeleteとかdetachが必要なのだけど、

その権限がないとrollbackに失敗するのでstackがしばらく残ってしまう。

stack1,stack2...とクソ命名をせざるを得なく、stack6で成功。

ググると2時間くらいほっといたら消えるらしい。

 

結局はlambdaにふさわしいロールの条件はわからず自動生成とした。

自動生成されたポリシーを見ると以下だった。

・AWSXrayWriteOnlyAccess
・AWSLambdaBasicExecutionRole

半分当たって半分外れ。Xrayって昔のlambdaのiamにいなかったぞ...

謎。知らなくても生きていけることはある。

 

template.yamlのメモ:

・outputはなくてもいい、awsのコンソールで値を見ることができる程度

 エンドポイントURLとか作成されたロールを見れると便利

・公式サンプルが一番ためになった

github.com・ブラウザで雛形からある程度のtemplate.yamlを作成できるところがあるらしい

 

ここまで苦労しかなかったけど、やっぱコマンドでいろいろリソースを定義して

紐づけられるってすごい。

あと、sam local start-apiでテストができてしまうのもすごい。

苦労しただけのことはあると思いたい。

 

ああ、次は作りこみだ...

ラズパイの温度計測をGoogle Sheets APIで記録

もはや本ブログのメインカテゴリが定まってないように見えますが、

私の感情が高ぶったことを書いてます(適当)

 

raspberry piで室温を計測したら思いのほか高温になってたことが発端。

朝の9時に外出、その日は晴れで最高気温は15時に32℃の湿度68%。

部屋はその間締め切り。17時帰宅でみなさん体験したことのあるあの熱気を計測。

すると36℃の75%でした。以外と高い。

 

じゃあ次はこれを時系列で記録しようと。

ラズパイなのでsqliteawsでもいいのですがちゃちゃっと表で見たいのでGoogleのSpreadSheetに挑戦。

結果、合計4時間くらい検索してやっと手ごたえを得る(読み出し成功)。

読めれば書くのはすぐでしょ、と気が抜けて達成感を得られたのでブログに。

 

やったことは以下。

Google Sheet APIの有効化。

 これはいくつかの記事から読み取れて難なく終わる。

②サンプルコード

 公式の英語ドキュメント(もちろんほぼ読めない)から頑張って探す。

 ラズパイはpythonで書いたのでpythonのやつ

developers.google.com③サンプルコードで読み込んでるcredential.jsonを頑張って作る

 ここで1.5時間くらい試行錯誤

 GCP?は始めてなんだ、すまない。

f:id:taketsuru:20190729230848p:plain

まずはOAuthクライアントIDの作成

f:id:taketsuru:20190729230947p:plain

その他を選択、名前は適当

f:id:taketsuru:20190729231014p:plain

作成を押すと完了ポップアップが出るが無視、右端の下矢印からjsonをダウンロード

 このクライアントID(~googleusercontent.com)をスプレッドシートの共有で

 追加しておく(スプレッドシートの画面右上、googleアカウントの招待と同じ)

④サンプルコードにcredential.jsonを食わせる

 2.5時間くらい試行錯誤

 コードはとりあえず動く。

f:id:taketsuru:20190729231531p:plain

応答が返ってくるもここからどうすればいいのか

OAuthってよく分からないけどgoogleの画面にいって許可ボタン押すやつかな...とか

考えながらこのURLをssh元PCのブラウザで開く。

すると曖昧な記憶通りの画面(googleアカウントログイン→アクセスを許可しますか?)が

開くが、最後のリダイレクトでこける。

URLをみるとhttp://localhost:38573とかになってる。

なんじゃこりゃ、こんなポート開けた覚えないぞとなりながら夕食。

ネットサーフィンしてから戻ってきて改めて考えなおす。

そもそもこのURLを表示してるコードを見てみるか。

google-auth-oauthlib.readthedocs.io

見てみた。

run_local_server()ってやつらしい。

pythonの組み込みサーバーを起動してるっぽい...?

一つの方法としてはサンプルコードの35行目のrun_local_server()コール時に

raspiのipと開いてるポート渡してPCからアクセスでもいいと思う。

だがソースをみているとrun_local_server()の上にrun_console()っていうのがあって

こっちなら早いんじゃないのrun_local_server()と入れ替えて試してみた。

f:id:taketsuru:20190729232820p:plain

なんか挙動が違う

最終行にEnter the authorization codeとかある!とりあえずURLにアクセスすると、

さっきまでの最後でこけてたリダイレクトがなくなってトークン?が出てきた

f:id:taketsuru:20190729233135p:plain

やったぜ。

で、こいつをさっきのEnter...に貼り付けると動いた!

同じ階層にtoken.pickleができてるのが成功の証。

 

さて、今からspreadsheet書き込みなわけですがどれだけかかることやら。

 

追記:

なんとかできた。15分単位でcronで回してる。

形になるとやっぱうれしいし達成感がある。

本来ならグラフ埋め込みにしたいけどキャプチャで勘弁。

f:id:taketsuru:20190731081325p:plain

湿度はY軸分けたい

 

突然のマザボ交換

備忘録なので写真ばかりです。

 

何かの拍子にPCの電源が入らなくなる夢を見たので。

金曜夜にビックカメラでryzen3 2200Gとmsiマザボamazonでメモリを購入。

全部で30000円くらい、日曜昼にそれぞれ届く。

f:id:taketsuru:20190421221330j:plain

 

ryzen

f:id:taketsuru:20190421221423j:plain

f:id:taketsuru:20190421221439j:plain

ファン付きでグリスまで塗ってある。親切

f:id:taketsuru:20190421221514j:plain

マザボ

f:id:taketsuru:20190421221534j:plain

ryzenつける

f:id:taketsuru:20190421221648j:plain

f:id:taketsuru:20190421221717j:plain

もともとマザーについてた部品がファンに干渉する

四角いファンがついてくるryzen用らしい、外す

f:id:taketsuru:20190421221740j:plain

設置

f:id:taketsuru:20190421221902j:plain

入れ替え前の写真

f:id:taketsuru:20190421221959j:plain

f:id:taketsuru:20190421222039j:plain

f:id:taketsuru:20190421222114j:plain

f:id:taketsuru:20190421222135j:plain

コネクタ外していくと一つだけばらけた、めっちゃあせる

一番右側のやつ

 

f:id:taketsuru:20190421222239j:plain

外側に見える部分がペラッペラで筐体に付けるときに変に曲がりそう

f:id:taketsuru:20190421222338j:plain

入れ替える

ATXMicroATXなのでやや余る

f:id:taketsuru:20190421222503j:plain

ばらけたやつもマザボの説明書に扱いが書いてあった

グラウンド線が白いのは違和感だがそういうものか

f:id:taketsuru:20190421222641j:plain

f:id:taketsuru:20190421222715j:plain

 

電 源 投 入

写真めっちゃぼやけてるし間抜けな映り込みがあるし

ryzen3です、メモリ16GB認識しました、設定どうします?的な表示

うまくいったらしい、F1を押してBIOS

f:id:taketsuru:20190421222808j:plain

最近のBIOSってめっちゃグラフィカルなのね

いろいろふらついて再起動

メモリクロックは3200MHzまでいけるらしいけどこれからです

f:id:taketsuru:20190421222949j:plain

やったぜ。

f:id:taketsuru:20190421223218j:plain

f:id:taketsuru:20190421223248j:plain

マザボ添付のCDからドライバを更新

f:id:taketsuru:20190421223316j:plain

なぜにgoogle drive?と思ってスクロールしたら

norton先生とか入れたら闘争が始まるのでNG

ドライバCDだから即インストールしそうで危なかった

f:id:taketsuru:20190421223405j:plain

 

なんかパチ組みですんなり動きました。

Windowsクリーンインストールとかしないと動かないとかあったけど、

パッケージ版なので今回は問題なし。

 

変更前後(一応ですが左から右)

CPU core i5 550 ryzen3 2200G
メモリ DDR3-2666 4GB*2 DDR4-3200 8GB*2

 BTOデスクトップとして購入したのが2008年?

それからOSをSSDに入れたりグラボと電源交換したりで今に至る感じ。

 

ブラウジングとかしてるだけでも唸ってた状態は改善しました。

重いことはさせてないつもりなので壊れてからでもよかったのか?と。

その辺の判断は難しいのでやめますか、無事動いてよかったってことで。

水の半分をウイスキーにしたカレーうどん

結論から言うと、煮切れてなかったので酔っぱらった...

 

材料

・普通のカレーのレシピ

業務スーパーのうどん一玉

・リンゴを一年くらい漬けたウイスキー

 

作り方

・普通に材料を切って普通にカレーを作る

 ただし、私は短気なので10分くらいしか煮込まなかった

・ルーのレシピ2皿分の水250mlに対し130mlくらいウイスキーにする

・ついでに漬けてたリンゴも入れる

・煮えてきたと思ったらうどんを入れる

・ルーを溶かして終わり

 

思ったことを書くコーナー

 よくクックパッドとかでウイスキー使ったらうまくなるとか見て、ついでに例の古漬けウイスキー使えたらなと思って分量気にせず勢いでやってしまった。

 ウイスキーはガラス容器で冷蔵庫に眠っていたが、蓋を開けた時点でむせる。

 リンゴが思った以上に茶色(ウイスキー色)で期待と恐怖が半々。ビール瓶のような色。

 ウイスキーとリンゴ入れて蓋して煮込んで、様子見で蓋開けるとアルコールでむせる。

130ml、多いかなと思ったら煮詰まるのがめっちゃ早くてあせる。

後で考えると46%(質量か体積かわからないけど体積と仮定して)、60mlがアルコールだからなぁ。水を適量足す。

 で、蒸気でむせないくらいになったらうどん、ルーを入れて適当に完成。

 

 盛り付けたらリンゴが目に付いたのでリンゴから食べる。むせる。中に思いっきりしみててストレートでちびちびやる感じ。

で、むせたから水を飲む。チェイサーみたいなもんだよね。

 そんなリンゴ1/4玉分と格闘しながらどうにか食べきる。最後に汁を飲む。むせる。

H2O < C2H5OHだからか?沈んでいたらしい。

 

 で、酒にあまり強くないのでめでたく酔っぱらったところです。

 使い切れてないので明日はシチューに入れるんだ…長めに煮込めば何とかなるでしょ(酔っ払い)