<prompt> Unda programu ya Java ambayo inachambua faili za kumbukumbu zinazozalishwa na seva ya wavuti. Programu inapaswa kuchanganua faili za kumbukumbu, kutoa maelezo kuhusu maombi ya HTTP k.m., anwani ya IP, njia ya ombi, URL, msimbo wa majibu, na kutoa ripoti ya muhtasari yenye takwimu kama vile idadi ya maombi kwa kila anwani ya IP, URL za mara kwa mara, na usambazaji wa misimbo ya majibu.  <response>: Hapa kuna programu ya Java ambayo inachambua faili za kumbukumbu zinazozalishwa na seva ya wavuti. Programu hii inachukua faili ya logi inafuata Umbizo la Kumbukumbu la Kawaida CLF. javaagiza java.io.BufferedReader;agiza java.io.FileReader;agiza java.io.IOException;agiza java.util.HashMap;agiza java.util.Map;LogAnalyzer ya darasa la umma utupu tuli wa umma String args ikiwa args.length ! 1 System.err.printlnMatumizi: java LogAnalyzer ; Kutoka kwa mfumo.1; String logFilePath args0; analyzeLogFilelogFilePath; binafsi tuli utupu analyzeLogFileString logFilePath Ramani ipCountMap new HashMap; Ramani urlCountMap new HashMap; Ramani responseCodeCountMap new HashMap; jaribu BufferedReader br new BufferedReadernew FileReaderlogFilePath Mstari wa kamba; wakati line br.readLine ! null String tokeni line.split ; ikiwa tokens.length 9 Kamba ipAddress ishara 0; Ombi la kambaMethodAndUrl ishara5 ishara6; int responseCode Integer.parseIntishara8; ipCountMap.putipAddress, ipCountMap.getOrDefaultipAddress, 0 1; urlCountMap.putrequestMethodAndUrl, urlCountMap.getOrDefaultrequestMethodAndUrl, 0 1; responseCodeCountMap.putresponseCode, responseCodeCountMap.getOrDefaultresponseCode, 0 1; kukamata IOException e System.err.printlnHitilafu katika kusoma faili ya kumbukumbu: e.getMessage; Kutoka kwa mfumo.1; kuzalishaSummaryReportipCountMap, urlCountMap, responseCodeCountMap; utupu tuli wa kibinafsi unazalishaSummaryReportRamani ipCountMap, Ramani urlCountMap, Ramani responseCodeCountMap System.out.println Ripoti ya Muhtasari ; System.out.printlnnIdadi ya maombi kwa kila anwani ya IP:; ipCountMap.entrySet.stream .iliyopangwaRamani.Entry.comparingByValue.reversed .forEachingizo - System.out.printlnentry.getKey : entry.getValue; System.out.printlnnURL za mara kwa mara:; urlCountMap.entrySetstream .iliyopangwaRamani.Entry.comparingByValue.reversed .kikomo10 .forEachingizo - System.out.printlnentry.getKey : entry.getValue; System.out.printlnnUsambazaji wa misimbo ya majibu:; responseCodeCountMap.entrySet.stream .iliyopangwaMap.Entry.comparingByKey .forEachingizo - System.out.printlnentry.getKey : entry.getValue; Ili kuendesha programu, ikusanye kwa kutumia javac LogAnalyzer.java kisha uitekeleze kwa java LogAnalyzer ambapo ndiyo njia ya faili yako ya kumbukumbu.Mpango huo unasoma laini ya faili ya kumbukumbu kwa mstari, hutoa maelezo kuhusu maombi ya HTTP anwani ya IP, njia ya ombi, URL, msimbo wa majibu, na kuyahifadhi katika HashMaps. Hatimaye, hutoa ripoti ya muhtasari yenye takwimu kama vile idadi ya maombi kwa kila anwani ya IP, URL za mara kwa mara, na usambazaji wa misimbo ya majibu. 