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
Simple Structured Log Format "SSON"
Search
bash0C7
June 02, 2013
Technology
460
0
Share
Simple Structured Log Format "SSON"
RubyHiroba2013 Lightning Talks
公開版資料なので発表時とは一部スライドが異なっております。
bash0C7
June 02, 2013
More Decks by bash0C7
See All by bash0C7
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
1.2k
Infroduction of Ruby WASM Sound Visualizer Presentation
bash0c7
0
26
Introduction to ESP32 PicoRuby development
bash0c7
0
170
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
1.1k
2011年 「ぼっちが懇親会でするべき97のこと」 #97bocchi から積み重ねた【令和7年最新】技術コミュニティ交流戦略2025
bash0c7
1
1.2k
「笑顔」を伝える リモートMTG時代のコミュニケーション戦術
bash0c7
0
130
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
1.8k
20250527 #shinjukurb KaigiEffect LT
bash0c7
2
100
【加筆修正版】ハードワークを支えるフィジカルとメンタルを構築る#rubymusclemixin 活動 #きのこ2025 #きのこ2025_b
bash0c7
0
350
Other Decks in Technology
See All in Technology
基盤を育てる 外部SaaS連携の運用
gamonges_dresscode
1
120
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
440
エージェントスキルを作って自分のインプットに役立てよう
tsubakimoto_s
0
380
弁護士ドットコム株式会社 エンジニア職向け 会社紹介資料
bengo4com
1
160
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
74k
マルチプロダクトの信頼性を効率良く保っていくために
kworkdev
PRO
0
160
社内エンジニア勉強会の醍醐味と苦しみ/tamadev
nishiuma
0
220
AI駆動1on1〜AIに自分を育ててもらう〜
yoshiakiyasuda
0
120
ARIA Notifyについて
ryokatsuse
1
120
The Journey of Box Building
tagomoris
4
2.9k
こんなアーキテクチャ図はいやだ / Anti-pattern in AWS Architecture Diagrams
naospon
1
450
小説執筆のハーネスエンジニアリング
yoshitetsu
0
710
Featured
See All Featured
The Language of Interfaces
destraynor
162
26k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
230
Ruling the World: When Life Gets Gamed
codingconduct
0
210
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Site-Speed That Sticks
csswizardry
13
1.2k
Git: the NoSQL Database
bkeepers
PRO
432
67k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
520
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.2k
Skip the Path - Find Your Career Trail
mkilby
1
110
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
270
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Transcript
ϗϯτʹγϯϓϧͳߏԽ ϩάϑΥʔϚοτ440/ͷ ͝ఏҊ ౦ژSSONϢʔβձ ͜͠ ͱ͖͋͠ എܠը૾IUUQDPNNPOTOJDPWJEFPKQNBUFSJBMOD
3VCZ)JSPCBελοϑ 3VCZ,BKBൃද࢘ձ ౦ژ3VCZձ࣮ٞߦҕһ 4IJCVZBSC ג 70:"(&(3061ΞδϟΠϧઓུࣨ ג ;VDLTࠂ৴ۀΤϯδχΞ ͜͠ͱ͖͋͠ !CBTI$
IUUQEIBUFOBOFKQCBTI$
IUUQEIBUFOBOFKQCBTI$
IUUQTUXJUUFSDPNZVGV@50.Z5VNCMS
IUUQEIBUFOBOFKQCBTI$UXFFGGZ
ͲΜͳϩάϑΥʔϚοτ ͬͯΔʁ
Combinedɺݻఆɺλϒจࣈ۠ Γɺnullจࣈ۠ΓɺJSON…
IUUQXXXTMJEFTIBSFOFUSFKBTVQPUBSPT
IUUQXXXTMJEFTIBSFOFUSFKBTVQPUBSPT
IUUQXXXTMJEFTIBSFOFUSFKBTVQPUBSPT
SSON
Simple Sexp Object Notation
(("time" 1362020400)("NAME" "KOSHIBA")("AGE" 32)("HOGE" "fuga"))
RubyͰSࣜΛѻ͏
IUUQXXXOBNJLJMBCUVBUBDKQdTBTBEBQSPH SVDIFNFIUNM
IUUQPMEUZQFTVNJCJPSHTIPXQBHF/FOEP
SSONͰॻ͖ͩ͢
require ‘nendo’ core = Nendo::Core.new core.loadInitFile core.evalStr( '(define (sexpToString sexp)
(write-to-string sexp))' ) core.evalStr( '(export-to-ruby sexpToString)' ) list = {hoge: 123}.to_list core.sexpToString(list) #=> "((hoge . 123))"
qVFOUQMVHJO UBJMTTPO IUUQTHJUIVCDPNCBTI$qVFOUQMVHJOUBJMTTPO
in_tailͰJSON ಡΉͷͱಉ͡Α͏ʹ SSONಡΊΔΑ
<source> type tail_sson path /path/to/sson.log tag tail.sson format sson </source>
let(:text) {'(("time" 1362020400)("NAME" "KOSHIBA")("AGE" 32))'} ʻ৭ʑུʼ context do let(:time) {result.first}
it {time.should == 1362020400} end context do let(:hash) {result.last} it do hash.size.should == 3 hash['NAME'].should == 'KOSHIBA' hash['AGE'].should == 32 hash['HOGE'].should == 'fuga' end end
4JNQMF
͓ئ͍͝ͱ
·ͩ·ͩ͡ ·ͬͯͳ͍ʂ
ར༻ɺϥΠϒϥϦ࡞ɺύϑΥʔ ϚϯεଌఆɺͦͷଞΖΖ
ղܾ͖͢ ͢Ͱʹ͋Δ IUUQTUXJUUFSDPNUBHPNPSJTTUBUVT
͝ॿྗ͓·ͪ ͍ͯ͠·͢ʂ