1

我试图弄清楚创建一个包含另一个变量值的变量。一个变量将包含 API 的“根”名称和实际的 API 应用程序名称。这就是我的意思。

完全限定的 API 名称:MyAPICollection.MyApi

问题: 在某些情况下,我只需要使用应用程序名称(“MyApi”),而在其他情况下,我需要使用完全限定名称(“MyApiCollection”)。

我试过的:

我在一个名为:AppName 的常量变量上创建了我希望用户选择的所有可能的应用程序(例如“MyApp1”、“MyApp2”、“MyApp3”)。

我创建了另一个名为“CollectionName”的常量变量,其值为“MyApiCollection”。不会显示此变量。

我创建了另一个名为FullyQualifiedName 的常量变量。这不会显示,但将用于传递给我的 Lucene 查询。因此,我使用了以下值:$CollectionName.$AppName

结果:我只是得到一个字面值:$CollectionName.$AppName

我试图让它发挥作用: 首先,这甚至可以在 Grafana 中完成(请说是!)?

  1. 我试过了:$CollectionName.$AppName
  2. 我试过了:{$CollectionName.$AppName}
  3. 我试过了:{{$CollectionName.$AppName}}
  4. 我试过了:{$CollectionName}.{$AppName}
  5. 最后:{{$CollectionName}.{$AppName}}

我为什么要这样做? 我有一个仪表板,目前支持 4 个 API,并且是集合的一部分。但是,在某些情况下,我只需要完全限定名称的子集。

示例: MyCollection.MyApi1 将被传递给 ElasticSearch,因为字段。日志记录中的应用程序字段标记为“MyCollection.MyApi1”。

在其他情况下,我只需要具有不同大小写要求的完全限定名称的应用程序名称部分(例如引用 CloudWatch 日志)。

示例:要查询 CloudWatch 日志,我将使用应用程序名称来指定 Grafana 应将哪个 CloudWatch 日志组用作其数据源。CloudWatch 日志组的命名格式从一个 API 到另一个 API 都是相同的。唯一会改变的是应用程序名称(例如“myapi1”)。另一个要求是应用程序名称必须小写。

我不能认为我正在做的事情有那么不寻常。我希望能够拥有一个支持集合中所有 API 的仪表板,并且变量有望帮助我实现这一目标。

有任何想法吗?

4

0 回答 0