BGPで使えるパラメータを備忘としてメモをする

AS_PATH_PREPENDを使ってWANからのアクセスの優先度をつける

AS_PATH_PREPENDを付けることでMPLS網からくるルーティングを制御することが可能になる。

たとえば、拠点A、拠点Bがあるときに、拠点Aがメイン拠点、拠点BがDR拠点のような場合で同じIPアドレスをAdvertiseするなどのケースがあると思う。

その際に、拠点Aと拠点Bが同じIPアドレスのセグメントを利用する場合、MPLSを使っている拠点からは拠点Aに通信を流し、拠点Aが死んだときに拠点Bにトラフィックを流すという設計はわりと行われている。

この時に利用できるのがAS_PATH prependである。

拠点B側でAS_PATH Prependを例えば以下のような形で配信する。その結果、拠点B側は優先的に利用されなくなる。

BGPで使えるパラメータを備忘としてメモをする «BGPで使えるパラメータを備忘としてメモをする»” class=”more-link”>続きを読む BGPで使えるパラメータを備忘としてメモをする «BGPで使えるパラメータを備忘としてメモをする»

Expoでandroidシュミレータが起動しないとき

よく発生するけど毎回忘れるからいかにメモ。

基本は以下のリンクの通りでいい。つまり、expo startする前には必ずandroid studio側でシュミレータの起動をしないといけない。

isoなら自動で起動するんですけどね・・・

ちなみに環境変数は、以下のリンクと違い、expoの公式にある通り以下のコマンドで設定するようにした。どちらも同じだけどワンライナーでできるぶん公式のほうがかんたん。

[ -d "$HOME/Library/Android/sdk" ] && ANDROID_SDK=$HOME/Library/Android/sdk || ANDROID_SDK=$HOME/Android/Sdk
echo "export ANDROID_SDK=$ANDROID_SDK" >> ~/`[[ $SHELL == *"zsh" ]] && echo '.zshenv' || echo '.bash_profile'`

echo "export PATH=$HOME/Library/Android/sdk/platform-tools:\$PATH" >> ~/`[[ $SHELL == *"zsh" ]] && echo '.zshenv' || echo '.bash_profile'`

https://qiita.com/krile136/items/47b2e2cf2a7e586b6da3

React-Native: Expo Startでいきなりエラー

web開発はほとんどの経験をしてきたからreact-nativeでアプリ開発を来年はいろいろ作りたいと思っている。

早速Expo Startで動かしてみようと思ったのだが、早速エラーが出た。

そこで解決方法をいかにまとめる。

Expo Developer Tools is disconnected from Expo CLI. Use the expo start command to start the CLI again.によるエラー

OS:OS X 10.15 Catalina

node: v12.16

解決は以下の方法。インストールは数分かかった。

https://github.com/expo/expo-cli/issues/396

$ brew update
$ brew install watchman

マイプロテインは買わないほうがいいという話

プロテインバーに虫が混入していたということで話題になっていたのですが、それでもマイプロテインをやけに押す人が多いので自分も購入してみた。

ちなみに虫混入はこの記事。動画も見るとわかるがかなり気持ち悪い。

https://news.livedoor.com/article/detail/18960019/

購入してわかったがこの会社の品質管理どうかしてるなっていうこと。

個人的には、虫が混入していたのは、氷山の一角であって会社の体質として問題があると思う。私が遭遇した問題について残しておく。

マイプロテインは買わないほうがいいという話 «マイプロテインは買わないほうがいいという話»” class=”more-link”>続きを読む マイプロテインは買わないほうがいいという話 «マイプロテインは買わないほうがいいという話»

PaloAltoで使えるトラブルシューティングコマンド

最近PaloAltoの製品を扱うことが多くなった。使ってみてもPaloAltoは確かにUIはASAよりわかりやすく個人的にはとてもお勧めできる。

ただし一部の操作はWebUIではできずコマンドのみしかできない場合があるため、最近使った便利なトラブルシューティング用のコマンドをメモする。

PaloAltoで使えるトラブルシューティングコマンド «PaloAltoで使えるトラブルシューティングコマンド»” class=”more-link”>続きを読む PaloAltoで使えるトラブルシューティングコマンド «PaloAltoで使えるトラブルシューティングコマンド»

Iphone/swiftのAdmobをアップデートしたらエラーがでたので直したメモ

最近、開発しているiosアプリのアップデートを行った。

アプリのロジックを新たに追加しただけでなく、せっかくなので使っているライブラリをすべて最新にした。
Admobを最新にしたらエラーがでたので、修正しようとしたのだが、結構癖があったのでいかにメモをする。

Iphone/swiftのAdmobをアップデートしたらエラーがでたので直したメモ «Iphone/swiftのAdmobをアップデートしたらエラーがでたので直したメモ»” class=”more-link”>続きを読む Iphone/swiftのAdmobをアップデートしたらエラーがでたので直したメモ «Iphone/swiftのAdmobをアップデートしたらエラーがでたので直したメモ»

