Skip to content

Kelvin Resource Names (KRN)

The Kelvin Resource Name (KRN) Registry serves as the centralized system for uniquely identifying various types of resources within the Kelvin Platform. It is conceptually similar to Uniform Resource Names (URN) or Amazon Resource Names (ARN), tailored for Kelvin's use.

Note

All KRN definitions are available in the Developer Tools KRN Reference.

This page outlines the core concepts and provides a few examples.

String Method

KRNs can be created directly from their string representation, as detailed in the reference page.

1
2
3
4
from kelvin.krn import KRN

# Generic KRN (parse from string)
generic_krn = KRN.from_string("krn:asset:my-asset")

SDK Method

The SDK provides some dedicated KRN classes to simplify creation and improve readability.

SDK KRNs String Equivalent
KRNApp krn:app:app
KRNAppVersion krn:appversion:app/version
KRNAsset krn:asset:asset
KRNAssetDataQuality krn:dqasset:data-quality:asset
KRNAssetDataStream krn:ad:asset/datastream
KRNAssetDataStreamDataQuality krn:dqad:data-quality:asset/datastream
KRNAssetParameter krn:ap:asset/parameter
KRNDatastream krn:datastream:datastream
KRNJob krn:job:job/job-run-id
KRNRecommendation krn:recommendation:recommendation-id
KRNSchedule krn:schedule:schedule
KRNServiceAccount krn:srv-acc:account-name
KRNUser krn:user:user
KRNWorkload krn:wl:cluster/workload
KRNWorkloadAppVersion krn:wlappv:cluster/workload:app/appversion

You can find these detailed in the reference page. An example of how they are used;

1
2
3
from kelvin.krn import KRNWorkloadAppVersion

KRNWorkloadAppVersion(node="my-node",workload="pvc-r312",app="pvc",version="1.0.0")