ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම

හෙලෝ, මගේ නම ඉයුජින්, මම Citymobil හි B2B කණ්ඩායම් නායකයෙක්. අපගේ කණ්ඩායමේ එක් කර්තව්‍යයක් වන්නේ හවුල්කරුවන්ගෙන් කුලී රථයක් ඇණවුම් කිරීම සඳහා අනුකලනයට සහය වීම සහ ස්ථාවර සේවාවක් සහතික කිරීම සඳහා, අපගේ ක්ෂුද්‍ර සේවා වල සිදුවන්නේ කුමක්ද යන්න අප සැමවිටම තේරුම් ගත යුතුය. මේ සඳහා ඔබ නිරන්තරයෙන් ලඝු-සටහන් නිරීක්ෂණය කළ යුතුය.

Citymobil වලදී, අපි logs සමඟ වැඩ කිරීමට ELK stack (ElasticSearch, Logstash, Kibana) භාවිතා කරන අතර එහි එන දත්ත ප්‍රමාණය අති විශාලය. නව කේතය යෙදවීමෙන් පසු දිස්විය හැකි මෙම ඉල්ලීම් සමූහයේ ගැටළු සෙවීම තරමක් අපහසුය. ඔවුන්ගේ දෘශ්‍ය හඳුනාගැනීම සඳහා, කිබානා සතුව උපකරණ පුවරු අංශයක් ඇත.

දත්ත ලබා ගැනීමට සහ ගබඩා කිරීමට ELK තොගයක් සකසන්නේ කෙසේද යන්න පිළිබඳ උදාහරණ සහිත Habré හි ලිපි කිහිපයක් ඇත, නමුත් උපකරණ පුවරුවක් නිර්මාණය කිරීම සඳහා අදාළ ද්‍රව්‍ය නොමැත. එබැවින්, කිබානා හි එන ලඝු-සටහන් මත පදනම්ව දත්ත දෘශ්‍ය නිරූපණයක් සාදන ආකාරය පෙන්වීමට මට අවශ්‍යය.

ගැලපුම්

එය වඩාත් පැහැදිලි කිරීමට, මම ELK සහ Filebeat සමඟ Docker රූපයක් නිර්මාණය කළෙමි. සහ කුඩා කන්ටේනරයක තබා ඇත වැඩසටහන Go හි, අපගේ උදාහරණය සඳහා පරීක්ෂණ ලඝු-සටහන් ජනනය කරනු ඇත. මම ELK හි වින්‍යාසය විස්තරාත්මකව විස්තර නොකරමි, ඒ ගැන ප්‍රමාණවත් තරම් Habré හි ලියා ඇත.

වින්‍යාස ගබඩාව ක්ලෝන කරන්න docker-compose සහ ELK සැකසුම්, සහ විධානය සමඟ එය දියත් කරන්න docker-compose up. හිතාමතාම යතුරක් එකතු නොකරයි -dELK තොගයේ ප්‍රගතිය බැලීමට.

git clone https://github.com/et-soft/habr-elk
cd habr-elk
docker-compose up

සෑම දෙයක්ම නිවැරදිව වින්‍යාස කර ඇත්නම්, එවිට අපට ලඝු-සටහන් හි ඇතුළත් කිරීමක් පෙනෙනු ඇත (සමහර විට වහාම නොවේ, සම්පූර්ණ තොගය සහිත බහාලුමක් දියත් කිරීමේ ක්‍රියාවලියට මිනිත්තු කිහිපයක් ගතවනු ඇත):

{"type":"log","@timestamp":"2020-09-20T05:55:14Z","tags":["info","http","server","Kibana"],"pid":6,"message":"http server running at http://0:5601"}

ලිපිනය මගින් localhost:5061 කිබානා විවෘත කළ යුතුය.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
අපට වින්‍යාස කිරීමට අවශ්‍ය එකම දෙය වන්නේ කුමන දත්ත පෙන්විය යුතුද යන්න පිළිබඳ තොරතුරු සහිත කිබානා සඳහා දර්ශක රටාවක් නිර්මාණය කිරීමයි. මෙය සිදු කිරීම සඳහා, අපි curl ඉල්ලීමක් ක්රියාත්මක කරන්නෙමු හෝ චිත්රක අතුරුමුහුණත තුළ ක්රියා මාලාවක් සිදු කරන්නෙමු.

