Shopify Flow'n virheiden vianmääritys
Tässä asiakirjassa kuvataan yleiset virheet ja rajoitukset, miksi niitä ilmenee ja miten ne ratkaistaan. Flow'ssa voi esiintyä kahdenlaisia virheitä, pysyviä virheitä ja ohimeneviä virheitä.
Tällä sivulla
Virheet työnkulkuja muokattaessa
Kun muokkaat työnkulkua, työnkulun tallentamisen estäviä virheitä saattaa ilmetä. Seuraavat ovat yleisiä virheitä, joita voi ilmetä työnkulkua muokattaessa:
Tietoja ei löytynyt
Kun lisäät uuden toiminnon työnkulkuun, saatat saada seuraavan virheilmoituksen: Data not found
:

Tämä virhe ilmenee, koska monet toiminnot (mukaan lukien tuotetunnisteiden lisääminen) edellyttävät Shopify-resurssia (esimerkiksi tuotetta). Jos tämä resurssi ei ole käytettävissä, toimintoa ei voida suorittaa. Yleensä työnkulut voivat sisältää tietoja, jotka ovat samanlaisia kuin edellytetyt tiedot, mutta ne eivät itse asiassa tarjoa sitä, mitä tarvitaan.
Seuraavissa osioissa kuvataan yleisiä skenaarioita, jotka voivat aiheuttaa tämän virheen, ja niiden ratkaisemista.
Ongelma 1: Hae tiedot -toiminto toimitti luettelon, kun tarvitaan yksittäinen tuote
Usein työnkulku tarjoaa luettelon Shopify-resursseista, mutta toiminto sallii vain yhden resurssin. Esimerkiksi työnkulku tarjoaa luettelon tuotteista Hanki tuotetietoja -toiminnon kautta, mutta Lisää tuotetunnisteet -toiminto edellyttää vain yhtä tuotetta.
Voit korjata tämän virheen lisäämällä Kullekin tuotteelle -toiminnon, joka toistuu silmukkana luettelossa, ja kutsumalla luettelon kunkin tuotteen toimintoa. Tämä esimerkki havainnollistaa sekä virhettä että ratkaisua, jossa käytetään Kullekin tuotteelle -toimintoa:

Ongelma 2: käynnistin toimitti luettelon, vaikka tarvitaan yksittäinen tuote
Samanlainen virhe voi tapahtua, kun toiminto edellyttää yhtä resurssia, mutta käynnistin tarjoaa luettelon. Esimerkiksi Merkitse jakelutilaus jaelluksi -toiminto edellyttää täyttötilausta, mutta käynnistin on peräisin tilauksesta, joka tarjoaa luettelon täyttötilauksista.
Voit korjata tämän virheen samaan tapaan kuin ongelman 1 – eli lisäämällä Kullekin tuotteelle -toiminnon, joka toistuu silmukkana luettelossa, ja kutsumalla luettelon kunkin tuotteen toimintoa:

Voit myös käyttää toista käynnistintä, joka tarjoaa vaaditun resurssin. Voit käyttää esimerkiksi Tilaus luotu -käynnistimen sijasta Täyttötilaus on valmis täytettäväksi -käynnistintä, joka tarjoaa yhden täyttötilauksen.

Ongelma 3: Asetettu aika -käynnistin ei toimittanut tietoja
Asetettu aika -käynnistin ei tarjoa Shopify-resurssitietoja. Jos yrität yhdistää käynnistimen jälkeen toimintoja, jotka edellyttävät Shopify-resursseja, saat virheilmoituksen.
Voit ratkaista tämän virheen lisäämällä toiminnon, joka tarjoaa tarvittavat tiedot (esimerkiksi Hanki tuotetietoja -toiminnon). Kuten ongelmassa 1 todettiin, sinun on lisättävä myös Kullekin tuotteelle -toiminto, joka suoritetaan silmukkana missä tahansa luettelossa, jonka tiedot hakeva toiminto palauttaa.

