Granska loggar och felsök
Tillägget data export innehåller loggar för att spåra datainsamling och synkroniseringsprocesser.
Loggar
Loggar är tillgängliga i katalogen var/log
på Commerce programserver.
commerce-data-export.log
data-export-errors.log
saas-export.log
saas-export-errors.log
Om du inte ser förväntade data för en Adobe Commerce-tjänst använder du felloggarna för dataexporttillägget för att avgöra var problemet uppstod. Du kan också utöka loggar med ytterligare data för spårning och felsökning. Se Utökad loggning.
Loggformat
Varje loggpost har följande struktur.
[<log record datetime>] report.<log level>:
{
"feed": "<feed name>",
"operation": "<executed operation>",
"status": "<status of operation>",
"elapsed": "<time elaspsed from script run>",
"pid": "<proccess id who executed `operation`>",
"caller": "<who called this `operation`>"
} [] []
I följande tabell beskrivs de åtgärdstyper som kan registreras i loggarna.
bin/magento saas:resync --feed=products
bin/magento cron:run --group=index
bin/magento cron:run --group=saas_data_exporter
(alla cron-grupper av typen "*_data_exporter")bin/magento saas:resync --feed=categories
bin/magento cron:run --group=index
bin/magento cron:run --group=saas_data_exporter
(alla cron-grupper av typen "*_data_exporter")Exempel på loggning
Under en fullständig omsynkronisering spåras förloppet och loggas var 30:e sekund som standard. Här är ett exempel på en loggpost.
{
"feed": "prices",
"operation": "full sync",
"status": "Progress: 2/5, processed: 200, synced: 100",
"elapsed": "00:00:00 190 ms",
"pid": "12824",
"caller": "bin/magento saas:resync --feed=products"
}
I det här exemplet innehåller värdena status
information om synkroniseringsåtgärden:
-
"Progress 2/5"
anger att 2 av 5 iterationer har slutförts. Antalet iterationer beror på antalet exporterade enheter. -
"processed: 200"
anger att 200 objekt har bearbetats. -
"synced: 100"
anger att 100 objekt skickades till SaaS."synced"
förväntas inte vara lika med"processed"
. Här är ett exempel:"synced" < "processed"
betyder att flödestabellen inte upptäckte några ändringar i objektet jämfört med den tidigare synkroniserade versionen. Sådana objekt ignoreras under synkroniseringsåtgärden."synced" > "processed"
samma enhets-ID (till exempelProduct ID
) kan ha flera värden i olika omfång. En produkt kan till exempel tilldelas fem webbplatser. I det här fallet kan du ha"1 bearbetat" objekt och"5 synkroniserade" objekt.
code language-none |
---|
|
Visa och felsöka loggar med New Relic
Om du lagrar Adobe Commerce-loggar i New Relic kan du lägga till tolkningsregler för att förbättra läsbarheten och frågeupplevelsen.
-
Logga in på New Relic.
-
Gå till
Logs => Parsing
. -
Klicka på
Create parsing rule
. -
Konfigurera tolkningsregeln genom att lägga till följande värden.
-
Filterloggar baserade på NRQL
filePath LIKE '%commerce-data-export%.log'
-
Analysregel
\[%{DATA:timestamp}\] report.%{DATA:logLevel} %{GREEDYDATA:feed:json}
-
I det här exemplet läggs en regel till som gör att du kan söka efter New Relic-loggar efter en viss flödestyp, åtgärd o.s.v.
Exempelfrågesträng—feed.feed:"products" and feed.status:"Complete"
Felsökning
Om data saknas eller är felaktiga i Commerce Services bör du kontrollera om ett problem uppstod under synkroniseringen från Adobe Commerce-instansen till Commerce Service-plattformen. Använd vid behov utökad loggning för att lägga till ytterligare information i loggarna för felsökning.
- commerce-data-export-errors.log - om ett fel inträffade under insamlingsfasen
- saas-export-errors.log - om ett fel inträffade under överföringsfasen
Om du ser fel som inte är relaterade till konfiguration eller tillägg från tredje part skickar du en supportanmälan med så mycket information som möjligt.
Lös problem med katalogsynkronisering resolvesync
När du utlöser en omsynkronisering av data kan det ta upp till en timme innan data uppdateras och återspeglas i gränssnittskomponenter som livesökning och rekommendationsenheter. Om du fortfarande ser avvikelser mellan din katalog och data i Commerce Store, eller om katalogsynkroniseringen misslyckades, se följande:
Datamatchningsavvikelse
- Visa detaljerad vy för produkten i fråga i sökresultaten.
- Kopiera JSON-utdata och verifiera att innehållet matchar det du har i Commerce-katalogen.
- Om innehållet inte stämmer överens gör du en mindre ändring i produkten i katalogen, till exempel lägger till ett mellanslag eller en punkt.
- Vänta på en omsynkronisering eller utlöser en manuell omsynkronisering.
Synkronisering körs inte
Om synkroniseringen inte körs enligt ett schema eller inget synkroniseras, se den här KnowledgeBase-artikeln.
Synkroniseringen misslyckades
Om katalogsynkroniseringen har statusen Misslyckades skickar du en supportanmälan.
Utökad loggning
Om du vill ha mer logginformation kan du använda miljövariabler för att utöka loggar med ytterligare data för spårning och felsökning.
Det finns två loggfiler i katalogen var/log/
:
- commerce-data-export-errors.log - om ett fel inträffade under insamlingsfasen
- saas-export-errors.log - om ett fel inträffade under överföringsfasen
Du kan använda miljövariabler för att utöka loggar med ytterligare data för spårning och felsökning.
Kontrollera flödets nyttolast
Inkludera flödets nyttolast i SaaS-exportloggen genom att lägga till miljövariabeln EXPORTER_EXTENDED_LOG=1
när du synkroniserar om flödet.
EXPORTER_EXTENDED_LOG=1 bin/magento saas:resync --feed=products
När åtgärden har slutförts är flödets nyttolast tillgänglig för granskning i SaaS-exportloggen (var/.log/saas-export.log
).
Bevara nyttolast i feed-indexregistret
För dataexporttillägget Commerce SaaS (magento/module-data-exporter
) 103.3.0 och senare behåller direktexportflöden endast de data som krävs i indextabellen. I flödena ingår alla katalog- och lagerstatusflöden.
Att bevara nyttolastdata i indextabellen rekommenderas inte i produktionsmiljöer, men det kan vara användbart i en utvecklarmiljö. Inkludera flödets nyttolast i indexet genom att lägga till miljövariabeln PERSIST_EXPORTED_FEED=1
när du synkroniserar om flödet.
PERSIST_EXPORTED_FEED=1 bin/magento saas:resync --feed=products
Kör profileraren för att felsöka långsamma prestanda
Om omindexeringsprocessen för ett specifikt flöde tar en orimlig tid, kör du profileraren för att samla in ytterligare data som kan vara användbara för supportteamet.
Kör profileraren genom att lägga till miljövariabeln EXPORTER_PROFILER=1
när du kör kommandot reindex.
EXPORTER_PROFILER=1 bin/magento indexer:reindex catalog_data_exporter_products
Profileringsdata lagras i dataexportloggen (var/log/commerce-data-export.log
) i följande format:
<Provider class name>, <# of processed entities>, <execution time im ms>, <memory consumption in Mb>