$ curl -XPOST -D- 'http://localhost:5601/api/saved_objects/index-pattern'
    -H 'Content-Type: application/json'
    -H 'kbn-xsrf: true'
    -d '{"attributes":{"title":"logstash-*","timeFieldName":"@timestamp"}}'

GUI හරහා දර්ශක රටාවක් නිර්මාණය කිරීම
වින්‍යාස කිරීම සඳහා, වම් මෙනුවේ Discover කොටස තෝරන්න, සහ දර්ශක රටා නිර්මාණය කිරීමේ පිටුවට යන්න.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
"Create index pattern" බොත්තම මත ක්ලික් කිරීමෙන්, අපි දර්ශක නිර්මාණය පිටුවට පිවිසෙමු. "දර්ශක රටා නම" ක්ෂේත්රය තුළ, "logstash-*" ඇතුල් කරන්න. සෑම දෙයක්ම නිවැරදිව වින්‍යාස කර ඇත්නම්, කිබානාට පහළින් රීතියට වැටෙන දර්ශක පෙන්වනු ඇත.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
ඊළඟ පිටුවේ, කාලමුද්‍රාවක් සහිත යතුරු ක්ෂේත්‍රය තෝරන්න, අපගේ නඩුවේදී එය එසේ වේ @timestamp.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
මෙය දර්ශක සැකසුම් පිටුව ගෙන එනු ඇත, නමුත් මේ අවස්ථාවේ අපෙන් වැඩිදුර ක්‍රියාමාර්ග අවශ්‍ය නොවේ.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම

දැන් අපට නැවතත් Discover කොටසට යා හැක, එහිදී අපි ලොග් සටහන් දකිනු ඇත.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම

උපකරණ පුවරුව

වම් මෙනුවේ, උපකරණ පුවරුව සෑදීමේ කොටස මත ක්ලික් කර අදාළ පිටුවට යන්න.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
"නව උපකරණ පුවරුව සාදන්න" මත ක්ලික් කර උපකරණ පුවරුවට වස්තු එකතු කිරීම සඳහා පිටුවට යන්න.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
"නව සාදන්න" බොත්තම මත ක්ලික් කරන්න, එවිට පද්ධතිය දත්ත සංදර්ශක වර්ගය තෝරා ගැනීමට ඔබෙන් විමසනු ඇත. කිබානා සතුව ඒවා විශාල ප්‍රමාණයක් ඇත, නමුත් අපි "සිරස් තීරුවේ" චිත්‍රක නිරූපණයක් සහ වගු "දත්ත වගුවක්" නිර්මාණය කිරීම දෙස බලමු. වෙනත් ආකාරයේ ඉදිරිපත් කිරීම් සමාන ආකාරයකින් වින්‍යාස කර ඇත. 
ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
පවතින සමහර වස්තු B සහ E ලෙස ලේබල් කර ඇත, එයින් අදහස් වන්නේ ආකෘතිය පර්යේෂණාත්මක හෝ බීටා පරීක්ෂණයක පවතින බවයි. කාලයත් සමඟ, ආකෘතිය වෙනස් විය හැකිය හෝ Kibana වෙතින් සම්පූර්ණයෙන්ම අතුරුදහන් විය හැකිය.

සිරස් තීරුව

“සිරස් තීරුව” උදාහරණය සඳහා, අපගේ සේවාවේ සාර්ථක සහ අසාර්ථක ප්‍රතිචාර තත්ත්‍වයේ අනුපාතයෙහි ඉතිහාස සටහනක් නිර්මාණය කරමු. සැකසුම් අවසානයේ, අපට පහත ප්‍රස්ථාරය ලැබේ:

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
අපි ප්‍රතිචාර තත්ත්වය < 400 සමඟ ඇති සියලුම ඉල්ලීම් සාර්ථක ලෙස සහ >= 400 ගැටලු සහගත ලෙස වර්ග කරන්නෙමු.

