Plateforme de vidéo à la demande en direct du protocole RTMP EasyDSS signale qu'une erreur ne peut pas évaluer le champ RootPath de type * struct dans le démarrage du système Linux en tant que service

L'équipe TSINGSEE Qingxi Video a récemment reçu de nombreux projets de personnalisation de plate-forme. Dans le projet de personnalisation EasyDSS, nous exécutons le programme en tant que service dans le système Linux, et nous avons constaté que le programme ne pouvait pas être démarré et une erreur a été signalée: can ' t évaluer le champ RootPath dans le type * struct {* service.Config: Path string; ReloadSignal string; PIDFile string}

90.png

Affichez le code service.Config comme suit:

var to = &struct {
   *Config
   Path string
}{
   s.Config,
   path,
}
err = s.template().Execute(f, to)

Cette ligne de code lit les informations du modèle. Les informations du modèle sont les suivantes:

const sysvScript = `#!/bin/sh
# For RedHat and cousins:
# chkconfig: - 99 01
# description: {
   
   {.Description}}
# processname: {
   
   {.RootPath}}

Nous pouvons voir que le code service.Config est path et les informations du modèle sont RootPath. Le problème ici est évident. Il est causé par l'incohérence entre RootPath et Path.

En ce qui concerne le code de service, il n'a pas été modifié, il est donc restauré à la version précédente et RootPath est restauré dans Path. Ensuite, redémarrez le service, le démarrage est réussi.

91.png

Nous avons demandé la raison pour laquelle Path a été changé en RootPath et avons constaté que c'était à cause d'une mauvaise utilisation de GoLand. Lorsque le chemin est reconstruit dans d'autres fichiers, le chemin contenu dans la chaîne de l'ensemble du projet sera recherché, et la structure correspondante ne sera pas seulement modifiée. Par conséquent, lorsque vous utilisez Refactor, vous devez vous assurer que vous ne modifiez que votre propre chaîne pour éviter toute modification excessive.

92.png

La personnalisation de la plate-forme vidéo EasyDSS implique de nombreux aspects. Bien sûr, même la version non personnalisée suffit pour la plupart des scénarios, tels que le système de tourisme intelligent dans les sites pittoresques , les solutions IoT cloud d'ascenseur, etc. Les amis intéressés peuvent nous contacter pour une compréhension ou un test plus approfondi.

Je suppose que tu aimes

Origine blog.csdn.net/Black_3717/article/details/112323262
conseillé
Classement