@mihari/logger-tool 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ #!/usr/bin/env node
package/dist/index.d.ts CHANGED
@@ -1,3 +1 @@
1
1
  #!/usr/bin/env node
2
- export {};
3
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,43 +1,33 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- var desc = Object.getOwnPropertyDescriptor(m, k);
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k]; } };
8
- }
9
- Object.defineProperty(o, k2, desc);
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- o[k2] = m[k];
13
- }));
14
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
- Object.defineProperty(o, "default", { enumerable: true, value: v });
16
- }) : function(o, v) {
17
- o["default"] = v;
18
- });
19
- var __importStar = (this && this.__importStar) || (function () {
20
- var ownKeys = function(o) {
21
- ownKeys = Object.getOwnPropertyNames || function (o) {
22
- var ar = [];
23
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
- return ar;
25
- };
26
- return ownKeys(o);
27
- };
28
- return function (mod) {
29
- if (mod && mod.__esModule) return mod;
30
- var result = {};
31
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
- __setModuleDefault(result, mod);
33
- return result;
34
- };
35
- })();
36
- Object.defineProperty(exports, "__esModule", { value: true });
37
- const readline = __importStar(require("readline"));
38
- const logger_core_1 = require("@mihari/logger-core");
39
- const logger_types_1 = require("@mihari/logger-types");
40
- const USAGE = `
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
18
+ // If the importer is in node compatibility mode or this is not an ESM
19
+ // file that has been converted to a CommonJS file using a Babel-
20
+ // compatible transform (i.e. "__esModule" has not been set), then set
21
+ // "default" to the CommonJS "module.exports" for node compatibility.
22
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
23
+ mod
24
+ ));
25
+
26
+ // src/index.ts
27
+ var readline = __toESM(require("readline"));
28
+ var import_logger_core = require("@mihari/logger-core");
29
+ var import_logger_types = require("@mihari/logger-types");
30
+ var USAGE = `
41
31
  mihari - CLI tool for mihari log collection
42
32
 
43
33
  Usage:
@@ -58,140 +48,140 @@ Examples:
58
48
  tail -f /var/log/app.log | mihari tail --level warn
