Skip to content

Commit

Permalink
Merge pull request #3 from julianocosta89/add-talk-and-slides
Browse files Browse the repository at this point in the history
Add new talk and update slides
  • Loading branch information
julianocosta89 committed Feb 23, 2024
2 parents d9e6b6e + 3432a2c commit 0f3fe47
Show file tree
Hide file tree
Showing 13 changed files with 119 additions and 4 deletions.
Binary file added .DS_Store
Binary file not shown.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
public/
.hugo_build.lock
Binary file added assets/.DS_Store
Binary file not shown.
Binary file added assets/img/.DS_Store
Binary file not shown.
Binary file modified assets/img/baby.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified assets/img/jcosta.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified assets/img/westerlund2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 1 addition & 2 deletions config/_default/languages.en.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,5 @@ headline = "Juliano Costa's personal page"
links = [
{ github = "https://github.com/julianocosta89" },
{ linkedin = "https://www.linkedin.com/in/julianocosta89" },
{ stack-overflow = "https://stackoverflow.com/users/9291851/juliano-costa" },
{ x-twitter = "https://twitter.com/JCosta_89" }
{ stack-overflow = "https://stackoverflow.com/users/9291851/juliano-costa" }
]
4 changes: 3 additions & 1 deletion content/talks/Getting-Started-with-OTel/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,6 @@ tags = [

YouTube recording: [Getting Started with OpenTelemetry: OTel Demo to the Rescue](https://www.youtube.com/watch?v=iWpYD81ahmU)

[Slide deck](https://github.com/julianocosta89/jcosta.dev/files/13773674/Getting-Started-with-OTel.pdf)
Slide deck:

{{< gslides src="https://docs.google.com/presentation/d/e/2PACX-1vQez5-k_xQ-1oil28PKCk9rDdF88jEdtKo3wwDTVW7KR6k-CN9z3hPBjQl48dCF_4YXWiZMi_6c7DdH/embed" >}}
Binary file added content/talks/Meetup-StPolten/featured.jpeg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
104 changes: 104 additions & 0 deletions content/talks/Meetup-StPolten/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
+++
title = 'Getting Started with OpenTelemetry: OTel Demo to the Rescue'
date = 2024-02-22
tags = [
'OpenTelemetry',
'Cloud Native St. Pölten',
'Developer Advocate'
]
+++

On the 22nd of February we held our [1st Cloud Native St. Pölten meetup][st-polten-meetup].

The event was hosted by [Cloudflight][cloudflight] and had about 15 people.
It wasn't a large event, but it was definitely an engaging one.

With not that many attendees, everyone is more comfortable asking questions and interacting with each other.

After the presentation I got questions like:

- "Given that OpenTelemetry is a project that is still evolving (with Profiling being added and new
signals eventually arriving), how does the project work to ensure the OpenTelemetry protocol will
not undergo breaking changes?"
- To answer this one, I actually got help from the community itself, [João Grassi][joao-grassi]
and [Sebastian Poxhofer][sebastian-poxhofer] were there and jumped in to discuss how the backwards
compatibility and interoperability are core parts of the [OpenTelemetry Protocol (OTLP) Specification][otlp-spec].
- Just a side note here, I love meetups and how we all grow together in those events.
Thanks João and Sebastian for jumping in.
- Another question was, "When you auto-instrument your application, how do you add business related attributes to it?"
- To answer this, I jumped into the IDE and shared the OpenTelemetry Demo code for 2 services:
- [adservice][adservice] in Java, which simply retrieves the current automatically created span
and adds custom attributes to it:

```java
Span span = Span.current();

[...]

span.setAttribute("app.ads.count", allAds.size());
span.setAttribute("app.ads.ad_request_type", adRequestType.name());
```

- [quoteservice][quoteservice] in PHP, in which we manually create a new child span
and add attributes to it:

```php
$childSpan = Globals::tracerProvider()
->getTracer('manual-instrumentation')
->spanBuilder('calculate-quote')
->setSpanKind(SpanKind::KIND_INTERNAL)
->startSpan();

[...]

$childSpan->setAttribute('app.quote.items.count', $numberOfItems);
$childSpan->setAttribute('app.quote.cost.total', $quote);

[...]

$childSpan->end();
```

- Both approaches showcase how we can leverage OpenTelemetry (OTel) to add business context
to our instrumentation, demonstrating the flexibility and power of OTel in enhancing observability
with custom data relevant to our specific business needs.

As I’ve mentioned before, it was a really engaging event, and although I can't recall all the questions
asked, another one I’d like to highlight is directly related to my talk:
- "We have a microservices architecture with about 150 microservices, how do we start?"
- This question came up after all the talks had finished, during a discussion on
troubleshooting methods when issues arise. At the moment, they rely on logs and are kind of used to
this approach.
I guess this is also true for a lot of companies where developers are just used to logs.
Thankfully they saw how powerful the correlation between signals can actually help them
troubleshooting issues and were interested in getting to know more about OTel.
Just the spark of curiosity, the eagerness to learn more, and the willingness to start experimenting
OpenTelemetry made the event immensely worthwhile for me.
My goal as a Developer Advocate focused on OpenTelemetry and Distributed Tracing is to raise awareness
of the project and assist people in starting their journey with ease.
Events like these meetups are an excellent opportunity to engage deeply with the community, and
I’m grateful for being an organizer of Cloud Native Linz myself.
Thanks [Thomas Schuetz][thomas-schuetz] and [Daniel Drack][daniel-drack] for organizing and having me on the event.
Also, a big thank you to everyone who joined and engaged; the event was great because of each one of you!
Slide deck:
{{< gslides src="https://docs.google.com/presentation/d/e/2PACX-1vSBNi77QASgDWkBw5VM98t6feFp1phOlzBKtdrCGsdQHSW9hjVHgAvmuLMYO6SU2WW9tLqQbTztMT_7/embed" >}}
[st-polten-meetup]: https://www.meetup.com/cloud-native-austria/events/298751920/
[cloudflight]: https://www.cloudflight.io/en/
[joao-grassi]: https://github.com/joaopgrassi
[sebastian-poxhofer]: https://github.com/secustor
[otlp-spec]: https://github.com/open-telemetry/opentelemetry-proto?tab=readme-ov-file#opentelemetry-protocol-otlp-specification
[adservice]: https://github.com/open-telemetry/opentelemetry-demo/blob/main/src/adservice/src/main/java/oteldemo/AdService.java
[quoteservice]: https://github.com/open-telemetry/opentelemetry-demo/blob/main/src/quoteservice/app/routes.php
[thomas-schuetz]: https://github.com/thschue
[daniel-drack]: https://github.com/DrackThor
8 changes: 8 additions & 0 deletions layouts/shortcodes/gslides.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<div id="Container"
style="padding-bottom:56.25%; position:relative; display:block; width: 100%">
<iframe id="googleSlideIframe"
width="100%" height="100%"
src="{{ .Get "src" }}"
frameborder="0" allowfullscreen=""
style="position:absolute; top:0; left: 0"></iframe>
</div>
2 changes: 1 addition & 1 deletion themes/blowfish
Submodule blowfish updated 238 files

0 comments on commit 0f3fe47

Please sign in to comment.