Skip to main content
EtusivuBlogiTracking API:n luotettavuusopas: kuinka seurata käytettävyyttä, tietojen ajantasaisuutta ja käyttöönoton jälkeen puuttuvia päivityksiä

Tracking API:n luotettavuusopas: kuinka seurata käytettävyyttä, tietojen ajantasaisuutta ja käyttöönoton jälkeen puuttuvia päivityksiä

17TRACK

Tuotantokäyttöönoton jälkeen seuraa seurantapalvelun API:n luotettavuutta kolmella erillisellä tasolla: onnistuvatko pyynnöt, saapuvatko lähetystiedot hyväksyttävällä viiveellä ja saavuttavatko päivitykset omat järjestelmäsi ilman aukkoja. Onnistunut API-vastaus ei todista, että seurantatiedot ovat tuoreita tai että asiakasviesti toimitettiin. Määritä kullekin tasolle omat mittarit, hälytykset ja palautusmenettely.

Tracking API Reliability Guide How to Monitor Uptime Data Freshness

Tämä opas on tarkoitettu insinööreille ja operatiivisille tiimeille, jotka vastaavat tuotannossa olevasta lähetysten seurantaintegraatiosta. Tavoitteena on havaita näkyvyyden rikkoutuminen ennen kuin siitä tulee tukiongelma ja selvittää sitten, liittyykö vika kuljetusyhtiön syötteeseen, seurantapalveluun, webhook-vastaanottimeesi vai myöhempään käsittelyyn.

Määritä, mitä luotettava seurantapäivitys tarkoittaa

Aloita koko toimitusketjusta: lähetyksen rekisteröinti, tietojen haku palveluntarjoajalta, API-vastaus tai webhook-toimitus, sisäinen käsittely, tietokantaan tallennus ja asiakkaalle näytettävä tila. Jos lähetät ilmoituksia, käsittele sitä erillisenä vaiheena sen sijaan, että olettaisit tallennetun päivityksen saavuttaneen ostajan.

Kirjaa jokaiselle vaiheelle vastuuhenkilö ja todiste, joka osoittaa onnistumisen. Se, että palveluntarjoaja hyväksyy seurantanumeron, osoittaa rekisteröinnin hyväksytyksi, mutta ei sitä, että kuljetusyhtiö on julkaissut tapahtuman. Webhookin onnistuneen HTTP-vastauksen vastaanottaminen osoittaa, että päätepisteesi kuittasi sen, mutta ei välttämättä sitä, että työntekijäsi tallensi päivityksen.

Googlen SRE-ohjeistus kuvaa viiveen, liikenteen, virheet ja kyllästymisen seurannan neljäksi kultaiseksi signaaliksi. Nämä signaalit ovat hyödyllisiä integraatioinfrastruktuurillesi, mutta lähetysten seuranta edellyttää myös tuoreuden ja täydellisyyden tarkistuksia, koska näennäisesti terve päätepiste voi tarjota muuttumatonta tai puutteellista tietoa.

TasoMihin kysymykseen vastataanKerättävä näyttö
API:n saatavuusVoiko integraatio suorittaa kelvollisen toiminnon?Siirtotulos, sovellustulos, viive, aikakatkaisujen määrä
Tietojen tuoreusKuinka paljon tiedot ovat jäljessä?Tapahtuma-aika, havaintoaika, vastaanottoaika, tallennusaika
Päivitysten täydellisyysSaapuiko jokainen odotettu ja haettavissa oleva päivitys kohteeseen?Täsmäytysten erot, käsittelytiedot, ratkaisemattomat aukot
Asiakkaan näkyvyysVastaako näytetty tila tallennettua lähetystilaa?Lukupolun tarkistukset, välimuistin ikä, ilmoitusten käsittelytulokset

Mittaa integraatio ennen hälytysten määrittämistä