59
49
  `.trim();
60
50
  function getConfig() {
61
- const token = process.env.MIHARI_TOKEN;
62
- const endpoint = process.env.MIHARI_ENDPOINT;
63
- if (!token) {
64
- console.error("Error: MIHARI_TOKEN environment variable is required");
65
- process.exit(1);
66
- }
67
- if (!endpoint) {
68
- console.error("Error: MIHARI_ENDPOINT environment variable is required");
69
- process.exit(1);
70
- }
71
- return { token, endpoint };
51
+ const token = process.env.MIHARI_TOKEN;
52
+ const endpoint = process.env.MIHARI_ENDPOINT;
53
+ if (!token) {
54
+ console.error("Error: MIHARI_TOKEN environment variable is required");
55
+ process.exit(1);
56
+ }
57
+ if (!endpoint) {
58
+ console.error("Error: MIHARI_ENDPOINT environment variable is required");
59
+ process.exit(1);
60
+ }
61
+ return { token, endpoint };
72
62
  }
73
63
  function parseLevel(levelStr) {
74
- const normalized = levelStr.toLowerCase();
75
- const levelMap = {
76
- debug: logger_types_1.LogLevel.Debug,
77
- info: logger_types_1.LogLevel.Info,
78
- warn: logger_types_1.LogLevel.Warn,
79
- error: logger_types_1.LogLevel.Error,
80
- fatal: logger_types_1.LogLevel.Fatal,
81
- };
82
- const level = levelMap[normalized];
83
- if (!level) {
84
- console.error(`Error: Invalid log level "${levelStr}". Valid levels: debug, info, warn, error, fatal`);
85
- process.exit(1);
86
- }
87
- return level;
64
+ const normalized = levelStr.toLowerCase();
65
+ const levelMap = {
66
+ debug: import_logger_types.LogLevel.Debug,
67
+ info: import_logger_types.LogLevel.Info,
68
+ warn: import_logger_types.LogLevel.Warn,
69
+ error: import_logger_types.LogLevel.Error,
70
+ fatal: import_logger_types.LogLevel.Fatal
71
+ };
72
+ const level = levelMap[normalized];
73
+ if (!level) {
74
+ console.error(
75
+ `Error: Invalid log level "${levelStr}". Valid levels: debug, info, warn, error, fatal`
76
+ );
77
+ process.exit(1);
78
+ }
79
+ return level;
88
80
  }
89
81
  async function sendCommand(args) {
90
- const config = getConfig();
91
- const client = new logger_core_1.MihariClient(config);
92
- let message = "";
93
- let level = logger_types_1.LogLevel.Info;
94
- const mutableArgs = [...args];
95
- while (mutableArgs.length > 0) {
96
- const arg = mutableArgs.shift();
97
- if (arg === "--level" && mutableArgs.length > 0) {
98
- level = parseLevel(mutableArgs.shift());
99
- }
100
- else if (!message) {
101
- message = arg;
102
- }
82
+ const config = getConfig();
83
+ const client = new import_logger_core.MihariClient(config);
84
+ let message = "";
85
+ let level = import_logger_types.LogLevel.Info;
86
+ const mutableArgs = [...args];
87
+ while (mutableArgs.length > 0) {
88
+ const arg = mutableArgs.shift();
89
+ if (arg === "--level" && mutableArgs.length > 0) {
90
+ level = parseLevel(mutableArgs.shift());
91
+ } else if (!message) {
92
+ message = arg;
103
93
  }
104
- if (!message) {
105
- console.error("Error: Message is required for send command");
106
- process.exit(1);
107
- }
108
- switch (level) {
109
- case logger_types_1.LogLevel.Debug:
110
- client.debug(message);
111
- break;
112
- case logger_types_1.LogLevel.Info:
113
- client.info(message);
114
- break;
115
- case logger_types_1.LogLevel.Warn:
116
- client.warn(message);
117
- break;
118
- case logger_types_1.LogLevel.Error:
119
- client.error(message);
120
- break;
121
- case logger_types_1.LogLevel.Fatal:
122
- client.fatal(message);
123
- break;
124
- }
125
- await client.flush();
126
- console.log(`Sent: [${level}] ${message}`);
94
+ }
95
+ if (!message) {
96
+ console.error("Error: Message is required for send command");
97
+ process.exit(1);
98
+ }
99
+ switch (level) {
100
+ case import_logger_types.LogLevel.Debug:
101
+ client.debug(message);
102
+ break;
103
+ case import_logger_types.LogLevel.Info:
104
+ client.info(message);
105
+ break;
106
+ case import_logger_types.LogLevel.Warn:
107
+ client.warn(message);
108
+ break;
109
+ case import_logger_types.LogLevel.Error:
110
+ client.error(message);
111
+ break;
112
+ case import_logger_types.LogLevel.Fatal:
113
+ client.fatal(message);
114
+ break;
115
+ }
116
+ await client.flush();
117
+ console.log(`Sent: [${level}] ${message}`);
127
118
  }
128
119
  async function tailCommand(args) {
129
- const config = getConfig();
130
- const client = new logger_core_1.MihariClient(config);
131
- let level = logger_types_1.LogLevel.Info;
132
- const mutableArgs = [...args];
133
- while (mutableArgs.length > 0) {
134
- const arg = mutableArgs.shift();
135
- if (arg === "--level" && mutableArgs.length > 0) {
136
- level = parseLevel(mutableArgs.shift());
137
- }
120
+ const config = getConfig();
121
+ const client = new import_logger_core.MihariClient(config);
122
+ let level = import_logger_types.LogLevel.Info;
123
+ const mutableArgs = [...args];
124
+ while (mutableArgs.length > 0) {
125
+ const arg = mutableArgs.shift();
126
+ if (arg === "--level" && mutableArgs.length > 0) {
127
+ level = parseLevel(mutableArgs.shift());
138
128
  }
139
- const rl = readline.createInterface({
140
- input: process.stdin,
141
- terminal: false,
142
- });
143
- let lineCount = 0;
144
- rl.on("line", (line) => {
145
- const trimmed = line.trim();
146
- if (!trimmed)
147
- return;
148
- switch (level) {
149
- case logger_types_1.LogLevel.Debug:
150
- client.debug(trimmed);
151
- break;
152
- case logger_types_1.LogLevel.Info:
153
- client.info(trimmed);
154
- break;
155
- case logger_types_1.LogLevel.Warn:
156
- client.warn(trimmed);
157
- break;
158
- case logger_types_1.LogLevel.Error:
159
- client.error(trimmed);
160
- break;
161
- case logger_types_1.LogLevel.Fatal:
162
- client.fatal(trimmed);
163
- break;
164
- }
165
- lineCount++;
166
- });
167
- rl.on("close", async () => {
168
- await client.shutdown();
169
- console.log(`Sent ${lineCount} log entries`);
170
- });
129
+ }
130
+ const rl = readline.createInterface({
131
+ input: process.stdin,
132
+ terminal: false
133
+ });
134
+ let lineCount = 0;
135
+ rl.on("line", (line) => {
136
+ const trimmed = line.trim();
137
+ if (!trimmed) return;
138
+ switch (level) {
139
+ case import_logger_types.LogLevel.Debug:
140
+ client.debug(trimmed);
141
+ break;
142
+ case import_logger_types.LogLevel.Info:
143
+ client.info(trimmed);
144
+ break;
145
+ case import_logger_types.LogLevel.Warn:
146
+ client.warn(trimmed);
147
+ break;
148
+ case import_logger_types.LogLevel.Error:
149
+ client.error(trimmed);
150
+ break;
151
+ case import_logger_types.LogLevel.Fatal:
152
+ client.fatal(trimmed);
153
+ break;
154
+ }
155
+ lineCount++;
156
+ });
157
+ rl.on("close", async () => {
158
+ await client.shutdown();
159
+ console.log(`Sent ${lineCount} log entries`);
160
+ });
171
161
  }
172
162
  async function main() {
173
- const args = process.argv.slice(2);
174
- if (args.length === 0 || args.includes("--help") || args.includes("-h")) {
175
- console.log(USAGE);
176
- process.exit(0);
177
- }
178
- const command = args[0];
179
- const commandArgs = args.slice(1);
180
- switch (command) {
181
- case "send":
182
- await sendCommand(commandArgs);
183
- break;
184
- case "tail":
185
- await tailCommand(commandArgs);
186
- break;
187
- default:
188
- console.error(`Unknown command: ${command}`);
189
- console.log(USAGE);
190
- process.exit(1);
191
- }
163
+ const args = process.argv.slice(2);
164
+ if (args.length === 0 || args.includes("--help") || args.includes("-h")) {
165
+ console.log(USAGE);
166
+ process.exit(0);
167
+ }
168
+ const command = args[0];
169
+ const commandArgs = args.slice(1);
170
+ switch (command) {
171
+ case "send":
172
+ await sendCommand(commandArgs);
173
+ break;
174
+ case "tail":
175
+ await tailCommand(commandArgs);
176
+ break;
177
+ default:
178
+ console.error(`Unknown command: ${command}`);
179
+ console.log(USAGE);
180
+ process.exit(1);
181
+ }
192
182
  }
193
183
  main().catch((err) => {
194
- console.error("Fatal error:", err);
195
- process.exit(1);
184
+ console.error("Fatal error:", err);
185
+ process.exit(1);
196
186
  });
197
187
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as readline from \"readline\";\nimport { MihariClient } from \"@mihari/logger-core\";\nimport { LogLevel, MihariConfig } from \"@mihari/logger-types\";\n\nconst USAGE = `\nmihari - CLI tool for mihari log collection\n\nUsage:\n mihari send <message> [--level <level>] Send a single log message\n mihari tail Read stdin line by line and send each as a log\n\nEnvironment variables:\n MIHARI_TOKEN Authentication token (required)\n MIHARI_ENDPOINT API endpoint URL (required)\n\nOptions:\n --level <level> Log level: debug, info, warn, error, fatal (default: info)\n --help Show this help message\n\nExamples:\n mihari send \"Deployment completed\" --level info\n echo \"Error occurred\" | mihari tail\n tail -f /var/log/app.log | mihari tail --level warn\n`.trim();\n\nfunction getConfig(): MihariConfig {\n const token = process.env.MIHARI_TOKEN;\n const endpoint = process.env.MIHARI_ENDPOINT;\n\n if (!token) {\n console.error(\"Error: MIHARI_TOKEN environment variable is required\");\n process.exit(1);\n }\n\n if (!endpoint) {\n console.error(\"Error: MIHARI_ENDPOINT environment variable is required\");\n process.exit(1);\n }\n\n return { token, endpoint };\n}\n\nfunction parseLevel(levelStr: string): LogLevel {\n const normalized = levelStr.toLowerCase();\n const levelMap: Record<string, LogLevel> = {\n debug: LogLevel.Debug,\n info: LogLevel.Info,\n warn: LogLevel.Warn,\n error: LogLevel.Error,\n fatal: LogLevel.Fatal,\n };\n\n const level = levelMap[normalized];\n if (!level) {\n console.error(\n `Error: Invalid log level \"${levelStr}\". Valid levels: debug, info, warn, error, fatal`\n );\n process.exit(1);\n }\n\n return level;\n}\n\nasync function sendCommand(args: readonly string[]): Promise<void> {\n const config = getConfig();\n const client = new MihariClient(config);\n\n let message = \"\";\n let level = LogLevel.Info;\n\n const mutableArgs = [...args];\n while (mutableArgs.length > 0) {\n const arg = mutableArgs.shift()!;\n if (arg === \"--level\" && mutableArgs.length > 0) {\n level = parseLevel(mutableArgs.shift()!);\n } else if (!message) {\n message = arg;\n }\n }\n\n if (!message) {\n console.error(\"Error: Message is required for send command\");\n process.exit(1);\n }\n\n switch (level) {\n case LogLevel.Debug:\n client.debug(message);\n break;\n case LogLevel.Info:\n client.info(message);\n break;\n case LogLevel.Warn:\n client.warn(message);\n break;\n case LogLevel.Error:\n client.error(message);\n break;\n case LogLevel.Fatal:\n client.fatal(message);\n break;\n }\n\n await client.flush();\n console.log(`Sent: [${level}] ${message}`);\n}\n\nasync function tailCommand(args: readonly string[]): Promise<void> {\n const config = getConfig();\n const client = new MihariClient(config);\n\n let level = LogLevel.Info;\n\n const mutableArgs = [...args];\n while (mutableArgs.length > 0) {\n const arg = mutableArgs.shift()!;\n if (arg === \"--level\" && mutableArgs.length > 0) {\n level = parseLevel(mutableArgs.shift()!);\n }\n }\n\n const rl = readline.createInterface({\n input: process.stdin,\n terminal: false,\n });\n\n let lineCount = 0;\n\n rl.on(\"line\", (line: string) => {\n const trimmed = line.trim();\n if (!trimmed) return;\n\n switch (level) {\n case LogLevel.Debug:\n client.debug(trimmed);\n break;\n case LogLevel.Info:\n client.info(trimmed);\n break;\n case LogLevel.Warn:\n client.warn(trimmed);\n break;\n case LogLevel.Error:\n client.error(trimmed);\n break;\n case LogLevel.Fatal:\n client.fatal(trimmed);\n break;\n }\n\n lineCount++;\n });\n\n rl.on(\"close\", async () => {\n await client.shutdown();\n console.log(`Sent ${lineCount} log entries`);\n });\n}\n\nasync function main(): Promise<void> {\n const args = process.argv.slice(2);\n\n if (args.length === 0 || args.includes(\"--help\") || args.includes(\"-h\")) {\n console.log(USAGE);\n process.exit(0);\n }\n\n const command = args[0];\n const commandArgs = args.slice(1);\n\n switch (command) {\n case \"send\":\n await sendCommand(commandArgs);\n break;\n case \"tail\":\n await tailCommand(commandArgs);\n break;\n default:\n console.error(`Unknown command: ${command}`);\n console.log(USAGE);\n process.exit(1);\n }\n}\n\nmain().catch((err) => {\n console.error(\"Fatal error:\", err);\n process.exit(1);\n});\n"],"mappings":"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","names":[]}
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
 
