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ä.

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:

Tietoja ei löytynyt -virhe

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:

Tietoja ei löytynyt -virhe

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:

Ratkaisu tilausten täyttämiseen

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.

Täyttötilaus on valmis täytettäväksi -käynnistimen esimerkki

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.

Esimerkki puuttuvasta vaaditusta tuotteesta

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)

Esimerkki, jossa näkyy kaksi rinnakkaista toimintoa

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

Esimerkki, jossa näkyy ehto, joka etsii tunnusta

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:
  1. Avaa tai luo uusi työnkulku.
  2. Lisää toiminto.
  3. Valitse Google Sheets connector.
  4. 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:

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):

long running workflow example
Tämä virhe esiintyy usein työnkulun ajoituksen käynnistimen aikakatkaisun kanssa.

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:

too much data workflow example

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ää.

Etkö löydä hakemaasi vastausta? Autamme mielellämme.