Ongelma 4: sovelluskäynnistin ei toimittanut tietoja
Kuten ongelmassa 3, jotkin sovellusten luomat käynnistimet eivät tarjoa vaadittuja Shopify-resurssitietoja. Esimerkiksi Arvostelu luotu -käynnistin voi tarjota sähköpostiosoitteen, mutta ei Asiakas-objektia, jota tarvitaan monissa toiminnoissa, esimerkiksi asiakastunnisteiden lisäämisessä.
Voit korjata tämän virheen hakemalla tarvitsemasi Shopify-resurssin Hae tiedot -toiminnolla. Hanki asiakastietoja -toiminnolla voit esimerkiksi hakea asiakasobjektin käynnistimen tarjoamasta sähköpostiosoitteesta. Kuten muissakin ongelmissa, sinun on lisättävä myös Kullekin tuotteelle -toiminto, joka suoritetaan silmukkana missä tahansa luettelossa, jonka tiedot hakeva toiminto palauttaa.
Jos Hae tiedot -toiminto ei ole vaihtoehto, sinun täytyy ehkä ottaa yhteyttä sovelluksen kehittäjään ja pyytää sitä muokkaamaan käynnistintä siten, että se toimittaa vaaditut tiedot.
Virheet työnkulun suorituksen aikana
Kun työnkulun suorituksessa ilmenee virhe, työnkulun suoritus merkitään epäonnistuneeksi. Virheilmoitus näkyy työnkulun suoritustiedoissa. Seuraavat ovat yleisiä virheitä, joita voi ilmetä työnkulun suorituksen epäonnistuessa:
Ohimenevät virheet
Ohimenevät virheet ovat väliaikaisia virheitä, joita ilmenee, kun Flow ei pysty suorittamaan jotain tehtävää. Flow yrittää suorittaa virheen aiheuttavan toiminnon yhä uudelleen, kunnes se joko onnistuu suorituksessa tai kunnes tehtävän onnistumiselle asetettu aikaraja pysäyttää toiminnon. Jos Flow ei esimerkiksi saa yhteyttä yhteistyökumppaniin yhdistämistoimintoa suorittaessaan, Flow toistaa tehtävän uudelleen useita kertoja ennen kuin luovuttaa.
Uudelleenyritykset jakautuvat ajallisesti siten, että uudelleenyritysten aikaväli edellisiin yrityksiin kasvaa koko ajan. Yleensä kun työnkulussa ilmenee ohimeneviä virheitä, työnkulku pysyy käynnissä pitkän ajan yrittäessään suorittaa tehtävän yhä uudelleen.
Jos tehtävän uudelleenyritys onnistuu, työnkulku jatkuu. Jos tehtävän uudelleenyrityksessä on pysyvä virhe, työnkulku epäonnistuu. Jokaisessa työnkulun osassa on 36 tunnin yhdistetty yläraja suoritukselle. Jos vaihe, jossa ilmenee ohimeneviä virheitä, ei onnistu ennen kuin sen aikaraja tulee vastaan, työnkulku epäonnistuu.
Työnkulut, joissa on odotusvaiheita, jaetaan osioihin, mikä vaikuttaa siihen, miten työnkulun aikarajat lasketaan. Jokainen osio on joukko tehtäviä, jotka suoritetaan yhdessä. Jos työnkulussa on oma 36 tunnin aikaraja. Jos työnkulussa on esimerkiksi yhden tunnin odotusvaihe, odotusvaihetta edeltävät tehtävät suoritetaan yhdessä osiossa ja odotusvaiheen jälkeiset tehtävät yhdessä toisessa osiossa. Jos työnkulussa on useita odotusvaiheita, odotusvaiheiden väliset tehtävät suoritetaan yhdessä osiossa. Työnkulkuja, joissa ei ole odotusvaihetta, pidetään yhtenä osiona.
Satunnaiset ohimeneviä virheitä ovat yleisiä. Jos sinulla kuitenkin on työnkulku, jossa sama ohimenevä virhe ilmenee toistuvasti työnkulun ajossa, työnkulku on ehkä konfiguroitava uudelleen.
Vaiheen aikakatkaisu
Step timed out
-virheitä ilmenee yleensä silloin, kun jokin työnkulun tehtävistä yrittää tehdä kyselyitä liian suurelle datajoukolle yhdessä osiossa. Tämä virhe ilmenee usein työnkuluissa, joissa se iteroi luetteloita, erityisesti sisäkkäisiä luetteloita, jotka ovat liian suuria noudettavaksi kohtuullisessa ajassa.
Kun tämä virhe ilmenee työnkulussa, käynnistin tai odotusvaihe näkyvät muodossa retrying
.
Voit ratkaista ongelman tarkistamalla ehdot, jotka käyttävät luetteloita ja sisäkkäisiä luetteloita ja varmistamalle, että ne ovat virheettömiä. Yleinen ongelma on, että ehto tarkastaa kaikki tuotteet kaupassa eikä vain tilauksen kuuluvia tuotteita.
5xx-tila
Useimpiin Flow-toimintoihin liittyy HTTP-kutsujen tekeminen. Toisinaan verkko- tai muut palvelinongelmat voivat aiheuttaa HTTP-kutsujen epäonnistumisen, jolloin ne palauttavat virhekoodin väliltä 500–599. Tämän virheen yksittäinen ilmeneminen ei ole vielä ongelma, mutta sen toistuminen saattaa tarkoittaa sitä, että palvelimessa on tehtävän käsittelyyn liittyvä ongelma, eikä ongelma täten välttämättä liity vaiheen konfigurointiin.
Vaikka tämäntyyppinen virhe ilmenee yleisimmin Send HTTP Request -toiminnossa, se voi myös ilmaantua useimmissa tehtävissä.
GraphQL rajoitettuna
Työnkulun tekemän työn kokonaismäärää rajoittavat API-pyyntörajat, jotka määräytyvät osittain sopimuksesi perusteella. Yleensä nämä rajat tulevat vastaan vain, jos työnkulku ole erittäin monimutkainen tai jos siinä on tahaton suunnitteluvirhe. Seuraavassa on esimerkkejä skenaarioista, jotka voivat johtaa tähän virheeseen:
- Liquid tai työnkulun ehdot tutkivat silmukassa luetteloa, jossa on suuria tietomääriä, tarkistaen esimerkiksi HTML-koodia sisältävien metakenttien arvoja.
- Liquid tai työnkulun ehdot tutkivat silmukassa pitkää luetteloa, esimerkiksi suuren kaupan
shop.orders
-luetteloa. - Työnkulku joutuu päättymättömään silmukkaan, jossa sitä ajetaan jatkuvasti uudelleen. Näin voi esimerkiksi käydä, jos työnkulussa käytetään Asiakastunnisteita lisätty -käynnistintä ja siinä on Lisää asiakastunnisteita -toiminto.
Jos raja tulee vastaan, saat GraphQL throttled
-virheilmoituksen. Tämä virhe voi vaikuttaa muihin työnkulkuihin, kun niitä yritetään ajaa, joten tämä virhe tulee korjata välittömästi sen ilmetessä.
Pysyvät virheet
Pysyvät virheet ovat virheitä, jotka ilmenevät, kun Flow ei pysty suorittamaan tehtävää, eikä se pysty yrittämään tehtävän suoritusta uudelleen. Jos Flow ei esimerkiksi pysty lähettämään sähköpostia, koska sähköpostiosoite on virheellinen, se ei yritä lähettää postia uudelleen. Sen sijaan työnkulku epäonnistuu.
Kentät: tunnus on pakollinen, mutta tunnusta ei ole syötetty
Useimmat Shopify-toiminnot edellyttävät yhtä tai useampia resursseja (kuten tuotetta, asiakasta tai tilausta) toimiakseen. Joskus resurssi ei ole käytettävissä, joten toiminto ei toimi suunnitellulla tavalla. Voit esimerkiksi luoda ylläpitäjässä tilauksen, jossa ei ole asiakasta. Jos yrität suorittaa esimerkiksi toiminnon Lisää asiakastunnisteita, toiminto näyttää tämän virheen.
Virheen ehkäisemiseksi voit lisätä ennen toimintoa ehdon, joka tarkistaa onko resurssi olemassa. Jos haluat edellisen esimerkin kaltaisessa tilanteessa lähettää sisäisen sähköpostin samassa työnkulussa kuin Lisää asiakastunnisteita, voit joko määrittää toiminnon ennen vaihetta joka voi johtaa virheeseen, tai voit tehdä jommankumman seuraavista.
Lisää toiminnot rinnakkaisiin haaroihin (jossa vähintään kaksi haaraa johtaa ulos vaiheesta)