3
+ // src/index.ts
3
4
  import * as readline from "readline";
4
5
  import { MihariClient } from "@mihari/logger-core";
5
- import { LogLevel, MihariConfig } from "@mihari/logger-types";
6
-
7
- const USAGE = `
6
+ import { LogLevel } from "@mihari/logger-types";
7
+ var USAGE = `
8
8
  mihari - CLI tool for mihari log collection
9
9
 
10
10
  Usage:
@@ -24,34 +24,28 @@ Examples:
24
24
  echo "Error occurred" | mihari tail
25
25
  tail -f /var/log/app.log | mihari tail --level warn
26
26
  `.trim();
27
-
28
- function getConfig(): MihariConfig {
27
+ function getConfig() {
29
28
  const token = process.env.MIHARI_TOKEN;
30
29
  const endpoint = process.env.MIHARI_ENDPOINT;
31
-
32
30
  if (!token) {
33
31
  console.error("Error: MIHARI_TOKEN environment variable is required");
34
32
  process.exit(1);
35
33
  }
36
-
37
34
  if (!endpoint) {
38
35
  console.error("Error: MIHARI_ENDPOINT environment variable is required");
39
36
  process.exit(1);
40
37
  }
41
-
42
38
  return { token, endpoint };
43
39
  }
44
-
45
- function parseLevel(levelStr: string): LogLevel {
40
+ function parseLevel(levelStr) {
46
41
  const normalized = levelStr.toLowerCase();
47
- const levelMap: Record<string, LogLevel> = {
42
+ const levelMap = {
48
43
  debug: LogLevel.Debug,
49
44
  info: LogLevel.Info,
50
45
  warn: LogLevel.Warn,
51
46
  error: LogLevel.Error,
52
- fatal: LogLevel.Fatal,
47
+ fatal: LogLevel.Fatal
53
48
  };
54
-
55
49
  const level = levelMap[normalized];
56
50
  if (!level) {
57
51
  console.error(
@@ -59,32 +53,26 @@ function parseLevel(levelStr: string): LogLevel {
59
53
  );
60
54
  process.exit(1);
61
55
  }
62
-
63
56
  return level;
64
57
  }
65
-
66
- async function sendCommand(args: readonly string[]): Promise<void> {
58
+ async function sendCommand(args) {
67
59
  const config = getConfig();
68
60
  const client = new MihariClient(config);
69
-
70
61
  let message = "";
71
62
  let level = LogLevel.Info;
72
-
73
63
  const mutableArgs = [...args];
74
64
  while (mutableArgs.length > 0) {
75
- const arg = mutableArgs.shift()!;
65
+ const arg = mutableArgs.shift();
76
66
  if (arg === "--level" && mutableArgs.length > 0) {
77
- level = parseLevel(mutableArgs.shift()!);
67
+ level = parseLevel(mutableArgs.shift());
78
68
  } else if (!message) {
79
69
  message = arg;
80
70
  }
81
71
  }
82
-
83
72
  if (!message) {
84
73
  console.error("Error: Message is required for send command");
85
74
  process.exit(1);
86
75
  }
87
-
88
76
  switch (level) {
89
77
  case LogLevel.Debug:
90
78
  client.debug(message);
@@ -102,36 +90,28 @@ async function sendCommand(args: readonly string[]): Promise<void> {
102
90
  client.fatal(message);
103
91
  break;
104
92
  }
105
-
106
93
  await client.flush();
107
94
  console.log(`Sent: [${level}] ${message}`);
108
95
  }
109
-
110
- async function tailCommand(args: readonly string[]): Promise<void> {
96
+ async function tailCommand(args) {
111
97
  const config = getConfig();
112
98
  const client = new MihariClient(config);
113
-
114
99
  let level = LogLevel.Info;
115
-
116
100
  const mutableArgs = [...args];
117
101
  while (mutableArgs.length > 0) {
118
- const arg = mutableArgs.shift()!;
102
+ const arg = mutableArgs.shift();
119
103
  if (arg === "--level" && mutableArgs.length > 0) {
120
- level = parseLevel(mutableArgs.shift()!);
104
+ level = parseLevel(mutableArgs.shift());
121
105
  }
122
106
  }
123
-
124
107
  const rl = readline.createInterface({
125
108
  input: process.stdin,
126
- terminal: false,
109
+ terminal: false
127
110
  });
128
-
129
111
  let lineCount = 0;
130
-
131
- rl.on("line", (line: string) => {
112
+ rl.on("line", (line) => {
132
113
  const trimmed = line.trim();
133
114
  if (!trimmed) return;
134
-
135
115
  switch (level) {
136
116
  case LogLevel.Debug:
137
117
  client.debug(trimmed);
@@ -149,27 +129,21 @@ async function tailCommand(args: readonly string[]): Promise<void> {
149
129
  client.fatal(trimmed);
150
130
  break;
151
131
  }
152
-
153
132
  lineCount++;
154
133
  });
155
-
156
134
  rl.on("close", async () => {
157
135
  await client.shutdown();
158
136
  console.log(`Sent ${lineCount} log entries`);
159
137
  });
160
138
  }
161
-
162
- async function main(): Promise<void> {
139
+ async function main() {
163
140
  const args = process.argv.slice(2);
164
-
165
141
  if (args.length === 0 || args.includes("--help") || args.includes("-h")) {
166
142
  console.log(USAGE);
167
143
  process.exit(0);
168
144
  }
169
-
170
145
  const command = args[0];
171
146
  const commandArgs = args.slice(1);
172
-
173
147
  switch (command) {
174
148
  case "send":
175
149
  await sendCommand(commandArgs);
@@ -183,8 +157,8 @@ async function main(): Promise<void> {
183
157
  process.exit(1);
184
158
  }
185
159
  }
186
-
187
160
  main().catch((err) => {
188
161
  console.error("Fatal error:", err);
189
162
  process.exit(1);
190
163
  });
164
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as readline from \"readline\";\nimport { MihariClient } from \"@mihari/logger-core\";\nimport { LogLevel, MihariConfig } from \"@mihari/logger-types\";\n\nconst USAGE = `\nmihari - CLI tool for mihari log collection\n\nUsage:\n mihari send <message> [--level <level>] Send a single log message\n mihari tail Read stdin line by line and send each as a log\n\nEnvironment variables:\n MIHARI_TOKEN Authentication token (required)\n MIHARI_ENDPOINT API endpoint URL (required)\n\nOptions:\n --level <level> Log level: debug, info, warn, error, fatal (default: info)\n --help Show this help message\n\nExamples:\n mihari send \"Deployment completed\" --level info\n echo \"Error occurred\" | mihari tail\n tail -f /var/log/app.log | mihari tail --level warn\n`.trim();\n\nfunction getConfig(): MihariConfig {\n const token = process.env.MIHARI_TOKEN;\n const endpoint = process.env.MIHARI_ENDPOINT;\n\n if (!token) {\n console.error(\"Error: MIHARI_TOKEN environment variable is required\");\n process.exit(1);\n }\n\n if (!endpoint) {\n console.error(\"Error: MIHARI_ENDPOINT environment variable is required\");\n process.exit(1);\n }\n\n return { token, endpoint };\n}\n\nfunction parseLevel(levelStr: string): LogLevel {\n const normalized = levelStr.toLowerCase();\n const levelMap: Record<string, LogLevel> = {\n debug: LogLevel.Debug,\n info: LogLevel.Info,\n warn: LogLevel.Warn,\n error: LogLevel.Error,\n fatal: LogLevel.Fatal,\n };\n\n const level = levelMap[normalized];\n if (!level) {\n console.error(\n `Error: Invalid log level \"${levelStr}\". Valid levels: debug, info, warn, error, fatal`\n );\n process.exit(1);\n }\n\n return level;\n}\n\nasync function sendCommand(args: readonly string[]): Promise<void> {\n const config = getConfig();\n const client = new MihariClient(config);\n\n let message = \"\";\n let level = LogLevel.Info;\n\n const mutableArgs = [...args];\n while (mutableArgs.length > 0) {\n const arg = mutableArgs.shift()!;\n if (arg === \"--level\" && mutableArgs.length > 0) {\n level = parseLevel(mutableArgs.shift()!);\n } else if (!message) {\n message = arg;\n }\n }\n\n if (!message) {\n console.error(\"Error: Message is required for send command\");\n process.exit(1);\n }\n\n switch (level) {\n case LogLevel.Debug:\n client.debug(message);\n break;\n case LogLevel.Info:\n client.info(message);\n break;\n case LogLevel.Warn:\n client.warn(message);\n break;\n case LogLevel.Error:\n client.error(message);\n break;\n case LogLevel.Fatal:\n client.fatal(message);\n break;\n }\n\n await client.flush();\n console.log(`Sent: [${level}] ${message}`);\n}\n\nasync function tailCommand(args: readonly string[]): Promise<void> {\n const config = getConfig();\n const client = new MihariClient(config);\n\n let level = LogLevel.Info;\n\n const mutableArgs = [...args];\n while (mutableArgs.length > 0) {\n const arg = mutableArgs.shift()!;\n if (arg === \"--level\" && mutableArgs.length > 0) {\n level = parseLevel(mutableArgs.shift()!);\n }\n }\n\n const rl = readline.createInterface({\n input: process.stdin,\n terminal: false,\n });\n\n let lineCount = 0;\n\n rl.on(\"line\", (line: string) => {\n const trimmed = line.trim();\n if (!trimmed) return;\n\n switch (level) {\n case LogLevel.Debug:\n client.debug(trimmed);\n break;\n case LogLevel.Info:\n client.info(trimmed);\n break;\n case LogLevel.Warn:\n client.warn(trimmed);\n break;\n case LogLevel.Error:\n client.error(trimmed);\n break;\n case LogLevel.Fatal:\n client.fatal(trimmed);\n break;\n }\n\n lineCount++;\n });\n\n rl.on(\"close\", async () => {\n await client.shutdown();\n console.log(`Sent ${lineCount} log entries`);\n });\n}\n\nasync function main(): Promise<void> {\n const args = process.argv.slice(2);\n\n if (args.length === 0 || args.includes(\"--help\") || args.includes(\"-h\")) {\n console.log(USAGE);\n process.exit(0);\n }\n\n const command = args[0];\n const commandArgs = args.slice(1);\n\n switch (command) {\n case \"send\":\n await sendCommand(commandArgs);\n break;\n case \"tail\":\n await tailCommand(commandArgs);\n break;\n default:\n console.error(`Unknown command: ${command}`);\n console.log(USAGE);\n process.exit(1);\n }\n}\n\nmain().catch((err) => {\n console.error(\"Fatal error:\", err);\n process.exit(1);\n});\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,9 +1,17 @@
1
1
  {
2
2
  "name": "@mihari/logger-tool",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "CLI tool for mihari log collection",
5
- "main": "src/index.ts",
6
- "types": "src/index.ts",
5
+ "main": "./dist/index.js",
6
+ "module": "./dist/index.mjs",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.mjs",
12
+ "require": "./dist/index.js"
13
+ }
14
+ },
7
15
  "bin": {
8
16
  "mihari": "./dist/index.js"
9
17
  },
