OpenTelemetry Course - Understand Software Performance
Vložit
- čas přidán 15. 07. 2024
- Learn how to use OpenTelemetry to get full stack observability on the performance and behavior of your software projects.
✏️ Course developed by Ania Kubów. Check out her channel: / @aniakubow
🔗 Step by step guide for this project: dev.to/newrelic/instrumenting...
💻 Repositories:
🔗 Tracing Project: github.com/kubowania/opentele...
🔗 Distributed Tracing: github.com/kubowania/opentele...
🔗 New Relic OpenTelemetry Examples: github.com/newrelic/newrelic-...
🔗 New Relic OpenTelemetry Exporter: github.com/newrelic/newrelic-...
⭐️ Course Contents ⭐️
⌨️ (0:00:00) What is OpenTelemetry
⌨️ (0:03:04) Course Outline
⌨️ (0:03:40) Let’s go!
⌨️ (0:04:49) What are Microservices?
⌨️ (0:07:11) What is Observability?
⌨️ (0:07:55) M.E.L.T
⌨️ (0:09:57) History
⌨️ (0:11:22) Setting up our Project
⌨️ (0:21:43) What is Tracing?
⌨️ (0:25:33) Context and Propagation
⌨️ (0:27:33) Setting up our Tracing
⌨️ (0:33:26) What are Metrics?
⌨️ (0:43:37) Use cases for OpenTelemetry
⌨️ (0:45:29) Setting up Distributed Tracing
⌨️ (1:01:04) Using other Analysis Tools - New Relic
⌨️ (1:07:44) Where to go next
🎉 This course was made possible by a grant from New Relic.
🎉 Students can get even more out of their free New Relic account through the GitHub Student Developer Pack. Get full access to New Relic one for three full users; 500 GB/month of data ingest; and free-tier AI to instantly detect and resolve issues.
Sign up for FREE at newrelic.com/signup?...
🎉 Thanks to our Champion and Sponsor supporters:
👾 Wong Voon jinq
👾 hexploitation
👾 Katia Moran
👾 BlckPhantom
👾 Nick Raker
👾 Otis Morgan
👾 DeezMaster
👾 Treehouse
--
Learn to code for free and get a developer job: www.freecodecamp.org
Read hundreds of articles on programming: freecodecamp.org/news
Hope everyone enjoys this video! Always such a pleasure creating content for the FCC Community ☺ (P.S Fave still is the micro-services explainer @ 5:32 )
thank u :)
I think it is FCC Community, isn't it?
@@thowheedh you are right!! Edited :)
Long live the khaleesi no John snow can betray you.
@@rudrashiva 🐉👑
Daenerys is teaching more!
@Vegas Gal, that is the reason she is teaching
🐉👑
This comment is gold and so are the comment replies
That's why she is teaching lol Daenerys is amazing! Just recently finished her kaboom js tutorial
Shes ciri from witcher 3 change my mind
Simply outstanding... Thanks a million...
Ania is truly an excellent teacher. I hope we see more of your videos.
Amazing video! Very clear and concise! Thank you!
I Really Needed This Video Thank You Very Much ♥
Your words is very clear.
Thanks !
Very interesting, thanks!
Just one thing. For next time, when you make a video, can you explicitly add the version numbers? Whereas it would have worked fine 4 months ago, there have been breaking changes now. (I'm glad you added a link to the source code, where I could find the dependency discrepancies :-))
Great explanation, thank you so much!
Brilliant course and excellent presentation
This was fabulous. I really enjoyed it. I'll definitely need to go back through it a couple of times. Thank you.
Love the makeup and hair styling and I notice you are speaking clearer. Looking good girl.
i am learning otel now! thanks ur videos.
The best explanation ever 🙂
Thanks Ania!
Thank you for the video. Is there any other videos where the Logging aspect of Opentelemetry is explained?
Amazing! I was searching for this. And here my search ends. Thanks ♥️
Great tutorial. Unfortunately things broke for me around 30:23 probably because the version of JavaScript used in the tutorial is outdated at my time of viewing... but that's okay. I'm going to resume my OpenTelemetry learning at the official website. Still, thank you for the tutorial Ania!
Edit: But for those of you who keep going in the course, here're the Makefile targets I came up with while following the tutorial. Hopefully they'll save you some manual work:
run-zipkin:
# Set up Zipkin, a tracing backend to which I can export traces.
docker run --rm -d -p 9411:9411 --name zipkin openzipkin/zipkin
stop-zipkin:
# Tear down Zipkin.
docker stop zipkin
package-json:
# Turn the folder into an npm package.
echo "Hit 'enter' for all the subsequent prompts."
npm init
install:
npm i @opentelemetry/core \
@opentelemetry/node \
@opentelemetry/plugin-http \
@opentelemetry/plugin-https \
@opentelemetry/exporter-zipkin \
@opentelemetry/tracing \
express \
@opentelemetry/plugin-express \
run-app-with-tracing:
# tracing initialization happens before application code runs
node -r ./tracing.js app.js
lot's of magic behind the scenes, for example, how parent span id is getting and pushing to span context
Thus vidéo ist pure gold!
Great Course
waiting for full stack (HTML, CSS, JS) updated Tutorial with some practical exercise. Please upload soon :)
Thank you
Incase you are having permission pulling zipkin from docker please know that "openzipkin/zipkin" is correct, i think the way it seem on this tutorial it was like "open zipkin/zipkin". If you met this error you would know what i mean.
Great tutorial
Thanks for the very clear explanation. You covered metrics, traces but no logs. How can we open telemetry to instrument logs please?
Hi. Thank you very much for the video. Also I have a question. I have a react front end. Is that application can configure same as this? or is it a problem when we build and deploy it. Thank you very much..
amazing!!!!!
Yeah right, what do you know about it?
@@Newtube_Channel abt telemetry???
Love the accent and back ground, is that a skating board, old T shirt is back..nice content , good luck.Thanks to free code camp
it's surf, not skate)
@@Choomachech Thanks bro⛷⛷🏄♀️🏄♂️
Surfing board ye,🏄♀️🏄♀️🏄♀️🏄♀️
Amazing
wow you're amazing!
I am here to LEARN
Very nice explanation. One question: Do i need all these npm packages for just tracing? Can some of them moved to Dev Dependencies?
What is the axios request at the first then block of the middle-tier route for?
Any link for the repo for the monitoring part of the code ?
🔥🔥🔥🔥🔥
1. What are different possible backend tracing systems?
The mug product page doesnt seem to load properly. No coffee mug ☕ 🥺
Beautiful
why is the documentation so different on the opentelemetry site. it's like night and day
I haven't even finished the JS course, slow down FCC 😅
Same🤣, she is going a little too fast, to catch up.
@@quietnix he meant something else, not about her or this course
@@sarcasticdna oh okhay, my bad.🙃
@@quietnix try speed 0.75x, you'll find it normal.
In the example, tracing.js does not work, it gets an error on line 9, "Cannot read property `ERROR` of undefined." The problem seems to be that @opentelemetry/core does not export LogLevel. When I comment out LogLevel it runs, but it does not send any telemetry. I verified this by using ConsoleSpanExporter.
If anybody gets the same error, they broke backward compatibility in the newer minor version 0.19.0. Use the exact versions (0.16.0) shown in the package.json and it will work.
And... the Prometheus code as shown doesn't exist in the opentelemetry page either. I appreciate this course, still useful to listen to, but bottom line is that this code seems extremely unstable and trying to follow through a tutorial like this is very frustrating.
@@gbisaga all the code repos can be pulled from my personal repo 🙂 (in the video description ) if you pull the project will have the correct versions. Opentelemetry is really new and hence evolving at a fast rate.
@@aniakubow Thanks, that's what I ended up doing. But I have to say, I have a concern that code I might write today will be obsoleted soon. I really like the idea of OpenTelemetry, but how can I recommend it if I can't trust the API not to change in a couple of months? Plus, the documentation on their site is still giving the old version.
Try reading the documentation instead of complaining and blaming the video. Many people who haven't even watched this video have gotten OpenTelemetry to work. And trust me, OpenTelemetry is here to stay. It's not some shitty unsupported library. Go read about its status on the CNCF.
There should be an update on this, Opentelementry has changed a lot
Hey @freecodeCamp Could you make a course about graphic design using free software
How make application for desktop in windows
Just so if anyone runs into any "logLevel: LogLevel.ERROR TypeError: Cannot read property 'ERROR' of undefined" make sure you have the right package versions.
Can you be a bit more specific? I have "@opentelemetry/core": "^0.21.0". What package and versions should I check?
@@shrug_bug Ideally you should install packages mentioned in this package.json file github.com/kubowania/opentelemetry-tracing/blob/main/package.json
Thanks! For anyone running into this error, the following worked for me. Copy/paste the dependancies from the above package.json file into your package.json file, then run "npm i" in terminal. This will re-install the EXACT versions that are needed
Thank you this was the error I was facing
or use "DiagLogLevel" instead of "LogLevel"
I didn't know the Mother of Dragons was also the Mother of programming 😂😂😂
🐉👑
I want termux full course
How make app in macos for desktop
What if you watch all the courses on this channel?
You code while sleeping
Then you are encyclopedia Engineer
Once after being succeeded we will return here and say that is where everything started
whats the update?
Is this for developers or SRE engineers observability
SRE/SDN/Sys Admin/
I'm sure she appreciates the GoT comparisons ;D... HOLD THE DOOOOR
Learning from Daenerys ❤️😊
🐉👑
OpenSauce
I enjoy her accent... pretty sweet
How make app in ios
Ma'am Can you please make a tutorial and overview video for GDevelop Game Engine We would love to learn with you ...
♡Love freecodecamp♡
Noice
New Relic.
Hello Everyone, I Want To Know That Can I Become Freelancer If I Learn C# And If Yes Than On What Area Should I Focus On In C# To Learn To Get Job.
Learn C & C++ too
Robotic process automation is one of the good choice out there
Ngayon ko lang nalaman na programmer pala si Elsa. print('The cold never bothered me anyway')
FIRST 🥇
@2.34
I'm sorry @AniaKubow, you kinda lost me for a couple of seconds when you dropped the Netflix's bandwidth data in the USA... Just needed to take a moment to assimilate such amount of traffic!!!! :O!!!!
Good coder, good model
Please make a golang programming course😌
I Cannot Focus While U're Speaking..But Im trying :)
First
Telemetry comes from the Greek word "Τηλέ (τῆλε ancient greek) - tɪlɛ" which means far, afar, from away
uuuu...... did you hear about elastic apm? ??
3.23
She missed the opportunity to show how the error was logged in the trace, for example when one service is up but another is not. I would have been a nice discussion.
Jaws Surfing.
Swedish? Like it.
[2.34]
The targaryen girl is backkk
🐉👑
Can you please use the rule of two-thirds next time for showing yourself on the left and content on right? UX-wise, it is very difficult to interpret. The text on the right is just next to you, without a good distance. Moving to the next video. Thanks for the video, though. Content seems useful as for the first 2 mins I saw. Other graphics are super amazing as well. :-)
Please dont change style😍
why the opentelemetry documentation is so bad...
Came here for Daenerys stromborn from the house of Targaryen
🐉👑
I can watch her read the phone book
Тоже пришёл поглазеть на симпотную блондинку?
Tamil language start channel tks
Hey you remind me of Molly Rankin from Band Alvvays 😂
What accent is this?
English
You English?
drakaris
Damn, I can't focus. Good job FCC.
Fortnite?
No DRACARYS! ... im dissapointed. 💢
her eyes are beautiful
Daenerys codes?
🐉👑
I hate when an instructor is talking about a complicated topic like tracing that requires background and experience in many other areas and yet the instructor explains some very simple things like text editor and basic Linux commands because those things really add up and make the video longer than it should be
Kasia proszę zostań moją sugar mommy
mauro icardi's wife ?
opentelemetry is a giant PITA and way overcomplicated. It shouldnt be this complicated.
hello! u are hermosa
This is not the place for that leonardo
@@swordofgrayskull1530 prinf(" same ");
This is really out of date, and doesn't work.