Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Dapr の概念と実装から学ぶ
Observability への招待

6ed12627fec46a135f1bce5d56f3568e?s=47 nwiizo
February 28, 2022

Dapr の概念と実装から学ぶ
Observability への招待

Observability Conference 2022 2022/03/11(Fri)
Dapr の概念と実装から学ぶ
Observability への招待
https://event.cloudnativedays.jp/o11y2022/talks/1353

6ed12627fec46a135f1bce5d56f3568e?s=128

nwiizo

February 28, 2022
Tweet

More Decks by nwiizo

Other Decks in Technology

Transcript

  1. ೥݄೔0CTFSWBCJMJUZ$POGFSFODF!OXJJ[P %BQSͷ֓೦ͱ࣮૷͔ΒֶͿ 
 0CTFSWBCJMJUZ΁ͷট଴

  2. @nwiizo 26ࡀ ݽಠ੒ਓஉੑ 4৞൒ͷ෦԰ʹ͸ݒਨόʔ͕͋Γ ɹேɺى͖ δϜ΁ߦ͖ ຊΛಡΜͰ ࢓ࣄΛͯ͠ ɹ໷ɺ࠶ͼ δϜ΁ߦ͖

    ຊΛಡΜͰ ຾Δ͚ͩ ૐཿͷΑ͏ͳੜ׆Λͯ͠·͢
  3. ΞδΣϯμ w εϦʔγΣΠΫ ޿ࠂ  w %BQSͱ͸ʁ w %BQSͰͷ0CTFSWBCJMJUZ࣮૷

  4. εϦʔγΣΠΫʹ͍ͭͯ

  5. "CPVUεϦʔγΣΠΫ  w 43&ࢧԉٕज़ࢧԉαʔϏε w ٕज़ྗ͕ٻΊΒΕΔྖҬͰ๛෋ͳܦݧΛ࣋ͭ43&͕ू·ͬͨνʔϜʹΑΔ 
 ٕज़ࢧԉαʔϏεͰ͢ɻ w ηΩϡϦςΟ੬ऑੑ਍அαʔϏε

    w ܦݧ๛෋ͳηΩϡϦςΟઐ໳Ո͕وࣾͷ՝୊ʹ߹ΘͤͨηΩϡϦςΟରࡦΛ 
 ࢧԉ͢ΔαʔϏεͰ͢ɻ w Ϋϥ΢υܕ&5-σʔλύΠϓϥΠϯαʔϏε w σʔλϕʔεɾετϨʔδɾΞϓϦέʔγϣϯͳͲɺ͋ΒΏΔσʔλΛ 
 ౷߹ɾ࿈ܞ͢Δ͜ͱͰɺσʔλΛ׆༻ͨ͠Ϗδωεมֵʹߩݙ͠·͢ɻ w ϋΠεΩϧϑϦʔϥϯε঺հαʔϏε w ϓϩͷݱ໾ΤϯδχΞूஂ͕࠷దͳΤϯδχΞΛ঺հ͢Δ 
 ϑϦʔϥϯεΤϯδχΞ঺հαʔϏεͰ͢
  6. "CPVU4SFBLF 43&ࢧԉٕज़ࢧԉ 4SFBLF͸ۚ༥ɾҩྍɾಈը഑৴ɾ"*ɾήʔϜͳͲٕज़ྗ͕ٻΊΒΕΔྖҬͰ๛෋ͳܦݧΛ࣋ͭ43&͕ू·ͬͨνʔϜ ʹΑΔٕज़ࢧԉαʔϏεͰ͢ɻઓུࡦఆ͔Βઃܭɾߏஙɾӡ༻ɺ4BB4ఏڙ·Ͱɺ෯޿͍ྖҬΛαϙʔτ͠·͢ɻ  Sreake ྲྀ SRE Roadmap SRE

    ͷ։࢝ ·ͣ͸খ͘͞ɻ ޮՌ͕࠷େݶʹग़Δͱ͜Ζ ͔Βίπίπͱ࢝ΊΑ͏ SRE νʔϜͷఆٛ ૊৫ʹ͋ͬͨ SRE Λఆٛ͠Α͏ SRE࣮ફ SLIɾSLO ͷઃఆ Toil ࡟ݮ (ࣗಈԽਪਐ) SRE ͷൃలͱܧଓ SREͷจԽ͕ਁಁ͢Δ 
 Error Budget Λݩʹ
 ۀ຿Λίϯτϩʔϧ͍ͯ͘͠
  7. 4SFBLFͷΤϯδχΞʹΑΔٕज़ࢧԉ ٕज़ઓུ͔Βઃܭɺߏஙɺӡ༻·Ͱϫϯετοϓࢧԉ͢Δٕज़ࢧԉαʔϏε  ٕज़ઓུ ίϯαϧςΟϯά ߏங / ࣮૷ ࢧԉ Ξηεϝϯτ

    ʢύϑΥʔϚϯε / ηΩϡϦςΟʣ ӡ༻ࢧԉ γεςϜ ઃܭ .VMUJ$MPVE΍$MPVE/BUJWFͳઌਐతٕज़ٴͼେن໛ͳαʔϏεӡ༻ʹڧΈΛ࣋ͭΤϯδχΞʹΑΔٕज़ࢧԉ ϕϯμʔతͳ໾ׂͰ͸ͳ͘ʮ͓٬༷ͷνʔϜϝϯόʔʯͱ͍͏ཱͪҐஔͰ࠷৽ٕज़ͷఏҊ͔Βӡ༻ࢧԉ·ͰΛτʔλϧͰ
  8. 4SFBLF43&ಋೖఆணԽࢧԉ &OUFSQSJTFΛத৺ʹ༷ʑͳۀछۀքͰ43&Λ࣮ફ͖ͯͨ͠ 
 φϨοδΛ׆͔ͨ͠43&νʔϜͷಋೖٴͼఆணԽΛߦ͍·͢  43&ͷ૊੒43&จԽͷఆணԽͷҝͷࢧԉ ͓٬༷ͷ૊৫ʹద߹ͨ͠43&ͷಋೖΛࢧԉ IUUQTTSFBLFDPNDPOUBDU ͓໰͍߹ͤ

  9. 4FDVSJGZ 4FDVSJGZʢηΩϡϦϑΝΠʣͱ͸ 4FDVSJGZʢηΩϡϦϑΝΠʣ͸ɺ਍அର৅Λొ࿥͢ΔͱΫϥ΢υ্Ͱ੬ऑੑ਍அΛ 
 ࣮ࢪɺ਍அ݁ՌҰཡͱվળํ๏Λ෼͔Γ΍͘͢ఏࣔ͠·͢ 4FDVSJGZ։ൃʹ͓͚Δ૝͍ اۀ͕ɺ։ൃɾϦϦʔεεϐʔυΛམͱͣ͞ɺखܰʹʢඅ༻ɾ࣌ؒΛ͔͚ͣʣࣾ಺ͰηΩϡϦςΟ਍அΛ࣮ࢪ 
 ʢʹ%FW4FD0QTΛ࣮ݱʣ͠ɺαʔϏεΛఏڙ͢Δ͜ͱ͕ɺاۀɾΤϯυϢʔβʔͷརӹΛ࠷େԽ͍ͯ͘͜͠ͱʹͳΔͱ ߟ͍͑ͯ·͢ɻ͜ΕΛՄೳʹ͢Δπʔϧʮ4FDVSJGZʢηΩϡϦϑΝΠʣʯΛ։ൃ

     Beta ൛ ແঈఏڙ࣮ࢪதʂʂ
  10. ࿩͞ͳ͍͜ͱ $MPVE/BUJWFͳ0CTFSWBCJMJUZ %BQSͰͷΞϓϦέʔγϣϯ࣮૷ ৄࡉͳγεςϜΞʔΩςΫνϟ ຊ೔͓࿩͢Δ಺༰ ࿩͢͜ͱ %BQSͱ͸ʁ %BQSͷ֤छػೳ %BQSͷ0CTFSWBCJMJUZʹ͍ͭͯ 

  11. %BQSͱ͸ʁ

  12. %BQSͱ͸ʁ %JTUSJCVUFE"QQMJDBUJPO3VOUJNFͷུ 
 %BQSͷಛ௃ αΠυΧʔ EBQSE ʹΑΓ೚ҙͷ։ൃݴޠ΍ϑϨʔϜϫʔΫͰ։ൃՄೳ ϕετϓϥΫςΟεΛϏϧσΟϯάϒϩοΫͱͯ͠ఏڙ 

  13. %BQSʹ͓͚ΔαΠυΧʔΞʔΩςΫνϟ %BQSͷଟ༷ੑ %BQSαΠυΧʔʹΑΓɺ)551H31$Ͱͷ௨ ৴͕ՄೳͰ͋Ε͹։ൃ͕Ͱ͖Δ ެࣜ4%,΋ఏڙ͞Ε͍ͯΔ +BWBTEL 1ZUIPOTEL %PUOFUTEL +TTEL (PTEL

    $QQTEL 1)14%, 8*13VTUTEL 
  14. %BQSͱ͸ʁ %BQSͷ໨ࢦ͢ͱ͜Ζ ͋ΒΏΔݴޠ΍ϑϨʔϜϫʔΫΛ࢖༻ͯ͠ɺ 
 ෼ࢄΞϓϦέʔγϣϯΛهड़͢Δ͜ͱ͕Մೳ ϕετϓϥΫςΟεͷϏϧσΟϯάϒϩοΫΛఏڙ͢Δ͜ͱͰɺϚΠΫϩαʔ Ϗε 
 ΞϓϦέʔγϣϯͷߏஙͰ։ൃऀ͕௚໘͢Δࠔ೉ͳ໰୊Λղܾ ίϛϡχςΟओಋͰɺΦʔϓϯ͔ͭϕϯμʔχϡʔτϥϧͰ͋Δ͜ͱ

    ৽ͨͳߩݙऀͷ֫ಘ Φʔϓϯ"1*ʹΑΔҰ؏ੑͱϙʔλϏϦςΟͷఏڙ Ϋϥ΢υ΍ΤοδͳͲɺϓϥοτϑΥʔϜʹͱΒΘΕͳ͍ ϕϯμϩοΫΠϯ͢Δ͜ͱͳ͘ɺ֦ுੑͱϓϥάΠϯՄೳͳίϯϙʔωϯτΛ ఏڙ͢Δ ߴ͍ύϑΥʔϚϯεͱܰྔԽʹΑΓɺ*P5΍ΤοδͷγφϦΦΛՄೳʹ͢Δ ࣮ߦ࣌ʹґଘ͢Δ͜ͱͳ͘ɺطଘͷίʔυ͔ΒΠϯΫϦϝϯλϧʹ࠾༻Ͱ͖Δ  IUUQTEPDTEBQSJPDPOUSJCVUJOHSPBENBQ
  15. ෼ࢄγεςϜʹ͓͚ΔσβΠϯύλʔϯͷҰͭ αΠυΧʔ͸ɺΞϓϦέʔγϣϯίϯςφΛ֦ுͯ͠ɺػೳΛ௥ Ճ͠·͢ɻαΠυΧʔΛ࢖༻ͯ͠طଘͷϨΨγʔΞϓϦέʔγϣ ϯͳͲʹ΋ద༻Ͱ͖·͢ɻಉ༷ʹɺ͜ΕΒΛ࢖༻ͯ͠ɺҰൠతͳ ػೳͷ࣮૷Λඪ४Խ͢ΔίϯςφΛ࡞੒͢Δ͜ͱ΋Ͱ͖·͢ɻ  αΠυΧʔύλʔϯͱ͸ʁ

  16. ,VCFSOFUFT্Ͱಈ࡞͢Δ%BQS EBQSPQFSBUPS %BQSͷίϯϙʔωϯτΞοϓσʔτͱ ,VCFSOFUFTαʔϏεΤϯυϙΠϯτΛ؅ཧ EBQSTJEFDBSJOKFDUPS %BQSͷαΠυΧʔΛ஫ೖ͠·͢ EBQQMBDFNFOU ΞΫλʔΠϯελϯεΛϙουʹϚοϓ͢Δ 
 ϚοϐϯάςʔϒϧΛ࡞੒͠·͢

    EBQSTFOUSZ αʔϏεؒͷN5-4Λ؅ཧ͠ɺೝূہͱͯ͠ػೳ  IUUQTEPDTEBQSJPPQFSBUJPOTIPTUJOHLVCFSOFUFTLVCFSOFUFTPWFSWJFX IUUQTHJUIVCDPNLVCFSOFUFTTJHTDPOUSPMMFSSVOUJNF
  17. ϏϧσΟϯάϒϩοΫ ϏϧσΟϯάϒϩοΫ Ұൠతʹ͸γεςϜΞʔΩςΫνϟΛߏ੒͢Δཁૉ %BQSͰ͸ར༻Մೳͳػೳ܈ͷ͜ͱΛࢦ͢৔߹͕ଟ͍ ϚΠΫϩαʔϏεͷϕετϓϥΫςΟεΛମܥԽͯ͠ػೳͱ࣮ͯ͠૷͞ΕͯΔ αΠυΧʔͷ)551H31$Λݺͼग़ͯ͜͠ΕΒΛར༻͢Δ͜ͱ͕Ͱ͖Δ ίϯϙʔωϯτ ϏϧσΟϯάϒϩοΫͰར༻͞ΕΔػೳϞδϡʔϧ ҰͭҎ্ͷෳ਺ͷίϯϙʔωϯτΛ࢖༻Մೳ *'͕༻ҙ͞Ε͍ͯΔͷͰ͜ΕΒʹ߹ΘͤͯػೳΛ࣮૷

    ౷Ұ͞ΕͨΤϯυϙΠϯτ͕ར༻Ͱ͖ΔͷͰΞϓϦଆʹෳࡶੑΛ๊͑ࠐ·ͳ͍  IUUQTHJUIVCDPNEBQSDPNQPOFOUTDPOUSJC IUUQTEPDTEBQSJPDPODFQUTCVJMEJOHCMPDLTDPODFQU
  18. ϏϧσΟϯάϒϩοΫ ೥݄ͰͭͷϏϧσΟϯάϒϩοΫ͕༻ҙ͞Ε͍ͯΔ 

  19. %BQSͷ֤छػೳ

  20. ϏϧσΟϯάϒϩοΫ αʔϏεؒݺͼग़͠ ঢ়ଶ؅ཧ 1VC4VC όΠϯμʔ ΞΫλʔ Մ؍ଌੑ γʔΫϨοτͷ؅ཧ ߏ੒ઃఆ 

    IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLT ػೳ͕·ͩগͳ͍ͷͰ͜Ε͚ͩͰ 
 શͯΧόʔ͢Δͷ͸·ͩ೉͍͠ͱࢥ͏
  21. αʔϏεؒͰͷݺͼग़͠ w αʔϏεؒͰϝιουΛ௚઀ɺ҆શʹݺͼग़࣮ͯ͠ߦ͠·͢  ࢿྉ༻ެࣜυΩϡϝϯτ͕࠷ߴͳͷͰಡΜͰ SFTQ FSSDMJFOU*OWPLF.FUIPE DUY BQQJE NFUIPEOBNF

    QPTU
  22. ঢ়ଶ؅ཧ w ΞϓϦέʔγϣϯ͕ར༻͢ΔσʔλΛΩʔͱ஋ͷϖΞͰ؅ཧ  ࢿྉ༻ެࣜυΩϡϝϯτ͕࠷ߴͳͷͰಡΜͰ IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTTUBUFNBOBHFNFOUTUBUFNBOBHFNFOUPWFSWJFX DMJFOU4BWF#VML4UBUF DUY TUPSF JUFN@EBUB

    JUFN@EBUB JUFN@EBUB  DMJFOU(FU#VML4UBUF DUY TUPSF LFZT OJM 
  23. ύϒϦογϡ͓ΑͼαϒεΫϥΠϒ 1VC4VCϝοηʔδϯάϞσϧΛఏڙ  IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTQVCTVCQVCTVCPWFSWJFX ࢿྉ༻ެࣜυΩϡϝϯτ͕࠷ߴͳͷͰಡΜͰ DMJFOU1VCMJTI&WFOU DUY DPNQPOFOUOBNF UPQJDOBNF EBUB

     T"EE5PQJD&WFOU)BOEMFS EFGBVMU4VCTDSJQUJPO FWFOU)BOEMFS
  24. όΠϯμʔ ֎෦αʔϏεͱͷ࿈ܞΛઃఆ͢Δ͜ͱ͕Ͱ͖Δ  IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTCJOEJOHT ࢿྉ༻ެࣜυΩϡϝϯτ͕࠷ߴͳͷͰಡΜͰ EBQS*OWPLF#JOEJOH3FRVFTU\/BNFCJOEJOHOBNF 0QFSBUJPOPQFSBUJPOOBNF^ DMJFOU*OWPLF0VUQVU#JOEJOH DUY JO

  25. ΞΫλʔ ܭࢉ୯ҐͷॲཧΛฒྻ࣮ߦͤ͞Δػೳ  IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTBDUPSTBDUPSTPWFSWJFX ࢿྉ༻ެࣜυΩϡϝϯτ͕࠷ߴͳͷͰಡΜͰ DMJFOU3FHJTUFS"DUPS3FNJOEFS DUYDPOUFYU$POUFYU JO 3FHJTUFS"DUPS3FNJOEFS3FRVFTU 

    DMJFOU3FHJTUFS"DUPS5JNFS DUYDPOUFYU$POUFYU JO 3FHJTUFS"DUPS5JNFS3FRVFTU
  26. Մ؍ଌੑ Մ؍ଌੑͷγεςϜʹ͍ͭͯ 5SBDJOH͸ࣗಈ͔खಈ͔બ୒ αʔϏεؒͰτϨʔείϯςΩετΛ ࣗಈͰੜ੒ͯ͠఻೻ τϨʔείϯςΩετΛੜ੒͠ɺτϨ ʔείϯςΩετΛผͷαʔϏεʹ఻ ೻͕ඞཁ -PHHJOH͸ͦΕͧΕ .FUSJD͸αΠυΧʔ͔ΒऔಘՄೳ

     IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTPCTFSWBCJMJUZUSBDJOHPWFSWJFX ࢿྉ༻ެࣜυΩϡϝϯτ͕࠷ߴͳͷͰಡΜͰ
  27. γʔΫϨοτͷ؅ཧ ֎෦γεςϜ΁ΞΫηε͢ΔͨΊͷ,FZ΍5PLFOΛ؅ཧ ֎෦࿈ܞ΋͋Γ  IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTTFDSFUTTFDSFUTPWFSWJFX ࢿྉ༻ެࣜυΩϡϝϯτ͕࠷ߴͳͷͰಡΜͰ DMJFOU(FU4FDSFU DUY TUPSFOBNF TFDSFUOBNF

    PQU
  28. ߏ੒ઃఆ ઀ଓ৘ใ΍ΤϯυϙΠϯτͳͲΛ؅ཧ  IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTDPO fi HVSBUJPODPO fi HVSBUJPOBQJPWFSWJFX ࢿྉ༻ެࣜυΩϡϝϯτ͕࠷ߴͳͷͰಡΜͰ DMJFOU(FU$PO

    fi HVSBUJPO*UFN DUY TUPSF/BNF LFZ PQU EBQSHPTEL͸ରԠத
  29. %BQSͷ0CTFSWBCJMJUZʹ͍ͭͯ

  30. 0CTFSWBCJMJUZͷ͓͞Β͍ 5FMFNFUSZ 0CTFSWBCJMJUZΛ࣮ݱ͢ΔπʔϧʹٻΊΒΕΔཁૉ .FUSJDT αʔϏεΛఆྔతʹ਺஋ͱͯ͠ܭଌ -PHHJOH ίϯϙʔωϯτʹର͢ΔΠϕϯτΛه࿥ 5SBDJOH ϦΫΤετʹର͢ΔΠϕϯτΛه࿥ 

    IUUQTEPDTEBQSJPDPODFQUTPCTFSWBCJMJUZDPODFQU
  31. %BQSͷ0CTFSWBCJMJUZʹ͍ͭͯ  .FUSJDT -PHHJOH 5SBDJOH .FUSJDT -PHHJOH 5SBDJOH %BQSͷ֤ཁૉʹ͍ͭͯͷ঺հ ,VCFSOFUFTҎ֎ͷج൫Ͱͷݕূٴͼௐࠪ͸࣮ࢪ͍ͯ͠ͳ͍

  32. %BQSͷ0CTFSWBCJMJUZͷಛ௃ʹ͍ͭͯ %BQSΛར༻͢Δ͜ͱͰ0CTFSWBCJMJUZͷඪ४Խ αΠυΧʔσβΠϯύλʔϯʹ࣮ͯ૷ %BQS͸αΠυΧʔͷػೳΛར༻ͯ͠ 
 0CTFSWBCJMJUZͷػೳ΋֦ு͓ΑͼɺػೳΛ௥Ճ 
 %BQS͸ΞϓϦʹରͯ͠αΠυΧʔΛ࢖༻ͯ͠ 
 0CTFSWBCJMJUZͷҰൠԽඪ४Խ

    
  33. %BQSͷ0CTFSWBCJMJUZͷઃఆʹ͍ͭͯ ,VCFSOFUFT4JEFDBSͷ%BQSͷߏ੒ͱ 
 ΞϓϦέʔγϣϯͷΦϓγϣϯΛઃఆ͢Δ͜ͱ͕ 
 BOOPUBUJPOTΛར༻ͯ͠Ͱ͖·͢ɻ ·ͨɺ֤छͷઃఆ͸$3%ʹ࣮ͯߦ͞Ε͍ͯͯ 
 ZBNMʹͯઃఆՄೳ 


     IUUQTEPDTEBQSJPPQFSBUJPOTDPO fi HVSBUJPODPO fi HVSBUJPOPWFSWJFX IUUQTHJUIVCDPNEBQSEBQSUSFFNBTUFSDIBSUTEBQSDSET
  34. %BQSͷ.FUSJDT

  35. %BQSͷ.FUSJDTʹ͍ͭͯ %BQSͷಈ࡞ΛΑΓਂ͘ཧղ͢Δҝʹ.FUSJDTΛར༻͢Δ͜ͱ͕Ͱ͖Δ 
 %BQSαΠυΧʔϓϩΩγͰ͸.FUSJDT͕σϑΥϧτͰ͸ແޮ 
 EBQSTJEFDBSJOKFDUPS͕ઃఆΛಡΈऔΓσϓϩΠͯ͘͠ΕΔ 
  BOOPUBUJPOT EBQSJPFOBCMFNFUSJDTUSVF

    EBQSJPNFUSJDTQPSU "QQͷ.FUSJDT͸ ࣗલͷ࣮૷͕ඞཁ 
 ͜͜͸࿩͞ͳ͍ IUUQTEPDTEBQSJPPQFSBUJPOTNPOJUPSJOHNFUSJDTHSBGBOB
  36. %BQSNFUSJDT %BQSͷ.FUSJDT͸σϑΥϧτͰԼهͷΑ͏ͳ΋ͷΛऔಘ͠·͢ %BQSϝτϦοΫ໊͸EBQS@͔Β࢝·Γ·͢ %BQS$PNNPONFUSJDT %BQS0QFSBUPSNFUSJDT %BQS4JEFDBS*OKFDUPSNFUSJDT %BQS1MBDFNFOUNFUSJDT %BQS4FOUSZNFUSJDT %BQS3VOUJNFNFUSJDT 

    IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSEPDTEFWFMPQNFOUEBQSNFUSJDTNE
  37. %BQS$PNNPONFUSJDT ԼهͷΑ͏ͳϥΠϒϥϦʔΛར༻͍ͯ͠Δ QSPDFTT@  QSPNFUIFVTQSPDFTTDPMMFDUPS IUUQTHJUIVCDPNQSPNFUIFVTDMJFOU@HPMBOHCMPCNBJOQSPNFUIFVTQSPDFTT@DPMMFDUPSHP HP@  QSPNFUIFVTHPDPMMFDUPS IUUQTHJUIVCDPNQSPNFUIFVTDMJFOU@HPMBOHCMPCNBJOQSPNFUIFVTHP@DPMMFDUPSHP

    
  38. %BQS0QFSBUPSNFUSJDT EBQS@PQFSBUPS@TFSWJDF@DSFBUFE@UPUBMɿ ࡞੒͞ΕͨEBQSαʔϏεͷ૯਺ɻ EBQS@PQFSBUPS@TFSWJDF@EFMFUFE@UPUBMɿ ࡟আ͞ΕͨEBQSαʔϏεͷ૯਺ɻ EBQS@PQFSBUPS@TFSWJDF@VQEBUFE@UPUBMɿ ߋ৽͞ΕͨEBQSαʔϏεͷ૯਺ɻ  IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHPQFSBUPSNPOJUPSJOHNFUSJDTHP

  39. %BQS4JEFDBS*OKFDUPSNFUSJDT EBQS@JOKFDUPS@TJEFDBS@JOKFDUJPOSFRVFTUT@UPUBMɿ αΠυΧʔΠϯδΣΫγϣϯϦΫΤετͷ૯਺ɻ EBQS@JOKFDUPS@TJEFDBS@JOKFDUJPOTVDDFTTFE@UPUBMɿ ੒ޭͨ͠αΠυΧʔΠϯδΣΫγϣϯͷ૯਺ɻ EBQS@JOKFDUPS@TJEFDBS@JOKFDUJPOGBJMFE@UPUBMɿ ࣦഊͨ͠αΠυΧʔΠϯδΣΫγϣϯͷ૯਺ɻ  IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHJOKFDUPSNPOJUPSJOHNFUSJDTHP

  40. %BQS1MBDFNFOUNFUSJDT BDUPSपΓ EBQS@QMBDFNFOU@SVOUJNFT@UPUBMɿ ϓϨʔεϝϯταʔϏεʹใࠂ͞Εͨϗετͷ૯਺ɻ EBQS@QMBDFNFOU@BDUPSSVOUJNFT@UPUBMɿ ϓϨʔεϝϯταʔϏεʹใࠂ͞ΕͨΞΫλʔϥϯλΠϜͷ૯਺ɻ  IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHQMBDFNFOUNPOJUPSJOHNFUSJDTHP

  41. %BQS4FOUSZNFUSJDT EBQS@TFOUSZ@DFSU@TJHO@SFRVFTU@SFDFJWFE@UPUBMɿ ड৴ͨ͠$43ͷ਺ɻ EBQS@TFOUSZ@DFSU@TJHO@TVDDFTT@UPUBMɿ ੒ޭͨ͠ূ໌ॻͷൃߦͷ਺ɻ EBQS@TFOUSZ@DFSU@TJHO@GBJMVSF@UPUBMɿ $43ʹॺ໊͢Δͱ͖ʹൃੜͨ͠Τϥʔͷ਺ɻ EBQS@TFOUSZ@TFSWFSDFSU@JTTVF@GBJMFE@UPUBMɿ αʔόʔͷ5-4ূ໌ॻͷൃߦʹࣦഊͨ͠ճ਺ɻ EBQS@TFOUSZ@JTTVFSDFSU@DIBOHFE@UPUBMɿ

    ൃߦऀূ໌ॻ·ͨ͸Ωʔ͕มߋ͞Εͨ৔߹ͷൃߦऀূ໌ॻͷߋ৽ճ਺ EBQS@TFOUSZ@JTTVFSDFSU@FYQJSZ@UJNFTUBNQɿ ൃߦऀϧʔτূ໌ॻͷ༗ޮظݶ͕੾ΕΔ6/*9λΠϜελϯϓʢඵ୯Ґʣɻ  IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHTFOUSZNPOJUPSJOHNFUSJDTHP
  42. %BQS3VOUJNFNFUSJDTc$PNQPOFOU $PNQPOFOU EBQS@SVOUJNF@DPNQPOFOU@MPBEFEɿ ਖ਼ৗʹϩʔυ͞Εͨίϯϙʔωϯτͷ਺ EBQS@SVOUJNF@DPNQPOFOU@JOJU@UPUBMɿ ॳظԽ͞Εͨίϯϙʔωϯτͷ਺ EBQS@SVOUJNF@DPNQPOFOU@JOJU@GBJM@UPUBMɿ ίϯϙʔωϯτͷॳظԽͷࣦഊͷ਺  IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHEJBHOPTUJDTTFSWJDF@NPOJUPSJOHHP

  43. %BQS3VOUJNFNFUSJDTc4FDVSJUZ 4FDVSJUZ EBQS@SVOUJNF@NUMT@JOJU@UPUBMɿ ੒ޭͨ͠N5-4ΦʔηϯςΟέʔλʔͷॳظԽͷ਺ɻ EBQS@SVOUJNF@NUMT@JOJU@GBJM@UPUBMɿ N5-4ΦʔηϯςΟέʔλʔͷॳظԽͷࣦഊͷ਺ EBQS@SVOUJNF@NUMT@XPSLMPBE@DFSU@SPUBUFE@UPUBMɿ ੒ޭͨ͠ϫʔΫϩʔυূ໌ॻϩʔςʔγϣϯͷ਺ EBQS@SVOUJNF@NUMT@XPSLMPBE@DFSU@SPUBUFE@GBJM@UPUBMɿ ࣦഊͨ͠ϫʔΫϩʔυূ໌ॻͷϩʔςʔγϣϯͷ਺

     IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHEJBHOPTUJDTTFSWJDF@NPOJUPSJOHHP
  44. %BQS3VOUJNFNFUSJDTc"DUPST "DUPST EBQS@SVOUJNF@BDUPS@TUBUVT@SFQPSU@UPUBMɿ ϓϨʔεϝϯταʔϏε΁ͷ੒ޭͨ͠εςʔλεϨϙʔτͷ਺ɻ EBQS@SVOUJNF@BDUPS@TUBUVT@SFQPSU@GBJM@UPUBMɿ ϓϨʔεϝϯταʔϏε΁ͷࣦഊͨ͠εςʔλεϨϙʔτͷ਺ EBQS@SVOUJNF@BDUPS@UBCMF@PQFSBUJPO@SFDW@UPUBMɿड৴ͨ͠ΞΫλʔ഑ஔςʔϒϧૢ࡞ͷ਺ɻ EBQS@SVOUJNF@BDUPS@SFCMBOBDFE@UPUBMɿΞΫλʔͷϦόϥϯεཁٻͷ਺ɻ EBQS@SVOUJNF@BDUPS@BDUJWBUF@UPUBMɿΞΫλʔͷΞΫςΟϒԽͷ਺ɻ EBQS@SVOUJNF@BDUPS@BDUJWBUF@GBJMFE@UPUBMɿΞΫλʔͷΞΫςΟϒԽͷࣦഊͷ਺ɻ

    EBQS@SVOUJNF@BDUPS@EFBDUJWBUF@UPUBMɿ੒ޭͨ͠ΞΫλʔͷඇΞΫςΟϒԽͷ਺ɻ EBQS@SVOUJNF@BDUPS@EFBDUJWBUF@GBJMFE@UPUBMɿࣦഊͨ͠ΞΫλʔͷඇΞΫςΟϒԽͷ਺ɻ  IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHEJBHOPTUJDTTFSWJDF@NPOJUPSJOHHP
  45. %BQS3VOUJNFNFUSJDTcH31$NFUSJDT H31$4FSWFSNFUSJDT EBQS@HSQD@JP@TFSWFS@SFDFJWFE@CZUFT@QFS@SQD@ ɿ ϝιου͝ͱͷ31$͝ͱͷड৴όΠτ਺ͷ෼෍ɻ EBQS@HSQD@JP@TFSWFS@TFOU@CZUFT@QFS@SQD@ ɿ ϝιου͝ͱͷ31$͝ͱͷ߹ܭૹ৴όΠτ਺ͷ෼෍ɻ EBQS@HSQD@JP@TFSWFS@TFSWFS@MBUFODZ@ ɿ

    αʔόʔͷϨΠςϯγʔͷϛϦඵ୯Ґͷ෼෍ʢϝιουผʣɻ EBQS@HSQD@JP@TFSWFS@DPNQMFUFE@SQDTɿ ϝιου͓Αͼεςʔλε͝ͱͷ31$ͷ਺ɻ  IUUQTHJUIVCDPNDFOTVTJOTUSVNFOUBUJPOPQFODFOTVTHPCMPCNBTUFSQMVHJOPDHSQDTFSWFS@NFUSJDTHP IUUQTHJUIVCDPNDFOTVTJOTUSVNFOUBUJPOPQFODFOTVTHPCMPCNBTUFSQMVHJOPDHSQDDMJFOU@NFUSJDTHP
  46. %BQS3VOUJNFNFUSJDTcH31$NFUSJDT H31$$MJFOUNFUSJDT EBQS@HSQD@JP@DMJFOU@TFOU@CZUFT@QFS@SQDɿ ϝιου͝ͱͷ31$͝ͱʹૹ৴͞ΕΔόΠτͷ෼෍ɻ EBQS@HSQD@JP@DMJFOU@SFDFJWFE@CZUFT@QFS@SQD@ ɿ ϝιου͝ͱͷ31$͝ͱʹड৴ͨ͠όΠτͷ෼෍ɻ EBQS@HSQD@JP@DMJFOU@DPNQMFUFE@SQDT@ ɿ ϝιου͓Αͼεςʔλε͝ͱͷ31$ͷ਺ɻ

     IUUQTHJUIVCDPNDFOTVTJOTUSVNFOUBUJPOPQFODFOTVTHPCMPCNBTUFSQMVHJOPDHSQDTFSWFS@NFUSJDTHP IUUQTHJUIVCDPNDFOTVTJOTUSVNFOUBUJPOPQFODFOTVTHPCMPCNBTUFSQMVHJOPDHSQDDMJFOU@NFUSJDTHP
  47. %BQS3VOUJNFNFUSJDTc)551NFUSJDT 4FSWFS.FUSJDT EBQS@IUUQ@TFSWFS@SFRVFTU@DPVOUɿ αʔόʔͰ։࢝͞Εͨ)551ϦΫΤετͷ਺ EBQS@IUUQ@TFSWFS@SFRVFTU@CZUFTɿ αʔόʔͰ$POUFOU-FOHUIʢඇѹॖʣͱͯ͠ઃఆ͞Ε͍ͯΔ৔߹ͷ)551ϦΫΤετͷຊจαΠζ EBQS@IUUQ@TFSWFS@SFTQPOTF@CZUFTɿ αʔόʔͷ)551Ԡ౴ຊจαΠζʢඇѹॖʣɻ EBQS@IUUQ@TFSWFS@MBUFODZɿ αʔόʔͰͷ)551ϦΫΤετͷΤϯυπʔΤϯυͷϨΠςϯγɻ

     IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHEJBHOPTUJDTIUUQ@NPOJUPSJOHHP
  48. %BQSͷNFUSJDT EBQSEBQSQLHNFUSJDT EBQSEBQSQLHEJBHOPTUJDTʹ 
 EBQSEBQSQLH NPOJUPSJOHNFUSJDTHPͳͲ.FUSJDTͷ࣮૷ PQFODFOTVT͔ΒPQFO5FMFNFUSZ΁ͷҠߦ͸ܭըతʹߦΘΕ͍ͯΔ  IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHNFUSJDTFYQPSUFSHP

  49. %BQSͷ-PHHJOH

  50. %BQSͷ-PHHJOHʹ͍ͭͯ %BQSͰ͸ɺ͢΂ͯͷ%BQSϓϩηεʢϥϯλΠϜ͓ΑͼγεςϜαʔϏεʣ͸ 
 ίϯιʔϧʹॻ͖ࠐΈ·͢ɻϓϨʔϯςΩετ·ͨ͸+40/ܗࣜͷ͍ͣΕ͔ͱ ͯ͠TUEPVUʹߏ଄ԽϩάΛੜ੒͠·͢ɻ  "QQͷ-PHHJOH͸ ࣗલͷ࣮૷͕ඞཁ 
 ͜͜͸࿩͞ͳ͍

    IUUQTHJUIVCDPNEBQSLJUUSFFNBJOMPHHFS %BQSEͷ-PHHJOH͸ σϑΥϧτͰ༗ޮ 1MBOF KTPOͷબ୒Մೳ BOOPUBUJPOT EBQSJPMPHBTKTPOlUSVF
  51. %BQSMPHHJOHc-PHTDIFNB %BQSE͸ΞϓϦଆͰผ్ੜ੒͕ඞཁͱͳΔ 
 -PHDPMMFDUPST΍4FBSDIFOHJOFT͸೚ҙͷ΋ͷΛ࢖༻Մೳ EBQSLJUͷMPHHFS഑Լʹ͋Δ-PHHFSͷ 
 ઃఆΛར༻͍ͯ͠Δ  IUUQTEPDTEBQSJPPQFSBUJPOTNPOJUPSJOHMPHHJOHMPHTMPHTDIFNB

  52. %BQSMPHHJOHc-PHTDIFNB %BQSʹ΋MPHMFWFM͕͋Δ  IUUQTEPDTEBQSJPPQFSBUJPOTUSPVCMFTIPPUJOHMPHTUSPVCMFTIPPUJOH 1.error 2.warn 3.info 4.debug %BQSE΋֤छΦϖϥʔλʔ΋ 


    ͜ͷϩάϨϕϧͰϩάͷग़ྗΛ 
 ߦ͏ͷͰઃఆ͕ඞཁ
  53. %BQSͷ5SBDJOH

  54. %BQSͷ5SBDJOHʹ͍ͭͯ %BQSͷτϨʔεػೳΛ࢖༻ͯ͠ɺ 
 ෼ࢄΞϓϦέʔγϣϯͷՄࢹԽͰ͖Δ %BQS͸ɺ)551H31$ϛυϧ΢ΣΞ Λ%BQSαΠυΧʔʹ௥Ճ͠·͢ɻϛυ ϧ΢ΣΞ͸ɺ͢΂ͯͷ%BQS͓ΑͼΞϓ ϦέʔγϣϯτϥϑΟοΫΛΠϯλʔη ϓτ͠ɺ෼ࢄτϥϯβΫγϣϯΛτϨʔ ε͢ΔͨΊʹ૬ؔ*%Λࣗಈతʹੜ੒͠·

    ͢ɻ  IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTPCTFSWBCJMJUZUSBDJOHPWFSWJFX
  55. %BQSͷ5SBDJOHʹ͍ͭͯ ϝϦοτ ϝτϦΫεಉ༷ίʔυͷมߋ͕ෆཁ ϚΠΫϩαʔϏεؒͰҰ؏ͨ͠ڍಈΛ͢ΔͷͰ 
 ֤ݴޠͷڍಈ΍ϥΠϒϥϦʹґଘ͠ͳ͍ ;JQLJO"1*ͱ0QFO5FMFNFUSZ$PMMFDUPSΛ׆༻ ෳ਺ͷΤΫεϙʔλʔΛಉ࣌ʹఆٛͯ͠༗ޮʹ͢Δ ͜ͱ͕Ͱ͖·͢ɻ 


     IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTPCTFSWBCJMJUZUSBDJOHPWFSWJFX
  56. %BQSͷ5SBDJOHʹ͍ͭͯ %BQSͷ5SBDJOHʹؔͯ͠͸ 5SBDJOH5PPM͕ଘࡏ͢Δͱςϯγϣϯ্͕͕Δ 
 ݁ہ͸ɺϩά΍ઃఆϑΝΠϧΛಡΉ͜ͱͷํ͕ଟ͍ ΋ͬͱแׅతʹݟͨΓ܏޲ΛݟΔࡍʹඞཁͦ͏ʜ  "QQͷ5SBDJOH͸ ࣗલͷ࣮૷ͱ 


    %BQSEͱͷڠۀ͕͋Δ 
 ͜͜͸࿩͞ͳ͍ BOOPUBUJPOT EBQSJPDPO fi Hl[JQLJOz IUUQTHJUIVCDPNEBQSRVJDLTUBSUTCMPCNBTUFSPCTFSWBCJMJUZ3&"%.&NE [JQLJOͷઃఆ
  57. %BQSͷ5SBDJOHʹ͍ͭͯ %BQSͷ5SBDJOHʹؔͯ͠͸ 5SBDJOH$PMMFDUPSʹ͸0QFO5FMFNFUSZΛར༻͢Δ͜ͱ͕Ͱ͖Δɻ 5SBDJOH#BDLFOEʹ͸/FX3FMJD +BFHFS ;JQLJOͳͲͷબ୒ࢶ͕ଟ͍ 0QFO5FMFNFUSZΛར༻͍ͯ͠Δͱඇৗʹָʹ࿈ܞͰ͖Δ  IUUQTEPDTEBQSJPPQFSBUJPOTNPOJUPSJOHUSBDJOH IUUQTHJUIVCDPNOXJJ[PXPSLTQBDF@CMPCNBJOEBQSPQFOUFMFNFUSZDPMMFDUPSPQFOUFMFNFUSZDPMMFDUPSHFOFSJDZBNM

  58. %BQSͷ5SBDJOHʹ͍ͭͯ  %BQSE͕USBDF*EΛੜ੒ͯ͠ͷ 
 ௨৴Λ௥͍ͬͯ͘͜ͱͰ࣮ݱ "11ଆͰ΋ར༻ՄೳͰ͸͋Δ͕ 8$ͷར༻͕ඞཁ [JQLJOͷઃఆ < <

    \ USBDF*EDECFECCED  JEEFB  LJOE$-*&/5  OBNFDBMMMPDBMIFMMPUSBDJOHOFXPSEFS  UJNFTUBNQ  EVSBUJPO  MPDBM&OEQPJOU\ TFSWJDF/BNFIFMMPUSBDJOH  JQW ^  UBHT\ EBQSBQJ1045WJOWPLFIFMMPUSBDJOHNFUIPEOFXPSEFS  EBQSQSPUPDPMIUUQ  EBQSTUBUVT@DPEF  OFUQFFSOBNFIFMMPUSBDJOH  PQFODFOTVTTUBUVT@EFTDSJQUJPO0,  SQDTFSWJDF4FSWJDF*OWPDBUJPO ^ ^ > > IUUQT[JQLJOJP[JQLJOBQJ IUUQTEPDTEBQSJPEFWFMPQJOHBQQMJDBUJPOTCVJMEJOHCMPDLTPCTFSWBCJMJUZXDUSBDJOH
  59. %BQSͷ5SBDJOH EBQSEBQSQLHNFUSJDTEBQSEBQSQLHEJBHOPTUJDT @USBDJOHHP ʹ5SBDJOHͷ࣮૷͸͞Ε͍ͯΔ৔߹͕ଟ͍ PQFODFOTVT͔ΒPQFO5FMFNFUSZ΁ͷҠߦ͸ܭըతʹߦΘΕ͍ͯΔ ׬શҠߦ͸·ͩ·ͩͬΆ͍  IUUQTHJUIVCDPNEBQSEBQSCMPCNBTUFSQLHEJBHOPTUJDTUSBDJOHHP

  60. ·ͱΊ %BQSͷ֤छػೳ %BQSʹ͸ͲͷΑ͏ͳಛ௃͕͋ͬͯ 
 Կ͕Ͱ͖Δͷ͔ʹ͍֤ͭͯػೳʹ͍ͭͯ঺հΛ͠·ͨ͠ %BQSͷ0CTFSWBCJMJUZʹ͍ͭͯ .FUSJDT-PHHJOH5SBDJOHʹػೳʹ͍֤ͭͯػೳʹ͍ͭͯ঺հ͠·ͨ͠ 

  61. ࢀߟࢿྉ %BQS%PDT IUUQTEPDTEBQSJP PQFODFOTVTHP IUUQTHJUIVCDPNDFOTVTJOTUSVNFOUBUJPOPQFODFOTVTHP 0CTFSWBCJMJUZ8IJUFQBQFS IUUQTHJUIVCDPNDODGUBHPCTFSWBCJMJUZCMPCNBJOXIJUFQBQFSNE HPPHMFQQSPG IUUQTHJUIVCDPNHPPHMFQQSPG 

  62. ࢀߟࢿྉ 8IBUJT0QFO5FMFNFUSZ  IUUQTPQFOUFMFNFUSZJPEPDTDPODFQUTXIBUJTPQFOUFMFNFUSZ 4UBUVTPG0QFO5FMFNFUSZ IUUQTPQFOUFMFNFUSZJPTUBUVT 0QFO5FMFNFUSZ$PNQPOFOUT IUUQTPQFOUFMFNFUSZJPEPDTDPODFQUTDPNQPOFOUT