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.4k
#渋谷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.5k
#JJUG Fork/Join フレームワークを効率的に正しく使いたい
komiya_atsushi
0
550
[#JSUG] SmartNews における container friendly な Spring Boot アプリケーション開発
komiya_atsushi
1
11k
Java のデータ圧縮ライブラリを極める #jjug_ccc #ccc_c7
komiya_atsushi
4
5.2k
#devsumi 自然言語処理・機械学習によるファクトチェック業務の支援
komiya_atsushi
1
4.7k
SmartNews Ads における機械学習の活用とその運用 #mlops
komiya_atsushi
3
20k
GBDT によるクリック率予測を高速化したい #オレシカナイト vol.4
komiya_atsushi
5
1.4k
Maven central repository の artifact をランキングする #渋谷java
komiya_atsushi
0
1.5k
確率的データ構造を Java で扱いたい! #JJUG
komiya_atsushi
6
2.4k
Other Decks in Programming
See All in Programming
高速開発のためのコード整理術
sutetotanuki
1
380
MUSUBIXとは
nahisaho
0
120
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
18
6.2k
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
190
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
530
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
1
230
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
dchart: charts from deck markup
ajstarks
3
990
開発者から情シスまで - 多様なユーザー層に届けるAPI提供戦略 / Postman API Night Okinawa 2026 Winter
tasshi
0
190
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
190
Basic Architectures
denyspoltorak
0
660
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
410
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
The Cult of Friendly URLs
andyhume
79
6.8k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
280
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Building Applications with DynamoDB
mza
96
6.9k
Side Projects
sachag
455
43k
Deep Space Network (abreviated)
tonyrice
0
44
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 Ͱͷઃఆ͜Μͳײ͡
σϞ
͋Γ͕ͱ͏ ͍͟͝·ͨ͠ʂ