Pidä operatiivista tietuetta, joka yhdistää lähetyksen rekisteröintiyritykseen, saapuviin päivityksiin, käsittely-yrityksiin ja lopputilaan. Käytä korrelaatioon sisäistä lähetys­-tunnistetta; pidä seurantanumerot ja asiakastiedot mahdollisuuksien mukaan poissa laajasti saatavilla olevista lokitiedoista.

Hyödyllisen vähimmäistietueen tulee sisältää:

  • Sisäinen lähetys-ID, kuljetusyhtiön tunniste sen ollessa tiedossa, integraatiotili ja ympäristö.
  • Pyyntö- tai korrelaatio-ID, toiminnon tyyppi, yritysaika, tulosluokka ja kesto.
  • Palveluntarjoajan tapahtuma-ID sen ollessa saatavilla sekä alkuperäinen tapahtuma-aikaleima ja aikavyöhyketiedot.
  • Webhookin vastaanottoaika, kestävän tallennuksen aika, käsittelyn valmistumisaika ja näytettävyyden aika, jos mitattavissa.
  • Hyötykuorman skeeman versio sen ollessa saatavilla, jäsennystulos, duplikaattien poiston tulos ja virheen syy.

Säilytä alkuperäinen hyötykuorma asianmukaisten käyttöoikeus- ja säilytyskontrollien alaisena, kun sitä tarvitaan tutkintaan tai uudelleenajoa varten. Älä kirjaa valtuutusotsakkeita tai salaisuuksia. Käytä metriikoissa rajattuja ulottuvuuksia, kuten kuljetusyhtiötä ja tulosluokkaa; yksittäiset seurantanumerot kuuluvat haettaviin tietueisiin, eivät suuren kardinaliteetin metriikkatunnisteisiin.

Pidä tapahtuma-aika erillään havaintoajasta. OpenTelemetry-lokien tietomalli tekee tämän eron eksplisiittisesti Timestamp- ja ObservedTimestamp-kenttien kautta. Saman eron soveltaminen seurantatietueisiin auttaa estämään myöhään raportoidun kuljetusyhtiön tapahtuman tulkitsemisen hitaaksi tietokantakirjoitukseksi.

Seuraa käytettävyyttä sovelluksesi näkökulmasta

Käytä sekä todellista tuotantoliikennettä että vähäliikenteistä synteettistä tarkistusta. Tuotantoliikenne paljastaa todellisen asiakasvaikutuksen. Synteettinen tarkistus voi havaita vikoja tuotantoliikenteen ollessa hiljaista, kunhan se käyttää dokumentoitua, tuhoamatonta toimintoa ja noudattaa palveluntarjoajan käyttörajoja.

Hyödyllinen pyyntöjen onnistumisindikaattori on:

Onnistuneet kelvolliset toiminnot / Kaikki kelvolliset yritetyt toiminnot

Määritä ”onnistunut” sekä HTTP-tilakoodin että dokumentoidun sovellustason tuloksen perusteella. Jotkin rajapinnat voivat palauttaa onnistuneen HTTP-vastauksen ja ilmoittaa samalla epäonnistuneesta toiminnosta rungossa. Mittaa erätoiminnoissa sekä kohdetason että pyyntötason tulokset.

Pidä virheistä kaksi näkymää. Asiakasvaikutuksen näkymään kuuluu kaikki, mikä estää sovellustasi suorittamasta tehtäväänsä. Diagnostiikkanäkymässä erotellaan palveluntarjoajan virheet, verkkovirheet, todennusongelmat, virheelliset syötteet sekä kiintiö- tai nopeusrajoitusvastaukset. Vanhentunut tunnistetieto ei ehkä ole palveluntarjoajan käyttökatko, mutta integraatiollesi se on silti käyttökatko.

  • Viive: Seuraa p50-, p95- ja p99-arvoja, kun liikennemäärä tukee mielekkäitä prosenttipisteitä. Mittaa aikakatkaisut erikseen, jotta nopeat virheet eivät saa viivettä näyttämään terveeltä.
  • Liikenne: Vertaa pyyntöjen ja takaisinsoittojen määrää lähetysrekisteröinteihin ja aktiivisten lähetysten määrään.
  • Virheet: Erottele siirtovirheet, sovellusvirheet, jäsennysvirheet ja myöhemmän tallennuksen virheet.
  • Kyllästyminen: Seuraa yhteyspoolien käyttöä, työntekijäkapasiteettia, jonon pituutta, vanhinta jonossa olevaa kohdetta ja käytettävissä olevaa pyyntöbudjettia.