"සිරස් තීරුව" ප්‍රස්ථාරයක් සෑදීමට, අපි දත්ත මූලාශ්‍රයක් තෝරාගත යුතුය. අපි කලින් හදපු Index Pattern එක තෝරන්න.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
පෙරනිමියෙන්, දත්ත මූලාශ්‍රයක් තේරීමෙන් පසු තනි ඝන ප්‍රස්ථාරයක් දිස්වනු ඇත. අපි එය සකස් කරමු.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
"Buckets" කොටසේ, "Add" බොත්තම ඔබන්න, "X-asis" තෝරා X අක්ෂය සකසන්න. ලොගයේ ඇතුළත් කිරීම් ලැබීම සඳහා වේලා මුද්දර පසෙකින් තබමු. "Aggregation" ක්ෂේත්‍රය තුළ, "Date Histogram" තෝරන්න, සහ "Field" තුළ "@timestamp" තෝරන්න, කාල ක්ෂේත්‍රය දක්වයි. අපි "අවම විරාමය" "ස්වයංක්‍රීය" තත්වයෙන් තබමු, එය ස්වයංක්‍රීයව අපගේ සංදර්ශකයට ගැලපේ. 

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
"යාවත්කාලීන" බොත්තම මත ක්ලික් කිරීමෙන්, අපි සෑම තත්පර 30 කට වරක් ඉල්ලීම් ගණන සහිත ප්රස්ථාරයක් දකිනු ඇත.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
දැන් අපි Y-අක්ෂය දිගේ තීරු සකස් කරමු.දැන් අපි තෝරාගත් කාල පරතරය තුළ මුළු ඉල්ලීම් ගණන පෙන්වමු.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
අපි සාර්ථක සහ අසාර්ථක ඉල්ලීම් සඳහා දත්ත ඒකාබද්ධ කිරීමට ඉඩ සලසන, "එකතු කිරීම" අගය "සමූල බාල්දිය" ලෙස වෙනස් කරමු. Bucket -> Aggregation block හි, "පෙරහන්" මගින් එකතු කිරීම තෝරා "statusCode >= 400" මගින් පෙරීම සකසන්න. තවද "අභිරුචි ලේබලය" ක්ෂේත්‍රය තුළ, ප්‍රස්ථාරයේ සහ සාමාන්‍ය ලැයිස්තුවේ පුරාවෘත්තයේ වඩාත් තේරුම්ගත හැකි සංදර්ශකයක් සඳහා අපි දර්ශකයේ අපගේ නම සඳහන් කරමු.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
සැකසුම් බ්ලොක් යටතේ "යාවත්කාලීන" බොත්තම ක්ලික් කිරීමෙන්, ගැටළු ඉල්ලීම් සහිත ප්රස්ථාරයක් අපට ලැබෙනු ඇත.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
ඔබ පුරාවෘත්තය අසල ඇති රවුම මත ක්ලික් කළහොත්, ඔබට තීරු වල වර්ණය වෙනස් කළ හැකි කවුළුවක් දිස්වනු ඇත.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
දැන් අපි සාර්ථක ඉල්ලීම් පිළිබඳ දත්ත ප්‍රස්ථාරයට එකතු කරමු. "මිතික" කොටසේ, "එකතු කරන්න" බොත්තම ක්ලික් කර "Y-axis" තෝරන්න.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
සාදන ලද මෙට්රික් තුළ, අපි වැරදි ඉල්ලීම් සඳහා සමාන සැකසුම් කරන්නෙමු. පෙරහන තුළ පමණක් අපි "statusCode < 400" සඳහන් කරමු.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
නව තීරුවේ වර්ණය වෙනස් කිරීමෙන්, ගැටළුකාරී සහ සාර්ථක ඉල්ලීම්වල අනුපාතය අපට දර්ශනය වේ.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
තිරයේ ඉහළින් ඇති "සුරකින්න" බොත්තම ක්ලික් කර නම සඳහන් කිරීමෙන්, අපි උපකරණ පුවරුවේ පළමු වගුව දකිනු ඇත.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම

