{
    "componentChunkName": "component---src-templates-issues-tsx",
    "path": "/issues/446",
    "result": {"data":{"issuesJson":{"id":"23162bd8-8b99-5945-bcdb-073979881121","title":"ntt360/pmon2: Golang 进程管理工具，类似 Node 进程管理的 PM2","number":446,"bodyHTML":"<div align=\"center\" dir=\"auto\">\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://camo.githubusercontent.com/a15b413168923d02e21292705ceaf86b92675f98e250c5c896a02ba7504a6eae/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f657279616a662f7475406d61696e2f696d672f696d6167655f32303234303432305f3231343430382e676966\"><img src=\"https://camo.githubusercontent.com/a15b413168923d02e21292705ceaf86b92675f98e250c5c896a02ba7504a6eae/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f657279616a662f7475406d61696e2f696d672f696d6167655f32303234303432305f3231343430382e676966\" width=\"100%\" height=\"3\" data-animated-image=\"\" data-canonical-src=\"https://cdn.jsdelivr.net/gh/eryajf/tu@main/img/image_20240420_214408.gif\" style=\"max-width: 100%; height: auto; max-height: 3px;\"></a><br><br></p>\n<markdown-accessiblity-table><table role=\"table\">\n<thead>\n<tr>\n<th align=\"right\">Repos</th>\n<th align=\"left\"><a href=\"https://github.com/ntt360/pmon2\">ntt360/pmon2</a></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td align=\"right\"><strong>Views</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/2ad54c35e9e7f6ab8833ea4008256d8cef982e598adea51a4fc7de089075bd33/68747470733a2f2f76696577732e77686174696c656172656e65642e746f6461792f76696577732f6769746875622f6e74743336302f706d6f6e322e737667\" alt=\"views\" data-canonical-src=\"https://views.whatilearened.today/views/github/ntt360/pmon2.svg\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>Stars</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/05fa16143f45d1ae1d037e0d397de56f545a453d58b472bbe71a22dec8b9e313/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f6e74743336302f706d6f6e323f636f6c6f723d663266303864266c6f676f3d556e64657274616c65266c6f676f436f6c6f723d656234363330\" alt=\"stars\" data-canonical-src=\"https://img.shields.io/github/stars/ntt360/pmon2?color=f2f08d&amp;logo=Undertale&amp;logoColor=eb4630\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>Forks</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/560cf547d75b157a794265d49bd9237092a20da5164594034e91f01f7e8ae031/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f6e74743336302f706d6f6e323f636f6c6f723d626138366562266c6f676f3d48616e647368616b65266c6f676f436f6c6f723d656136616136\" alt=\"forks\" data-canonical-src=\"https://img.shields.io/github/forks/ntt360/pmon2?color=ba86eb&amp;logo=Handshake&amp;logoColor=ea6aa6\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>License</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/8265efcd3500dc20606f747bd2d18009e336b98d9a65e5c2ce7debfbac500172/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6e74743336302f706d6f6e323f6c6f676f3d64617461253341696d616765253246706e672533426261736536342532436956424f5277304b47676f414141414e53556845556741414144414141414177434159414141425841766d48414141414358424957584d41414173544141414c457745416d70775941414144336b6c45515652346e4f335953557a5555426748384a726f57567255474a66456d3773584e63534446784d544c327069347348456778654e526f77586770455742445552522532424e414e4f4b4f4b36366f6f4b4a4742586545475263574163455646475152484677516d483525324630774861655748493944554455354c356b6e6568644f62377a66652532423139636e434a47495243516945596c514237594a4979474c38616f73756c565a36695246516a69474b6b7564576735614c6c704f70704e586e665071773555304459524a6d56786a4367464633424c755a476d416f5655694b4541726d583744375553677351706f72674761336748664b34483663754262435644334771683141352532424c6745253242467749656e514d306a6f446f66714c6f48564e7742796d384370546e416d327a51713073676478624964515a556c416b7150415a3664676a303541446f59526f6f66792532466f5869726f376b3551586a4c6f70677a4b69514e6c4c4461716f4967754577426a7a7150355066446a45394479495879493633464d547751464d43567271774e61763451666f52673538514625324266724d485172454b3844546f434d714e4179574e4866786d54526f4c4f726d5352566747744466714345715a4f4851727a6f34706243557341333431365169364551394b476a6345465267484f724f4b6e5536574162396247455459656b4b7843766a546167394534706a653534446b3551503862624d4859762532464333756541654a6b50304f4778422532424a70426e4172595238455951516e6f4e31414e4661426e5050356c385372736559514c303641646b30464a5938484f5761424d6c6541486a683068506f73497a6c6f3876304125324633345a694f6548726130714b52504d5653493774762532423932747725324676687855654252713456454c674d376642714b354770526d6f514c584e7075625475367a6f4e52706754386e5051627138347764253246494375767978694b4871694e41664933774d367549684271476b4c696977414f734b44714f68743749747239567938536a52424557667941627225324668523142667056514664484a42253246423268683778376a36517077435665655951326b72554235436c636a3641326d3067576a25324244306d4c34397a573563517943484c4e37726a6c6d6d6174457958582532464372547a412532466f51785a6b576c39474a5443566f25324279546a3837253242346769504b6376307149486f344156344430565a727251493334706e70524d36357875652532467a417265453425324654253246536f676c664542794d7369517441546c4c3352414a355948725378365a44665337307337754d486842705225324659423573305057366f455270316236253246667252684b3353444c35546965364f515548516c5133735644752532427a50636b397657453973747225324236496a533967486d5750616861444a25324277434b364e494242587348423948796b587378774470686c436d416476706c6162554a4e6e5a504239342532464e7436784f6538587a4562503257684d335741673147756236744825324233513150673337365239713475716c6e6f36676448476a444f5139306562303141484d3672596975554a314f713472344656756a35765239427a4d3957674e764f7977446869495951467667626366774166774d764863615067425041253246447948476a50624e394138616d6562636477416444354e6633373574787165774e5552656f797677424958594c645170576c6877465771745061435044334173467541535636717171496c62304a766b564331464c39576b4c55556c55574b337a585a4c46432532423125324642726f46746f364f7358497545594a5034447a7a5732594656316f4a614141414141456c46546b5375516d4343\" alt=\"license\" data-canonical-src=\"https://img.shields.io/github/license/ntt360/pmon2?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD3klEQVR4nO3YSUzUUBgH8JroWVrUGJfEm7sXNcSDFxMTL2pi4sHEgxeNRowXgpEWBDURR%2BNANOKOK66ooKJGBXeEGRcWAcEVFGQRHFwQmH5%2F0wHaeWHI9DUDU5L5knehdOb7zfe%2B19cnCJGIRCQiEYlQB7YJIyGL8aosulVZ6iRFQjiGKkudWg5aLlpOppNXnfPqw5U0DYRJmVxjCgFF3BLuZGmAoVUiKEArmX7D7USgsQporgGa3gHfK4H6cuBbCVD3Gqh1A5%2BLgE%2BFwIenQM0joDofqLoHVNwBym8CpTnAm2zQq0sgdxbIdQZUlAkqPAZ6dgj05ADoYRoofy%2FoXiro7k5QXjLopgzKiQNlLDaqoIguEwBjzqP5PfDjE9DyIXyI63FMTwQFMCVrqwNav4QfoRg58QF%2BfrMHQrEK8DToCMqNAyWNHfxmTRoLOrmSRVgGtDfqCEqZOHQrzo4pbCUsA3416Qi6EQ9KGjcEFRgHOrOKnU6WAb9bGETYekKxCvjTag9E4pje54Dk5QP8bbMHYv%2FC3ueAeJkP0OGxB%2BJpBnArYR8EYQQnoN1ANFaBnPP5l8SrseYQL06Adk0FJY8HOWaBMleAHjh0hPosIzlo8v0A%2F34ZiOeHra0qKRPMVSI7tv%2B92tw%2FvhxUeBRq4VELgM7fBqK5GpRmoQLXNpubTu6zoNRpgT8nPQbq84wd%2FICuvyxiKHqiNAfI3wM6uIhBqGkLiiwAOsKDqOht7Itr9Vy8SjRBEWfyAbr%2FhR1BfpVQFdHJB%2FB2hh7x7j6QpwCVeeYQ2krUB5Clcj6A2m0gWj%2BD0mL49zW5cQyCHLN7rjlmmatEyXX%2FCrTzA%2FoQxZkWl9GJTCVo%2ByTj87%2B4giPKcv0qIHo4AV4D0VZrrQI34pnpRM65xue%2FzAreE4%2FT%2FSoglfEByMsiQtATlL3RAJ5YHrSx6ZDfS70s7uMHhBpR%2FYB5s0PW6oERp1b6%2FfrRhK3SDL5Tie6OQUHQlQ3sVDu%2BzPck9vWE9str%2B6IjS9gHmWPahaDJ%2BwCK6NIBBXsHB9HykXsxwDphlCmAdvplabUJNnZPB94%2FNt6xOe8XzEbP2WhM3WAg1Gub6tH%2B3Q1Pg376R9q4uqlno6gdHGjDOQ90eb01AHM6rYiuUJ1Oq4r4FVuj5vR9BzM9WgNvOywDhiIYQFvgbcfwAfwMvHcaPgBPA%2FDyHGjPbN9A8amebcdwAdD5Nf375txqewNUReoyvwBIXYLdQpWlhwFWqtPaCPD3AsFuASV6qqqIlb0JvkVC1FL9WkLUUlUWK3zXZLFC%2B1%2FBroFto6OsXIuEYJP4DzzW2YFV1oJaAAAAAElFTkSuQmCC\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>UpdatedAt</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/17989effbb0f4f50a76efe22f0a7f6d9442db17295b7cff5efd11f2fa552eee6/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6173742d636f6d6d69742f6e74743336302f706d6f6e323f646973706c61795f74696d657374616d703d636f6d6d6974746572266c6f676f3d64617461253341696d616765253246706e672533426261736536342532436956424f5277304b47676f414141414e5355684555674141414234414141416543415941414141374d4b3669414141414358424957584d41414173544141414c457745416d7077594141414648556c45515652346e4c5658375539615678776d3236646c582532466468627825324232253246516e626b7655627264554151674a4a496655444e574454546d4f76314651554661504a346b7573725630314a7431734e70637453327533626f745a746d786439744a5346536f714b71494635625944464c436f76436c656673747a4a387758524c445a4c7a6e6b634f343535376e3364332532466e655a3472454f515a74315771462532423858467234253242664f4c4565326a6f59307a776638546f795a50766a45676b4c592532426b306d6d72584f36644b696e787a476b30666a5430782532425279723055716e6359637a4d317263347451253242497270324c4758646f344e4334567657715453373277716c632532427231334f527269364b6458646e624f484c6c776c7a4a70524b6e3657342532424b36706f4f434e6e494166486a253246253242776168495a4234764b6e715a6630714a704e49716c2532467638545530634e6c3572627963337730516e54703379324c54614a374d314e617844723266526e315370504736476961323174664533345463614f617931694d55564f5146624659714957536f31573854694156616e43306576584f4542375770313448466232327a453566714c4f433545524c515769644e614e49347545636339693768634a6c644868324e57725135674464624f6c7061756d49754c62326174415144506e7a3062384e6257636d785656524a33486d7870536377777a4f4a6d4b44524765384c6c435a444c4739673754496e5631516c376462586256316533675430574b697243466f6d6b5079767758466c5a474a4f6a563625324253743634757564445a4f55354555636f782532464d455144567674364d62634e3237593341797a687633737061557242365a3971724a534f3139657a6a387032704c426b4a792532426343484a7857493567573574636652527a31645531394766476b6f7539505a4f34736d52396a4746777065783444793362766e6d4b79706f74625531335669646a71595a68726a343972764d457425324625324659714c7a396430304e6a57253246637a67796f394f35317a7336614e6c6f354644747530445a675146686c47584a30644241446f4e6864367576703657686f617967374e394c564748386d443462253246486e667455516f4e4734764c51306769784d716c5725324234714f6a744e48446733723166365969525347785279375576714c62395534716b716e78504f4e7661356c447048723125324279794b524e4b57425a793565644d554842326d3572792532422532424551772532427a6766347a6f39253246306f634e3357527a4c4277344a2532424a7950574372716d4967475974554f735744346f785a46516f50556a4770564871493425324661666b51504336665a5165654d31253242764c7549516e6a754257514444437363726d485039656f4e5041744271664f6e5875614b25324268364a45624772732532427076764d6d78654962683836336162565065597953456f39464a48704e4d464a59253242503563575a6b6667374f3174537759436553514c54593345385130392532464256504a556c78516a7368543142736343593032723955445542667643484236367063665041336c794165336e6772332532463437584467614a7a736c7937787741364e5a746c555550437541487161536a5549502532427375653842525741432532464e6651374a5a505a35397330476a3756747049537a34685125324243706658474d4b685a63764c70554b7866574d386f68766637702532464f446a4842666356463849736b383267314648796b63564645253242555a414158343761452532464d6c34504f3530506e75683025324678346e6d637957507364774468427836436d6b4c562532466746446a594b784f4a4f4674623077517949684c39527943774b33414f664947703159464542686e4d4a634c525745624b644b516f55366e63545a6b494544696341792532463831645675454d3552775066657934784f7830496b25324649324e6e466b692532425761664f6f464959466367595a43797864376543556a626334416d46363566742532466b4d686b336f25324235686337734d4a79716a4a45477659466151464972375930775077384246415925324236253242766d6b3377367a7a5275444d6d5a5652736668385274413075455453443775434254364459514e36697665553066706b594c6a453671725672744f78654e4b553954484c5a4a396b4255324a427342685635416976422532466f4b61514e4b675043427744596149665a4334616454684f71463457454e56694c4a77566f586f62664c424b56773637414f6154734c6336355461564b32317651344c613939654b6359673576627873624f627a5451394e37554b4467554f3177446a6944494942736868357a746733396e514d4c535a4248344f7a424f55444551586d323036643366634c67737762585141345068634b336e6873775531427a3877765130395248472532466f597933656a6677424e6d746f59714c4130586741414141424a52553545726b4a676767253344253344266c6162656c3d557064617465644174\" alt=\"last-commit\" data-canonical-src=\"https://img.shields.io/github/last-commit/ntt360/pmon2?display_timestamp=committer&amp;logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHUlEQVR4nLVX7U9aVxwm26dlX%2Fdhbx%2B2%2FQnbkvUbrdUAQgJJIfUDNWDTTmOv1FQUFaPJ4kusrV01Jt1sNpctS2u3botZtmxd9tJSFSoqKqIF5bYDFLCovClefstzJ8wXRLDZLznkcO4557n3d3%2FneZ4rEOQZt1WqF%2B8XFr4%2BfOLEe2joY0zwf8ToyZPvjEgkLY%2Bk0mmrXO6dKinxzGk0fjT0x%2BRyr0UqncYczM1rc4tQ%2BIrp2LGXdo4NC4VvWqTS72wqlc%2Br13ORri6KdXdnbOHLlwlzJpRKn6W4%2BK6poOCNnIAfHj%2F%2BwahIZB4vKnqZf0qJpNIql%2Fv8TU0cNl5rbyc3w0QnTp3y2LTaJ7M1NaxDr2fRn1SpPG6Gia21tfE34TcaOay1iMUVOQFbFYqIWSo1W8TiAVanC0evXOEB7Wp14HFb22zE5fqLOC5ERLQWidNaNI4uEcc9i7hcJldHh2NWrQ5gDdbOlpaumIuLb2atAQDPnz0b8NbWcmxVVRJ3HmxpScwwzOJmKDRGe8LlCZDLG9g7TInV1Ql7dbXbV1e3gT0WKirCFomkPyvwXFlZGJOjV6%2BSt64uudDZOU5EUcox%2FMEQDVvt6MbcN27Y3Ayzhv3spaUrB6Z9qrJSO19ezj8p2pLBkJy%2BcCHJxWI5gW5tcfRRz1dU19GfGkou9PZO4smR9jGFwpex4Dy3bvnmKypotbU13VidjqYZhrj49rvMEt%2F%2FYqLz9d00NjW%2Fczgyo9O51zs6aNlo5FDtu0DZgQFhlGXJ0dBADoNhd6uvp6Whoayg7N9LVGH8mD4b%2FHnftUQoNG4vLQ0gixMqlW%2B4qOjtNHDg3r1f6YiRSGxRy7UvqLb9U4qkqnxPONva5lDpHr1%2ByyKRNKWBZy5edMUHB2m5ry%2B%2BEQw%2Bzgf4zo9%2F0ocN3WRzLBw4J%2BJyPWCrqmIgGYtUOsWD4oxZFQoPUjGpVHqI4%2FafkQPC6fZQeeM1%2BvLuIQnjuBWQDDCscrmHP9eoNPAtBqfOnXuaK%2Bh6JEbGrs%2BpvvMmxeIbh863abVPeYySEo9FJHpNMFJY%2BP5cWZkfg7O1tSwYCeSQLTY3E8Q09%2FBVPJUlxQjshT1BscCY02r9UDUBfvCHB66pcfPA3lyAe3ngr3%2F47XDgaJzsly7xwA6NZtlUUPCuAHqaSjUIP%2Bsue8BRWAC%2FNfQ7JZPZ59s0Gj7VtpISz4hQ%2BCpfXGMKhZcvLpUKxfWM8ohvf7p%2FODjHBfcVF8Isk82g1FHykcVFE%2BUZAAX47aE%2FMl4PO50Pnuh0%2Fx4nmcyWPsdwDhBx6CmkLV%2FgFDjYKxOJOFtb0wQyIhL9RyCwK3AOfIGp1YFEBhnMJcLRWEbKdKQoU6ncTZkIEDicAy%2F81dVuEM5RwPfey4xOx0Ik%2FI2NnFki%2BWafOoFIYFcgYZCyxd7eCUjbc4AmF65ft%2FkMhk3o%2B5hc7sMJyqjJEGvYFaQFIr7Y0wPw8BFAY%2B6%2Bvmk3w6zzRuDMmZVRsfh8RtA0uETSD7uCBT6DYQN6iveU0fpkYLjE6qrVrtOxeNKU9THLZJ9kBU2JBsBhV5AivB%2FoKaQNKgPCBwDYaIfZC4adThOqF4WENViLJwVoXobfLBKVw67AOaTsLc65TaVK21vQ4La99eKcYg5vbxsbObzTQ9N7UKDgUO1wDjiDIIBshh5ztg39nQMLSZBH4OzBOUDEQXm206d3fcLgswbXQA4PhcK3nhswU1Bz8wvQ09RHG%2FoYy3ejfwBNmtoYqLA0XgAAAABJRU5ErkJggg%3D%3D&amp;label=UpdatedAt\" style=\"max-width: 100%;\"></a></td>\n</tr>\n<tr>\n<td align=\"right\"><strong>CreatedAt</strong></td>\n<td align=\"left\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/bebb74274314f3ab0217a991866123f12b1ce5e6b4472475aca138b9ed0218f1/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f637265617465642d61742f6e74743336302f706d6f6e323f6c6f676f3d64617461253341696d616765253246706e672533426261736536342532436956424f5277304b47676f414141414e5355684555674141414234414141416543415941414141374d4b3669414141414358424957584d41414173544141414c457745416d7077594141414648556c45515652346e4c5658375539615678776d3236646c582532466468627825324232253246516e626b7655627264554151674a4a496655444e574454546d4f76314651554661504a346b7573725630314a7431734e70637453327533626f745a746d786439744a5346536f714b71494635625944464c436f76436c656673747a4a387758524c445a4c7a6e6b634f343535376e3364332532466e655a3472454f515a74315771462532423858467234253242664f4c4565326a6f59307a776638546f795a50766a45676b4c592532426b306d6d72584f36644b696e787a476b30666a5430782532425279723055716e6359637a4d317263347451253242497270324c4758646f344e4334567657715453373277716c632532427231334f527269364b6458646e624f484c6c776c7a4a70524b6e3657342532424b36706f4f434e6e494166486a253246253242776168495a4234764b6e715a6630714a704e49716c2532467638545530634e6c3572627963337730516e54703379324c54614a374d314e617844723266526e315370504736476961323174664533345463614f617931694d55564f5146624659714957536f31573854694156616e43306576584f4542375770313448466232327a453566714c4f433545524c515769644e614e49347545636339693768634a6c644868324e57725135674464624f6c7061756d49754c62326174415144506e7a3062384e6257636d785656524a33486d7870536377777a4f4a6d4b44524765384c6c435a444c4739673754496e5631516c376462586256316533675430574b697243466f6d6b5079767758466c5a474a4f6a563625324253743634757564445a4f55354555636f782532464d455144567674364d62634e3237593341797a687633737061557242365a3971724a534f3139657a6a387032704c426b4a792532426343484a7857493567573574636652527a31645531394766476b6f7539505a4f34736d52396a4746777065783444793362766e6d4b79706f74625531335669646a71595a68726a343972764d457425324625324659714c7a396430304e6a57253246637a67796f394f35317a7336614e6c6f354644747530445a675146686c47584a30644241446f4e6864367576703657686f617967374e394c564748386d443462253246486e667455516f4e4734764c51306769784d716c5725324234714f6a744e48446733723166365969525347785279375576714c62395534716b716e78504f4e7661356c447048723125324279794b524e4b57425a793565644d554842326d3572792532422532424551772532427a6766347a6f39253246306f634e3357527a4c4277344a2532424a7950574372716d4967475974554f735744346f785a46516f50556a4770564871493425324661666b51504336665a5165654d31253242764c7549516e6a754257514444437363726d485039656f4e5041744271664f6e5875614b25324268364a45624772732532427076764d6d78654962683836336162565065597953456f39464a48704e4d464a59253242503563575a6b6667374f3174537759436553514c54593345385130392532464256504a556c78516a7368543142736343593032723955445542667643484236367063665041336c794165336e6772332532463437584467614a7a736c7937787741364e5a746c555550437541487161536a5549502532427375653842525741432532464e6651374a5a505a35397330476a3756747049537a34685125324243706658474d4b685a63764c70554b7866574d386f68766637702532464f446a4842666356463849736b383267314648796b63564645253242555a414158343761452532464d6c34504f3530506e75683025324678346e6d637957507364774468427836436d6b4c562532466746446a594b784f4a4f4674623077517949684c39527943774b33414f664947703159464542686e4d4a634c525745624b644b516f55366e63545a6b494544696341792532463831645675454d3552775066657934784f7830496b25324649324e6e466b692532425761664f6f464959466367595a43797864376543556a626334416d46363566742532466b4d686b336f25324235686337734d4a79716a4a45477659466151464972375930775077384246415925324236253242766d6b3377367a7a5275444d6d5a5652736668385274413075455453443775434254364459514e36697665553066706b594c6a453671725672744f78654e4b553954484c5a4a396b4255324a427342685635416976422532466f4b61514e4b675043427744596149665a4334616454684f71463457454e56694c4a77566f586f62664c424b56773637414f6154734c6336355461564b32317651344c613939654b6359673576627873624f627a5451394e37554b4467554f3177446a6944494942736868357a746733396e514d4c535a4248344f7a424f55444551586d323036643366634c67737762585141345068634b336e6873775531427a3877765130395248472532466f597933656a6677424e6d746f59714c4130586741414141424a52553545726b4a676767253344253344266c6162656c3d437265617465644174\" alt=\"create-at\" data-canonical-src=\"https://img.shields.io/github/created-at/ntt360/pmon2?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHUlEQVR4nLVX7U9aVxwm26dlX%2Fdhbx%2B2%2FQnbkvUbrdUAQgJJIfUDNWDTTmOv1FQUFaPJ4kusrV01Jt1sNpctS2u3botZtmxd9tJSFSoqKqIF5bYDFLCovClefstzJ8wXRLDZLznkcO4557n3d3%2FneZ4rEOQZt1WqF%2B8XFr4%2BfOLEe2joY0zwf8ToyZPvjEgkLY%2Bk0mmrXO6dKinxzGk0fjT0x%2BRyr0UqncYczM1rc4tQ%2BIrp2LGXdo4NC4VvWqTS72wqlc%2Br13ORri6KdXdnbOHLlwlzJpRKn6W4%2BK6poOCNnIAfHj%2F%2BwahIZB4vKnqZf0qJpNIql%2Fv8TU0cNl5rbyc3w0QnTp3y2LTaJ7M1NaxDr2fRn1SpPG6Gia21tfE34TcaOay1iMUVOQFbFYqIWSo1W8TiAVanC0evXOEB7Wp14HFb22zE5fqLOC5ERLQWidNaNI4uEcc9i7hcJldHh2NWrQ5gDdbOlpaumIuLb2atAQDPnz0b8NbWcmxVVRJ3HmxpScwwzOJmKDRGe8LlCZDLG9g7TInV1Ql7dbXbV1e3gT0WKirCFomkPyvwXFlZGJOjV6%2BSt64uudDZOU5EUcox%2FMEQDVvt6MbcN27Y3Ayzhv3spaUrB6Z9qrJSO19ezj8p2pLBkJy%2BcCHJxWI5gW5tcfRRz1dU19GfGkou9PZO4smR9jGFwpex4Dy3bvnmKypotbU13VidjqYZhrj49rvMEt%2F%2FYqLz9d00NjW%2Fczgyo9O51zs6aNlo5FDtu0DZgQFhlGXJ0dBADoNhd6uvp6Whoayg7N9LVGH8mD4b%2FHnftUQoNG4vLQ0gixMqlW%2B4qOjtNHDg3r1f6YiRSGxRy7UvqLb9U4qkqnxPONva5lDpHr1%2ByyKRNKWBZy5edMUHB2m5ry%2B%2BEQw%2Bzgf4zo9%2F0ocN3WRzLBw4J%2BJyPWCrqmIgGYtUOsWD4oxZFQoPUjGpVHqI4%2FafkQPC6fZQeeM1%2BvLuIQnjuBWQDDCscrmHP9eoNPAtBqfOnXuaK%2Bh6JEbGrs%2BpvvMmxeIbh863abVPeYySEo9FJHpNMFJY%2BP5cWZkfg7O1tSwYCeSQLTY3E8Q09%2FBVPJUlxQjshT1BscCY02r9UDUBfvCHB66pcfPA3lyAe3ngr3%2F47XDgaJzsly7xwA6NZtlUUPCuAHqaSjUIP%2Bsue8BRWAC%2FNfQ7JZPZ59s0Gj7VtpISz4hQ%2BCpfXGMKhZcvLpUKxfWM8ohvf7p%2FODjHBfcVF8Isk82g1FHykcVFE%2BUZAAX47aE%2FMl4PO50Pnuh0%2Fx4nmcyWPsdwDhBx6CmkLV%2FgFDjYKxOJOFtb0wQyIhL9RyCwK3AOfIGp1YFEBhnMJcLRWEbKdKQoU6ncTZkIEDicAy%2F81dVuEM5RwPfey4xOx0Ik%2FI2NnFki%2BWafOoFIYFcgYZCyxd7eCUjbc4AmF65ft%2FkMhk3o%2B5hc7sMJyqjJEGvYFaQFIr7Y0wPw8BFAY%2B6%2Bvmk3w6zzRuDMmZVRsfh8RtA0uETSD7uCBT6DYQN6iveU0fpkYLjE6qrVrtOxeNKU9THLZJ9kBU2JBsBhV5AivB%2FoKaQNKgPCBwDYaIfZC4adThOqF4WENViLJwVoXobfLBKVw67AOaTsLc65TaVK21vQ4La99eKcYg5vbxsbObzTQ9N7UKDgUO1wDjiDIIBshh5ztg39nQMLSZBH4OzBOUDEQXm206d3fcLgswbXQA4PhcK3nhswU1Bz8wvQ09RHG%2FoYy3ejfwBNmtoYqLA0XgAAAABJRU5ErkJggg%3D%3D&amp;label=CreatedAt\" style=\"max-width: 100%;\"></a></td>\n</tr>\n</tbody>\n</table></markdown-accessiblity-table>\n<a href=\"https://github.com/opsre/awesome-ops\">\n</a><p dir=\"auto\"><a href=\"https://github.com/opsre/awesome-ops\"><img src=\"https://camo.githubusercontent.com/b964a36ea4078c39f603d46a29436371c7541a2f26e0228d7b21b9d9805b43d3/68747470733a2f2f736f6369616c6966792e6769742e63692f6f707372652f617765736f6d652d6f70732f696d6167653f6465736372697074696f6e3d3126666f6e743d42697474657226666f726b733d31266973737565733d31266c616e67756167653d31266c6f676f3d6874747073253341253246253246617661746172732e67697468756275736572636f6e74656e742e636f6d25324675253246313838353638303230266e616d653d31266f776e65723d31267061747465726e3d436972637569742b426f6172642670756c6c733d31267374617267617a6572733d31267468656d653d4c69676874\" alt=\"\" data-canonical-src=\"https://socialify.git.ci/opsre/awesome-ops/image?description=1&amp;font=Bitter&amp;forks=1&amp;issues=1&amp;language=1&amp;logo=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F188568020&amp;name=1&amp;owner=1&amp;pattern=Circuit+Board&amp;pulls=1&amp;stargazers=1&amp;theme=Light\" style=\"max-width: 100%;\"></a></p>\n<a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://camo.githubusercontent.com/a15b413168923d02e21292705ceaf86b92675f98e250c5c896a02ba7504a6eae/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f657279616a662f7475406d61696e2f696d672f696d6167655f32303234303432305f3231343430382e676966\"><img src=\"https://camo.githubusercontent.com/a15b413168923d02e21292705ceaf86b92675f98e250c5c896a02ba7504a6eae/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f657279616a662f7475406d61696e2f696d672f696d6167655f32303234303432305f3231343430382e676966\" width=\"100%\" height=\"3\" data-animated-image=\"\" data-canonical-src=\"https://cdn.jsdelivr.net/gh/eryajf/tu@main/img/image_20240420_214408.gif\" style=\"max-width: 100%; height: auto; max-height: 3px;\"></a>\n</div>\n<h1 dir=\"auto\">pmon2</h1>\n<p dir=\"auto\">go进程管理工具(golang process manager)，专门用于 go 常驻进程管理 （daemon manager）</p>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://camo.githubusercontent.com/65c70573bcdbc61059c51261d034b5065246aac863af4878bcaecc7bd55ea641/687474703a2f2f70302e7168696d672e636f6d2f743031376436636262363861656434623639332e706e67\"><img src=\"https://camo.githubusercontent.com/65c70573bcdbc61059c51261d034b5065246aac863af4878bcaecc7bd55ea641/687474703a2f2f70302e7168696d672e636f6d2f743031376436636262363861656434623639332e706e67\" data-canonical-src=\"http://p0.qhimg.com/t017d6cbb68aed4b693.png\" style=\"max-width: 100%;\"></a></p>\n<h2 dir=\"auto\">启动进程</h2>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 run [./二进制进程文件] [参数1]  ...\"><pre class=\"notranslate\"><span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-s1\">run</span> [.<span class=\"pl-c1\">/</span><span class=\"pl-s1\">二进制进程文件</span>] [<span class=\"pl-s1\">参数1</span>]  ...</pre></div>\n<h2 dir=\"auto\">介绍</h2>\n<p dir=\"auto\">Go官方一直没有提供任何进程管理工具，对于 <code class=\"notranslate\">Go</code> 服务的部署，简单的服务，我们使用 <code class=\"notranslate\">linux</code> 内建命令 <code class=\"notranslate\">nohup &amp;</code>组合，或者使用系统自带进程管理工具, 例如 <code class=\"notranslate\">systemd</code>，<code class=\"notranslate\">init.d</code> 配置。或者借助第三方的进程管理工具，如：<code class=\"notranslate\">python</code> 的 <code class=\"notranslate\">supervisor</code> 或者 <code class=\"notranslate\">nodejs</code> 的 <code class=\"notranslate\">pm2</code>。</p>\n<p dir=\"auto\">每种方式都有一定优劣，我们希望继承 <code class=\"notranslate\">go</code> 语言部署集成的便捷易用思想，不需要再安装其他依赖软件，并且提升进程管理工具的体验。</p>\n<p dir=\"auto\">和 <code class=\"notranslate\">pm2</code> 不一样的是，<code class=\"notranslate\">pmon2</code> 直接是启动的系统级常驻进程。进程直接由 <code class=\"notranslate\">init</code> 来管理，因此，就算<code class=\"notranslate\">pmon2</code>管理工具异常退出，也不会影响进程本身运行。</p>\n<p dir=\"auto\">默认的，<code class=\"notranslate\">pmon2</code> 所管理的进程如果发生异常崩溃，<code class=\"notranslate\">pmon2</code> 会尝试重启该进程。如果你不希望某个进程自动重启，那么你可以设置一个 <code class=\"notranslate\">--no-autorestart</code> 参数即可。具体请参考：常用命令使用章节。</p>\n<h2 dir=\"auto\">如何安装</h2>\n<p dir=\"auto\">目前 <code class=\"notranslate\">Pmon2</code> 支持 <code class=\"notranslate\">CentOS6</code>、<code class=\"notranslate\">CentOS7</code>、<code class=\"notranslate\">CentOS8</code></p>\n<p dir=\"auto\"><a href=\"https://github.com/ntt360/pmon2/releases\">Releases</a> 中已经构建了可以直接安装的<code class=\"notranslate\">rpm</code>包，可直接选择平台安装：</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"# CentOS6\nsudo yum install -y https://github.com/ntt360/pmon2/releases/download/v1.12.1/pmon2-1.12.1-1.el6.x86_64.rpm\n\n# CentOS7\nsudo yum install -y https://github.com/ntt360/pmon2/releases/download/v1.12.1/pmon2-1.12.1-1.el7.x86_64.rpm\n\n# CentOS8\nsudo yum install -y https://github.com/ntt360/pmon2/releases/download/v1.12.1/pmon2-1.12.1-1.el8.x86_64.rpm\"><pre class=\"notranslate\"><span class=\"pl-c\"><span class=\"pl-c\">#</span> CentOS6</span>\nsudo yum install -y https://github.com/ntt360/pmon2/releases/download/v1.12.1/pmon2-1.12.1-1.el6.x86_64.rpm\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> CentOS7</span>\nsudo yum install -y https://github.com/ntt360/pmon2/releases/download/v1.12.1/pmon2-1.12.1-1.el7.x86_64.rpm\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> CentOS8</span>\nsudo yum install -y https://github.com/ntt360/pmon2/releases/download/v1.12.1/pmon2-1.12.1-1.el8.x86_64.rpm</pre></div>\n<p dir=\"auto\">❗❗ <strong>注意：</strong> ❗❗</p>\n<p dir=\"auto\">首次安装 <code class=\"notranslate\">pmon2</code> 后，<code class=\"notranslate\">pmon2</code> 服务没有自动启动，需要你手动启动该服务：</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"# centos6 使用 initctl\nsudo initctl start pmon2\n\n# centos7 使用 systemd\nsudo systemctl start pmon2\n\n# Debian/Ubuntu\nsudo /usr/local/pmon2/bin/pmond &amp;\"><pre class=\"notranslate\"><span class=\"pl-c\"><span class=\"pl-c\">#</span> centos6 使用 initctl</span>\nsudo initctl start pmon2\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> centos7 使用 systemd</span>\nsudo systemctl start pmon2\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> Debian/Ubuntu</span>\nsudo /usr/local/pmon2/bin/pmond <span class=\"pl-k\">&amp;</span></pre></div>\n<h2 dir=\"auto\">命令介绍</h2>\n<h4 dir=\"auto\">查看帮助</h4>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"# 查看全局的帮助文档\nsudo pmon2 help\n\n# 查看某个具体命令 help\nsudo pmon2 [command] help\"><pre class=\"notranslate\"><span class=\"pl-c\"><span class=\"pl-c\">#</span> 查看全局的帮助文档</span>\nsudo pmon2 <span class=\"pl-c1\">help</span>\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> 查看某个具体命令 help</span>\nsudo pmon2 [command] <span class=\"pl-c1\">help</span></pre></div>\n<p dir=\"auto\">帮助文档中能查看当前所有命令使用说明</p>\n<div class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"Usage:\n  pmon2 [command]\n\nAvailable Commands:\n  del         del process by id or name\n  desc        print the process detail message\n  exec        run one binary golang process file\n  help        Help about any command\n  ls          list all processes\n  reload      reload some process\n  start       start some process by id or name\n  stop        stop running process\n  log         display process log by id or name\n  logf        display process log dynamic by id or name\n  version     show pmon2 version\"><pre class=\"notranslate\"><code class=\"notranslate\">Usage:\n  pmon2 [command]\n\nAvailable Commands:\n  del         del process by id or name\n  desc        print the process detail message\n  exec        run one binary golang process file\n  help        Help about any command\n  ls          list all processes\n  reload      reload some process\n  start       start some process by id or name\n  stop        stop running process\n  log         display process log by id or name\n  logf        display process log dynamic by id or name\n  version     show pmon2 version\n</code></pre></div>\n<h4 dir=\"auto\">运行进程 [run/exec]</h4>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 run [./二进制文件名] [参数1] [参数2] ...\"><pre class=\"notranslate\"><span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-s1\">run</span> [.<span class=\"pl-c1\">/</span><span class=\"pl-smi\">二进制文件名</span>] [<span class=\"pl-smi\">参数1</span>] [<span class=\"pl-smi\">参数2</span>] ...</pre></div>\n<p dir=\"auto\">启动进程，可以传入若干参数，参数说明如下：</p>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"// 进程名称，如果不传递，则以二进制文件名作为默认名称\n--name\n\n// 进程运行日志，不配置则使用默认路径：/var/log/pmon2/\n--log   -l\n\n// 仅自定义日志目录，优先级低于 --log\n--log_dir -d\n\n// 进程自定义参数，多个参数以空格分割\n--args  -a &quot;-arg1=val1 -arg2=val2&quot;\n\n// 进程启动用户\n--user  -u\n\n// 不自动重启, 默认自动重启\n--no-autorestart    -n\"><pre class=\"notranslate\"><span class=\"pl-c\">// 进程名称，如果不传递，则以二进制文件名作为默认名称</span>\n<span class=\"pl-c1\">-</span><span class=\"pl-c1\">-</span><span class=\"pl-s1\">name</span>\n\n<span class=\"pl-c\">// 进程运行日志，不配置则使用默认路径：/var/log/pmon2/</span>\n<span class=\"pl-c1\">-</span><span class=\"pl-c1\">-</span><span class=\"pl-s1\">log</span>   <span class=\"pl-c1\">-</span><span class=\"pl-s1\">l</span>\n\n<span class=\"pl-c\">// 仅自定义日志目录，优先级低于 --log</span>\n<span class=\"pl-c1\">-</span><span class=\"pl-c1\">-</span><span class=\"pl-s1\">log_dir</span> <span class=\"pl-c1\">-</span><span class=\"pl-s1\">d</span>\n\n<span class=\"pl-c\">// 进程自定义参数，多个参数以空格分割</span>\n<span class=\"pl-c1\">-</span><span class=\"pl-c1\">-</span><span class=\"pl-s1\">args</span>  <span class=\"pl-c1\">-</span><span class=\"pl-s1\">a</span> <span class=\"pl-s\">\"-arg1=val1 -arg2=val2\"</span>\n\n<span class=\"pl-c\">// 进程启动用户</span>\n<span class=\"pl-c1\">-</span><span class=\"pl-c1\">-</span><span class=\"pl-s1\">user</span>  <span class=\"pl-c1\">-</span><span class=\"pl-s1\">u</span>\n\n<span class=\"pl-c\">// 不自动重启, 默认自动重启</span>\n<span class=\"pl-c1\">-</span><span class=\"pl-c1\">-</span><span class=\"pl-s1\">no</span><span class=\"pl-c1\">-</span><span class=\"pl-s1\">autorestart</span>    <span class=\"pl-c1\">-</span><span class=\"pl-s1\">n</span></pre></div>\n<h4 dir=\"auto\">示例：</h4>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 run ./bin/gin --args &quot;-prjHome=`pwd`&quot; --user ntt360\"><pre class=\"notranslate\"><span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-s1\">run</span> .<span class=\"pl-c1\">/</span><span class=\"pl-s1\">bin</span><span class=\"pl-c1\">/</span><span class=\"pl-s1\">gin</span> <span class=\"pl-c1\">--</span><span class=\"pl-s1\">args</span> <span class=\"pl-s\">\"-prjHome=`pwd`\"</span> <span class=\"pl-c1\">--</span><span class=\"pl-s1\">user</span> <span class=\"pl-s1\">ntt360</span></pre></div>\n<p dir=\"auto\">运行 <code class=\"notranslate\">bin/gin</code> 二进制文件，并且传递参数：<code class=\"notranslate\">-prjHome</code> 为当前目录，并且制定进程运行的用户为：<code class=\"notranslate\">ntt360</code></p>\n<p dir=\"auto\">!!!warning \"注意\"<br>\npmon2启动的进程会另起一个隔离的上下文环境，自定义参数需要使用绝对路径，不能使用相对路径。</p>\n<h4 dir=\"auto\">查看列表  [ list/ls ]</h4>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 ls\"><pre class=\"notranslate\"><span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-s1\">ls</span></pre></div>\n<h4 dir=\"auto\">启动进程  [ start ]</h4>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 start [id or name]\"><pre class=\"notranslate\"><span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-smi\">start</span> [<span class=\"pl-s1\">id</span> <span class=\"pl-s1\">or</span> <span class=\"pl-smi\">name</span>]</pre></div>\n<h4 dir=\"auto\">停止进程  [ stop ]</h4>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 stop [id or name]\"><pre class=\"notranslate\"><span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-smi\">stop</span> [<span class=\"pl-s1\">id</span> <span class=\"pl-s1\">or</span> <span class=\"pl-smi\">name</span>]</pre></div>\n<h4 dir=\"auto\">重载进程 [ reload ]</h4>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 reload [id or name]\"><pre class=\"notranslate\"><span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-smi\">reload</span> [<span class=\"pl-s1\">id</span> <span class=\"pl-s1\">or</span> <span class=\"pl-smi\">name</span>]</pre></div>\n<h4 dir=\"auto\">插件进程日志</h4>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"# 查看最近进程的日志\nsudo pmon2 log [id or name]\n\n# 动态查看进程日志，类似系统tail -f xxx.log\nsudo pmon2 logf [id or name]\"><pre class=\"notranslate\"><span class=\"pl-c\"><span class=\"pl-c\">#</span> 查看最近进程的日志</span>\nsudo pmon2 log [id or name]\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> 动态查看进程日志，类似系统tail -f xxx.log</span>\nsudo pmon2 logf [id or name]</pre></div>\n<p dir=\"auto\">仅仅重启配置文件，该命令需要所启动的进程配合使用，<code class=\"notranslate\">reload</code> 命令默认仅仅发送 <code class=\"notranslate\">SIGUSR2</code> 信号给启动的进程</p>\n<p dir=\"auto\">如果你希望 <code class=\"notranslate\">reload</code> 时自定义信号，那么请使用 <code class=\"notranslate\">--sig</code> 参数：</p>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"// 目前支持的信号：HUP、USR1、USR2\nsudo pmon2 reload --sig HUP [id or name]\"><pre class=\"notranslate\"><span class=\"pl-c\">// 目前支持的信号：HUP、USR1、USR2</span>\n<span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-s1\">reload</span> <span class=\"pl-c1\">--</span><span class=\"pl-s1\">sig</span> <span class=\"pl-smi\">HUP</span> [<span class=\"pl-s1\">id</span> <span class=\"pl-s1\">or</span> <span class=\"pl-smi\">name</span>]</pre></div>\n<h4 dir=\"auto\">删除进程  [ del/delete ]</h4>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 del [id or name]\"><pre class=\"notranslate\"><span class=\"pl-smi\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-s1\">del</span> [<span class=\"pl-s1\">id</span> <span class=\"pl-s1\">or</span> <span class=\"pl-smi\">name</span>]</pre></div>\n<h4 dir=\"auto\">查看详情  [ show/desc ]</h4>\n<div class=\"highlight highlight-source-go notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo pmon2 show [id or name]\"><pre class=\"notranslate\"><span class=\"pl-s1\">sudo</span> <span class=\"pl-s1\">pmon2</span> <span class=\"pl-smi\">show</span> [<span class=\"pl-s1\">id</span> <span class=\"pl-s1\">or</span> <span class=\"pl-smi\">name</span>]</pre></div>\n<p dir=\"auto\"><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://camo.githubusercontent.com/b7aeb2839f32f4a2a40f00779f4898841856b46e7b20767aac34ef37285950ce/68747470733a2f2f6a73637373696d672d696d672e6f73732d636e2d6265696a696e672e616c6979756e63732e636f6d2f383963336636343961353833613835322e706e673f743d31353036393530343934\"><img src=\"https://camo.githubusercontent.com/b7aeb2839f32f4a2a40f00779f4898841856b46e7b20767aac34ef37285950ce/68747470733a2f2f6a73637373696d672d696d672e6f73732d636e2d6265696a696e672e616c6979756e63732e636f6d2f383963336636343961353833613835322e706e673f743d31353036393530343934\" alt=\"\" data-canonical-src=\"https://jscssimg-img.oss-cn-beijing.aliyuncs.com/89c3f649a583a852.png?t=1506950494\" style=\"max-width: 100%;\"></a></p>\n<h2 dir=\"auto\">常见问题</h2>\n<h3 dir=\"auto\">1.日志切割？</h3>\n<p dir=\"auto\">pmon2 自带一个 <code class=\"notranslate\">logrotate</code> 日志切割配置文件，会默认切割 <code class=\"notranslate\">/var/log/pmon2</code> 目录下的日志文件，如果你是自定义日志路径，请自行实现日志切割。</p>\n<h3 dir=\"auto\">2.进程启动参数必须传绝对路径？</h3>\n<p dir=\"auto\">启动进程是，如果你传递的参数中存在路径，请使用绝对路径，<code class=\"notranslate\">pmon2</code> 启动进程会新起一个新的沙盒环境以避免环境变量污染问题。</p>\n<h3 dir=\"auto\">3. 平台支持</h3>\n<p dir=\"auto\">目前 <code class=\"notranslate\">rpm</code> 适配 <code class=\"notranslate\">CentOS6</code> 、 <code class=\"notranslate\">CentOS7</code>、<code class=\"notranslate\">CentOS8</code>， <code class=\"notranslate\">Pmon2</code> 本身可运行在任何 <code class=\"notranslate\">linux</code> 环境下，如有其它平台打包需求，请联系我们。</p>\n<h3 dir=\"auto\">4. 命令行自动补全</h3>\n<p dir=\"auto\">pmon2 提供 bash 自动补全脚本，如果你发觉在 <code class=\"notranslate\">sudo</code> 模式下命令无法自动补全，请安装 <code class=\"notranslate\">bash-completion</code>，退出终端重新进入即可：</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"sudo yum intsall -y bash-completion\"><pre class=\"notranslate\">sudo yum intsall -y bash-completion</pre></div>\n<h3 dir=\"auto\">5. FATA stat /var/run/pmon2/pmon2.sock: no such file or directory</h3>\n<p dir=\"auto\">如果遇到如上报错，请尝试运行：</p>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"# centos6 使用 initctl\nsudo initctl start pmon2\n\n# centos7 使用 systemd\nsudo systemctl start pmon2\"><pre class=\"notranslate\"><span class=\"pl-c\"><span class=\"pl-c\">#</span> centos6 使用 initctl</span>\nsudo initctl start pmon2\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> centos7 使用 systemd</span>\nsudo systemctl start pmon2</pre></div>\n<p dir=\"auto\">原因请参考，安装启动部分说明。</p>","updatedAt":"2025-05-21T16:16:27Z","upvoteCount":null,"author":{"login":"eryajf","avatarUrl":"https://avatars.githubusercontent.com/u/33259379?u=e4a4090a38ac2473aaed4ef9945233636776c6c3&v=4","url":"https://github.com/eryajf"},"category":null,"labels":{"edges":[{"node":{"name":"更多","color":"25B472"}},{"node":{"name":"应用进程管理","color":"fa632f"}},{"node":{"name":"ntt360","color":"49b696"}}]},"comments":{"edges":[]}}},"pageContext":{"number":446,"previous":{"title":"Jinnrry/PMail: 一个追求极简部署流程、极致资源占用的个人域名邮箱服务器。单文件运行，包含完整的收发邮件服务和Web端邮件管理功能。只需一台服务器、一个域名、一行代码、一分钟部署时间，你就能够搭建出一个自己的域名邮箱","number":445},"next":{"title":"lenye/pmsg: 发送消息的小工具：企业微信群机器人消息，钉钉自定义机器人消息，飞书自定义机器人消息，Slack bot，微信消息，微信客服消息，企业微信消息，企业微信客服消息","number":447}}},
    "staticQueryHashes": ["151096407","2861350382"]}