Älä esitä näitä mittauksia palveluntarjoajan sopimukseen perustuvana käytettävyytenä, elleivät ne käytä sopimuksen täsmällisiä määritelmiä. Havaitsemasi integraation saatavuus ja toimittajan palvelutasosopimus vastaavat eri kysymyksiin.

Mittaa tuoreutta sekoittamatta hiljaisuutta vikaan

Liikkumaton lähetys ei ole automaattisesti vanhentunut. Kansainvälinen kuljetus, luovutukset, viikonloput ja kuljetusyhtiöiden skannauskäytännöt voivat aiheuttaa oikeutettuja aukkoja. Seurantaongelmana on erottaa ”mitään uutta ei tapahtunut” tilanteesta ”uutta tietoa on olemassa, mutta järjestelmämme ei ole vastaanottanut sitä”.

Käytä erillisiä kelloja erillisille viiveille

  • Viimeisimmän tapahtuman ikä: Nykyhetki miinus viimeisimmän kuljetusyhtiön tapahtuman aika. Tämä kuvaa lähetyksen näkyvyyttä, ei välttämättä integraation suorituskykyä.
  • Vastaanottoviive: Vastaanottoaikasi miinus tapahtuma-aika. Tämä sisältää ylemmän tason raportointi- ja hakemisviiveet, kun välivaiheiden aikaleimoja ei ole saatavilla.
  • Sisäinen käsittelyviive: Kestävän käsittelyn valmistumisaika miinus vastaanottoaika. Tämä eristää järjestelmäsi sisäisen työn.
  • Näyttöviive: Asiakkaalle näkyvä saatavuusaika miinus käsittelyn valmistumisaika. Tämä voi paljastaa välimuisti- tai lukumalliongelmia.
  • Varmennuksen ikä: Nykyhetki miinus viimeisimmän onnistuneen uutta tietoa koskevan tarkistuksen aika. Tämä mittaa tarkistustoimintaa, ei todista kuljetusyhtiön syötteen olevan ajan tasalla.

Laske palveluntarjoajakohtainen syötön viive vain, jos tarvittava palveluntarjoajan aikaleima on olemassa ja sen merkitys on dokumentoitu. Ilman sitä vastaanottoviivettä ei voida oikeudenmukaisesti kohdistaa yhdelle osapuolelle.

Normalisoi aikaleimat yhdenmukaiseen aikavyöhykkeeseen säilyttäen niiden alkuperäisen esitysmuodon. Merkitse puuttuvat aikavyöhyketiedot, tulevaisuuteen ajoitetut tapahtumat ja kellojen epäjohdonmukaisuudet. Älä muuta negatiivista viivettä hiljaisesti nollaksi; tutki se tai luokittele se aikaleadun ongelmaksi.

Vertaa samankaltaisia lähetyksiä

Muodosta tuoreusnäkymät kuljetusyhtiön, palvelun tai reitin ollessa tiedossa, lähetyksen tilan ja rekisteröinnistä kuluneen ajan mukaan. Erota ensimmäistä tapahtumaansa odottavat uudet lähetykset jo kuljetuksessa olevista lähetyksistä. Sulje toimitetut lähetykset aktiivisen liikkeen tarkistuksista operatiivisten sääntöjesi mukaisesti, mutta säilytä työnkulun edellyttämä toimituksen jälkeinen seuranta.

