cover of episode Infosec & OpenTelemetry

Infosec & OpenTelemetry

2024/11/1
logo of podcast Ship It! Cloud, SRE, Platform Engineering

Ship It! Cloud, SRE, Platform Engineering

People
A
Austin Parker
A
Avthar Suwathan
D
Dave Rosenthal
K
Kurt Mackie
Topics
Dave Rosenthal: 讨论了 Sentry 如何将各种来源的遥测数据(日志、指标、错误)通过 trace ID 关联起来,从而实现更全面的应用健康监控和更便捷的调试体验。他强调了将所有遥测数据关联起来的重要性,这使得开发者能够更深入地分析数据,并更容易地找到问题的根源。 Kurt Mackie: 他批评了公共云的不足之处,认为它们的设计目标并非为了提高开发者的生产力,而是为了平台团队。他介绍了 Fly.io,一个为开发者设计的公共云平台,旨在简化应用部署和管理流程,并提高开发效率。他认为,如果能将复杂的问题简化为更短时间内可解决的问题,开发者就能构建更多有趣的应用。 Austin Parker: 他认为安全策略和控制是安全方面最大的障碍,过多的安全控制会增加摩擦,导致人们绕过这些控制。他介绍了 OpenTelemetry,一个用于标准化可观察性数据的项目,旨在解决数据孤岛问题。他强调了标准化数据的重要性,这使得不同团队能够更好地协作,并更容易地解决问题。他还讨论了 OpenTelemetry 的未来发展方向,以及如何提高其易用性。他认为,OpenTelemetry 的目标是让可观察性数据成为内置功能,并支持应用程序和系统级别的遥测数据。 Avthar Suwathan: 他介绍了 Timescale,一个基于 Postgres 的公司,构建云端和开源工具,帮助开发者更好地使用 Postgres 进行时间序列分析和 AI 应用开发。他强调了使用 Postgres 构建 AI 应用的便捷性,以及 PGAI 和 PG Vector Scale 项目的开源特性。 Justin Garrison & Autumn Nash: 两位主持人主要围绕着家庭生活与软件开发的类比展开讨论,例如将孩子的行为比作软件开发中的问题,以及如何利用项目管理和自动化来解决这些问题。他们还讨论了儿童对技术的依赖以及由此带来的挑战。

Deep Dive

Key Insights

Why are public clouds often perceived as difficult to work with for developers?

Public clouds were designed for platform teams to build infrastructure, not for developers to deploy apps easily. They often require significant upfront effort and lack intuitive developer-focused tools, making it harder for developers to be productive.

What is the main goal of OpenTelemetry in observability?

OpenTelemetry aims to unify observability data by providing a standard way to structure telemetry data, instrumentation APIs, and semantic conventions. It allows developers to emit consistent data across different systems, making it easier to analyze and understand systems without worrying about different logging or metric formats.

Why do security policies often become obstacles to productivity?

Security policies, such as password rotation or device lockdowns, are often designed without considering how they impact users' ability to get work done. This friction leads users to bypass controls, undermining the intended security benefits.

How does OpenTelemetry handle data transformation for different use cases?

OpenTelemetry supports lossless transformations, allowing metrics to be translated into different forms (e.g., delta, aggregation) without losing data integrity. This flexibility enables different teams (e.g., security, app dev) to process and analyze data in ways that suit their needs.

What is the biggest challenge in building OpenTelemetry?

The biggest challenge is governance and community management. With thousands of contributors across multiple languages and tools, keeping everyone aligned and motivated while balancing cross-company demands is complex.

How does OpenTelemetry integrate system-level and application-level telemetry?

OpenTelemetry uses the collector tool to gather data from various sources, including system logs and metrics. It can associate application-level telemetry with system-level data using trace IDs or resource attributes, allowing for unified analysis across both levels.

Why is OpenTelemetry considered low-level and dense?

OpenTelemetry provides highly structured, low-level data that is rich in detail but can be overwhelming. It requires tools to process and transform this data into usable formats, which can be a challenge for users who prefer more high-level, out-of-the-box solutions.

What is the future vision for the internet according to Austin Parker?

Austin envisions a return to an internet where individuals own their digital spaces, using tools like AT Protocol to control their content and identity. This decentralized approach contrasts with the current model of renting space from large corporations.

How does Timescale enable AI development with Postgres?

Timescale provides open-source tools like PGAI and PG Vector Scale, allowing developers to build AI applications (e.g., RAG, search) using Postgres and SQL. This eliminates the need to learn new technologies, making AI development more accessible.

Why do developers often bypass security controls in organizations?

Developers bypass security controls because these controls often add friction to their workflow, making it harder to get work done. When security policies don't align with how work is actually done, users resort to workarounds to meet their goals.

Chapters
This chapter explores the humorous challenges of parenting in the digital age, particularly the unexpected ways children interact with technology and the temptation to apply project management tools to family life. It includes anecdotes about kids' interactions with smart home devices and online content, highlighting the surprising levels of technical aptitude and resourcefulness in young children.
  • Parents use technology to manage kids' activities.
  • Kids quickly learn and adapt to new technologies.
  • The line between project management and parenting is blurred.

Shownotes Transcript

也许为孩子们的家务事使用Jira是个好主意……可能不是。 加入讨论Changelog++会员在这一集节省了11分钟,因为他们让广告消失。今天就加入吧!赞助商:Sentry – 代码出错,修复更快。不要只是观察。采取行动。Sentry是唯一为开发者构建的应用监控平台,能够找到每个问题的根本原因。超过100,000个不断增长的团队使用Sentry快速发现问题。注册时使用代码CHANGELOG可享受团队计划$100的折扣。

荒岛Devops

<raw_text>0 这是《Ship It》,由Justin Garrison和Autumn Nash主持的播客,讨论所有在“Get Pushed”之后发生的事情。《Ship It》由Fly.io赞助,Fly.io是changelog.com的家。将您的应用部署到全球用户身边。了解更多信息,请访问fly.io。♪

朋友们,大家好!我和Sentry的CTO Dave Rosenthal在一起。那么Dave,当我看Sentry时,我看到你们朝着全面应用健康、错误监控、会话重放等方向努力,能够重放用户在遇到问题时的界面视图,配合完整的追踪、完整的数据,以及你们在追踪和分析方面的进展、定时监控、代码覆盖、用户反馈等等。

还有大量的集成。给我一个对不可避免的未来的瞥见。你们的目标是什么?是的,我们看到的一个趋势是,过去人们有独立的系统,比如在服务器上有日志、写入文件。他们可能会将一些指标发送到Datadog或其他系统。他们可能在用某个产品监控错误,也许是Sentry。但我们越来越多地看到,人们希望将所有这些遥测源以某种方式逻辑上联系在一起。

这正是我们现在在Sentry追求的目标。我们有一个追踪ID的概念,这就像是一个关键,能够将与用户操作相关的所有数据片段联系在一起。因此,如果用户加载一个网页,我们希望将所有发生的服务器请求、任何发生的错误、收集的任何指标联系在一起。而这在后端允许

你不必只看三张不同的图表并试图将它们按时间排列,自己得出结论。你实际上可以分析、切片和处理数据,并说,嘿,这个指标对于使用这个操作系统的人看起来是什么样子,而这个指标对于使用另一个操作系统的人又是什么样子,实际上可以深入到这些细节中去。因此,这种使用追踪ID或基本上某个关键将所有遥测数据联系在一起的想法,我认为是很有趣的。