@@ -11,16 +19,30 @@
11
19
  "dist"
12
20
  ],
13
21
  "scripts": {
14
- "build": "tsc",
22
+ "build": "tsup",
15
23
  "clean": "rm -rf dist",
16
24
  "test": "cd ../.. && npx vitest run --config vitest.config.ts packages/tool"
17
25
  },
18
- "devDependencies": {
19
- "vitest": "^3.0.0"
26
+ "tsup": {
27
+ "entry": [
28
+ "src/index.ts"
29
+ ],
30
+ "format": [
31
+ "cjs",
32
+ "esm"
33
+ ],
34
+ "dts": true,
35
+ "splitting": false,
36
+ "sourcemap": true,
37
+ "clean": true,
38
+ "external": [
39
+ "@mihari/logger-core",
40
+ "@mihari/logger-types"
41
+ ]
20
42
  },
21
43
  "dependencies": {
22
- "@mihari/logger-core": "^0.1.0",
23
- "@mihari/logger-types": "^0.1.0"
44
+ "@mihari/logger-core": "^0.2.0",
45
+ "@mihari/logger-types": "^0.2.0"
24
46
  },
25
47
  "publishConfig": {
26
48
  "access": "public"
@@ -31,5 +53,5 @@
31
53
  "url": "https://github.com/mihari/mihari-js",
32
54
  "directory": "packages/tool"
33
55
  },
34
- "gitHead": "dc10a3217caa819965eb3a1e2ff3901a16e510aa"
56
+ "gitHead": "a0a2dd591dafbf0923bb81bd5d8180fa6d6eecea"
35
57
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}