外付けのストレージ検討するならM.2SSDがおすすめ

Iphone/androidのカメラの性能がすごく高くなり、
最近動画を撮影することが多くなったと思う。

保存先として、Youtubeの非公開の場所においておくのも有りだが、
Youtubeにアップロードするとデータが圧縮されてしまう。

そのため、HDDに保存する、SSDに保存する、Blue RayのDiskに書き込んでおくなど、複数の方法があるが、
個人的なおすすめを紹介する。

外付けのストレージ検討するならM.2SSDがおすすめ «外付けのストレージ検討するならM.2SSDがおすすめ»” class=”more-link”>続きを読む 外付けのストレージ検討するならM.2SSDがおすすめ «外付けのストレージ検討するならM.2SSDがおすすめ»

amazon Partner APIでアマゾンの商品情報を取得する

アマゾンの商品を紹介するときは、アマゾンアソシエイトを利用しているのだが、
アマゾン公式のツールで商品を紹介する場合、どうしてデザインだったら欲しい情報がない場合がある。

自分独自の情報がだせるように、amazonのAPIを使って商品を紹介するにあたり必要な情報を自動的にとれるようにした。
作りにあたっては結構つまずくところがあったので、以下に紹介。

amazon Partner APIでアマゾンの商品情報を取得する «amazon Partner APIでアマゾンの商品情報を取得する»” class=”more-link”>続きを読む amazon Partner APIでアマゾンの商品情報を取得する «amazon Partner APIでアマゾンの商品情報を取得する»

普段はJinja2つかうことが多いが、Nuxt.jsを使ってみた

もともとPyhtonのjinja2でレンダリング処理をすることが多く、
たまに非同期の処理を行うときにはjQueryを使っていたが。でも基本は同期処理でHTMLのコンテンツをとっている。

最近SPAサイトも多くなってきたし、jinja2をやめてあくまでPythonはAPIをかえすだけの処理にし、
フロントエンドはすべてのJavascriptできるようにNuxtを使うことにした。

以下はこれまでJinja2を使ってた人にとってNuxtの何がいいかをまとめる。

普段はJinja2つかうことが多いが、Nuxt.jsを使ってみた «普段はJinja2つかうことが多いが、Nuxt.jsを使ってみた»” class=”more-link”>続きを読む 普段はJinja2つかうことが多いが、Nuxt.jsを使ってみた «普段はJinja2つかうことが多いが、Nuxt.jsを使ってみた»

Python DataFrameの書き込み読み込み

趣味で書いているアプリでWebAPIからデータをもってきて、そのデータを整形するためにいったんpandasのDataFrameにいれる、ということをよくあると思う。

私もよくあるが、DataFrameの挙動を試しながらやっていると、そのたびに、WebAPIにアクセスして、DataFrameにいれてという処理になり、WebAPIへのアクセスによる遅延もあるし、APIのLimitにひっかかる、場合によっては請求される場合もあるので、WebAPIからDataFrameにデータを入れたあとはローカルに読み書き出るようにした。

Python DataFrameの書き込み読み込み «Python DataFrameの書き込み読み込み»” class=”more-link”>続きを読む Python DataFrameの書き込み読み込み «Python DataFrameの書き込み読み込み»

Admob インタースティシャル広告 androidだとテスト広告がうまく表示されない問題

Admobのインタースティシャル広告を最近実装した。

iphoneの場合は、googleの紹介ページに従って、実装するとなんの問題もなく実装できた。

一方androidの場合はページにしたがって実装しても全く動かない。以下にうまく表示できるようなった対処を記載するd

Admob インタースティシャル広告 androidだとテスト広告がうまく表示されない問題 «Admob インタースティシャル広告 androidだとテスト広告がうまく表示されない問題»” class=”more-link”>続きを読む Admob インタースティシャル広告 androidだとテスト広告がうまく表示されない問題 «Admob インタースティシャル広告 androidだとテスト広告がうまく表示されない問題»

Swift/iphone UIViewController.*** must be used from main thread onlyのエラーが出たときの対処法

Swift/iphone UIViewController.*** must be used from main thread onlyのエラーが出て解決に困ったので、
解決した方法を以下の通りまとめる。

そもそも非同期スレッドで処理をするように書いていた。

Swift/iphone UIViewController.*** must be used from main thread onlyのエラーが出たときの対処法 «Swift/iphone UIViewController.*** must be used from main thread onlyのエラーが出たときの対処法»” class=”more-link”>続きを読む Swift/iphone UIViewController.*** must be used from main thread onlyのエラーが出たときの対処法 «Swift/iphone UIViewController.*** must be used from main thread onlyのエラーが出たときの対処法»

Swift/Iphoneのローカルストレージに対するcreate/update/read処理をまとめる。

先日android/javaのローカルストレージへの読み書き処理をまとめたので、
次はiphone/swiftの処理をまとめた。

