- PagerDuty /
- Blog /
- La vie de garde /
- Cela vient d'en bas
Blog
Cela vient d'en bas
Kelsey Shannahan est développeuse senior dans une entreprise informatique de santé de premier plan à Columbus, dans l'Ohio. Elle est passionnée par Elixir, ses trois chats et Eldritch Horror.
Je vais supposer que la plupart des personnes qui lisent ce blog connaissent PagerDuty. Mais juste au cas où quelqu'un ne le serait pas, PagerDuty est un outil que nous utilisons dans le domaine informatique pour nous avertir si une vérification prédéfinie a échoué. Peut-être qu'un processus clé est mort ou peut-être que nous ne voyons pas le volume de trafic attendu ou peut-être que notre serveur a cessé de répondre au ping. Quoi qu'il en soit, PagerDuty le fera sans relâche, sans remords et sans relâche. bruyamment avertir la personne de garde que quelque chose nécessite une attention particulière.
Pendant un certain temps, mon téléphone me faisait la sérénade (à plein volume) avec un quatuor de barbiers chantant que le serveur était en feu. Cependant, après avoir reçu plus de 100 alertes en moins de 15 minutes lorsque toute notre pile est tombée en panne, j'en ai eu un peu marre et maintenant je reçois une sirène classique d'alerte rouge. Il n'y a rien de tel que d'être assis dans un bureau rempli d'une cacophonie de quatuors de barbiers, de sirènes et de trombones tristes pour vous faire regretter votre choix de carrière.
C'est encore pire quand ça se déclenche pendant que vous dormez. C'est comme une injection d'adrénaline dans le cœur à trois heures du matin. Je pense que cela me fait perdre une année de vie à chaque fois que je me réveille en sursaut, ou que je suis surpris par cela à n'importe quel moment, en fait.
Il y a environ un mois, j'ai été réveillé vers minuit. Je n'étais pas au lit depuis très longtemps, juste assez longtemps pour m'endormir profondément et me réveiller confus. J'ai cherché instinctivement ma lampe de chevet, j'ai regardé mon téléphone à la recherche du bouton « Reconnaître », puis j'ai mis mes lunettes. Je suis resté assis là un moment, étourdi, essayant de me rappeler où j'avais laissé mon ordinateur portable dans la maison.
Puis je me suis rappelé : je ne suis pas de garde cette semaine. Je ne suis même pas la personne de garde de réserve. Je ne devrais pas être appelé. du tout .
Peut-être que quelqu'un m'a contacté parce qu'il avait spécifiquement besoin de mon aide, me suis-je dit. J'ai essayé de penser aux changements récents que j'avais déployés en production qui auraient pu provoquer une panne si tard dans la nuit. Rien ne m'est venu à l'esprit. Quoi qu'il en soit, je suis sorti en titubant de ma chambre et j'ai emprunté le couloir sombre jusqu'à mon bureau. Le sol a craqué sous moi, puis mon téléphone s'est à nouveau déclenché avec cette foutue sirène. J'ai failli le faire tomber avant de jurer et de maladroitement accuser réception de la nouvelle page.
Je me souviens d'être resté là après que le téléphone soit devenu silencieux et d'avoir pensé : Huh, c'est étrange . Le plancher continuait à craquer même si je ne bougeais plus. Je me suis penchée pour allumer les lumières et j'ai regardé derrière moi.
Rien. La maison était silencieuse.
Je continuai vers mon bureau, essayant d'ignorer le sentiment de malaise. La première chose que je vérifiai sur mon ordinateur portable fut mes messages sur Slack. Rien de mes collègues. Il y avait encore quelques personnes en ligne (je travaille avec beaucoup de noctambules) mais il n'y avait pas de bavardage dans nos salles de maintenance ou de panne. Puis je consultai le site Web de PagerDuty pour voir ce qui se passait. exactement les pages qui étaient à l'origine de toutes ces alertes.
Je n'ai reconnu aucun des deux. Le premier disait : Échec de la compilation : erreur de compilation dans watchman.rb .
Tout d'abord, un fichier se terminant par .rb est un fichier Ruby. Ruby n'est pas un langage compilé. Il ne peut pas générer d'erreur de compilation. Deuxièmement, nous n'alerterons personne en cas d'échec de build CI. C'est juste méchant.
L'autre erreur était nymaster1n2 : processus arrêté . Ce qui n'a pas non plus de sens, car même si nous sommes basés à New York, nous n'avons pas de serveurs ici. Et de quelle procédure s'agit-il, de toute façon ?
Toutes nos alertes sont configurées pour être liées soit au moniteur qui émet l'alerte, soit à des instructions sur la façon de résoudre la page pour des scénarios plus complexes. J'ai essayé de cliquer sur le lien qui devrait m'amener au moniteur pour pouvoir vérifier l'état, mais il m'a simplement dirigé vers une page Google Maps définie sur l'emplacement de ma maison.
À ce stade, j'ai supposé qu'il s'agissait d'un canular. Après tout, vous pouvez créer manuellement un incident dans PagerDuty , alors peut-être que quelqu'un a fait preuve d'un peu de créativité et m'a fait une farce. Ils savent que je vis seul. Je serais une cible facile, d'autant plus que je n'ai pas de conjoint qui s'énerverait.
J'ai résolu les faux incidents, j'ai envoyé un message sur Slack à mon équipe pour leur dire que ce n'était pas drôle tard dans la nuit (c'est intelligent, mais pas pendant que j'essaie de dormir), et je suis retournée me coucher. Quelques heures plus tard, mon téléphone s'est à nouveau déclenché. J'ai répété le processus consistant à allumer la lumière, à reconnaître l'alerte et à mettre mes lunettes. J'avais également apporté mon ordinateur portable dans la chambre avec moi plus tôt pour pouvoir le récupérer sans quitter mon lit. À ce stade, il était 2 heures du matin et aucun de mes collègues n'était en ligne. J'ai vérifié l'erreur.
Entité non reconnue de whoami
Je suppose que cela pourrait être légitime, mais je ne suis pas un opérateur. Je suis un développeur et je ne devrais recevoir des alertes que lorsque nos applications se comportent mal, pas pour des problèmes au niveau du serveur. Et à moins que je ne me trompe, qui suis je c'est une question de serveur.
J'ai fait remonter l'information à notre responsable des opérations de garde, j'ai claqué mon ordinateur portable, je me suis allongé sur le lit et j'ai éteint les lumières. Je n'avais même pas encore dormi que mon téléphone s'est à nouveau déclenché. Mais ce n'était pas la sonnerie de sirène que j'avais choisie.
C'était celui de « l'ingénieur qui rit », qui, laissez-moi vous le dire, semble vraiment très effrayant quand vous êtes seul dans une maison à deux heures du matin.
La notification lit raise Terreur standard et j'ai inclus un lien vers ce qui ressemblait à un fichier journal, mais c'était juste Google Maps à nouveau - Street View cette fois, zoomé sur l'une des demi-fenêtres de mon sous-sol.
Ok, haha, je vois ce que tu as fait là, collègue sans nom. Erreur standard. Terreur standard. Vraiment drôle. Cette fois, j'ai déposé la capture d'écran (et ma colère) sur notre canal Slack de développeurs.
J'ai éteint les lumières, mais je ne me suis pas recouché. J'ai attendu, me demandant si j'allais avoir le droit de dormir. Dans le silence, j'ai entendu quelque chose comme un grattement, au loin, peut-être un petit animal dehors, près de la maison.
Mon téléphone a encore sonné.
Échec de la vérification du rythme cardiaque : « nymasterbedroom1n2 »
Cela devenait incontrôlable. J'ai pensé à éteindre mon téléphone, mais je vais être honnête : je voulais vraiment voir où cela allait me mener. Bien sûr, cela me tiendrait peut-être éveillé toute la nuit, mais j'aurais une sacrée histoire à raconter et je pourrais toujours dormir tard le lendemain et blâmer PagerDuty pour ce départ tardif.
Finalement, j'ai éteint mes lumières pour éviter que l'écran de mon téléphone ne soit ébloui. Puis j'ai attendu, en écoutant les légers et réguliers bruits de grattement et en me demandant ce que c'était. Un raton laveur, creusant dans les fondations sous la fenêtre de ma chambre, peut-être ? J'étais au deuxième étage.
Une autre alerte.
Statique dépassant le seuil établi. Fin de la supervision des processus enfants.
Cette première partie ? Rien de tout cela n’a de sens. Ce n’est pas une véritable erreur. C’est absurde. Comme aucun de mes collègues n’a avoué la farce (ils étaient toujours tous hors ligne), j’ai ouvert mon ordinateur portable, j’ai consulté le site Web de PagerDuty et j’ai rempli un ticket d’assistance. J’ai inclus le texte des alertes et expliqué que ces erreurs n’existaient pas dans notre écosystème. Si ce n’était pas un collègue malicieux responsable, alors je voulais que la cause profonde soit résolue le plus rapidement possible. Je me suis demandé si je recevais des erreurs du système de quelqu’un d’autre. C’est le problème avec le fait d’être appelé tard le soir : cela vous motive énormément à faire en sorte que cela ne se reproduise plus jamais.
Puis je me suis assis là, dans ma chambre sombre, les yeux fixés sur l'écran lumineux de mon ordinateur portable. Le grattement provenant de l'extérieur de ma maison semblait devenir... plus long. Il s'agissait plutôt d'un bruit de grattement. Je me suis demandé si je ne devrais pas peut-être éclairer la fenêtre avec une lampe de poche et effrayer ce qui pouvait bien se passer. Je n'avais pas encore vraiment peur. Je ne suis pas facilement effrayé et j'ai un système d'alarme, ce qui signifie que ma maison était une cible moins attrayante que celle des voisins.
Une autre alerte avec une autre sonnerie. Celle avec un petit enfant qui chante : « Quelque chose est cassé, quelque chose est cassé, c'est de ta faute ! »
« Ce n’est vraiment pas ma faute », marmonnai-je en actualisant l’écran.
« keeplightson.sh : Erreur de syntaxe : « a̗͌b̠̔n̩͕̲͂̑̈̕͟o̡̧̘̾͋́r̢͙̣͍̗͌̀̐̿͝m̧̨̛̼̘̗̓͌̅̚ã̺͎͕̑̿̈́͢ḻ̥̇̈́ i͈͎͚̮͗͐̅̚ẗ͉̮̬̗́́̏͡y̢̲̆̑” inattendu”
C’est à ce moment-là que j’ai pris la voie du nucléaire.
J'ai envoyé un message à la salle générale sur Slack, en disant que j'étais vraiment paniqué, que cette farce allait beaucoup trop loin et que j'apprécierais vraiment que quelqu'un avoue et arrête de m'envoyer des alertes .
Est-ce que cela a envoyé une notification à littéralement chaque personne de mon entreprise de plus de 1 000 employés ? Oui Est-ce que je m'en souciais ? Non .
Personne ne répondit. Les petites icônes indiquant le statut de disponibilité de tous mes collègues restaient obstinément vides et pendant ce temps, mon téléphone explosait d'alertes, interrompant sa propre sirène avant d'avoir fini avec le klaxon entrant suivant.
La même notification, encore et encore et encore.
La vérification du rythme cardiaque a échoué : « nymasterbedroom1n2 ». Exécutez keeplightson.sh
Puis. Une accalmie. Juste une minute ou deux. Mais dans ce silence, je me suis rendu compte que je n'entendais plus le bruit de grattement ; à la place, j'entendais autre chose : un craquement. Le même craquement que j'avais entendu dans le couloir lorsque j'étais allé récupérer mon ordinateur portable. Il venait de quelque part à l'intérieur la maison.
Je me figeai, essayant d'écouter les sons qui m'entouraient. Puis je l'entendis : un son rythmique bruit sourd Cela se répétait encore et encore, lourd et délibéré. Quelque chose frappait le mur – non, une porte. J’entendais le cliquetis des gonds.
La porte du sous-sol.
Une notification PagerDuty a illuminé mon écran et le haut-parleur a commencé à diffuser les sons harmonisés du quatuor de barbiers. C'était une chanson que je n'avais jamais entendue auparavant, une chanson qui n'était pas incluse dans les options de l'application.
« Ça cuitiiiiiiiiiii, » chantaient-ils.
Je tendis la main et, les mains tremblantes, tirai sur le cordon de la lampe de chevet, inondant ma chambre d'une douce lueur. Puis, j'acceptai l'alerte pour faire taire le quatuor du salon de coiffure et composai le 911. J'ai dit à l'opératrice qu'il y avait quelque chose chez moi.
Un bruit de choc, le bruit d'une porte qui s'ouvre brusquement et claque contre le mur. Je suis tombée du lit, essayant de penser à une issue de secours tandis que l'opératrice à l'autre bout du fil m'ordonnait calmement de trouver un moyen de sortir de la maison.
« Il n’y en a pas », bredouillai-je. « Je suis au deuxième étage. »
Elle m'a dit de fermer la porte de la chambre et de traîner quelque chose de lourd devant. La police était en chemin, m'a-t-elle dit. J'ai fait ce qu'elle m'a dit, poussant ma garde-robe pour me barricader à l'intérieur de la pièce avant de me recroqueviller dans le coin le plus éloigné, à côté de la table de nuit et de la lueur de la lampe. Et j'ai attendu.
Dans le couloir, un bruit semblable à celui des clous sur un tableau noir se faisait de plus en plus entendre. J'avais la bouche sèche et les yeux fixés sur la porte. L'opératrice du 911 est restée au téléphone avec moi, me disant de rester calme, que la police était presque là.
« Je ne pense pas qu’ils arriveront à temps », murmurai-je.
Quelque chose claqua contre la porte de la chambre. Mon mur trembla sous l'impact. Quelque chose de gros, quelque chose de terriblement fort. L'armoire bougea d'un centimètre. Un autre impact. Un autre centimètre. Et encore. Je ne pouvais plus respirer. J'entendais à peine l'opératrice au téléphone me dire de rester calme, que la police arriverait, me disant de me cacher si je le pouvais. J'ai fouillé dans le tiroir de la table de nuit et j'ai trouvé une lourde lampe de poche que je gardais à proximité en cas de panne de courant dans la nuit. J'ai reconnu la futilité de l'utiliser comme arme contre quelque chose d'aussi massif, mais j'ai senti que je devais essayer quelque chose .
La poignée de porte claqua et la porte s'ouvrit, heurtant l'armoire et ne s'avançant que de quelques centimètres. Le couloir était plongé dans le noir au-delà du chambranle de la porte et, alors que je regardais, une main se glissa dans l'espace. Noire, une obscurité vide comme le vide, avec des bords irréguliers qui crépitaient en lignes erratiques comme de l'électricité statique. Une main aussi grosse que ma tête avec des doigts comme des pointes. Elle se glissa à l'intérieur de ma chambre, le long du chambranle de la porte, le long des cloisons sèches, essayant d'atteindre le panneau de trois interrupteurs qui contrôlait toutes les prises de ma chambre.
Le test du rythme cardiaque a échoué dans la chambre principale de New York. J'allais mourir.
PagerDuty avait dit de garder les lumières allumées.
J'ai allumé la lampe de poche et je l'ai dirigée vers la main. Les doigts ont disparu là où la lumière les a touchés, j'ai déplacé le faisceau vers la gauche et la main a également disparu, comme si j'effaçais une ombre.
J'ai entendu les sirènes de police au loin, qui devenaient de plus en plus fortes. J'avais le souffle coupé et j'avais envie de m'effondrer et de pleurer, mais j'ai gardé la lampe de poche fixée sur la porte. Quoi qu'il en soit, il n'a pas essayé de rentrer dans la pièce. Je ne me suis détendu que lorsque j'ai entendu la police frapper à la porte d'entrée, avant de la défoncer, et je leur ai crié d'allumer les lumières. damné lumières allumées.
C'est seulement alors que j'ai vu, sur l'écran de mon ordinateur portable, que tous mes incidents actifs étaient marqués comme résolus automatiquement dans PagerDuty.
Les conséquences
La police a fouillé ma maison et a découvert que quelque chose avait certainement J'étais à l'intérieur, mais quoi que ce soit, il avait maintenant disparu. Il y avait trois longues entailles dans le couloir, coupant à travers la cloison sèche, à peu près à la hauteur de mes épaules. L'un des officiers m'a dit qu'il s'agissait probablement d'un animal sauvage qui était entré par le sous-sol et m'a suggéré de venir voir. Je suis allé avec lui voir le sous-sol.
Les murs étaient couverts de rainures profondes d'un demi-pouce, disposées par trois. De longues traces traînantes, chaque ligne étant espacée d'environ deux pouces.
« Quel genre d’animal peut griffer le ciment ? » demandai-je, incrédule, en passant mon doigt le long des rainures.
« Le genre de chose qu'on ne veut vraiment pas avoir dans la maison », répondit-il.
Il m'a conseillé de faire une inspection minutieuse de l'extérieur le lendemain matin. Peut-être d'appeler quelqu'un pour inspecter la maison. Voir si je pouvais trouver par où le rongeur était entré et sorti. Malgré ses efforts pour rester calme et professionnel, je voyais qu'il était perturbé. Il ne voulait pas dire ce que je pensais. Lui et les autres policiers avaient fouillé la maison et n'avaient rien trouvé qui puisse expliquer comment quelque chose d'assez gros pour laisser ce genre de traces de griffes avait pu entrer.
Cette chose avait commencé dans ma maison et était toujours là.
En partant, je leur ai demandé de laisser les lumières allumées. Je voulais prendre quelques photos pour les assurances, ai-je affirmé. J'ai laissé les lumières allumées toute la nuit et je n'avais jamais été aussi heureux de voir l'aube se lever.
Le lendemain, je me suis excusé auprès de mes collègues dans la salle Slack General. « Des choses bizarres se sont produites », ai-je écrit. « J’ai reçu des messages bizarres et il y avait un animal sauvage dans mon sous-sol qui faisait des bruits effrayants et j’ai été un peu effrayé. » Les gens ont été compréhensifs. J’ai été un peu trollé. Mes collègues m’ont envoyé des mèmes. Ils ont tous bien rigolé. J’ai fait semblant de rire en faisant encore quelques recherches.
J'ai découvert que notre responsable des opérations de garde n'avait jamais reçu ma page escaladée. Lorsque j'ai vérifié sur PagerDuty, toutes mes pages résolues avaient disparu comme si elles n'avaient jamais existé. Quelques jours plus tard, le support PagerDuty a résolu mon ticket avec un message standard « fonctionne comme prévu ».
Je n'ai pas pour autant nié ce qui s'est passé. Ces traces de griffes sont réelles. Ce n'était pas une farce ou le fruit de mon imagination. Quoi que ce soit, ça pourrait revenir.
J'ai créé mon propre compte PagerDuty . J'ai une série de hooks qui permettent à chaque fois qu'il émet une alerte d'envoyer un message à mes ampoules intelligentes pour qu'elles allument toutes les lumières de la maison. Il y a des projecteurs au sous-sol parce que je ne touche pas à ce qui se trouve là-bas. Bien sûr, c'était cher, mais étant donné que PagerDuty émet désormais une alerte au moins une fois par semaine… Je pense que l'investissement en vaut la peine.
Je ne sais pas exactement qui travaille là-bas, mais je félicite l'équipe de PagerDuty . C'est agréable de voir une entreprise prendre le bien-être de sa clientèle si au sérieux. Je vais être honnête : si mon travail actuel ne fonctionne pas à long terme, je pense que je vais également postuler pour y travailler. Ils n'ont pas de postes vacants pour un service secret qui s'occupe d'événements surnaturels... mais je parie qu'ils recrutent.
Je dois dire cependant : ils vraiment besoin de messages d'erreur plus descriptifs.