这对开发者来说是一个巨大的胜利,帮助他们诊断和调试现实世界的系统,这是我们为每个人铺平的道路。好的。让我们看看你们如何到达那里。让我们看看你们明天如何到达那里。是的,完美。系统将会有什么不同?团队将会有什么不同?

是的,我的意思是,我想我可能会一直这样说,但我认为这又回到了调试体验。当你深入研究一个问题时,拥有一个更丰富的数据模型,你的日志是结构化的。它们是这种层次结构,带有跨度。不仅仅是结构化的跨度,它们与错误相关,与其他事物相关。因此,当你拥有一个相互关联的数据模型时,

它打开了各种各样的分析,这些分析之前要么非常手动,要么只是猜测,也许这个日志与其他事情同时发生,或者根本不可能。我们不仅对这种相互关联的数据模型能够检测到的新类型问题感到兴奋,而且对于我们检测到的每个问题,解决它的难易程度也感到兴奋。

我喜欢它。好的,他们说代码出错时是认真的。用Sentry更快地修复它。超过100,000个不断增长的团队使用Sentry快速发现问题,你也可以。了解更多信息,请访问Sentry.io。那是S-E-N-T-R-Y.io。并使用我们的代码CHANGELOG。团队计划可享受$100的折扣。这几乎是你尝试Sentry的四个月免费时间。再次强调,Sentry.io。

你好,欢迎来到《Ship It》。我是你的主持人Justin Garrison,和我在一起的仍然是Autumn Nash。你看,我们昨天聊了两个小时,现在我们像是,在开场前就开始了。我想我们就把大部分开场白放在现在。这是关于孩子们学习如何进行项目管理和自动化的整个对话。

我女儿对我们的智能设备绝对着迷,知道如何用声音开关灯,她会跑去像,

当我的妻子Mandy在FaceTime与某人通话时,她会跑过来大喊,像是关灯,试图把电话另一边的灯关掉。因为她有一个阿姨会为她做到这一点。当她跑过来时,她会……假装。其实不,她真的有Alexa灯,所以当Dylan跑过来说时,她知道。她会说,Alexa,关灯,灯就会关掉,Dylan就像,耶。

通过电话那太好了,因为她还没弄明白,她一直在尝试,但Siri就像Siri,她的发音还不够好,Siri无法识别。

她在尝试,但Siri就是不行。当孩子们能理解你时,生活变得真实,因为突然间你在亚马逊购物车里有六样东西,你不知道它们从哪里来的。我并不期待那种成瘾变得严重的时刻。别让他们发现有放屁歌和其他一堆东西,因为像。哦,我的天。

是的,我可能会在一年左右的时间里重新考虑我对智能家居的看法。是的,我的孩子们会花一个小时只是在改变所有灯的颜色。他们会说,等一下,把它们变成蓝色。哦,现在变成橙色。有人放了最长的歌,或者是什么?那首歌永远不会结束。是的,在Alexa上。为什么呢?为什么?

我在想,你们就讨厌我们这些父母吗?你们到底怎么了?我只是想想我在YouTube上花了多少钱。我买了YouTube高级版,因为我们会偏爱YouTube儿童频道,就像它限制在某些频道。我只是在想,Miss Rachel从我这里赚了多少钱?哦,Miss Rachel真是赚翻了。别提了,Ryan从我们所有人那里赚了多少钱?那个孩子有2100万美元,而他才七岁。

儿童YouTube的经济学我不想去想,因为我只是试图禁止我的孩子们看大多数YouTube,因为我厌倦了看它,而且让我生气的是他们真的相信其中一半,我在想那是假的。是的,我只是,我女儿三岁,所以她还很小。

这真的就是,好的,请在平板电脑上看……是的,你试图生存。我们处于生存模式,所以就像,好的,你看Miss Rachel,你看PBS,你看Super Simple Songs。在这里待着,我们试图做点什么。那曾经是我们和Blippi,但感谢上帝Blippi现在在Prime上。我们从未看过Blippi,谢天谢地。别看。

这太诡异了。我最小的想要Danny Go。哦,是的。我希望我们能坚持在儿童YouTube的正常或不奇怪的角落。太奇怪了。是的,这可能会持续到她长大,然后她在学校的那些可爱的朋友会告诉她所有这些她不知道的有趣事情。就像我最小的看。他们在课堂上看Danny Go的YouTube视频。所以他回家时说,我必须看Danny Go。我说,不。太好了。谢谢你。教育系统。我把他们限制在Epic上,但他们甚至会看YouTube和

不同的Doug,像Doug和所有这些不同的问题链接,我的意思是他们在学校里,他们是教育性的。但我在想,如果你在Epic或PBS上找不到,那你就没戏了。他们学会了如何谷歌搜索,问Alexa怎么做。哦。

他们找到了很多绕过儿童锁的方法,以至于此时,他们应该雇我的四岁儿子为该死的NSA工作。他搞清楚了PlayStation的整个儿童锁机制。告诉我为什么他不能玩植物大战僵尸。他不能玩普通游戏,但他已经搞清楚了如何重新下载Fortnite六次。就像...

谁做的?孩子们的惊人之处在于他们对高度特定任务的动机水平。是的,我无法让他们清理自己的房间,但让我告诉你,他们找到了方法,通过我的儿童保护锁进入谷歌和亚马逊。他们说,妈妈,这是我想要的万圣节服装。然后这是这个东西。我在想,你是怎么做到的?起初你说,不,不是那个。然后你说,等等,你是怎么到那里的?不。

就像它击中了你。是的。它让我想起几年前流传的那个段子,有个女孩说,哦,我被禁止了。我的父母拿走了我的手机。所以我在冰箱上发推特。我有一个推特冰箱。这是我孩子们会想出来的事情。就像,

我坐在那里想了想我厨房和客厅里有多少个屏幕,因为这是一个大开放空间。在某个时刻,我的孩子们在Alexa显示器上看YouTube。然后他们在冰箱上看,然后在电视上看。我在想,你可以从每面墙看到每个屏幕。我们在做什么?哦,天哪。最糟糕的是当他们看不同的东西时。哦,我的天。我的孩子就是这样。他会看直播的电视。

是的,她会在电视上看PBS,然后她会去拿平板电脑,在平板电脑上看Miss Rachel,然后做其中一个视频。

同时看电视和看平板电脑。我的大儿子在玩Minecraft,看YouTube视频,还在他的平板电脑上。我在想,你在做什么?惊人的多任务处理水平。好的,我的孩子会在Scratch上构建一个游戏,对吧?同时看电视,让他的兄弟玩他作为测试者制作的一个游戏,他在他的笔记本电脑上对着他大喊。我在想,你不能对你的测试者大喊,兄弟。你在做什么?就像...

你的兄弟会联合起来。我发誓。我希望他们这样做。我希望他们说,我们想要每个游戏测试一块糖果。集体发声。是的。集体谈判。教劳动关系从来不会太早。我告诉你。我说,首先,那些是你的测试者。然后他说,他们在要求不同的东西并进行更改。他说,那不是你玩的方式。我说,那你没有写得够清楚。对吧?

欢迎来到用户。他非常生气。他在对他大喊。是的。我说,这不是这样运作的。你应该把这个当作冷开场。这个是。整个对话需要像这样放在开头。人们会问,这是什么节目?是的。

欢迎来到《Ship It》。这个播客完全是关于你的孩子们学习如何管理软件。学习如何教你的孩子们项目管理。永远不会太早。好的,但听我说。我们应该做一个,让幼儿坐在这里谈论...

