Logbestanden controleren en problemen oplossen
De extensie data export biedt logbestanden voor het bijhouden van gegevensvergaring- en synchronisatieprocessen.
Logboeken
Logbestanden zijn beschikbaar in de map var/log
op de Commerce-toepassingsserver.
commerce-data-export.log
data-export-errors.log
saas-export.log
saas-export-errors.log
Als u de verwachte gegevens voor een dienst van Adobe Commerce niet ziet, gebruik de foutenlogboeken voor de uitbreiding van de gegevensuitvoer om te bepalen waar het probleem voorkwam. Ook, kunt u logboeken met extra gegevens voor het volgen en het oplossen van problemen uitbreiden. Zie Uitgebreid registreren.
Logbestandsindeling
Elke logrecord heeft de volgende structuur.
[<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`>"
} [] []
De volgende lijst beschrijft de verrichtingstypes die in de logboeken kunnen worden geregistreerd.
bin/magento saas:resync --feed=products
bin/magento cron:run --group=index
bin/magento cron:run --group=saas_data_exporter
(elke "*_data_exporter"-structuurgroep)bin/magento saas:resync --feed=categories
bin/magento cron:run --group=index
bin/magento cron:run --group=saas_data_exporter
(elke "*_data_exporter"-structuurgroep)Voorbeelden van logboekregistratie
Tijdens een volledige resync, wordt de vooruitgang gevolgd en geregistreerd elke 30 seconden door gebrek. Hier volgt een voorbeeld van een logbestandvermelding.
{
"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"
}
In dit voorbeeld bieden de status
-waarden informatie over de synchronisatiebewerking:
-
"Progress 2/5"
geeft aan dat 2 van 5 herhalingen zijn voltooid. Het aantal herhalingen is afhankelijk van het aantal geëxporteerde entiteiten. -
"processed: 200"
geeft aan dat 200 items zijn verwerkt. -
"synced: 100"
geeft aan dat 100 items naar SaaS zijn verzonden."synced"
is niet gelijk aan"processed"
. Hier volgt een voorbeeld:"synced" < "processed"
betekent dat de voederlijst geen veranderingen in het punt, in vergelijking met de eerder gesynchroniseerde versie ontdekte. Dergelijke items worden genegeerd tijdens de synchronisatiebewerking."synced" > "processed"
dezelfde entiteit-id (bijvoorbeeldProduct ID
) kan meerdere waarden in verschillende bereiken hebben. Eén product kan bijvoorbeeld worden toegewezen aan vijf websites. In dit geval kun je 1 verwerkt object en 5 gesynchroniseerde objecten hebben.
code language-none |
---|
|
Logbestanden met New Relic weergeven en problemen oplossen
Als u Adobe Commerce-logbestanden opslaat in de New Relic, kunt u parseringsregels toevoegen om de leesbaarheid en zoekervaring te verbeteren.
-
Meld u aan bij New Relic.
-
Ga naar
Logs => Parsing
. -
Klik op
Create parsing rule
. -
Vorm de het ontleden regel door de volgende waarden toe te voegen.
-
Logboeken van de Filter die op NRQL worden gebaseerd
filePath LIKE '%commerce-data-export%.log'
-
het Ontwerpen regel
\[%{DATA:timestamp}\] report.%{DATA:logLevel} %{GREEDYDATA:feed:json}
-
In dit voorbeeld wordt een regel toegevoegd waarmee u New Relic-logbestanden kunt opvragen op basis van een bepaald type feed, bewerking, enzovoort.
koord van de de vraagvraag van het Voorbeeld - feed.feed:"products" and feed.status:"Complete"
Problemen oplossen
Als er gegevens ontbreken of onjuist zijn in Commerence Services, controleert u de logboeken om te zien of er een probleem is opgetreden tijdens de synchronisatie van de Adobe Commerce-instantie naar het Commerce Service-platform. Indien nodig, gebruik uitgebreide registreren om extra informatie aan logboeken voor het oplossen van problemen toe te voegen.
- commerce-data-export-errors.log - als er een fout is opgetreden tijdens de verzamelfase
- saas-export-errors.log - als een fout tijdens het overbrengen van fase gebeurde
Als u fouten niet verwant met configuratie of derdeuitbreidingen ziet, leg a steunkaartjemet zoveel mogelijk informatie voor.
Synchronisatieproblemen met catalogi oplossen resolvesync
Wanneer u een gegevensresync teweegbrengt, kan het tot een uur voor de gegevens duren om bij te werken en in UI componenten zoals levende onderzoek en aanbeveling eenheden worden weerspiegeld. Raadpleeg het volgende als u nog steeds discrepanties ziet tussen uw catalogus en de gegevens in de Commerce-winkel of als de catalogussynchronisatie is mislukt:
Gegevensafwijking
- Geef de gedetailleerde weergave van het desbetreffende product weer in de zoekresultaten.
- Kopieer de JSON-uitvoer en controleer of de inhoud overeenkomt met de inhoud in de catalogus van Commerce .
- Als de inhoud niet overeenkomt, brengt u een kleine wijziging aan in het product in de catalogus, zoals het toevoegen van een spatie of een punt.
- Wacht op een resync of teweegbrengen een hand opnieuw.
Synchronisatie wordt niet uitgevoerd
Als de synchronisatie niet op een programma loopt of niets wordt gesynchroniseerd, zie dit 🔗 artikel 0} KnowledgeBase {.
Synchronisatie is mislukt
Als de catalogussynchronisatie een status van Ontbroken heeft, leg a steunkaartjevoor.
Uitgebreide logboekregistratie
Voor extra logboekinformatie, kunt u milieuvariabelen gebruiken om logboeken met extra gegevens voor het volgen en het oplossen van problemen uit te breiden.
De map var/log/
bevat twee logbestanden:
- commerce-data-export-errors.log - als er een fout is opgetreden tijdens de verzamelfase
- saas-export-errors.log - als een fout tijdens het overbrengen van fase gebeurde
U kunt omgevingsvariabelen gebruiken om logbestanden uit te breiden met extra gegevens voor het bijhouden en oplossen van problemen.
Controleer de lading van de voer
Neem de payload van de feed op in het SaaS-exportlogboek door de omgevingsvariabele EXPORTER_EXTENDED_LOG=1
toe te voegen wanneer u de feed opnieuw synchroniseert.
EXPORTER_EXTENDED_LOG=1 bin/magento saas:resync --feed=products
Nadat de verrichting voltooit, is de voederlading beschikbaar voor overzicht in het de uitvoerlogboek van SaaS (var/.log/saas-export.log
).
Payload behouden in voederindextabel
Voor de Commerce SaaS-extensie voor gegevensuitvoer (magento/module-data-exporter
) 103.3.0 en hoger, behouden directe exportfeeds alleen de minimaal vereiste gegevens in de indextabel. De feeds bevatten alle statusfeeds voor catalogi en voorraden.
Het behouden van ladingsgegevens in de indexlijst wordt niet geadviseerd in productiemilieu's, maar het kan in een ontwikkelaarmilieu nuttig zijn. Neem de payload van de feed op in de index door de omgevingsvariabele PERSIST_EXPORTED_FEED=1
toe te voegen wanneer u de feed opnieuw synchroniseert.
PERSIST_EXPORTED_FEED=1 bin/magento saas:resync --feed=products
Profiel uitvoeren om trage prestaties op te lossen
Als het opnieuw indexproces van een specifieke voer een onredelijke hoeveelheid tijd vergt, stel profiler in werking om extra gegevens te verzamelen die voor het Team van de Steun nuttig zouden kunnen zijn.
Voer de analyse uit door de omgevingsvariabele EXPORTER_PROFILER=1
toe te voegen wanneer u de opdracht Opnieuw indexeren uitvoert.
EXPORTER_PROFILER=1 bin/magento indexer:reindex catalog_data_exporter_products
Profilergegevens worden opgeslagen in het logboek voor gegevensexport (var/log/commerce-data-export.log
) in de volgende indeling:
<Provider class name>, <# of processed entities>, <execution time im ms>, <memory consumption in Mb>