Lisää ehto ennen toimintoa tarkistaaksesi, onko asiakas läsnä. Voit esimerkiksi tarkistaa, onko order / customer / id is not empty and exists
.

Flow-sovelluksella ei ole käyttöoikeutta Google Sheets -tiliisi. Yhdistä tili uudelleen.
Google Sheets connector edellyttää, että linkität Google-tilisi Flow'iin, jotta sinulla on oikeus kirjoittaa sheetiin. Tämä virhe voi ilmetä, kun Flow'lla ei ole oikeutta kirjoittaa sheetiin joko siksi, että tilin linkitys Flow'hun on purettu tai koska tili ei pysty käyttämään tätä sheetiä.
Voit ratkaista tämän ongelman varmistamalla, että connectorissa käytettävä tili voi avata sheetin ja että sillä on muokkaukseen tarvittavat käyttöoikeudet. Jos linkitetty tili on väärä, voit purkaa linkityksen ja yhdistää uuden.
Vaiheet:
- Avaa tai luo uusi työnkulku.
- Lisää toiminto.
- Valitse Google Sheets connector.
- Klikkaa Katkaise yhteys ja klikkaa sitten Yhdistä.
Flow-toiminnon vastaanotto siten, että siinä on virheellisiä ominaisuuksia. Asiakas ei hyväksy markkinointia.
Lähetä markkinointisähköposti -toiminto ei lähetä sähköposteja asiakkaille, jotka eivät ole suostuneet vastaanottamaan niitä, ja se epäonnistuu pysyvästi, jos työnkulku yrittää tehdä niin.
Voit ratkaista tämän lisäämällä työnkulkuun ehdon, joka tarkistaa asiakkaiden tilauksen tilan. Voit varmistaa, että asiakkaat ovat suostuneet markkinointisähköpostien vastaanottamiseen ennen niiden lähettämistä. Noudata kohdassa sähköpostin tilaajaluettelon hallinta olevia ohjeita.
Puuttuva [resurssityyppi]-resurssi
Tämä virhe osoittaa, että resurssi, kuten customer
tai order
, poistettiin, ennen kuin työnkulku pystyi noutamaan dataansa. Useimmiten tämä tapahtuu odotusvaiheen jälkeen, mutta tämä on mahdollista myös käynnistimessä, jos resurssi poistetaan hyvin nopeasti käynnistintapahtuman jälkeen.
Ilmoituksen saaminen virheestä
Jos virheet vaikuttavat kaupan toimintaan, voit ottaa käyttöön niitä koskevat ilmoitukset. Virheilmoitukset voidaan luoda minkä tahansa muun työnkulun tavoin käyttämällä Tapahtui työnkulkuvirhe -käynnistintä. Jotta virheilmoitukset eivät aiheuta ylimääräistä hälyä, saat vain yhden ilmoituksen työnkulkuversiota kohti.
Voit aloittaa käyttämällä jotakin seuraavista malleista:
- Saa Shopify-hälytys, kun työnkulun suoritusvirheitä havaitaan
- Saa sähköpostitse ilmoitus, kun työnkulun suoritusvirheitä havaitaan
- Saa Slack-ilmoitus, kun työnkulun suoritusvirheitä havaitaan
Ajojen yrittäminen uudelleen
Joissain tapauksissa työnkulussa voi tapahtua virhe tai suoritus ei ehkä suju odotetusti. Kun olet suorittanut vianmäärityksen ja korjannut ongelmat asiaan liittyvässä työnkulussa, voit yrittää aiempia suorituksia uudelleen korjataksesi aiempien suoritusten tulokset taannehtivasti. Lue lisää työnkulkusuoritusten uudelleen yrittämisestä.
Käyttö (hinta rajoitettu)
Joissain tapauksissa työnkulku tai työnkulut voivat käyttää liian paljon resursseja, ja jotta tämä ei aiheuttaisi ongelmia, Flow rajoittaa kauppasi suorituskertoja, mikä voi aiheuttaa viivästyksiä ja aikakatkaisuvirheitä. Voit korjata tämän kirjoittamalla tehottomat työnkulut uudelleen. Yleensä tämä korjaa ohjelmavirheen, joka esti toivotunlaisen toiminnan.
Käynnissä liian kauan
Tämä viesti kertoo, että työnkulun suorittaminen kestää hyvin kauan. Tämä johtuu yleensä siitä, että käytät työnkulussa suurta tietomäärää, jonka noutaminen kestää Flow'lta kauan.
Esimerkki
Nämä tapaukset aiheuttavat yleensä monimutkaiset pyyntöpolut, jotka kulkevat useiden tuoteluetteloiden läpi (esim. tuotteen sisältämien kaikkien kokoelmien kaikkien metakenttien pyytäminen):