像技术和Minecraft,这会非常有趣。就像,它会像《Ship It》的面孔,但像迷你版的Shipping,我们会给他们戴上耳机。你让他们中的一个有一个Scratch应用程序,所有人都在谈论他们是如何使用错误的。孩子在Scratch上获得了很多下载。好的。他获得了很多下载。像是一个八岁的播客,谈论Minecraft模组,可能会非常吸引人。它也会,

也会让我们的孩子们不再缠着我们。好的,在我们都在同一家公司工作的时候,我们说,好的,如果我们得到一个Minecraft服务器,我们就能度过这个夏天。为什么你不建立服务器,Justin?因为Logan不再关心了。他只是去了朋友的服务器。Logan是个成年人,好的?你做了什么?他今晚有他的第一次舞会。什么?他要去舞会。我知道。他前几天给我发了一张Logan的照片,我在想,

谁是谁?什么成年人和你在棒球曲棍球比赛上?我离这一切还有几年,谢天谢地。哦,发生得很快。好的。

我有一个10岁的孩子,一个7岁的孩子和一个5岁的孩子。他说,妈妈,不要帮我下车。我的朋友们在看着。我在想,哇,什么?我在想,我给你擦屁股。你是什么意思?我们的事现在。我们仍然只有一个,她三岁。所以...

只要别被人数压倒。只是FYI。像...相信我。相信我。不...

我在她六个月大的时候经历了第一次精神崩溃后才有的一个。像,我只是想,好吧,我们结束了。你会有更多这样的精神崩溃。但就像,你知道吗?接下来会是两对一的局面。但听我说,我甚至不需要擅长视频游戏,因为他们三个会打败青少年,他们在Fortnite里帮我。太疯狂了。

确实有好处。我甚至不再提着杂货了。我只是说,去吧,我用Instacart订的。我为此付了钱。像现在就去给我搬到船员那里。哦,

他就像,我的孩子说,为什么他们不自动把垃圾拿出去?我说,我们做到了。我有你。恭喜你,你就是自动化。此外,像我孩子会说我们应该自动化把垃圾拿出去。就像,我把你养成了。

这是我们的第30期节目,太棒了。谢谢你,我们已经做了一段时间了,这太棒了。今天节目中,我们有Austin Parker,Austin,你在Honeycomb工作。我其实不知道你的职务。开源总监。开源总监。太棒了。我们今天将讨论很多关于开放遥测的内容,这是我想从你那里了解更多的主题,因为这是我知道得很少的主题,我总是想了解更多。

但我们又经历了关于孩子和建立他们自己的东西以及自动化的整个背景。我认为在一天结束时,我们得出的结论是,孩子们,你们在屏幕前待得太久了,所以你们需要开始一个播客。这就是我们...

我们将解决这个问题。好吧,我们还得出结论,我们创造了我们自己的婴儿版的书呆子。我认为这就是你作为父母的特权,对吧?就像你只想,作为父母的特权就是,好的,我有所有这些琐碎的家务任务。所以我会投资一个,我会投资一个孩子,这样在10年内他们就可以把垃圾拿出去,并为此对我生气。

我问他们,我想让其中一个人清理房间。你会认为我在谋杀他们。我问我儿子在学校穿夹克。他外面45度。他非常生气,因为他不能穿短裤。我说,我很抱歉我试图让你免于冻伤。他说,今天温度升高到50度时,我会中暑。我在想,孩子和用户有很多共同点。是的。

就像和小恐怖分子争论。是的。你可以解雇客户,但你不能解雇自己的孩子,这就是,嗯,做出了糟糕的决定。这并没有经过深思熟虑,但它让我想起了你在Twitter或其他地方看到的所有那些时刻。就像,哦,我,我们都在软件行业。所以我们为我们的家庭创建了一个sauna或Jira。我只是想,谁伤害了你?是的。

好的,别误会我的意思。在某个时刻,我确实让我的孩子写了一页纸,说明他为什么想要一只胡须龙。然后我想,哦,我们走得太远了。不,这太多了。我认为当你开始为你的孩子制定OKR时,你就正式超越了界限。老实说,这真是一个……我说了这句话真是太糟糕了。我把这个带入了世界,在某个时刻……该死,肯定会有人这样做。是你的错。确实是。

这真的是我生活的故事。你说了某些事情,后来后悔发生了?这就是荒岛DevOps的由来。我在Twitter上开了个玩笑,然后我成了动物穿越DevOps会议的家伙。那还在继续吗?不。等等,动物穿越DevOps?回去!荒岛DevOps,世界上第一个...

在动物穿越中举行的虚拟DevOps会议。我们在疫情期间举办了三年。我现在要买一个Switch。你可以在YouTube上观看。YouTube上的荒岛DevOps。你可以观看所有的演讲。太棒了。它们是动物吗?我的意思是,我们在...哦,天哪。无论最新的是什么,对吧?人们会把他们的村民带到岛上,然后我设置了一个看起来像会议室的小房间。一个小讲台。

他们会发表演讲,并且他们通过Zoom直播

Switch并混合了他们的音频,然后叠加他们的幻灯片。非常可爱。去YouTube上看看。这是我听过的最惊人的事情。我们会把它放在节目笔记中。我只是想说,这将是最火的节目笔记。是的,desertedisland.club或在YouTube上,荒岛DevOps。所有内容应该仍然在那儿。但我们在几年前举办了最后一次。

这非常有趣。就像,这是一个反转,因为人们开始再次旅行。我们在密歇根州找到一个叫做的岛,

他们在上面有一家酒店和一个活动空间。因此,所有的演讲者都来了,演讲者都在同一个地方。然后我们仍然直播Switch,但人们都在同一个房间里。这是一个很好的方式来为这个小实验画上句号。你应该把动物穿越DevOps带到DevOps Days LA,这样会非常有趣。就像我们都坐在那里玩动物穿越。

我们可以,你知道,也许我会在某个时候回来。我一直想去Scale,但DevOps Days LA从来不是一个对我来说很好的时间。三月在帕萨迪纳。不过,来吧,这通常要么离KubeCon太近,要么与KubeCon EU的时间冲突,所以我,

就像旅行不太顺利。是的。尤其是如果你要为两个不同的会议往返旅行,方向不同,那就很困难。是的。尤其是欧洲,然后再回到,你知道,西海岸。我住在东海岸。整个时间我都在想,带我去巴黎吧,因为每个人都要去黄瓜。我在想,把我放进你的包里,像你的行李。我只想要一个可颂。可颂真的很好。伙计,大家在Twitter上吃可颂的那一周,我在想,我恨你。

别担心。我们在2025年去伦敦。对我在英国的所有朋友们充满爱,但你知道,英国美食是个矛盾。我对食物并不太兴奋。

可爱的人们,我确实想去伦敦。我想去看看所有的景点。我几周前刚去过,我第一次开了一辆经典的Mini Cooper。租了一辆。太棒了。你也在对面开车吗?我开了。方向盘在右侧。我们在右侧行驶。这是手动挡,所以我第一次用左手换挡。我做得还不错。我想我得到了我的第一张超速罚单。

当我准备归还时,我看到了一闪而过的灯光。我知道。我在想,等等,我们怎么不确定?他们在那儿有很多自动超速摄像头。他们喜欢他们的自动摄像头。是的。所以我正准备归还汽车,我在我认为是高速公路的地方开得有点快,但结果发现限速并不是高速公路的速度。所以我看到了一闪而过的灯光,我仍在等待罚单是否会寄到我家。你去伦敦,这就是你带回来的故事?是的。