දත්ත වගුව

දැන් වගු දර්ශනය "දත්ත වගුව" සලකා බලන්න. අපි ඉල්ලූ සියලුම URL ලැයිස්තුවක් සහ එම ඉල්ලීම් ගණන සහිත වගුවක් සාදන්න. සිරස් තීරු උදාහරණය සමඟින්, අපි පළමුව දත්ත මූලාශ්‍රයක් තෝරා ගනිමු.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
ඊට පසු, එක් තීරුවක් සහිත වගුවක් තිරය මත දිස්වනු ඇත, එය තෝරාගත් කාල පරතරය සඳහා මුළු ඉල්ලීම් ගණන පෙන්වයි.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
අපි "බකට්" බ්ලොක් එක පමණක් වෙනස් කරන්නෙමු. "එකතු කරන්න" බොත්තම ක්ලික් කර "පේළි බෙදන්න" තෝරන්න.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
"එකතු කිරීම" ක්ෂේත්රයේ, "නියමයන්" තෝරන්න. සහ පෙනෙන "ෆීල්ඩ්" ක්ෂේත්රයේ "url.keyword" තෝරන්න.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
"අභිරුචි ලේබලය" ක්ෂේත්‍රයේ "Url" අගය සඳහන් කිරීමෙන් සහ "යාවත්කාලීන කරන්න" ක්ලික් කිරීමෙන්, තෝරාගත් කාල සීමාව සඳහා එක් එක් URL සඳහා ඉල්ලීම් ගණන සමඟ අපට අවශ්‍ය වගුව ලැබෙනු ඇත.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
තිරයේ මුදුනේ, නැවත "සුරකින්න" බොත්තම ක්ලික් කර වගුවේ නම සඳහන් කරන්න, උදාහරණයක් ලෙස Url. අපි නැවත උපකරණ පුවරුව වෙත ගොස් දර්ශන දෙකම නිර්මාණය කර බලමු.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම

උපකරණ පුවරුව සමඟ වැඩ කිරීම

උපකරණ පුවරුව නිර්මාණය කරන විට, අපි දර්ශන වස්තු සැකසුම් තුළ ප්රධාන දර්ශන පරාමිතීන් පමණක් සකස් කරමු. වස්තූන් තුළ පෙරහන් සඳහා දත්ත සඳහන් කිරීම තේරුමක් නැත, උදාහරණයක් ලෙස, "දින පරාසය", "පරිශීලකයෙන් පෙරීම", "ඉල්ලීම් රට අනුව පෙරීම" යනාදිය. වස්තූන්ට ඉහළින් පිහිටා ඇති විමසුම් පැනලයේ අපේක්ෂිත කාල සීමාව නියම කිරීම හෝ අවශ්‍ය පෙරහන සැකසීම වඩාත් පහසු වේ.

ලොග නිරීක්ෂණය කිරීමට Kibana හි උපකරණ පුවරුවක් නිර්මාණය කිරීම
මෙම පැනලයේ එකතු කරන ලද පෙරහන් මුළු උපකරණ පුවරුවටම යොදනු ලබන අතර, සියලුම සංදර්ශක වස්තූන් සත්‍ය පෙරන ලද දත්තවලට අනුකූලව නැවත ගොඩනඟනු ලැබේ.

නිගමනය

කිබානා යනු ඕනෑම දත්තයක් පහසු ආකාරයකින් දෘශ්‍යමාන කිරීමට ඔබට ඉඩ සලසන ප්‍රබල මෙවලමකි. මම ප්‍රධාන සංදර්ශක වර්ග දෙකේ සැකසුම් පෙන්වීමට උත්සාහ කළෙමි. නමුත් වෙනත් වර්ග සමාන ආකාරයකින් වින්යාස කර ඇත. තවද මා විසින් "තිරය පිටුපස" තැබූ සැකසුම් වල බහුලත්වය ඔබට ඔබගේ අවශ්‍යතාවයට සරිලන පරිදි ප්‍රස්ථාර ඉතා නම්‍යශීලීව අභිරුචිකරණය කිරීමට ඉඩ සලසයි.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න