仕事でlog4j2を使ってログ出力していたときの話ですが、アプリを終了した際にログが出力されずに困っていました。 具体的には以下のような感じです。 //終了時に実行される log.info("end app..."); //これは出力される //色々終了処理 log.info("finish..."…
自分用メモです。 javaでhttpをテストする時、以下のようにモックを使います。 //import import org.mockserver.client.server.MockServerClient; import org.mockserver.junit.MockServerRule; import org.mockserver.model.Header; import org.mockserver.…
スケジューラーのキャンセルについて、自分用のメモです。 参考 The Cancellable interface Cancellable can = getContext().getSystem() .scheduler() .scheduleOnce(Duration.ofSeconds(timeout), hogeActor, "cancel", getContext().getDispatcher(), get…
最近会社でフロー図を書いてたんですが、古の方法(Excel)に嫌気がさしたので他に良いツールがないか探してました。 色々あるんですが、ここではvscodeでフロー図を書いてみます。 準備 まず、vscodeでPlantUMLをインストールします。 (Javaがないと動かない…
個人用メモとして記事にしておきます。 httpのリクエストが500系エラーなどになった場合に、リトライ処理についてまとめます。 google http client Exponential Backoff ExponentialBackOff backoff = new ExponentialBackOff.Builder() .setInitialInterval…
自分用にメモを残しておきます。 参考 coordinated shutdown シャットダウン時に処理を行う CoordinatedShutdown.get(system) .addTask( CoordinatedShutdown.PhaseBeforeServiceUnbind(), "someTaskName", () -> { return akka.pattern.Patterns.ask(someAc…
最近仕事でAkka使ってます。 Akkaのことをよく知らないという方は以下を見てください。 Introduction to Akka 特に初めて触るようなライブラリだと、ドキュメントを読んだり、実際に動かしながら試行錯誤してプログラミングを勧めていくと思うんですが、そこ…
最近、Redisについて調べているのでその結果を自分用にまとめておきます。 Redisの永続化方法については大きく以下2つがある。 RDB方式 AOF方式 それぞれのメリットデメリットは以下である。 RDB方式 特定の間隔毎にスナップショットを作成する方式。 メリッ…
docker上でgradleのJavaアプリビルドを実行する際に少しハマったので記事にしておきます。 エラー内容 $./gradlew build Downloading https://services.gradle.org/distributions/gradle-5.1.1-bin.zip ...................................................…
はじめに 最近Javaのアプリを作っています。 そのアプリ内でログ出力部分を作っていて、log4j2のライブラリを使おうとした際に少しハマったので、記事にしておきます。 エラー内容 gradleで依存関係を追加し、アプリを実行した際以下のようなエラーが発生し…
Braveとは 公式サイトより Why use a browser that treats you like one? Enjoy private, secure and fast browsing with Brave. 書いてあるとおり、安全かつ動作が軽いがウリな ブラウザ です。 また、Basic Attention Tokenと呼ばれるブロックチェーン技術…
syslogにJavaのlog4jでログを送信するためのメモです。 環境 $ cat /etc/os-release NAME="Ubuntu" VERSION="16.04.4 LTS (Xenial Xerus)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 16.04.4 LTS" VERSION_ID="16.04" HOME_URL="http://www.ubuntu.com/…
仕事でJavaを使うことになったので、dockerで環境構築していきます。 手順は以下です。 docker イメージをpullする 簡単な動作確認 簡単なプログラムを作成し、動作確認 dockerイメージをpullする 今回はopenjdkを使用します。 Oracle版は以下を参考にしたら…
今年の抱負を書くやつです。 健康第一 Go言語を使い倒す docker/k8sを使い倒す(特にk8s) 今まで経験のない言語を2つ学ぶ できるだけアニメをみる できるだけ家族と過ごす 今年こそ旅行にいく たくさん写真をとる 勉強会に参加する 週1ブログを継続する 新し…
はじめに 皆さんvscode使っていますか? 私は最近gvimとvscodeを半々くらいで使っています。 もともとgvimを一年くらい使っていたんですが、とある事によりvscodeいいなってなりつつあります。 きっかけ 最近windowsでsamba経由でExcelファイルやパワポの資…
はじめに VS codeでVimしたい場合vscodevim使いますよね。 私もいつもお世話になっています。 vscodevimで大体問題ないのですが、1つだけ気になっていることがあるので書きます。 日本語入力切り替え 私は普段はgvimでコードを書いたりテキスト書いたりして…
この記事はGo3 Advent Calendar 2018の17日目の記事です。 はじめに 今年のAdvent Calendarで何を書くか色々迷ったんですが、直前に出張が入ったりあまり時間がとれなかったので、 作りかけのgo-manというツールについて書きます!(言い訳) 動機と目的 最近…
焦りだす30代。その先に何が見えるのか 最近会社でよく、自分の持っている強み技術を今の会社のビジネスにどう活かすのかを考えろと言われます。 そもそも強み技術ってなんだよってところから始まって、今までの経歴を振り返ってみて主にバックエンドのWebサ…
備忘録です。 mongodbのindexについては以下のマニュアルに記載があります。 (indexの種類やオプションなど) Indexes 全体の概要や気をつけることは以下が分かりやすいです。 月間10億pvを支えるmongo db
個人的に思ったことをメモしておきます。 構造体はできることをまとめたもの。 インターフェースはどんなことができるかをまとめたもの。 イメージとしては、構造体は縦でインターフェースは横串で機能をまとめたもの。 使うときはインターフェースを利用す…
参考 Develop with Docker Engine SDKs and API go docs 試してみる 基本的には、Develop with Docker Engine SDKs and API を参考に進めれば良いです。 今回は以下のようなコードを作成しました。 package main import ( "context" "fmt" "github.com/docke…
というタイトルの良スライドを読んだので、個人用にまとめておきます。 参考 設計のための、問題の捉え方 やっていき コードには How テストコードには What コミットログには Why コードコメントには Why not コメントのwhy notというのは、「なぜ別のやり…
はじめに 最近、オライリーから出ているGo言語による並行処理の本を読んでます。 Go言語の並行処理について様々なことが書かれているので、並行処理について詳しく知りたい方にはおすすめです。 その中で、個人的に知らなかったことをpostします。 orチャネ…
参考 Windows7で右クリックメニューに好きな項目を追加する方法 手順 右メニューに任意のコマンドを追加する レジストリを開く windows + q regeditと入力しenter 参考記事からキーの追加を行う ポイントは、追加したキーの配下に「command」というキーを追…
dockerを使っていてコンテナ内でcronを使いたいことってありますよね。 またcron専用コンテナを作る場合、dockerイメージはなるべく小さくしたいのでalpineを使いたい。 あと、コンテナ内でcronを使う際に忘れがちなのがタイムゾーン設定。 というこで、alpi…
tl;dr 環境変数には気をつけましょう。 きっかけ DockerCon参加報告 (docker buildが30倍以上速くなる話など) この記事を読みまして、docker buildに対する不満がわかりみすぎたので、buildkitを試したくなりました。 基本的には参考サイトと同じようにすれ…
よく忘れるので備忘を兼ねて残しておきます。 MongoDB version 3.4.10 tl;dr TTLに指定するキーは時刻型 データ登録 今回テスト用のデータは以下です。 {host:"test",time:{"$date":"2018-06-09T10:20:05.000Z"}} TTLで設定するデータ型は時刻型でないといけ…
tl;dr docker-compose.ymlに修正を入れず、同じサービスの別名コンテナを作りたい docker-compose up -d frontend_demo みたいな感じ 構成 以下のような一般的な構成をdocker composeで作っています。 フロントエンド バックエンド DB 理由 例えばデモ向けと…
会社のいろんな都合によりPCにいくつかの種類のファイルが置けなくなりました。 但し、Program Files配下はOKなので、そこにgvimやらの設定ファイルを置きました。 しかし、普通に使うと読み取り専用となっているため、vimで持ってきたプラグインファイル等…
最近仕事でWeb APIをGo言語で開発していました。 せっかくなのでドキュメントをgodocで残そうかと考え試行錯誤していたのでここの書き残します。 結論から言うといい方法がまだ見つかっていません。proxy滅びろ~。 やりたいこと docker-compose up したとき…