你在说,我去过,我得到了我的第一张。如果他们把它送到你那边,那就很了不起。是的。

我的意思是,它是以租赁公司的名义登记的。所以我告诉他们,我说,嘿,顺便说一下,我可能得到了罚单。我看到了一闪而过的灯光。如果你们收到的话,给我发邮件。我在想,如果他们有照片,我想要。是的,我想要。我想把它框起来。我想把它挂在墙上。它会被框起来。Justin是唯一一个会说,嘿,我可以摆脱这张超速罚单,但我想要照片的人。所以像,这里是我的联系信息。请来找我,因为我只想要这张照片。我的第一张超速罚单。没关系。太好了。我在错误的路上开车,我得到的就是这个...

超速罚单。这也是那个在互联网上有自己断臂照片的人,所以像,你为什么要把它放在某个地方,互联网还有什么用,我不知道。嘿,朋友们,你知道我们是fly.io的忠实粉丝,我在这里和fly的联合创始人兼首席执行官Kurt Mackie在一起,Kurt,我们进行了一些对话,我听你说公共云很糟糕。

你对公共云糟糕的个人看法是什么,Fly又是如何不糟糕的?好的。所以公共云糟糕。我实际上认为大多数在互联网上托管东西的方式都很糟糕。我对此有很多理论,但这几乎无关紧要。现实是,如果我为我的家人建立了一个新的应用程序,用于生成三明治食谱,因为我的家人只喜欢使用Braunschweiger作为成分的特定类型的三明治,例如,

然后我想把它放到某个地方。你去AWS,发现比从Headster获取专用服务器还要困难。实际上,弄清楚如何在AWS上部署我的愚蠢三明治应用程序要复杂得多,因为它并不是为我作为开发者的生产力而构建的。它是为其他人构建的。它是为平台团队构建的,以便构建他们梦想中的基础设施,并希望为他们合作的开发者创造一个有用的新用户体验。

而且我觉得每次我谈论这个问题时,都是因为我太不耐烦了。我并不特别想去弄清楚这么多事情,仅仅是为了把我的三明治应用程序展示给人们。而且我并不特别想在我的三明治应用程序成为一家巨大的初创公司并上市后,去和平台团队交谈,我必须进行部署。我觉得所有这些东西都应该为我工作,而不需要我去请求许可或与其他人交谈。

所以这在很大程度上影响了我们构建Fly的方式。我们仍然是一个公共云。我们仍然有很多与大公司非常相似的低级原语。但一般来说,它们是为开发者直接使用而设计的。它们不是为平台团队拼凑在一起而构建的。它们旨在

快速为开发者提供便利。我们考虑的一个方法是,如果你能将一个非常困难的问题变成一个两小时的问题,人们将构建出更有趣的应用程序。这就是为什么我们做了像让应用程序在多个区域运行的事情。大多数公司在公共云上不运行多区域应用程序,因为这

在没有大量前期努力的情况下实际上是不可能的。这就是为什么我们让虚拟机原语背后只有一个简单的API。大多数人不会进行代码沙箱或自己的虚拟化,因为这真的不容易。在云上没有这样的路径。

所以一般来说,我觉得我说公共云糟糕并不公平,因为它们是为不同的时代构建的。如果你从2007年开始构建其中一个东西,世界与现在非常不同。因此,我所说的很多内容,我认为公共云有点老旧,我们应该在其上构建一个新的公共云版本,这肯定会让我作为开发者比五六年前更快乐,当时我被困在这个泥潭中。

所以AWS是为一个不同的时代、一个不同的云时代而构建的,而Fly是一个公共云,是的,但它是为那些交付的开发者构建的。这就是区别。我们在ChangeLog这里是交付的开发者。所以你应该信任我们,试试Fly。

<context>信息安全与OpenTelemetry 也许为孩子们的家务事使用Jira是个好主意……可能不是。 加入讨论Changelog++会员在这一集节省了11分钟,因为他们让广告消失。今天就加入吧!赞助商:Sentry – 代码出错,修复更快。不要只是观察。采取行动。Sentry是唯一为开发者构建的应用监控平台,能够找到每个问题的根本原因。超过100,000个不断增长的团队使用Sentry快速发现问题。注册时使用代码CHANGELOG可享受团队计划100美元的折扣。

荒岛Devops

<raw_text>0 Fly.io。超过300万个应用,包括我们,已经在Fly上启动。它们利用全球反向负载均衡、零配置私有网络、硬件隔离、即时WireGuard VPN连接和按按钮部署,扩展到数千个实例。这就是你想要的云。查看一下。Fly.io。再说一次,Fly.io。

Austin,我想我们在Blue Sky上开始了这个对话,当时你在抱怨安全问题。是的。那是很久以前的事,我甚至不记得当时的背景是什么,但我记得这足以让我说,你想来节目上谈谈这个。是的,我认为我真正的抱怨是,实际安全的最大障碍实际上就是安全政策和控制。

这对我来说非常有趣,因为如果你想扩展一下比喻,对吧?或者通过例子来说,密码政策。每个人都知道,比如说,你有密码。就像,你不能使用相同的密码两次。你不能使用相同的,知道吗,它不能包含你的出生日期。它不能包含你的名字。它不能包含所有这些东西。多年来,我们都接受了这样的事实,

好吧,我的密码将是我记住的这个随机字符串。然后每个月我增加一个,我在末尾递增某个东西,或者我添加一个数字,或者其他什么。实际上并没有增加安全性,因为我在各处使用相同的密码。

所以,你知道,随着时间的推移,标准慢慢改变。现在NIST说,哦,你实际上不必每个月为用户进行密码轮换,这是不推荐的。对吧。但我认为你在许多安全领域都能看到这一点,尤其是,你给某人说,哦,我们想确保人们拥有超级安全的公司设备。所以我们放置了,知道吗,

所有这些代理,我们有所有这些超时等等。人们做什么呢?他们想完成事情。他们将安全控制视为完成事情的障碍。因此,他们完全绕过安全控制。他们使用个人设备。他们使用影子IT,等等。

我并不是说那些人应该这样做,对吧?我不在安全领域。你永远不应该听我的建议。但我认为这实际上对我们思考软件系统和系统的一般方式非常有启发性...

有这么多最佳实践和我们所做的事情,我们说,哦,你只需这样做。只需做这件事,这将解决你的问题。但这些事情越是给你试图实际完成的体验增加摩擦,那么人们就越会绕过它们,以便让自己更容易做他们真正想做或需要做的事情。这不仅仅是安全,对吧?它发生在可观察性中。它发生在CICD中。它发生在DevOps中。它发生在

你想指向的任何地方,你放入的控制越多,如果你没有考虑这些实际上如何适应工作完成的方式,那么你就会遇到人们绕过控制的问题。这是如此真实。像从解决方案架构师转变为实际在生产中作为开发者,这真是疯狂。当你试图给人们最佳实践,然后看到生产中的事情是如何运作的,以及像,

你想做最佳实践,但与此同时,有这么多事情并不像最佳实践和架构通常所描绘的那样工作。我几乎希望人们对此有更多的思考,因为当他们想象这些控制或这些事情时,他们真的让事情变得非常困难。

