1import{j as e,c as o,L as a,A as n,S as r}from"./main-B6ad0HGq.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};t.SENTRY_RELEASE={id:"ea1ea076f7ba40168896c271d7eb9ff92aaf9cd8"};var s=new t.Error().stack;s&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[s]="8a0d79be-b578-4924-a79a-db6c0b7a0a31",t._sentryDebugIdIdentifier="sentry-dbid-8a0d79be-b578-4924-a79a-db6c0b7a0a31")}catch{}})();function d(){return e.jsxs("div",{className:"flex min-h-screen flex-col",children:[e.jsx(o,{}),e.jsx("main",{className:"flex-1",children:e.jsxs("article",{className:"container mx-auto max-w-2xl px-4 py-16",style:{fontFamily:"Georgia, 'Times New Roman', serif"},children:[e.jsx("p",{className:"font-sans mb-3 text-sm font-medium uppercase tracking-wide text-primary",children:"Guide"}),e.jsx("h1",{className:"font-sans mb-4 text-4xl font-bold",children:"Switch from Pingdom to Uptrack"}),e.jsx("p",{className:"mb-8 text-lg leading-[1.7] text-muted-foreground",children:"Most people leave Pingdom over the bill, then stall on the thought of rebuilding every check by hand. You donât have to. Export your checks once, drop the file into Uptrack, and they all come across in a few minutes."}),e.jsxs("section",{className:"mb-10",children:[e.jsx("h2",{className:"font-sans mb-4 text-2xl font-bold",children:"Step 1 â Get your checks as a CSV"}),e.jsxs("p",{className:"mb-4 text-lg leading-[1.7] text-foreground/70",children:["Uptrackâs importer reads a plain CSV with a column for the check name, the URL or host, and the type. You can pull that from Pingdomâs API (the ",e.jsx("code",{className:"font-mono text-base",children:"GET /checks"})," ","endpoint returns every check with its name, hostname, type, and resolution), or just build the file yourself in a spreadsheet. A typical export looks like:"]}),e.jsx("pre",{className:"mb-4 overflow-x-auto rounded-lg bg-foreground
1/[0.06] p-4 font-mono text-sm",children:e.jsx("code",{children:`Name,URL,Type,Resolution 2Marketing site,https://example.com,HTTP,1 3Checkout API,https://api.example.com/health,Keyword,1 4Mail server,mail.example.com,Ping,5 5Database,db.example.com:5432,TCP,1`})}),e.jsx("p",{className:"text-lg leading-[1.7] text-foreground/70",children:"The headers donât have to match exactly â Uptrack auto-detects Pingdom, UptimeRobot, and generic column names (name / URL / type / interval / keyword), so an export straight from Pingdom, or a file you typed by hand, both work. Pingdomâs common check types map over directly: HTTP(S), ping (ICMP), TCP port, and keyword checks all have a native equivalent in Uptrack."})]}),e.jsxs("section",{className:"mb-10",children:[e.jsx("h2",{className:"font-sans mb-4 text-2xl font-bold",children:"Step 2 â Import it into Uptrack"}),e.jsxs("p",{className:"mb-4 text-lg leading-[1.7] text-foreground/70",children:["In your dashboard, open ",e.jsx("strong",{className:"text-foreground",children:"Uptime Monitors â Import"}),", and drop the CSV onto the page. Uptrack parses it client-side, shows you a preview of every check it found, and lets you confirm before anything is created."]}),e.jsx("p",{className:"text-lg leading-[1.7] text-foreground/70",children:"On import it skips any URL youâre already monitoring (so re-running the same file is safe), fills up to your planâs monitor limit, and reports exactly what was created, skipped, or had a problem. No half-finished state, no duplicates."})]}),e.jsxs("section",{className:"mb-10",children:[e.jsx("h2",{className:"font-sans mb-4 text-2xl font-bold",children:"Step 3 â Set up alerts and go"}),e.jsxs("p",{className:"mb-4 text-lg leading-[1.7] text-foreground/70",children:["Checks come over with their URL, type, and name. The last step is telling Uptrack where to reach you: add an alert channel (email, Slack, Discord, and Telegram are on every plan, including free) under"," ",e.jsx("strong",{className:"text-foreground",children:"Alerts"}),", and youâre done."]}),e.jsx("p",{className:"text-lg leading-[1.7] text-foreground/70",children:"A couple of things you get on the way in: every check runs at 30-second intervals on the free plan â tighter than Pingdomâs one-minute floor â and an alert only fires after consecutive checks from multiple regions agree itâs really down, so the move usually comes with fewer false alarms, not more."})]}),e.jsxs("section",{className:"mb-12",children:[e.jsx("h2",{className:"font-sans mb-4 text-2xl font-bold",children:"Prefer it in version control?"}),e.jsxs("p",{className:"text-lg leading-[1.7] text-foreground/70",children:["If youâd rather keep your checks as code, the same data works as a YAML file you can"," ",e.jsx("code",{className:"font-mono text-base",children:"apply"})," from CI with the Uptrack CLI â define monitors in a file, review changes in a pull request, and sync on merge. The CSV import is the fastest way to get started; the CLI is there when you want it."]})]}),e.jsxs("div",{className:"font-sans rounded-xl border border-primary/30 bg-primary/5 p-6 sm:p-8",children:[e.jsx("h2",{className:"text-xl font-semibold",children:"Bring your checks over"}),e.jsx("p",{className:"mt-1 text-sm text-foreground/70",children:"10 free monitors at 30-second checks. Import your CSV and youâre running in minutes."}),e.jsxs(a,{to:"/signup",className:"mt-4 inline-flex items-center font-medium text-primary hover:underline",children:["Get started ",e.jsx(n,{className:"ml-1 h-4 w-4"})]}),e.jsx("span",{className:"mx-3 text-muted-foreground",children:"·"}),e.jsx(a,{to:"/compare/pingdom",className:"font-medium text-primary hover:underline",children:"Uptrack vs Pingdom"}),e.jsx("span",{className:"mx-3 text-muted-foreground",children:"·"}),e.jsx(a,{to:"/guides/switch-from-uptimerobot",className:"font-medium text-primary hover:underline",children:"Coming from UptimeRobot?"})]})]})}),e.jsx(r,{})]})}export{d as component}; 6//# sourceMappingURL=switch-from-pingdom-neK3lnBK.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.