Kaikkien metakenttien kautta kulkevia työnkulkuja voidaan usein parantaa käyttämällä vain tiettyä metakenttää. Useiden sisäkkäisten luetteloiden (esim. tuotteen sisältämien kaikkien kokoelmien kaikki tuotteet) tai erityisen suurten luetteloiden (esim. metakenttämääritelmät, jotka sisältävät kaikkien objektien kaikki metakentät) käyttö on ehkä tahatonta ja oikean kentän (yksittäisen tuotteen tai yhden metakentän) valitseminen voi parantaa tehokkuutta huomattavasti. Muissa tapauksissa "Hanki tuotteen/tilauksen/asiakkaan tiedot" ‑toiminnon käyttäminen kyselysuodattimella voi merkittävästi vähentää käytettyjen objektien määrää poistamatta haluttua sisältöä.
Liikaa käsiteltävää dataa
Tämä viesti kertoo, että työnkulun suoritukset tuottavat suuren määrän tietoa. Tämä johtuu yleensä monimutkaisista ehdoista, jotka tarkistavat useita kenttiä – ja yleensä useiden listakerrosten kenttien tarkistamisesta.
Esimerkki
Esimerkiksi ehto "Vähintään yksi tämän asiakkaan tunniste vähintään yhdestä tilauksen rivikohdasta vähintään yhdessä rivikohdan tunnisteessa" voi johtaa moniin tarkistuksiin ja suureen tietomäärään tarkistusten tulosten näyttämiseksi:

Automaattiset uudelleenyritykset epäonnistuvat
Tämä viesti kertoo, että työnkulun suoritukset epäonnistuvat toistuvasti jonkin väliaikaisen ongelman takia, mutta ne yleensä onnistuvat uudelleen yritettäessä. Tämä johtuu usein siitä, että joko Shopifyn Admin API tai yhteistyökumppanin sovellus joutuu käsittelemään suurta pyyntömäärää.