我不知道你该如何解释,但这些不同的建议。理想的世界如果我们能够实现这个东西会是什么样子。是的,这几乎是在一个实际上不存在的世界中进行的。我在想,我们能否得到一些更基于现实的东西,这样我们就可以真正遵循这些规则?我的意思是,很多东西就像是物理学的入门知识,对吧?当你想到,知道吗,回到高中或大学,你想到物理教育时,其中很多是这样的,好吧,

好吧,假设你知道,一个无摩擦的平面,然后做这个数学或这个公式。但这就像,好吧,

好吧,但在现实世界中,我不能假设这一点。我们之所以说,像假设我们是无摩擦的,当我们在教育人们时,我认为很多时候我们确实想要去消除那种复杂性,或者我们想要将这些外在的力量暂时放在一边。希望通过消除那部分,消除所有的复杂性,我们可以接触到真正重要的东西,比如速度,比如计算速度或这些其他真正核心的基础概念。

问题是,在软件中,尤其是,我觉得我们有点错过了第二部分,那就是,为什么我们假设一个无摩擦的平面?我们假设一个无摩擦的平面。因为如果你没有获得更高层次的理解,如果你没有理解摩擦,平面实际上对你试图传达的概念并不重要,比如,知道如何计算速度,或者,知道如何根据质量衰减或其他什么。是的。

如果你不理解那个概念,那么你永远不会达到添加摩擦和添加山丘以及所有其他东西实际上会产生差异的程度。但随后我们进入软件世界,我们开始假设一切都必须是一个无摩擦的平面。它必须是一个完美的球形牛。

安全、可观察性、日志记录、部署,无论你想指向什么,我们将我们所有的教训打包成这种完全无视工作在组织中如何完成的上下文的方式,如何一个系统与另一个系统截然不同,即使是构建在相同技术栈中的系统,以及真正的,什么是那些不仅推动价值的东西,而是像

导致什么被优先考虑的决策,什么在不仅仅是客户中推动价值的东西,但在工程组织中推动价值的东西。是什么让你升职或获得良好评价或达到你的OKR?所有这些,我认为,

那就是平面。那就是所有外在力量与我们最佳实践之间的碰撞。除非我们作为工程师以及在生产中工作的人,或者谈论你应该如何在生产中工作的人考虑到这一点,否则我们将继续遇到这个问题,

一次又一次地告诉你所有的101内容。当它不起作用时,就会说,嗯,你没有做到足够的最佳实践。你做错了。你应该更努力地实践最佳。成为工程师最令人沮丧的部分就是,有这么多事情会教你编写代码的概念或做一般事情的概念。但还有更多的事情。

细微差别和上下文,你需要真正编写大规模的生产代码。而我们在教人们这方面做得很糟糕。就像,

给人们文档。有时你浏览文档时,你会想,你在发布这个到互联网上并告诉人们这将是人们使用你产品的方式之前,是否真的做过这个以查看它是否有效?一些最成功的数据库之所以成功,是因为它们有良好的文档,并且易于使用,而不一定是因为它是最好的工具。是的。尤其是文档,它们做了很多假设。

几乎所有的文档都必须关注个人,因为只有一个人在阅读文档。我在亚马逊遇到过这个问题,我一直在告诉大家,我们所有的文档都是,你应该能够去做这件事并将其部署到Kubernetes。我在想,等一下,这在亚马逊对我有效,因为我是这个AWS账户的管理员。

去任何其他公司,某人试图做这件事,他们将去给四个人发电子邮件以获取访问权限,去做你刚告诉他们的事情。哦,这将很简单。我是说,这只是一步。我在想,不,不,不。让我们把这个分解成:我有你的管理员账户凭据,你有这个集群的访问权限。现在去遵循你的文档,告诉我它将在哪里崩溃,因为你必须在组织复杂性之间来回切换,现在有四个团队。

一个管理数据库,一个管理网络,一个管理集群,一个管理AWS账户。现在你是怎么做到的?这些实践都不再有效。这正是你所谈论的。现在我在想,现在我只是和那个其他团队的朋友说,嘿,你能为我做这件事吗?我不打算提交工单。我不打算经历所有步骤。我只需要完成这件事。我认为这里有一个非常有趣的类比,比如Open Policy Agent。再说一次,我不是安全人员,但我理解OPA是一种为代码编写安全政策清单的方法。

我认为从各种云中有类似的东西。实际上,这是个很酷的主意。基本上就是,好的,这里有一个清单文件,描述了这个服务的所有不同的安全内容。比如,它应该在哪些端口上进行通信,应该有哪些路由,ACL是什么,等等。但当你深入了解时,它有点像

一群安全人员去查看开发人员编写的所有代码,并说,我并不真正理解所有这些代码。我想把我关心的所有事情放在这个小安全盒子里。然后我想编写与安全盒子交互的工具。然后我会让所有开发人员弄清楚如何将他们所做的事情转换为适合我的安全盒子的东西。在很多方面...

我认为云转型的遗产在于,在很多方面,我们试图

在抽象之上构建一切,但我们试图使这些抽象之间的界限变得不那么模糊,不那么多孔,以便我们可以说,好的,构建和部署,这些是CI、CD问题,这些是DevOps问题。它们放在DevOps盒子里,DevOps人员使用这些东西。安全的东西,所有这些都放入安全盒子,开发的东西放入开发盒子。我们已经

这样做时,我们在一开始就失去了敏捷和DevOps的整个教训,那就是它是关于工作的代码而不是过程,对吧?它是关于响应需求的。DevOps的整个理念是……减少摩擦。减少摩擦。作为开发人员,你应该拥有你的代码,并且你应该在整个生产过程中拥有它,甚至在生产之后。我之前写过一篇博客,我想我称之为...

DevOps的... SRE正在经历类似的事情,你现在看到,比如你看到AI,AI驱动的SRE,你只需在你的云账户上打开所有这些AI代理,它们会为你做所有这些事情。软件工程、软件设计和架构中的每一个动作实际上都是人们的一个非常有趣的循环。

人类,获得了一个很好的想法,像,嘿,如果我们没有所有这些政策和程序,我们不把一切放入这些盒子里,我们只是说,我们要制作好的软件,我们要将其交付给人们,我们要拥有整个过程。然后他们这样做并获得良好的结果,然后有人后来进来,问,但如果我能从你创建的这个过程中赚钱呢?并想出像德勤敏捷列车这样的东西,

想出基于AI的SRE,想出盒子里的可观察性,对吧?像,

总会有人从你的复杂性中赚钱。对。每当你引入抽象时。是的。每当你创造价值时,总会有人试图将其乘以,知道吗,捕获那个价值为自己。慈善机构,我认为,总是说,工具制造边界,对吧?就像如果这个团队使用这个工具,而那个团队使用那个工具,你现在就有两个不同的团队。是的。这是如此奇怪,因为作为解决方案架构师,我们会与公司交谈,但有很多大公司你无法

这两个团队无法相互沟通。他们无法知道他们是否都在使用相同的数据库或不同的数据库。我只是想,所以你会支付企业支持费用以获得建议,而你可以在自己的团队内相互交谈。哦,是的,绝对如此。顾问赚了很多钱,仅仅因为他们可以超越团队的边界。是的。让我感到困惑的是,

我认为抽象和复杂性都是游戏的一部分,有时它们可以改善事物,知道吗,但像,

