我目前正在我的c#代码中将某些内容记录到Librato指标中,如下所示:
using System;
using System.Threading.Tasks;
using Microsoft.Bot.Builder.Dialogs;
using Microsoft.Bot.Connector;
using System.Collections.Generic;
namespace Bot_Application2.Dialogs
{
[Serializable]
public class RootDialog : IDialog<object>
{
public async Task StartAsync(IDialogContext context)
{
context.Wait(ConversationStartedAsync);
}
public async Task ConversationStartedAsync(IDialogContext context, IAwaitable<IMessageActivity> argument)
{
IMessageActivity reply = context.MakeMessage();
HeroCard heroCard = new HeroCard()
{
Title = "I'm a hero card",
Images = new List<CardImage>
{
new CardImage(url: $"https://www.google.org/assets/static/images/logo_googledotorg-171e7482e5523603fc0eed236dd772d8.svg")
},
Tap = new CardAction()
{
Value = $"https://www.google.co.in/",
Type = "openUrl",
}
};
reply.Attachments = new List<Attachment>
{
heroCard.ToAttachment()
};
await context.PostAsync(reply);
}
}
}
现在,我想在Amazon Web服务上创建一个lambda函数,它将定期执行相同的操作。但是我无法弄清楚如何在lambda函数中引用librato。它甚至可能吗?
答案 0 :(得分:0)
为了澄清,我认为你的意思是“从Lambda发布指标”而不是“从Lambda访问仪表板”是正确的吗?
Librato的核心是专为自定义指标而设计的。只要您可以访问Interwebs,就可以将值POST到我们的RESTful API。因此,如果您可以处理额外的开销(使用语言绑定或REST客户端直接同步调用API),或者如果您想进行异步调用,则可以选择使用简单的HTTP POST命中API,您可以调用另一个Lambda记录指标,然后负责POST到Librato。