Aseta alustavat raja-arvot liiketoimintavaatimusten ja havaitun käyttäytymisen perusteella, älä keksityn yleisen päivitysvälin perusteella. Paikalliseen toimitukseen sopiva raja-arvo voi aiheuttaa hälytysmelua rajat ylittävässä luovutuksessa. Toisaalta laaja verkoston keskiarvo voi peittää yhtä kuljetusyhtiötä koskevan ongelman.

Merkitse jokaiseen tuoreuspaneeliin sen kattavuus. Jos tapahtuma-aikaleimat puuttuvat osalta kohteista, näytä tämä joukko erikseen sen sijaan, että jäljelle jäävät lähetykset näyttäisivät edustavan kaikkea liikennettä.

Etsi puuttuvat päivitykset täsmäytyksen avulla

Pelkkä webhookien määrä ei voi osoittaa täydellisyyttä. Hiljainen liikenne voi olla normaalia, ja onnistunut webhook-vastaus voi peittää myöhemmän käsittelyvirheen. Täsmäytyksessä verrataan sitä, mitä vertailulähde tällä hetkellä näyttää, siihen, mitä järjestelmäsi on tosiasiassa tallentanut tai käsitellyt.

  1. Määritä kelvollinen joukko. Sisällytä rekisteröidyt ja aktiivisesti seurattavat lähetykset. Seuraa hylättyjä rekisteröintejä ja keskeytettyä seurantaa erikseen, jotta ne eivät katoa operatiivisesta raportoinnista.
  2. Valitse vertailulähde. Jos dokumentoitu API sallii sen, hae nykyiset seurantatiedot riippumatta webhookien käsittelystä. Kuljetusyhtiöiden seurantaverkkosivut voivat auttaa yksittäisten tapausten tutkimisessa, mutta niistä ei pidä tehdä automaattisen kaavinnan riippuvuutta ilman lupaa.
  3. Lisää armonaika. Anna normaalien toimitus- ja käsittelyviiveiden kulua ennen kuin luokittelet eron epäillyksi aukoksi.
  4. Vertaa samanlaisia asioita. Yhdistä tuetut tapahtumatunnisteet tai käytä dokumentoitua normalisointisääntöä aikaleimoille, tiloille, sijainneille ja kuvauksille.
  5. Palauta turvallisesti. Aja säilytetyt viestit uudelleen tai hae sallitut päivitykset normaalin idempotentin käsittelypolun kautta.
  6. Vahvista kohde. Varmista, että tietokanta ja asiakkaalle näkyvä näkymä on korjattu, ei vain sitä, että palautustyö suoritettiin.

Sisäinen indikaattori voidaan ilmaista näin:

Kelvolliset täsmäytetyt lähetykset, joissa on ratkaisemattomia eroja / Kaikki kelvolliset täsmäytetyt lähetykset

Kutsu tätä ratkaisemattomien täsmäytysaukkojen määräksi, älä yleiseksi puuttuneiden tapahtumien määräksi. Jos vertailulähde näyttää vain viimeisimmän tilan, se ei voi todistaa jokaisen historiallisen tapahtuman saapuneen. Jopa täsmäävä lopullinen tila voi peittää väliin jääneen välitavoitteen.

Aloita ositetulla otoksella, joka kattaa kuljetusyhtiöt, lähetyksen iät ja tilat. Laajenna vaikutuksen alaisten segmenttien kattavuutta häiriön aikana dokumentoitujen rajojen puitteissa. Raportoi sekä tarkistettujen määrä että eroja sisältävien määrä, jotta pientä otosta ei luulla täydelliseksi kattavuudeksi.

Tee webhookien vastaanotosta palautuva

Suunnittele vastaanotin validoimaan saapuvat pyynnöt ja tallentamaan hyväksytyt viestit kestävästi ennen niiden kuittaamista palveluntarjoajan dokumentoidun toimitussopimuksen mukaisesti. Pidä hitaampi liiketoimintalogiikka käytännössä erillisessä työntekijässä.