我们正在创造自己的抽象和上下文的丧失。即使我们使用自动化的某些方式也是上下文的丧失。你知道我的意思吗?我们在抽象、自动化和我们设定的愚蠢规则中失去了上下文的方式有很多。这是疯狂的,因为这些都是人类故意让其他人变得更糟。我不明白。所以

所以,我只是作为背景,我曾在一家名为LightStep的公司工作,几年前被ServiceNow收购。实际上,这非常有趣。我在那里待了几年。与ServiceNow客户交谈非常有趣。因为如果你熟悉,ServiceNow是一个大型企业,向大型企业销售。财富100强,庞大的跨国组织。

与他们谈论可观察性非常吸引人,因为他们会谈论,哦,是的,我们有事件。你知道,就像他们的事件会持续几周。是的。你知道,这不是说,哦,这是一个事件,我们在一个小时或一天内修复它。就像,不,这正在进行中。这已经持续了两个月。我在想,好吧,

我们正在朝着我们的第一个九迈进。我们会到达那里。然后你去,像,跟我谈谈。就像,这怎么发生的?你是如何解决这些问题的?最启发性的事情是与某人交谈,他们谈论,像,是的,这是一个电信公司,主要电信公司。然后

我在想,好吧,当这些事情发生时,像,谁在接收警报?谁拥有这个问题?谁在接收警报?他们带我走过。就像,哦,是的,我们有这个,他们有这个非常全面的,知道吗,事件响应系统。

过程就像我们有事件指挥官,这些是所有不同的步骤。我在想,好的,你知道,我理解你有这个伟大的过程。酷。但这仍然需要你几个月的时间来解决问题。人们是如何获取信息的?人们是如何获取数据的?就像,哦,是的,那是问题的一部分,因为,知道吗,实际上可以更改代码的人没有访问日志。像什么?

然后发现这个过程涉及到不同地区、不同国家的团队,字面上是因为各种安全和访问控制,进入一个团队会推送更改。然后第二天,另一个团队会去提取日志并

在他们的笔记本电脑上编辑,然后将这些日志的片段通过团队消息发送回第一个团队。这就是他们共享数据的方式,因为访问控制不允许他们以其他方式进行。就像,我不完全确定你的问题是否是技术问题。老实说,但

过程是如此难以改变,对吧?这是一个高度监管的公司。改变这些过程可能需要数十或数百个月的工作。

跨越全球数百名员工,仅仅为了做这些小的改变。就像,哦,天哪,这是一个更大的问题。这不是一个工具可以解决的事情。是的。好吧,人们试图购买DevOps,对吧?他们是的。他们会很乐意购买DevOps。你如何引导他们进入OpenTelemetry将为你解决问题?所以我实际上从整个经历中得到的东西是

在很多方面,解决这个问题的就是标准。像技术本身,你不能购买一个工具并期望这个工具能够解决这些非常棘手的问题,因为工具带有自己的语言。工具带有自己的,知道吗,它们制造自己的孤岛,对吧?

但如果你能让每个人说同一种语言,让每个人说同一种方言,让每个人在重要的事情上保持一致,我们需要哪些数据来找出那些重要的事情?这些数据是如何结构化的?这些数据有意义吗?我们能否赋予数据意义?我们能否为赋予数据意义制定标准?那么这实际上在解决问题方面走了很长一段路,因为每个人都在

而不是在他们的40或50个不同的孤岛中,现在我们都在谈论同一件事。仅仅能够谈论同一件事,并拥有关于可用数据、数据格式、数据实际意义的共享理解层,解锁了许多潜在的解决方案,使我们能够克服这些人类问题。因为如果每个人都可以去做自己的事情,如果每个人都在创建自己的日志,每个人都在创建自己的指标、自己的追踪、自己的任何东西,那么你就会有...

这些理解差距,你必须弥补,对吧?因为我的日志将是任何东西,而你的日志将是任何东西。如果我们给每个人能力去做自己的事情,那么我的团队将创建一个对我们看起来不错的指标。然后你的团队将创建一个对你看起来不错的指标。每个人都会有他们谈论的虚荣指标。

OpenTelemetry在这里介入,作为统一这些不同事物的一种方式。它说,嘿,这里有一种标准的方式来结构化可观察性数据。这里有一个标准的API,用于代码的仪器化。这里有一组标准的语义值,告诉你你发出的数据意味着什么。这里有一个完整的工具生态系统,开源的、商业的,等等,它

可以帮助你分析和更好地理解你的系统。我认为,这就是OpenTelemetry的承诺,未来一切都在使用OpenTelemetry,你不必考虑我在使用什么日志API,或者我是否有指标,或者我是否没有指标?

它只是存在,因为OTEL是内置的。如果OTEL是内置的,那么你就免费获得这些东西。这就是承诺。这就是我为什么参与其中。我对此感到非常兴奋。现在,之前有过标准,对吧?有意或无意的标准,比如Apache日志格式,对吧?像Apache日志格式和Nginx日志格式,这些对于很多人来说是默认标准,因为其他一切都遵循...

这种不太好的偶然方式来访问和grep日志。我记得多年来我都记得正则表达式,知道如何从每一个这些中提取某些东西,因为一切都发出类似的格式。

但在一天结束时,这最终成为某个仪表板,有人说,哦,现在我在验证我的东西与仪表板。但当另一个团队说,哦,我们想使用相同的数据,但我关心不同的事情时。他们就fork了仪表板。然后我们又进行了不同的对话,我们说,哦,最终我们实际上并不是在谈论Apache法律。

我们在谈论你关心的指标与我关心的指标,以及哪个更重要。是的。我确实认为OTEL在处理这个问题时有几个重要的区别。一个是我们有这种遥测的稀疏性,对吧?并且高度上下文化。

所以我的意思是,我们不想必然地发出大量关于同一事物的遥测,这意味着它们完全相同。我们希望遥测能够相互叠加,并希望将其从这三根支柱中转变。你知道,人们可能听说过像追踪、指标、日志,这三根可观察性支柱的概念。

OTEL的概念更像是,好的,如果所有的遥测就像这个相互关联的辫子,所有的东西都是自我引用的,我的指标引用我的追踪,追踪引用我的日志,日志又引用我的指标。我可以在技术层面上拥有这种共享的上下文值,帮助我关联所有这些不同的东西。然后进一步说,好的,所有我的东西都应该发出这种核心基础级别的遥测。

但我确实需要处理它的方法。我确实需要为不同的用例转换它的方法。也许其中一些需要进入不同的存储。安全团队想要的东西与应用开发者想要的东西不同,与前端开发者想要的东西不同,与DevOps团队想要的东西不同,等等。

这些数据需要去不同的地方。这些数据在进入这些不同地方时可能需要以某种方式进行转换。但只要我们都在使用相同的基础级别,如果我们能够分离这些关注点,或者我们会说遥测在这里,然后这些遥测管道在其上方一步,那么...

这就变得更容易满足每个人的需求,同时不根本改变我们正在做的事情,像OTEL的一个重要部分就是我们支持无损转换。

所以当你在OpenTelemetry中创建一个指标时,你实际上可以将该指标转换为其他形式。因此,你可以从像delta这样的东西更改,您可以更改它的聚合方式或如何使用视图、使用其他技术进行显示。这不是一种有损转换。你实际上可以根据你的设置进行逆向操作。♪

好的,朋友们,我在这里与我们在Timescale的新朋友Avthar Suwathan。Avthar,帮我理解一下Timescale到底是什么?所以,Timescale是一家Postgres公司。我们在云和开源生态系统中构建工具,使开发人员能够更好地使用Postgres。因此,使用它进行时间序列分析,以及最近的AI应用程序,如RAG、搜索和代理。好的,如果我们的听众想开始使用...