Swift/Iphoneのローカルストレージに対するcreate/update/read処理をまとめる。 «Swift/Iphoneのローカルストレージに対するcreate/update/read処理をまとめる。»” class=”more-link”>続きを読む Swift/Iphoneのローカルストレージに対するcreate/update/read処理をまとめる。 «Swift/Iphoneのローカルストレージに対するcreate/update/read処理をまとめる。»

Java/Androidのローカルストレージに対するcreate/read/update処理をまとめる

スマホのアプリを作る場合はほとんどCloudにデータを置くのが一般的だが、
Androidのローカルストレージにデータを置きたい場合があると思う。

そのための処理をJavaで実装したので、備忘のためにまとめておく。

Java/Androidのローカルストレージに対するcreate/read/update処理をまとめる «Java/Androidのローカルストレージに対するcreate/read/update処理をまとめる»” class=”more-link”>続きを読む Java/Androidのローカルストレージに対するcreate/read/update処理をまとめる «Java/Androidのローカルストレージに対するcreate/read/update処理をまとめる»

ファイル名を変更するワンライナーを書いた

ファイルのアップデートをする必要があったので、ワンライナーを書いたが備忘のために残しておく。

ファイル名を変更するワンライナーを書いた «ファイル名を変更するワンライナーを書いた»” class=”more-link”>続きを読む ファイル名を変更するワンライナーを書いた «ファイル名を変更するワンライナーを書いた»

地球の歩き方がKindle Unlimitedで読み放題

海外旅行好きはコロナの影響で旅行できず、やりきれない気持ち担っている人が多いと思うが、一方で朗報がある。

地球の歩き方がセールでKindle Unlimitedにさえはいれば無料で読み放題になった。

地球の歩き方 kindle Unlimited無料

Kindle Unlimitedは10冊が制限なのでスクリーンショットをとるなどしよう

地球の歩き方がKindle Unlimitedで読み放題 «地球の歩き方がKindle Unlimitedで読み放題»” class=”more-link”>続きを読む 地球の歩き方がKindle Unlimitedで読み放題 «地球の歩き方がKindle Unlimitedで読み放題»

MAC Kindleのページめくりを自動でする方法

Ipadでkindleの本を読んでみると、Kindleのページめくりが面倒だなって思うことがある。
そのため、scriptで自動出する方法を調べた。

apple scirptでやると簡単にできる

MAC Kindleのページめくりを自動でする方法 «MAC Kindleのページめくりを自動でする方法»” class=”more-link”>続きを読む MAC Kindleのページめくりを自動でする方法 «MAC Kindleのページめくりを自動でする方法»

Google photo apiでアルバムの作成と作成したアルバムに写真をアップロードする

前回の記事
でgoogle photo apiの認証方法をまとめた。
ここでは認証後にアルバム作成、アルバム取得、アルバムへの写真のアップロード方法のためのプログラムを書いたので以下にまとめる。

Google photo apiでアルバムの作成と作成したアルバムに写真をアップロードする «Google photo apiでアルバムの作成と作成したアルバムに写真をアップロードする»” class=”more-link”>続きを読む Google photo apiでアルバムの作成と作成したアルバムに写真をアップロードする «Google photo apiでアルバムの作成と作成したアルバムに写真をアップロードする»

Google photo api利用にあたってのOauth認証(Python)

写真が無料で容量無制限

Google photoの写真の容量無制限で保存できるということでローカルにある写真は全部Google photoにバックアップを取ろうと思うが、GUIでいちいち実施するのは面倒なので、APIでやろうと思う。

google photo APIはOAuth認証

Google photo APIはOauthということでちょっと手間がかかる。

Google photo api利用にあたってのOauth認証(Python) «Google photo api利用にあたってのOauth認証(Python)»” class=”more-link”>続きを読む Google photo api利用にあたってのOauth認証(Python) «Google photo api利用にあたってのOauth認証(Python)»

動画解析のためにOpenVC(Python)を動かしたがエラーになったのでその解決

pip3 install opencv-python

にてOpenCVをインストールした。さあ使おうかというところで、

import cv2

としたところ以下のようなエラーがでてしまった。私が使っている環境はPython3.7で、OSはMacOS(Mojave)である。

qt.qpa.plugin: Could not find the Qt platform plugin “cocoa” in “”
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

解決のためにいろいろとググったが理由がよくわからず、OpenCVをインストールし直したり、PCを再起動したり、GITHUBの投稿があった、環境変数を設定したりと、いろいろ試したが全然だめで最終的には、OpenCVのプラグインをインストールすることで解決した。

バージョンとコマンドは以下の通り。

pip3 install opencv-contrib-python4.2.0.32
pip3 install opencv-contrib-python-headless4.2.0.32
pip3 install opencv-contrib-python-nonfree4.1.1.1
pip3 install opencv-contrib-python-nonfree-headless4.1.1.1