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
0
450
Simple Structured Log Format "SSON"
RubyHiroba2013 Lightning Talks
公開版資料なので発表時とは一部スライドが異なっております。
bash0C7
June 02, 2013
Tweet
Share
More Decks by bash0C7
See All by bash0C7
Introduction to ESP32 PicoRuby development
bash0c7
0
130
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
1k
2011年 「ぼっちが懇親会でするべき97のこと」 #97bocchi から積み重ねた【令和7年最新】技術コミュニティ交流戦略2025
bash0c7
1
1.1k
「笑顔」を伝える リモートMTG時代のコミュニケーション戦術
bash0c7
0
110
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
1.6k
20250527 #shinjukurb KaigiEffect LT
bash0c7
2
79
【加筆修正版】ハードワークを支えるフィジカルとメンタルを構築る#rubymusclemixin 活動 #きのこ2025 #きのこ2025_b
bash0c7
0
300
存在感を構築る方法
bash0c7
0
140
introduction
bash0c7
0
88
Other Decks in Technology
See All in Technology
20260120 Amazon VPC のパブリックサブネットを無くしたい!
masaruogura
2
130
GitHub Copilot CLI 現状確認会議
torumakabe
8
2.5k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
CQRS/ESになぜアクターモデルが必要なのか
j5ik2o
0
1.3k
OCI技術資料 : OS管理ハブ 概要
ocise
2
4.1k
純粋なイミュータブルモデルを設計してからイベントソーシングと組み合わせるDeciderの実践方法の紹介 /Introducing Decider Pattern with Event Sourcing
tomohisa
1
1.2k
迷わない!AI×MCP連携のリファレンスアーキテクチャ完全ガイド
cdataj
0
580
困ったCSVファイルの話
mottyzzz
0
320
Kiro Power - Amazon Bedrock AgentCore を学ぶ、もう一つの方法
r3_yamauchi
PRO
0
110
Security Hub と出会ってから 1年半が過ぎました
rch850
0
160
The Engineer with a Three-Year Cycle
e99h2121
0
150
Git Training GitHub
yuhattor
1
200
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
81
Design in an AI World
tapps
0
130
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
44
How to train your dragon (web standard)
notwaldorf
97
6.5k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
99
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
100
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
160
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
190
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
So, you think you're a good person
axbom
PRO
2
1.9k
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
͝ॿྗ͓·ͪ ͍ͯ͠·͢ʂ