Postgres、Timescale、AI应用程序开发。你会告诉他们什么?什么是好的路线图?如果你是一名开发人员,你要么被要求构建AI应用程序,要么对正在发生的所有创新感兴趣,想要自己参与其中。好消息是,今天的任何开发人员都可以成为AI工程师。

使用他们已经知道和喜爱的工具。因此,我们在Timescale与PGAI项目所做的工作使开发人员能够使用他们已经知道的工具和数据库构建AI应用程序,而这个数据库就是Postgres。这意味着你实际上可以提升你的职业生涯,构建新的有趣项目,你可以

增加更多技能,而无需学习一整套新技术。最棒的是,这一切都是开源的,PGAI和PG Vector Scale都是开源的。你可以通过Docker在本地机器上启动它,遵循Timescale博客上的其中一个教程,构建这些前沿应用程序,如RAG等,而无需学习10种不同的新技术,只需使用Postgres和你可能已经知道并熟悉的SQL查询语言。

所以,是的,就是这样。今天就开始吧。这是一个PGAI项目,只需访问任何Timescale GitHub仓库,无论是PGAI还是PG Vector Scale,遵循其中一个教程,开始成为一名AI工程师,只需使用Postgres。

好的,只需使用Postgres,只需使用Postgres开始AI开发,构建RAG、搜索、AI代理,所有这些都是开源的。访问timescale.com/AI,玩玩PGAI,玩玩PG Vector Scale,所有这些都在你的桌面上本地进行。它是开源的。再说一次,timescale.com/AI。♪♪♪

当我想到Elasticsearch时,我想,哦,我可以从

我收集的所有这些日志中制作指标,然后我可以将这些指标汇总成一个指标,而我正在朝相反的方向走,我想要一个数字。是的。酒店并没有为你做那部分。对。酒店并没有为你做那部分。它所做的是为你提供结构化数据,包含你需要自己完成的所有信息。因此,无论你是作为一个。

创建可观察性平台的人。一个很好的例子是在Honeycomb,我们支持OpenTelemetry,我们接受所有这些OpenTelemetry数据。现在在后端,</raw_text>

<context>信息安全与OpenTelemetry 也许为孩子们的家务使用Jira是个好主意……可能不是。 加入讨论Changelog++会员在这一集节省了11分钟,因为他们让广告消失。今天就加入吧!赞助商:Sentry – 代码出错,修复更快。不要只是观察。采取行动。Sentry是唯一为开发者构建的应用监控平台,能够找到每个问题的根本原因。超过100,000个不断增长的团队使用Sentry快速发现问题。注册时使用代码CHANGELOG可享受团队计划$100的折扣。

荒岛Devops

<raw_text>0 Honeycomb是围绕任意宽事件的概念设计的,这与OTEL给你一个跨度不同,它给你一个指标,它给你一个日志消息。然而,我们可以利用数据上的这些提示,我们可以查看数据的结构,并且我们可以做一些有趣的技巧,通过查看OpenTelemetry给我们的元数据,将指标转化为在Honeycomb中更易查询的东西。

其他人也可以这样做,对吧?比如说,假设Grafana或其他人有一个指标数据库,并且只想允许你对某些类型的指标运行有效查询,比如不让你对一个仪表做速率计算,或者不让你做某些基于指标类型不合理的转换,那么他们实际上可以通过查看OTEL关于这个指标的结构化数据的提示来强制执行这一点。好的,这些是有效的查询类型。

现在,并不是很多人这样做。事实上,我不确定现在是否有人真的这样做。这是完全自然的。我认为,分析方面需要一段时间才能赶上OTEL所提供的内容。因为OTEL是这个领域非常低级的基础部分,对吧?我理解为什么供应商和其他人不一定会试图在这个快速发展的开源项目上构建。完全合理。

所以当我思考OTEL的未来是什么样子时,实际上并不像今天那样。它更像是在思考下一代可观察性工具是什么样子。这是一个非常有趣的问题,我认为我们还没有看到很多人开始探索。我认为可观察性和指标是如此被低估,尝试排除故障并真正深入了解你正在构建的东西。当你试图收集所有这些不同的指标和数据以及元数据时,

你是否在尝试保持安全的同时遇到了很多问题,但又想获取所有数据并将其放在一个地方?这要看情况。我认为在收集你需要的数据以实际理解生产中的系统和了解发生了什么之间存在着一种紧张关系,并且要给你足够的保真度和分辨率,以便能够准确定位问题,同时又不收集过多的数据,对吧?因为如果你获得

过多的数据,那么

我喜欢谈论的方式是,系统实际上只有三种状态。一种是所有一切都绝对正常,这种情况从未发生过,但一切都绝对完美,我们不在乎。或者相反,所有一切都坏了,我们也不在乎,因为一切都坏了,对吧?现在,大多数时候,整体上大多数时间,没有系统处于一切完美或一切坏掉的状态,对吧?每个人总是处于中间,尤其是在分布式系统或去中心化系统中。

某些服务的响应速度会比其他服务慢。错误会发生。这些都是我们必须编程解决的问题。我们必须进行防御性编码,并设置回退、重试和压力释放阀等等。

那么,正确的数据量是多少?这在很大程度上取决于许多因素,这些因素与数据关系不大,而更多地与作为工程团队你关心和优先考虑的事情有关。你正在优化的是什么?我认为,如果你读过Charity和Liz关于可观察性工程的书,它谈到了从客户的角度测量事物。

谁是你的用户?这是你应该关心的体验。我真的很喜欢这种框架,因为你为什么要构建软件,如果不是为了人们?我认为人们真的忘记了,我们进入构建酷东西或构建不同的东西或我们想要的东西,而没有考虑到你实际的受众和客户是谁。是的。那么,在构建OpenTelemetry时,你最大的挑战是什么,技术挑战或者即使不是技术挑战?

好吧,我不会为构建OpenTelemetry而自夸。这绝对是数百和数千名贡献者的巨大努力,老实说,对吧?我们是CNCF中仅次于Kubernetes的第二大项目。上次我检查时,我们在GitHub上是前25个开源项目之一,仅就规模而言。

这真是令人振奋和验证,看到有这么多的兴趣。我认为任何非常大型项目中最困难的部分就是保持每个人的积极性,并朝着同一个方向前进,尤其是当你有一个……如果你考虑OpenTelemetry的范围,我们有13种不同语言的API和SDK。我们有这个用Go构建的工具生态系统。我们有...

大量需要编写和更新的文档。我们有一个非常活跃的社区,但社区需要被培养,你需要给人们提供成长的机会。我认为最困难的部分绝对是治理,以及试图保持所有的能量积极并朝着正确的方向前进。

确保当人们来参与OTEL时,他们是在为OTEL工作,而不是为他们工作的公司工作。尤其是当你在可观察性领域时,有很多公司。跨公司需求和要求。对。我们是为这个项目而做的,是的。对。确保每个人都首先考虑OTEL开放遥测,而不是他们自己的...

作为一个系统人员,我一直把OTEL视为APM的替代品。这是开发者在应用中做的事情,而不是为我的系统服务。我知道我们想要日志,但通常我看到的是,我想要应用日志。我不关心系统日志。我知道有OTEL代理或从系统级别发出数据的东西。

