我希望从web应用程序(客户端)到一些远程服务/端点做一些非常简单的日志记录。当然,我可以使用自己的服务,但是出于本任务的目的,让我们假设我需要一个现有的服务,如Logentries/Splunk/Logstash,以便我的查看器在我的后端出现故障时仍然可以记录调试信息。
大多数日志服务提供了一个API,我可以将一些<script/>
导入我的页面,然后使用像LE.log('string', data);
这样的API [Logentries示例]。但是,这会引入JS依赖项,并出于可能有充分理由(如URI长度限制)使用跨域XHR。
我的问题是,如果有人能给我指出一个服务,让我发送简单的查询参数到一个"像素"端点(类似于谷歌分析如何做到这一点)。比如:
<script>
new Image().src = 'http://something.io/pixel/log/<API_TOKEN>?some_data=1234';
</script>
——或者,在纯HTML中——
<img src="http://something.io/pixel/log/<API_TOKEN>?some_data=1234" style="display:none" />
我认为在日志即服务领域的一些大公司会有类似的东西,但我没有发现任何东西(或者它太具体而无法显示任何搜索结果)。
这不是为了分析,而是为了错误记录、调试等。炒了就走人之类的。
欢迎指教
这可以通过Logentries来实现,他们提供了一个像素跟踪器。
它们要求以base64编码发送数据,但这在Javascript中非常简单。
来自他们的文档:
var encoded = encodeURIComponent(btoa("Log message"));
这些数据可以在像这样的像素跟踪器中使用:
<img src="https://js.logentries.com/v1/logs/{API-TOKEN}?e={ENCODED_DATA}/">