gitmoji icon indicating copy to clipboard operation
gitmoji copied to clipboard

๐Ÿ•ต๏ธ for changes to enhance observability

Open sylvanaar opened this issue 3 years ago โ€ข 25 comments

Hello @carloscuesta :sunglasses:!

  • Emoji: ๐Ÿ•ต๏ธ
  • Code: :detective:
  • Description:

This generalizes the Health Check (#668) proposal to mean any code that enhances the observability of the code. This includes instrumentation for debugging or adding metric sources, logs(covered?), and tracers.

Anything that helps you to find problems, and explores their root cause - but is not the main purpose of the rest of the application.

I liked the magnifier, and I pointed it to the right - but it is the same emoji as SEO. So I found this one.

sylvanaar avatar Mar 14 '21 20:03 sylvanaar

Personally I prefer the generic approach, but the description is kinda... lacking? Could you propose a better name for it?

vhoyer avatar Mar 15 '21 13:03 vhoyer

@vhoyer - the best name is observability - but that may not be a term everyone knows.

Description: "Improve observability", in line with "Improve accessibility"

Here is some background on observability

Here's an excerpt:

observability is how you explain unknown-unknowns, that itโ€™s about exploration and debugging instead of dashboards and pattern matching or accessing certain data type

sylvanaar avatar Mar 15 '21 14:03 sylvanaar

Donno, @carloscuesta @johannchopin , any thoughts?

vhoyer avatar Mar 16 '21 15:03 vhoyer

I like it since it can cover the analytic Gitmoji ๐Ÿ“ˆ and also cover all other runtime debugging tool like sentry for example ๐Ÿ‘

johannchopin avatar Mar 16 '21 18:03 johannchopin

Does this really cover analytics?

vhoyer avatar Mar 16 '21 19:03 vhoyer

I don't see the use cases clear for this emoji, could you provide some examples?

carloscuesta avatar Mar 17 '21 09:03 carloscuesta

Hi @vhoyer, yes, it covers the collection of analytics.

@carloscuesta - this covers:

  • Logs, metrics, distributed tracing, debugging tools of any kind that help expose internal state, the list goes on.
  • What if I add a REPL to my app to interact with it (like a browser console). That is an observability enhancement.
  • If I am adding logging - that is an observability enhancement typically.
  • If I add code to measure counts and durations of requests - that is observability.
  • If I integrate with a tool to see what my app does - like Reactotron that is observability.
  • Of course, integrating with a solution that captures information about your application at runtime - is why analytics are covered.

Observability is your UI for servicing/operating your application.

The emoji itself might be worth resisting - I want it to express "seeing inside" something.

As a more generic concept, it is a superset that contains ๐Ÿ”Š (๐Ÿ”‡?) ๐Ÿฅ… (if they are exposed) ๐Ÿ“ˆ

So quite a lot of this concept is not yet covered.

sylvanaar avatar Mar 17 '21 11:03 sylvanaar

You know what? I like it. Tho it could be hard to covey this idea merely by "observability" ๐Ÿค” albeit I have no better suggestion...

vhoyer avatar Mar 17 '21 11:03 vhoyer

Was just scrolling through the issues. +1 to the generic nature. Does "enhance insight" offer an alternative term? (From the thread, it seemed the term "observability" gave some pause, and I immediately thought "insight" when reading through.)

connorjs avatar May 17 '21 00:05 connorjs

@sylvanaar, if you want to hold out for a different emoji, X-Ray is a candidate for Unicode 14.0. It'll be a bit of a wait though.

meg-gutshall avatar May 26 '21 03:05 meg-gutshall

how about "improve code inspection"? @carloscuesta @johannchopin

vhoyer avatar Jul 08 '21 21:07 vhoyer

@vhoyer Yep I would agree on that ๐Ÿ‘Œ

johannchopin avatar Jul 09 '21 12:07 johannchopin

Hey!

The problem is see with this proposal is that we already have:

Logs:

  • ๐Ÿ”ŠAdd logs
  • ๐Ÿ”‡ Remove logs

Healthchecks:

  • ๐Ÿฉบ

This one feels like grouping all of them into a bigger category, does it makes sense to add an emoji that covers all of the use-cases while maintaining those 3? ๐Ÿค”

carloscuesta avatar Dec 24 '21 10:12 carloscuesta

well, a lot of things are a grouping of the โœจ and ๐Ÿ› already, right? (in fact, it would be cool to see a visualization of this categories ahah)

vhoyer avatar Dec 27 '21 14:12 vhoyer

FWIW, since my original comment, I have seen and heard more references to the term observability. To provide another industry reference, I found a Google dev ops article on observability (and monitoring).

Some more thoughts about choosing the gitmoji for commits following some recent work I have done. Overall, happy enough with the landscape, but feel that we could improve wording around this area. Plus, holding out for xray could have benefits (I find not using person emojis better).

  1. ๐Ÿ”Š and ๐Ÿ”‡ explicitly say logs. To me, this excludes metrics, because I have always explicitly used the terms metrics and logs separately. However,
    1. I wonder if others do not view the same exclusion.
    2. If others do, or maybe just for search optimization, we could extend the definitions to include logs and metrics or logs and monitors or some other variation
  2. After scrolling through all gitmojis twice (minus speaker ones, above), I settled on ๐Ÿฉบ for health check. However,
    1. I noticed it says add or update. Any historical commentary on no remove here? (Guessing just historical and speakers were older items in โ€œspecโ€)
    2. This worked for my tasks (adding performance or status related metrics), but unsure if it applies to A/B testing metrics. (But maybe ๐Ÿ“ˆ, analytics or track code covers this?)

connorjs avatar Feb 06 '22 15:02 connorjs

Hey! Sounds good to me let's add this one ๐Ÿ™๐Ÿผ

carloscuesta avatar Feb 06 '22 18:02 carloscuesta

Nice! Let me re-ask one of my questions hidden in my musings ๐Ÿ˜…

Do the speaker/sound gitmojis (๐Ÿ”Š and ๐Ÿ”‡) refer explicitly to logs (and not metrics)? Or - no - they can also include metrics.

connorjs avatar Feb 06 '22 22:02 connorjs

I would say speaker/sound gitmojis only refer to logs!

carloscuesta avatar Feb 07 '22 08:02 carloscuesta

Thanks for clarifying!

@sylvanaar - Do you have any new thoughts to add here? And thoughts on holding out for XRay emoji?

(I really like using XRay as @meg-gutshall mentioned. And we should hopefully see it coming soon.)

connorjs avatar Feb 09 '22 01:02 connorjs

Not a big fan of introducing something that becomes a higher category for existing categories. The fact that this would cover both logs and metrics/tracing, which I already use the existing icons for, would just cause ambiguity IMHO.

If there is some area of observability that is not covered today, I'd rather a specific icon be introduced for that instead of creating an "umbrella" icon that makes existing ones "obsolete".

julealgon avatar Feb 16 '23 14:02 julealgon

@jlandure - which emojis/icons do you use for metrics and/or tracing? My main interest was finding the best one for metrics, but tracing definitely relates.

connorjs avatar Feb 27 '23 14:02 connorjs

Regarding "observability as a higher category" - I am considering including an "observability" tag in #924 if we think observability does represent a higher grouping of existing emojis, and we would prefer a new, specific emoji.

Tentatively, I have this list.

  • ๐Ÿ“ˆ Add or update analytics or track code.
  • ๐Ÿ”Š Add or update logs.
  • ๐Ÿ”‡ Remove logs.
  • ๐Ÿฉบ Add or update healthcheck. (maybe)
  • ๐Ÿ”ง Add or update configuration files.
  • โš—๏ธ Perform experiments. (maybe)

Thus, I think โ€œmetricsโ€ is still missing, and I think we should have a dedicated emoji for it instead of trying to bind it to one of the existing ones. I will think about some emoji choices...

(Note: I prefer not to use people emojis because of skin color configuration. For example, I use rocket to insert my emojis, so using detective inserts as ๐Ÿ•ต๐Ÿปโ€โ™‚๏ธ by default for me. Related article I think this one).


Note: I originally included ๐Ÿง Data exploration/inspection, but after reading #615, I think it no longer applies.

connorjs avatar Mar 22 '23 19:03 connorjs

Oh, and on the subject of tracing.

Does ๐Ÿ“ˆ (Add or update analytics or track code) represent tracing? See #36 for original issue.

If not, I think we hold out for ๐Ÿฉป(x-ray) support. (Slack uses :x-ray: and Discord uses :x_ray:, so we would wait for GitHub/GitLab support.)

connorjs avatar Mar 22 '23 19:03 connorjs

My candidates for โ€œAdd, update, or remove metrics,โ€ sorted alphabetically by short code.

Emoji Short code Reason Link
๐Ÿ”ข :1234: Metrics are numeric (in value) Emojipedia
๐Ÿงฎ :abacus: Counts are common metrics; emoji can be used for numbers in general Emojipedia
๐Ÿ“Š :bar_chart: Metrics are charted/plotted/graphed, and ๐Ÿ“ˆ already taken Emojipedia
โฑ๏ธ :stopwatch: Timing is a very common metric Emojipedia
๐Ÿ“ :straight_ruler: Ruler for measuring Emojipedia
๐Ÿ“ :triangular_ruler: The other ruler, but โ€œmore engineering-y.โ€ Emojipedia

connorjs avatar Mar 22 '23 19:03 connorjs

ok, so, what is the definition of "tracing" and "metrics" we are working here? (because I always used :mute: and :loud_sound: for "tracing" and :chart_with_upwards_trend: for "metrics")

vhoyer avatar Mar 24 '23 15:03 vhoyer