谷本 心 in せろ部屋

はてなダイアリーから引っ越してきました

SpringBoot

GrafanaスタックによるSpring Bootアプリケーション監視の詳細(その3 Grafana + Tempo編)

Grafanaスタックによるアプリケーション監視の第3回、今回はGrafana + Tempoです。ローカル環境(+ Docker)でGrafanaとTempoを使ってトレースの可視化を行います。 ソースコードなどはすべてGitHubに置いています。 https://github.com/cero-t/spring-store…

GrafanaスタックによるSpring Bootアプリケーション監視の詳細(その2 Grafana + Loki編)

第2回目はGrafana + Lokiです。Lokiと言えば、時間移動して悪さをしたせいでタイムパトロールに捕まるという 大長編ドラえもんの悪役みたいな スピンオフドラマシリーズがありましたが、皆さんご覧になったでしょうか。あ、ディズニープラス限定配信のドラマ…

GrafanaスタックによるSpring Bootアプリケーション監視の詳細(その1 Grafana + Prometheus編)

前回のエントリー では動かし方のみ説明し、GrafanaスタックやMicrometerがどのように動いているのかについて触れていなかったので、これから何度かに分けて説明していきます。 第1回目はGrafana + Prometheusです。 Grafanaスタックの各プロダクトについて …

Spring Boot 3.0アプリケーションをGrafanaスタックで可視化してみた。

Spring Boot 3.0でMicrometer対応が強化されたとか、トレース情報を収集するSpring Cloud SleuthがMicrometerに入ったと聞き、この辺りはしばらく追いかけてなかったので、この機会にまとめて学び直すことにしました。 今回作ったものはGitHubに置いてありま…

Spring Bootのマルチモジュール構成でmvn spring-boot:runできなくて困った話。

こんにちは、絶対にmvn installしたくないマンのcero_tです。しばらくブログはお休みです的なことを言ってたのに、今日も長文を書いてしまいました。 背景 Mavenで(Gradleでも)開発する時にはだいたいマルチモジュール構成にすると思うのですが、Spring Bo…

Spring Boot + MOA その2 - Service Interfaceで呼び出しを明確にするよ?

前回のエントリーでは、Spring Bootで@RestControllerアノテーションを使ったサーバを作り、 RestTemplateでクライアントを作ることで、リモートサービス呼び出しを実装しました。 http://d.hatena.ne.jp/cero-t/20150618/1434645164 しかしこの方法は、クラ…

Spring Boot + MOA その1 - Spring BootでMicroserviceのクライアント/サーバを実装している途中の話

最近のアーキテクチャ界隈の話題と言えば、Microservice。 MSAと略すかMOAと略すか、みたいな議論もあるようですが、 CEROMETAL的にはMOAを一押しせざるを得ない状況です。 MOAMETAL - google画像検索 いいとして。 システムをMicroservice的に設計すると、…

Bootiful SQL Templateという名前にしてMavenリポジトリで公開しました。

年末に作ったSqlTemplateですが、自分の仕事でも使いたいっていうか使ってるので、 ソースコードを多重管理しなくて済むよう、Mavenリポジトリで公開することにしました。 こんな指定で使えます。 <dependencies> <dependency> <groupId>ninja.cero.bootiful-sqltemplate</groupId> <artifactId>bootiful-sqltemplate-c</artifactid></dependency></dependencies>…

SqlTemplateっていうJdbcTemplateのラッパーを作ってみました。

「SQLが書きたいんや!」という想いのもと、 Spring Bootと組み合わせて簡単に使える、 JdbcTemplateのラッパーライブラリを勢いで作ってみました。 GitHubに置いています。 https://github.com/cero-t/sqltemplate JdbcTemplate / NamedParameterJdbcTempla…

MyBatisをやめて、JdbcTemplateを使うわ。

以前のエントリーで、DBアクセスにはMyBatisを選んだと書きました。 http://d.hatena.ne.jp/cero-t/20141212/1418339302 そしたら渋谷JavaのLTで [twitter:@yukung] さんに拾ってもらっちゃいました。 http://www.slideshare.net/yukung/j-ooq-shibuyajava9 …

僕のOptional<>の使い方がカッコワルイ。

昨日、Spring MVCのOptionの使い方がカッコイイという話で、こんなコードを書きました。 @RequestMapping("/") public String hello(@RequestParam("name") Optional<String> name) { if (name.isPresent()) { return "Hello, " + name.get(); } else { return "Hell</string>…

Spring MVCのOptional<>の使い方がカッコイイ。

Spring Bootの1.2.0正式版がリリースされ、中で使っているSpringも4.0から4.1になりました。 SpringMVCも4.1になったわけですが、一つ興味深い変更がありました。 それが@RequestParamのOptional対応です。 SprinMVCでは、クエリ文字列の値をメソッドの引数…

BootのO/RマッパーにMyBatisを使いたい。

DBアクセス層に何を使うかって、本当によく話題になりますよね。 「これで間違いないでしょ」っていう鉄板の選択肢がないから、だと思うわけですが 「SQLを書きたい日本人」な僕としては、消去法的にMyBatisを使っています。 消去法って言うからには、消えた…

Spring Bootの始め方。

実案件でSpringを使って開発しようと思い、 おもむろにSTSを使って「New」-「Spring Project」を選んだところ なぜか、Spring3系しか選べない。 やっぱり最新のSpring4系を使いたいですよね? よん よん よ よ よん♪ ですよね? どうやら「New」-「Spring St…