Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
#渋谷java - Logback の Appender を実装してみよう
Search
KOMIYA Atsushi
December 13, 2014
Programming
1
2.2k
#渋谷java - Logback の Appender を実装してみよう
第九回 渋谷 Java の飛び入り LT で発表した資料です。
http://shibuya-java.connpass.com/event/9996/
KOMIYA Atsushi
December 13, 2014
Tweet
Share
More Decks by KOMIYA Atsushi
See All by KOMIYA Atsushi
#JJUG Java における乱数生成器とのつき合い方
komiya_atsushi
5
5.2k
#JJUG Fork/Join フレームワークを効率的に正しく使いたい
komiya_atsushi
0
460
[#JSUG] SmartNews における container friendly な Spring Boot アプリケーション開発
komiya_atsushi
1
11k
Java のデータ圧縮ライブラリを極める #jjug_ccc #ccc_c7
komiya_atsushi
4
4.8k
#devsumi 自然言語処理・機械学習によるファクトチェック業務の支援
komiya_atsushi
1
4.4k
SmartNews Ads における機械学習の活用とその運用 #mlops
komiya_atsushi
3
19k
GBDT によるクリック率予測を高速化したい #オレシカナイト vol.4
komiya_atsushi
5
1.3k
Maven central repository の artifact をランキングする #渋谷java
komiya_atsushi
0
1.3k
確率的データ構造を Java で扱いたい! #JJUG
komiya_atsushi
6
2.2k
Other Decks in Programming
See All in Programming
2025.01.17_Sansan × DMM.swift
riofujimon
2
540
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
630
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
300
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
1k
DMMオンラインサロンアプリのSwift化
hayatan
0
180
Swiftコンパイラ超入門+async関数の仕組み
shiz
0
170
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
6k
Amazon Nova Reelの可能性
hideg
0
200
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
はてなにおけるfujiwara-wareの活用やecspressoのCI/CD構成 / Fujiwara Tech Conference 2025
cohalz
3
2.7k
DevinとCursorから学ぶAIエージェントメモリーの設計とMoatの考え方
itarutomy
0
140
歴史と現在から考えるスケーラブルなソフトウェア開発のプラクティス
i10416
0
300
Featured
See All Featured
KATA
mclloyd
29
14k
YesSQL, Process and Tooling at Scale
rocio
170
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Writing Fast Ruby
sferik
628
61k
Scaling GitHub
holman
459
140k
Facilitating Awesome Meetings
lara
51
6.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
19
2.3k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Navigating Team Friction
lara
183
15k
Optimising Largest Contentful Paint
csswizardry
33
3k
Transcript
Logback ͷ Appender Λ ࣮ͯ͠ΈΑ͏ ୈճ #ौ୩java 2014-12-13 at BizReach
@komiya_atsushi
͓·ͩΕ
,0.*:""UTVTIJ !LPNJZB@BUTVTIJ
None
None
ʮੈքதͷྑ࣭ͳใΛඞཁͳਓʹૹΓಧ͚Δʯ ͨΊʹɺौ୩ɾࡩٰொͰ ʑδϟόδϟό͍ͯ͠·͢
None
None
ͦ͏͍͏Θ͚Ͱ
ΈΜͳ͍͖ͩ͢ Logback ͷ Appender Λ࣮ͯ͠Έ·͠ΐ͏
None
—
IUUQRJJUBDPNNBDIJUFNTB⒎DBBDBD
ࣾͷใڞ༗ͷେ Slack ্
αʔόͷҟৗঢ়ଶΛ௨͢Δ ઌવ Slack
Java ΞϓϦέʔγϣϯͷ ࣮ߦதʹҟৗ͕ੜͨ͡ͱ͖ɺ Slack ͰѲ͍ͨ͠ʂ
Logback ܦ༝Ͱ Slack ʹ ϝοηʔδΛϙετ͍ͨ͠ʂ
How to
1. Slack API Λୟͨ͘Ίͷ τʔΫϯΛऔಘ͢Δ
http://qiita.com/punchdrunker/items/db9c824397e3affbb210
͖͞΄Ͳ·Ͱ ͭ·͍ͮͯ·ͨ͠ (>_<)
2. Appender Λ࣮͢Δ
جఈΫϥεΛ͍·͠ΐ͏ • AppenderBase<ILoggingEvent> • ࠓճͪ͜ΒΛͬͯΈͨ • UnsynchronizedAppenderBase <ILoggingEvent>
• ͨͿΜͪ͜ΒΛ͏͖
HTTP(S) ௨৴͢ΔॲཧඇಉظͰ • HTTP(S) ͰϦΫΤετΛ͛Δͷ͕͔͔࣌ؒΔ… • Appender ͰεϨουΛ্ཱͪ͛ͯɺϩάΠϕϯτ ΛΩϡʔܦ༝ͰϝΠϯεϨου͔Βڙڅͯ͠Β͓͏ •
ΈΜͳ͍͖ͩ͢ Producer-Consumer ύλʔϯ • ϩάΠϕϯτ͕ Slack ্Ͱલޙ͢ΔͷΑ͘ͳ͍Α Ͷ
ΞϓϦέʔγϣϯऴྃ࣌ͷҙ • Consumer ͷεϨουσʔϞϯεϨουʹ͠ਏ͍ • Thread#setDaemon() • ϩάΠϕϯτ͕ϩάΒΕͣʹফࣦͯ͠͠·͏ࣄଶආ͚͍ͨ •
AppenderBase#stop() ΛΦʔόʔϥΠυ͢ΕΑͦ͞͏ʁ • ࣮ࡍɺ͜ͷࢠΞϓϦέʔγϣϯऴྃ࣌ʹݺͼग़͞ΕΔΘ ͚Ͱͳ͍…ʁϩάϝοηʔδ͕ Slack ্Ͱલޙ͢ΔͷΑ ͘ͳ͍͠
ΞϓϦέʔγϣϯऴྃ࣌ͷҙ • ํͳ͍ͷͰɺҎԼͷΑ͏ͳϔϧύʔϝιο υΛఏڙ͓ͯ͠Λ͢͜ͱʹ • ࠜຊతͳղܾํ๏ืूத
3. logback.xml ͰઃఆͰ͖Δ ΈΛఏڙ͢Δ
ͱͬͯ؆୯ • Appender ࣮ΫϥεʹϓϩύςΟ (getter/ setter) Λ༻ҙ͢Ε OK • ޙͰίʔυΛ͓ݟͤ͠·͢
logback.xml Ͱͷઃఆ͜Μͳײ͡
σϞ
͋Γ͕ͱ͏ ͍͟͝·ͨ͠ʂ