CacheExpires: 6000h # ~ 8.2 months
DirectoryPath: public
IgnoreDirectoryMissingTrailingSlash: true
IgnoreAltMissing: true
IgnoreCanonicalBrokenLinks: false
IgnoreInternalEmptyHash: true # TODO: remove after resolution of https://github.com/google/docsy/issues/1995
CheckMailto: false
TestFilesConcurrently: true
IgnoreDirs:
  - ^blog/(\d+/)?page/\d+
IgnoreInternalURLs: # list of paths
IgnoreURLs: # list of regexs of paths or URLs to be ignored
  - ^(/..)?/docs/languages/\w+/(api|examples|registry)/$
  - ^(/..)?/docs/collector/registry/$
  - ^(/..)?/docs/languages/net/(metrics-api|traces-api)/
  - ^((/..)?/docs/migration/)?opencensus/$
  - ^(/community/end-user/)?feedback-survey/$

  - ^https://deploy-preview-\d+--opentelemetry.netlify.app/
  - ^https://www\.googletagmanager\.com

  - ^https?://localhost\b
  - ^https?://127\.0\.0\.1\b
  - ^https?://(otel-demo|traefik)\.localhost

  # OpAMP spec:
  - ^https://pdf.sciencedirectassets.com/280203/1-s2.0-S1877050919X0006X/1-s2.0-S1877050919303576/main.pdf\?

  # Sites that deny access, always yielding 401, 403 Forbidden, 406, or other:
  - ^https://(www\.)?linkedin\.com\b # 999 Request Denied
  - ^https://(www\.)?mvnrepository\.com
  - ^https://(www\.|eng\.)?uber\.com/(blog|flipr)/ # 406
  - ^https://twitter.com
  - ^https://www.chathamhouse.org
  - ^https://www.zocdoc.com
  - ^https://x.com
  - ^https://platform.openai.com
  # OTel Google calendar - curl returns 200, but the link checker gets a 401:
  - ^https://calendar.google.com/calendar/embed\?src=google.com_b79e3e90j7bbsa2n2p5an5lf60%40group.calendar.google.com
  # YouTube playlists sometimes give a 404, although they give a 200 when accessed via browser:
  - ^https://www.youtube.com/playlist\?list=

  # Ignore Docsy-generated GitHub links for now
  - ^https?://github\.com/.*?/.*?/(new|edit)/ # view-page, edit-source etc
  # TODO: drop after fix to https://github.com/google/docsy/issues/1432
  - ^https://github.com/open-telemetry/opentelemetry.io/commit/ # last mod

  # Ignore links to GH repo content for now.
  - ^https?://github\.com/.*?/.*?/(blob|tree)/

  # Too many redirects as the server tries to figure out the country and language,
  # e.g.: https://www.microsoft.com/en-ca/sql-server.
  - ^https://www.microsoft.com/sql-server$

  # TODO: drop after fix to https://github.com/rust-lang/crates.io/issues/788
  - ^https://crates\.io/crates
  # TODO: drop after fix to https://github.com/micrometer-metrics/micrometer-docs/issues/239
  - ^https://micrometer\.io/docs
  # TODO: ensure .json isn't set as an alternate in ecosystem/registry/index.html and then drop:
  - ^https://opentelemetry.io/ecosystem/registry/index.json
  # TODO: drop after fix to https://github.com/open-telemetry/semantic-conventions/pull/645 lands in this repo
  - ^http://docs.couchdb.org/en/stable/api/document/common.html#get--db-docid
  # TODO drop after fix to https://github.com/open-telemetry/opentelemetry.io/issues/3818
  - ^https://oncallmemaybe.com
  # TODO drop after https://github.com/open-telemetry/opentelemetry-specification/pull/3834 is merged
  - ^https://wikipedia\.org/wiki/Monotonic_function
  # TODO drop after https://github.com/open-telemetry/opamp-spec/pull/179 is merged into this repo
  - ^http://www.watersprings.org/
  # TODO move into content/en/blog/2023/humans-of-otel.md once https://github.com/open-telemetry/opentelemetry.io/issues/3889 is implemented
  - ^https://shorturl.at/osHRX$
  # TODO drop after https://github.com/open-telemetry/semantic-conventions/pull/678 is merged:
  - ^https://wikipedia.org/wiki/(S.M.A.R.T|Hop_)
  # TODO move into content/en/blog/2023/contributing-to-otel/index.md once https://github.com/open-telemetry/opentelemetry.io/issues/3889 is implemented
  - ^https://shorturl.at/vLYZ0$
  # TODO remove the following temporary ignore rule (@chalin)
  - ^/en/docs/specs$
