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

ログの設計してますか?PSR3とログ設計の話

 ログの設計してますか?PSR3とログ設計の話

PHPカンファレンス福岡2018 #phpconfuk #hall_fu

Ryo Tomidokoro

June 16, 2018
Tweet

More Decks by Ryo Tomidokoro

Other Decks in Programming

Transcript

  1. *OOPWBUPS+BQBO*OD
    ෋ॴ྄
    &OHJOFFS

    ϩάͷઃܭͯ͠·͔͢ʁPSR3ͱϩάઃܭͷ࿩
    PHPΧϯϑΝϨϯε෱Ԭ2018

    View Slide

  2. ͓஌Βͤ
    εϥΠυ͸SpeakerDeckʹΞοϓ͠·͕͢…
    ࡱӨ౳΋ࣗ༝ʹͯ͠௖͍ͯ໰୊͋Γ·ͤΜ
    !IBOIBO

    View Slide

  3. ͜ͷτʔΫͷ໨ඪ
    एखΤϯδχΞ
    தݎΤϯδχΞ
    ˠϩάग़ྗʹ͍ͭͯͷ͸͡ΊͷҰา
    ˠυΩυΩͯ͠΋Β͏

    View Slide

  4. ࠓճ͓࿩͢Δϩάग़ྗ
    ΞϓϦέʔγϣϯϩά
    ߦಈϩά΍΢Σϒαʔόͷϩά౳͸ର৅֎
    ओॲཧʹӨڹΛ༩͑ͣɺόον΍΢ΣϒΞϓϦ
    ͷॲཧ్தͰԿΒ͔ͷ৘ใΛ֎෦ʹग़ྗ͢Δ

    View Slide

  5. ࠓճͷείʔϓ֎ͷ࿩
    'MVFOUE -PHTUBTI
    ϩάऩू
    ϩάՄࢹԽ
    ,JCBOB &MBTUJD4FBSDI

    View Slide

  6. ಋೖ

    View Slide

  7. ಋೖ
    ͋Δ೔

    View Slide

  8. ಋೖ
    εϐʔσΟʔʹ
    WBS@EVNQ
    Λॻ͍ͨΓফͨ͠Γ͢ΔएखΛ໨ܸɻ

    View Slide

  9. ಋೖ

    View Slide

  10. ಋೖ

    View Slide

  11. ಋೖ

    View Slide

  12. ಋೖ
    ఆৗతͳ஋ͱ͔ͷνΣοΫ͸
    ϩάग़ྗͷ͕ศརΑͱ఻͑Δɻ

    View Slide

  13. ಋೖ
    ·ͬͨ͘ϐϯͱདྷͯͳ͍ͷΛ؍ଌ

    View Slide

  14. ಋೖ
    ϩάग़ྗʹ͍ͭͯ఻तͤͶ͹ʂ

    View Slide

  15. ಋೖ
    ࢥ͍ฦͯ͠ΈΔͱɻ
    ࣗ෼΋ϩάग़ྗͷํ๏ͱ͔शͬͨ͜ͱͳ͍ɻ
    งғؾͰग़ྗ͍ͯ͠Δʜ

    View Slide

  16. ಋೖ
    ϩάग़ྗͷΞϨίϨΛ·ͱΊͯ
    νʔϜͷڞ௨ೝࣝΛ࡞Γ͍ͨ
    σόοά΍γεςϜӡ༻ʹ͓͚Δڧ͍෢ثʹͳΔ

    View Slide

  17. 0VUMJOF
    8IBUJTMPHHJOH
    8IZZPVMPH
    )PXZPVMPH
    3JTLPGMPHHJOH
    8IBUZPVTIPVMEQSFQBSF

    View Slide

  18. 0VUMJOF
    8IBUJTMPHHJOH
    8IZZPVMPH
    )PXZPVMPH
    3JTLPGMPHHJOH
    8IBUZPVTIPVMEQSFQBSF

    View Slide

  19. ϩάग़ྗͱ͸ʁ
    -PHHJOHJTUIFBDUPGLFFQJOHBMPH
    -PHpMF8JLJQFEJB
    ৘ใMPH
    ΛͲ͔͜ʹग़ྗ͢Δ͜ͱ
    ఆٛ͸؇͍ʜ

    View Slide

  20. ϩάग़ྗʹؔΘΔ࢓༷
    3'$
    TZTMPHͷ࢓༷͔͜͜Β৭ʑͱ೿ੜ
    143
    -PHHFS*OUFSGBDF

    View Slide

  21. ϩάग़ྗʹؔΘΔ࢓༷
    3'$
    TZTMPHͷ࢓༷͔͜͜Β৭ʑͱ೿ੜ
    143
    -PHHFS*OUFSGBDF
    1)1FS.VTU3FBE

    View Slide

  22. 143ͷ֓ཁ
    ͭͷ࢓༷
    ୹͍ͷͰͥͻ࣮ࡍʹಡΜͰ΄͍͠
    IUUQTXXXQIQpHPSHQTSQTS

    View Slide

  23. 143ͷ֓ཁ
    #BTJDT
    3'$४ڌͭͷϩάϨϕϧ
    ͭͷग़ྗϝιου

    View Slide

  24. ϩάϨϕϧͱ͸ʁ
    EFCVH
    JOGP
    OPUJDF
    XBSOJOH
    FSSPS
    DSJUJDBM
    BMFSU
    FNFSHFODZ
    ॏେ౓

    View Slide

  25. ϩάϨϕϧͱ͸ʁ
    EFCVH
    JOGP
    OPUJDF
    XBSOJOH
    FSSPS
    DSJUJDBM
    BMFSU
    FNFSHFODZ
    -0(@-&7&-XBSOJOH
    ग़ྗ͞Εͳ͍

    View Slide

  26. 143ͷ֓ཁ
    .FTTBHF
    ϝοηʔδ͸TUSJOH͔@@UP4USJOH
    Λ࣮૷ͨ͠PCKFDU
    ͦ͏Ͱͳ͚Ε͹ɺத਎ΛTUSJOHʹΩϟετ
    ϝοηʔδิ׬

    View Slide

  27. 143ͷ֓ཁ
    $POUFYU
    DPOUFYUʹ͸ԿΛ౉͞Εͯ΋͍͔ͳΔྫ֎΋UISPX͠
    ͳ͍ɻ·ͨFSSPS΋XBSOJOH΋OPUJDF΋ग़͞ͳ͍
    &YDFQUJPOΦϒδΣΫτ͸AFYDFQUJPOAͱ͍͏LFZ
    ໊Ͱηοτ͢Δ

    View Slide

  28. 143ͷ֓ཁ
    )FMQFSDMBTTFTBOEJOUFSGBDF
    1TS४ڌͷ-PHΫϥεɺΠϯλϑΣʔεɺτϨΠτ
    ͷઆ໌

    View Slide

  29. 0VUMJOF
    8IBUJTMPHHJOH
    8IZZPVMPH
    )PXZPVMPH
    3JTLPGMPHHJOH
    8IBUZPVTIPVMEQSFQBSF

    View Slide

  30. Կނϩάग़ྗΛߦ͏ͷ͔ʁ
    QSJOUσόοά͡Όବ໨ͳͷ͔ʁ

    View Slide

  31. QSJOUσόοά
    ൃݟతख๏ ώϡʔϦεςΟοΫ

    ݟ౰͕͍͍ͭͯΔݪҼͷߜࠐ
    5SZ&SSPSͷͯͬͱΓૣ͍ํ๏

    View Slide

  32. QSJOUσόοάͷ໰୊఺
    ࠶ݱੑʹ๡͍͠
    QSJOUফ͠๨Ε໰୊
    ͖ͬ͞ॻ͍ͨWBS@EVNQ͸΋͏ແ͍
    ͳΜ͔ը໘ͷࠨ্ʹग़ͯΔʜ

    View Slide

  33. QSJOUσόοάͷ໰୊఺
    ಉ͜͡ͱͷ܁ฦ
    ຊ൪؀ڥͰ͸ແཧ
    -B[JOFTTҧ൓ͷ൓෮QSJOU
    WBS@EVNQग़ͤ·ͤΜʜ

    View Slide

  34. QSJOUσόοάͷ໰୊఺
    ΞϓϦέʔγϣϯ΁ͷӨڹ
    QSJOUͱFYJUͷ૊߹ͤ
    'SBNF8PSLͷऴ୺ॲཧΛ๦֐
    ։ൃ؀ڥʹ͓͍ͯɺ࠶ݱͮ͠Β͍ඍົͳόάΛੜΈग़͢

    View Slide

  35. ϩάग़ྗͷಛ௃
    ࠶ݱੑ͕͋Δ
    ղੳతͳσόοά
    ઃஔՕॴ͸ৗʹಉ༷ʹϩάग़ྗ
    มߋʹΑΔࠩҟΛޙ͔ΒղੳՄೳ

    View Slide

  36. ͜Μͳ࣌͸ϩάग़ྗ
    ৗʹ֬ೝ͍ͨ͠৘ใ
    όονͷ࣮ߦ৘ใ
    ຊ൪؀ڥͰݟ͍ͨ৘ใ

    View Slide

  37. ৗʹ֬ೝ͍ͨ͠৘ใ
    WJFXςϯϓϨʔτʹ౉ͨ͠஋
    "1*ݺͼग़͠ͷ։࢝ɾऴྃ
    ࣮ߦͨ͠42-ͱύϥϝʔλ

    View Slide

  38. ຊ൪؀ڥͰݟ͍ͨ৘ใ
    ։ൃ؀ڥͰ࠶ݱ͠ͳ͍ෆ۩߹ͷݕূϩά
    ߈ܸݕ஌ϩά -PHJO߈ܸ౳

    ܦ೥ྼԽ͕༧ଌ͞ΕΔՕॴͷܭଌϩά

    View Slide

  39. όονͷ࣮ߦ৘ใ
    ։࢝࣌ؒɾऴྃ࣌ؒ
    "#&/%࣌ͷఀࢭՕॴ
    ॲཧ݅਺
    ࠶࣮ߦίϚϯυ
    ͜Ε͸ຊ౰ʹΦεεϝɻ

    View Slide

  40. 0VUMJOF
    8IBUJTMPHHJOH
    8IZZPVMPH
    )PXZPVMPH
    3JTLPGMPHHJOH
    8IBUZPVTIPVMEQSFQBSF

    View Slide

  41. Ͳ͏΍ͬͯϩάग़ྗΛߦ͏ͷ͔ʁ
    143४ڌՄೳͳϥΠϒϥϦʔ
    .POPMPH
    ;FOE-PHHFS
    ϑϨʔϜϫʔΫ͕ఏڙ͢ΔϩΨʔ
    ϩάΛૉ௚ʹग़ͤΔͳΒɺ143ඇ४ڌͰ΋ྑ͍

    View Slide

  42. Ͳ͏΍ͬͯϩάग़ྗΛߦ͏ͷ͔ʁ
    ΦϨΦϨϩΨʔ͸ବ໨͔ʁ
    ษڧͷͨΊͷंྠͷ࠶ൃ໌͸0,
    Ͱ΋ຊ൪ར༻͸΍Ί·͠ΐ͏

    View Slide

  43. Ͳ͏΍ͬͯϩάग़ྗΛߦ͏ͷ͔ʁ
    ੜͰFSSPS@MPHؔ਺ͱ͔͸/(
    ͨͩ͠ɺօʹ΋౎߹ͬͯ΋ͷ͕͋Δ͜
    ͱ͸ࢲ΋ཧղ͍ͯ͠Δ
    ͍Θͣ΋͕ͳ
    ෼͔ΓΈ͕͋Δ

    View Slide

  44. Ͳ͏΍ͬͯϩάग़ྗΛߦ͏ͷ͔ʁ
    ͓ߦّͷѱ͍ϩάग़ྗ͸ఫڈ͕جຊ
    ඃ֐͕গͳ͍͏ͪʹखΛଧ͍ͬͯ͜͏
    ͱ͸͍͑
    ೔෇ͷϑΥʔϚοτͱ͔ͰϞχϣΓͨ͘ͳ͍

    View Slide

  45. 0VUMJOF
    8IBUJTMPHHJOH
    8IZZPVMPH
    )PXZPVMPH
    3JTLPGMPHHJOH
    8IBUZPVTIPVMEQSFQBSF

    View Slide

  46. ϩάग़ྗͷϦεΫ
    ϩάग़ྗ͸໾ʹཱͭ
    ͨͩ͠ɺϦεΫΛ಄ʹೖΕ͓ͯ͘
    ඞཁ͕͋Δ

    View Slide

  47. ϦεΫ
    ৘ใ࿙͍͑
    ΞϓϦέʔγϣϯ࣮ߦͷ๦֐
    ϩάग़ྗͷઃఆϛε
    ҙਤ͠ͳ͍ݸਓ৘ใऩू

    View Slide

  48. ৘ใ࿙͍͑
    εϥυ
    IUUQTTFDVSJUZTSBEKQTUPSZ

    View Slide

  49. ྫ͑͹͜Μͳίʔυ
    %#Ͱύεϫʔυ҉߸Խͯͯ͠΋୆ແ͠

    View Slide

  50. ΞϓϦέʔγϣϯ࣮ߦͷ๦֐
    Τϥʔൃੜ࣌ͷϩάΛϝʔϧૹ৴
    όάϦϦʔεͰେྔͷΤϥʔϝʔϧ
    ϝʔϧૹ৴Ͱ٧·ͬͯʜ
    Τϥʔൃੜ࣌ͷϩάΛ4MBDLͰૹ৴
    όάϦϦʔεͰSZ

    ·͞ʹΧΦε

    View Slide

  51. ઃఆϛε
    EFCVHϩά͕ຊ൪Ͱ΋ग़ͬͺͳ͠
    ๲େͳྔͷϩάग़ྗ
    ΫΤϦύϥϝʔλʔ΋ʜ
    ૠೖɾߋ৽σʔλ͕શ෦࿙Ӯ͍ͯ͠ΔͷͱҰॹ

    View Slide

  52. ઃఆϛε
    ϩάΛ༗ޮ׆༻͢Δ
    ϩάϨϕϧͷઃఆϛε͕க໋ই

    View Slide

  53. ઃఆϛε
    ݟ͍ͨ࣌ʹϩά͕ͳ͍
    ϦϦʔεͰϩάϑΝΠϧ͕ॻ׵
    όάमਖ਼ޙʹݕূෆՄೳ
    ϩάͷग़ྗઌ͸ΞϓϦσΟϨΫτϦ֎ʹ

    View Slide

  54. ઃఆϛε
    Πϯϑϥͷ͓͡͞Μ͸
    ΞϓϦέʔγϣϯϩά͸कඋൣғ֎
    ࣗ෼ͷ਎͸ࣗ෼ͰकΕ

    View Slide

  55. ݸਓ৘ใ
    ݸਓ৘ใ͕ϩάʹग़ྗ͞Ε͍ͯΔ৔߹
    (%13ͷേଇ͸ॏ͍ͨ
    ϓϥΠόγʔϙϦγʔ΁ͷهࡌ͸ʁ
    Ϣʔβ͕ಉҙͯ͠ͳ͍ར༻͸/(

    View Slide

  56. ݸਓ৘ใ
    ҙਤͤͣʹߦಈϩάΛऩूͯ͠͠·͍ͬͯ
    ͳ͍͔ʁόϨͳ͚Ε͹ྑ͍ͱ͍͏໰୊Ͱ͸
    ͳ͍ɻ

    View Slide

  57. ҙࣝ͢΂͖ॏཁࣄ߲
    ϩάग़ྗͰ͍͔ͳΔσʔλ΋࿙ӮՄೳ
    ϩάϑΝΠϧͷةݥੑΛཧղ͍ͯ͠ͳ͍ͱॏେ
    ͳଛࣦΛҾ͖ى͜͢Մೳੑ
    ੒௕͍ͯ͠ΔΞϓϦ͸ಛʹ஫ҙ

    View Slide

  58. ͜͏͍͏ίʔυʹ൓Ԡ͢ΔΑ͏ʹʂ
    ΍͹͍৘ใΛEFCVHҎ֎Ͱग़ྗ

    View Slide

  59. ͜͏͍͏ίʔυʹ൓Ԡ͢ΔΑ͏ʹʂ
    ઃఆϛεͰҰൃπϞͦ͠͏ͳϩά

    View Slide

  60. Ͱ͸Ͳ͏͠Ζͱʁ
    ΋͏ϩάͳΜͯग़ྗ͠ͳ͍΄͏͕ʜ
    ͦΕ΋Ұͭͷਖ਼ղͱͯ͠ΞϦ

    View Slide

  61. 0VUMJOF
    8IBUJTMPHHJOH
    8IZZPVMPH
    )PXZPVMPH
    3JTLPGMPHHJOH
    8IBUZPVTIPVMEQSFQBSF

    View Slide

  62. ԿΛܾΊ͓͚ͯ͹͍͍ͷ͔ʁ
    ΞϓϦέʔγϣϯ։ൃ࣌
    ΞϓϦέʔγϣϯӡ༻࣌
    ͦΕͧΕͷܾΊ͝ͱϩάઃܭ

    View Slide

  63. ΞϓϦέʔγϣϯ։ൃ࣌ͷܾΊ͝ͱ
    -PHHFSͷબఆ
    .FTTBHFͷϧʔϧ
    جຊػೳʹେࠩ͸ແ͍ͷͰɺঢ়گʹ߹Θͤͯॊೈʹɻ
    -PHHFS࢖͍ͬͯΕ͹େ·͔ͳϑΥʔϚοτ͸߹͍ͬͯΔ
    ·ͣ͸։ൃऀ೚ͤͰ΋ྑ͍͔΋

    View Slide

  64. ΞϓϦέʔγϣϯ։ൃ࣌ͷܾΊ͝ͱ
    ڞ௨ग़ྗ಺༰
    όονϩάͷग़ྗϑΥʔϚοτ
    3FBENFʹॻ͍͓͍ͯͯ͋͛·͠ΐ͏ɻ
    ΫΤϦϩάɺWJFXύϥϝʔλ౳
    మ൘Ͱ໾ཱͭͷͰ࡞Γ·͠ΐ͏ɻ

    View Slide

  65. ΞϓϦέʔγϣϯӡ༻࣌ͷܾΊ͝ͱ
    ؀ڥຖͷϩάϨϕϧ
    ϩάϑΝΠϧͷϩʔςʔγϣϯɺӬଓԽํ๏
    ։ൃ؀ڥ͸EFCVH ຊ൪؀ڥ͸XBSOJOH౳
    ΞϓϦέʔγϣϯΤϯδχΞͷ੹೚ʂ
    ޙͰղੳͰ͖ΔΑ͏ʹ͓ͯ͘͜͠ͱ

    View Slide

  66. ΞϓϦέʔγϣϯӡ༻࣌ͷܾΊ͝ͱ
    ϩάϨϕϧઃఆͷϑΣʔϧηʔϑ
    Ϗϧυ࣌ʹEFCVHϨϕϧͷϩάΛ࡟আ
    %*Ͱۭϩάग़ྗ࣮૷ʹ੾ସ
    ϩάग़ྗઌͱग़ྗํ๏
    ϝʔϧ΍4MBDL͸ϒϩοΩϯά͠ͳ͍ํ๏
    ಉ͡಺༰ͷΤϥʔϩάͷग़ྗ཈੍

    View Slide

  67. ·ͣ͸࠷௿ݶ͔Β
    ग़དྷͨͯͷΞϓϦͰ׬ᘳΛ໨ࢦ͢ͷ͸ແཧ
    ΞϓϦͷ੒௕ϑΣʔζʹ߹ΘͤͯɺϦεΫͱ্
    खʹௐ੔͍ͯ͘͜͠ͱ͕ॏཁ

    View Slide

  68. ·ͱΊ
    एखΤϯδχΞͷํ΁
    ϩάग़ྗ͸Τϥʔͷݕ஌ͱղੳΛߦ͏ڧྗͳखஈ
    ࡞๏ʹͷͬͱΓͭͭੵۃతʹ׆༻͠·͠ΐ͏

    View Slide

  69. ·ͱΊ
    தݎΤϯδχΞͷํ΁
    ͋ͳͨͷΞϓϦέʔγϣϯͷϩά͸େৎ෉Ͱ͔͢ʁ
    υΩυΩͯͨ͠Βਅ݋ͳӡ༻Λߟ͑·͠ΐ͏ɻ

    View Slide

  70. ૉఢͳϩάग़ྗੜ׆Λʂ

    View Slide