这仍然是意图吗?比如说,人们是否在实现带有内置OTEL的system D单元文件?因为在system D服务上没有跨度的概念。对。所以我甚至可以做不同的事情。那种重叠在哪里?因为当开发者说,嘿,我的应用在OTEL中得到了这个指标。这是坏的。我仍然需要将其关联到操作系统的更低级别。因此,绝对的,OpenTelemetry旨在用于应用程序和系统级别。

你知道,遥测。我们有一个叫做收集器的工具,它就像一把瑞士军刀,可以从几乎任何地方吸取数据,包括journal D,它将获取主机指标、主机日志。你知道,如果你有文件并且想要指向文件,它会将这些文件吸取上来。Var log star,直接获取并发送所有数据。对。它非常可定制。我们可以做的一件事是,我们可以努力将你

在收集器中,我们实际上可以将这些特定的应用级指标、日志和跟踪与系统级数据关联起来。所以要么直接关联,如果我们在两个地方都有上下文值,比如跟踪ID或其他东西,那么你可以那样关联。但我们也有方法来关联这个称为资源概念的概念。

所以在OTEL中,你有这些特殊属性,称为资源属性,它们标识唯一的来源。所以你可以想象,我有一个Kubernetes集群或一组EC2虚拟机,我有100个实例在运行我的应用。通过查看这些资源并在资源之间进行聚合,我可以看到,好的,是的,应用中确实存在这个问题,并且

我看到它来自哪个节点,来自哪个pod,然后我还可以看到,好的,来自该资源的系统指标和日志等等。如果我有工具可以为我提供统一的视图,那么我可以非常轻松地在这两者之间进行切换。

再次强调,这是工具需要支持的东西。你必须为此提供一种体验,无论是在你自己构建的工具中,还是在你拼凑在一起的某种工具中。我们确实提供原始数据,但由消费者来决定如何将原始数据转化为可用的形式。

或者用它进行分析。我不应该说可用的形式。JSON是非常可用的,对吧?我有JQ。我们很好。是的,数据是可用的。只是数据量很大,对吧?就像是密集的。我认为这是我们关于OTEL收到的最大投诉之一,我认为这并没有错,就是它非常低级。

这是我们经常听到的事情,我们正在努力……这是我们作为一个项目从治理的角度以及在各个语言层面上思考的事情:我们如何使其更易于使用?我们最近开始的一件事是这个新的开发者体验特别兴趣小组,真正旨在:好的,作为一个项目,我们需要做些什么来使OpenTelemetry更易于开发者或系统管理员使用,对吧?我们在哪里错过了目标

因为我认为最初的目标是OTEL应该是你系统的本地部分。它应该是你框架的本地部分。如果你使用ExpressJS或C Sharp或其他任何东西,它应该就在那里。

所以我们必须在低级别上编写以在低级别上集成。但是很多人,当他们想到可观察性时,他们并不在那个低级别上思考。他们更多地想到,哦,我只需将这个代理放入,它就为我做所有这些事情。我们有一些类似于即插即用的代理,它为你做所有这些事情。但是

你知道,这实际上更像是一个引导。这就像我们必须为人们做这个,以便他们实际上可以使用它,因为没有人会去费尽心思自己编写所有这些仪器。他们需要一个简单的按钮。可观察性的Hello World。老实说,我确实认为有一个相当好的论点,即如果你什么都没有,那么某种东西总比没有好。

因此,拥有一个简单的按钮,就像,是的,这显示了你所有的数据库调用和HTTP调用,这真的很有用,尤其是如果你之前没有这个。我认为重要的是要有不同级别的简单和更可定制的选项,以便人们可以根据他们的用例和对你产品的理解来使用。甚至回想起我第一次在Linux主机上运行D消息时,我只是,哦,这我在服务器上什么都没做,但它正在做很多事情。

我不知道它在做什么,但它正在做。是的。软件中有很多事情。这就是一切的好与坏部分。就像我们,有时我会反思,当我还是个孩子的时候,当我10岁的时候,你知道,当我还小的时候,我学会了基础语言,我用基础语言写了一个小数据库来跟踪我的棒球卡。这很有趣。随着年龄的增长,我想要获得,你知道,我有一台Macintosh,我想做GUI编程。所以我得到了,

Prologue书籍,我得到了C,你知道C++书籍,我试图学习这些事件循环中的GUI东西,我只是,哦,天哪,那并没有很好,但这是因为它是如此的,你知道,事情是困难的,即使是使用库和系统级别的东西,它给你的力量,仍然是你必须自己做相当多的工作来编写一个GUI。

而现在,简单得多。它们工作得更好。你甚至不需要,知道,HTML、CSS,所有这些。但是,你知道,如果我想写一个图形程序,我不需要学习超级低级的绘制矩形,什么的。我可以只创建一个div并说,哦,这是这个tailwind类。然后,砰,我有一个框,这让它更容易使用。这很好。但是,所有这些都创造了抽象,

我们可能不一定需要完全理解底层发生的事情,但底层发生的事情确实很重要,它可以影响性能,也可以影响人们是否有良好的体验。因此,我认为在仪器和遥测之间有一条非常细微的界限,你真的需要深入到什么程度,以获取你需要的数据来进行分析,以确定人们是否过得愉快?

回到你的GUI Mac应用程序,你的网站真棒。aparker.io是一个经典的Mac风格的WordPress主题,对吧?就像它在顶部,它是一个看起来像经典Mac的主题。

当我们几周前请到Dave Eddy时,你可以curl他的网站。我喜欢推广任何运行自己网站的人。因为我认为这仍然是互联网的支柱,人们拥有一个网站,他们偶尔更新它,并在上面放一些内容,无论你想做什么,你只需去做。你的网站太酷了。我实际上,我正在进行的业余项目就是重写它。

我在整个WordPress事情开始发生之前就开始做这个。但为了更全面地回顾一下,像Justin,我们开始这个对话。我之所以在这里,是因为在Blue Sky上的一次对话。世界的,等等,目前也许是美国第二大社交网络在应用商店。我需要检查。是的。在基于文本的社交媒体中,真是有趣的时刻。

但对我来说,Blue Sky有一件超级酷的事情,它是基于一种叫做AT协议的东西。AT协议有两个我非常喜欢的地方。一个是它使用域名作为一种

身份。是的,就像你的域名是你身份的基石。它也非常强调你应该控制你在线的内容。因此,我一直在重写那个博客,以运行在AT协议PDS(个人数据服务器)上。实际上,这非常有趣,因为一方面,尝试新事物总是有趣。但另一方面,它给你提供了一个非常有趣的未来愿景,就像,我可以拥有一个单一的服务器,这就是我的身份,对吧?这个服务器有所有这些不同的东西,并且支持所有这些不同的协议。如果我通过HTTP与它交谈,我得到一个网站。如果我通过其他协议与它交谈,我得到微型博客,对吧?而且,

你可以验证所有这些东西,因为它们都是经过加密签名的。因此,你可以说,如果有人给你发送一个链接,你可以证明,像,是的,这是我写的博客。如果我编辑它,你可以验证,知道它已经被编辑。我不知道。就我认为,互联网在很长一段时间内一直非常静态。

我开始相信,人们似乎意识到我们过去20年来一直频繁使用的那种高度管理的企业互联网并不可持续。你实际上不能仅仅通过出售广告来经营一项业务。我是说,你可以,但……我是说,拥有一些东西在互联网上会让事情变得更有趣。是的,就像如果你拥有东西,如果你控制东西,那是好的。