Varmista todelliset integraatiosäännöt sen sijaan, että olettaisit ne: todennus tai allekirjoituksen validointi, kuittausvaatimukset, pyynnön aikakatkaisu, uudelleenyritysehdot, uudelleenyritysten kesto, järjestys ja uudelleenajon saatavuus. Nämä yksityiskohdat määrittävät, millaisen palautuksen sovelluksesi on tarjottava.

  • Suunnittele duplikaatit odotetuiksi: Käytä dokumentoitua tapahtuma-ID:tä sen ollessa saatavilla. Muussa tapauksessa luo huolellisesti rajattu duplikaatinpoistoavain ja testaa se aidosti samankaltaisia tapahtumia vastaan.
  • Käsittele väärässä järjestyksessä toimitetut tapahtumat: Säilytä tapahtumahistoria ja käytä eksplisiittisiä siirtymäsääntöjä sen sijaan, että korvaisit lähetystilan sokeasti viimeksi vastaanotetulla viestillä.
  • Eristä virheet: Säilytä käsittelemättömät viestit virhetietoineen ja tarjoa hallittu uudelleenohjausprosessi.
  • Erota tilan palautus sivuvaikutuksista: Tapahtuman uudelleenajo ei saa automaattisesti lähettää vanhaa toimitusviestiä uudelleen tai toistaa muuta asiakkaalle näkyvää toimintoa.

Jos integraatiosi käyttää 17TRACK-palvelua, käytä virallista Tracking API -dokumentaatiota toteutuksen viitteenä ja tarkista integraatioosi sovellettavat vaatimukset. Tracking API -tuotesivu tarjoaa tuoteyhteyden, mutta seurantaraja-arvojen ja palautusoletusten tulee perustua dokumentoituun toimintaan, palvelusopimukseesi ja tuotantomittauksiin — ei tuotekuvauksiin.

Muuta koontinäytöt toimiviksi hälytyksiksi

Jokaisen hälytyksen tulee yksilöidä vaikutuksen alainen joukko, todennäköinen vian vaihe, liiketoimintavaikutus ja ensimmäinen tutkintavaihe. Yleinen ”seuranta on vanhentunutta” -hälytys antaa harvoin tarpeeksi tietoa toimimiseen.

SignaalimalliEnsimmäinen tutkintaPäävastuullinen
Pyynnöt epäonnistuvat useilla kuljetusyhtiöilläTarkista tunnistetiedot, verkko, rajat ja palveluntarjoajan vastauksetIntegraation tai alustan päivystäjä
Takaisinsoitot saapuvat, mutta käsittelyikä kasvaaTarkista työntekijät, tietokannan tila ja eristetyt viestitSovelluskehitys
Yhdellä kuljetusyhtiöllä on poikkeuksellisia tuoreusaukkojaVertaa kohortteja ja ota näytteitä vertailuseurantatietueistaSeurantaoperaatiot yhdessä kehityksen kanssa
Tallennettu tila on ajan tasalla, mutta näyttö on vanhaTarkista välimuistit, lukumallit ja käyttöliittymän hakuAsiakkaalle näkyvästä sovelluksesta vastaava tiimi

Käytä yhtäjaksoisia raja-arvojen ylityksiä ja vähimmäisotoskokoja melun vähentämiseksi. Saatavuus- ja käsittelytavoitteissa virhebudjetti voi auttaa erottamaan lyhyen poikkeaman häiriöstä, joka kuluttaa liian suuren osan sallituista virheistä. Pidä kuljetusyhtiön tietojen tuoreustavoitteet erillään tavoitteista, joita insinööritiimisi hallitsee suoraan.

Käytä palautusohjetta, joka todistaa valmistumisen

Kun häiriö alkaa, määritä viimeisin tunnettu terve piste ja säilytä olennaiset tietueet. Selvitä, vaikuttavatko häiriöt uusiin rekisteröinteihin, saapuviin viesteihin, käsittelyyn vai näyttöpäivityksiin. Arvioi sitten vaarassa olevien lähetysten määrä sen sijaan, että raportoisit vain pyyntöjen lukumäärän.

Palauta vikaantunut vaihe, aja viestit uudelleen tai hae ne uudelleen dokumentoitujen rajojen puitteissa ja suorita täsmäytys vaikutuksen alaiseen joukkoon. Sulje häiriö vasta, kun jonon ikä on palautunut normaaliksi, ratkaisemattomat aukot on käsitelty ja asiakkaalle näkyvä tila tarkistettu. Kirjaa erikseen historialliset päivitykset, joita ei voida palauttaa.

Testaa prosessi hallituilla vioilla: saavuttamattomissa oleva vastaanotin, virheellinen hyötykuorma, työntekijäkatko, duplikaattitapahtuma, väärässä järjestyksessä saapuva tapahtuma ja vanhentunut tunnistetieto. Testi läpäistään, kun tiimi havaitsee ongelman, tunnistaa vastuullisen tahon, palauttaa tiedot ja välttää päällekkäiset sivuvaikutukset — ei vain silloin, kun päätepisteeseen pääsee jälleen.

UKK

Voiko API palauttaa onnistuneita vastauksia, vaikka seurantatiedot ovat vanhentuneita?

Kyllä. Pyynnön onnistuminen osoittaa, että toiminto suoritettiin rajapinnan sääntöjen mukaisesti. Se ei osoita, että kuljetusyhtiö julkaisi uuden skannauksen tai että jokainen myöhempi järjestelmä käsitteli tuloksen. Seuraa tuoreutta ja päästä päähän tapahtuvaa käsittelyä erikseen.

Kuinka usein lähetykset tulisi täsmäyttää?

Valitse tiheys hyväksyttävän havaitsemisviiveen, aktiivisten lähetysten määrän, pyyntöbudjetin ja dokumentoitujen rajojen perusteella. Käytä tiheämpiä tarkistuksia operatiivisesti herkille segmenteille ja laajempaa ajoitettua tarkistusta kattavuuden varmistamiseksi. Kaikille kuljetusyhtiöille ja työnkuluille ei ole yhtä sopivaa aikaväliä.

Tarkoittaako webhook-toiminnan puuttuminen, että integraatio on rikki?

Ei. Uusia tapahtumia ei ehkä ole. Vertaa takaisinsoittojen toimintaa aktiivisten lähetysten määrään, viimeaikaisiin malleihin, vastaanottimen terveyteen ja tuettuun riippumattomaan hakutarkistukseen. Hälytä vahvistavien todisteiden perusteella, älä pelkän hiljaisuuden vuoksi.

Pitäisikö meidän kysellä tietoja jatkuvasti varamenetelmänä?

Ei oletusarvoisesti. Hallitsematon kysely voi kuluttaa pyyntökapasiteettia parantamatta näkyvyyttä. Käytä rajattua täsmäytystä ja häiriökohtaisia hakuja dokumentoitujen rajojen sisällä. Varmista, miten kysely ja webhook-toimitus toimivat yhdessä palveluntarjoajasi kanssa.

Mitä meidän tulee lähettää, kun epäiltyä palveluntarjoajan ongelmaa eskaloidaan?

Sisällytä vaikutuksen alaiset toimintotyypit, UTC-aikavälit, puhdistetut pyyntö-ID:t, vastauskoodit, edustavat lähetysviitteet hyväksytyn suojatun kanavan kautta sekä odotettu ja havaittu toiminta. Kerro, mitkä sisäiset vaiheet olet tarkistanut. Älä sisällytä tunnistetietoja tai tarpeettomia asiakastietoja.

Lähteet

Loading