Add support for a new curve data format in the Curves package converter system
日本語の概要は準備中です。原文の説明を表示しています。
Guide for logging errors, warnings, and info messages in Datagrok packages
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Help the user choose and implement the correct logging/notification approach in Datagrok packages.
/datagrok-logging
Toast notifications shown to the user. Primary methods for communicating from package code.
import * as grok from 'datagrok-api/grok';
// Green balloon — success or informational
grok.shell.info('Operation completed');
// Red balloon — error
grok.shell.error('Something went wrong');
// Yellow balloon — warning
grok.shell.warning('Check your settings');
All three accept string | HTMLElement and an optional BalloonOptions:
interface BalloonOptions {
oneTimeKey?: string; // Show only once per key (prevents repeated identical messages)
copyText?: string; // Text copied to clipboard on click
autoHide?: boolean; // Auto-hide after timeout (default: true)
timeout?: number; // Timeout in seconds (default: 5)
}
grok.shell.error('Failed to connect', { timeout: 10 });
grok.shell.info('Copied!', { oneTimeKey: 'copy-hint', autoHide: true });
For audit trails, usage tracking, and debug logging recorded on the Datagrok server. These do NOT show UI notifications.
import * as DG from 'datagrok-api/dg';
// Create a logger (optionally with default params attached to every entry)
const logger = DG.Logger.create({ params: { source: 'MyPackage' } });
// Log levels
logger.debug('Detailed diagnostic info', { step: 'init' });
logger.info('Normal operation', { action: 'loaded' });
logger.warning('Potential issue', { config: 'missing' });
logger.error('Something failed', { context: 'upload' }, stackTrace);
logger.audit('User did something', { item: 'report' });
logger.usage('Feature used', { feature: 'export' });
Automatically tags log entries with the package name:
const logger = new DG.PackageLogger(_package);
logger.error('Connection failed'); // tagged with package name
DG.LOG_LEVEL.DEBUG // 'debug'
DG.LOG_LEVEL.INFO // 'info'
DG.LOG_LEVEL.WARNING // 'warning'
DG.LOG_LEVEL.ERROR // 'error'
DG.LOG_LEVEL.AUDIT // 'audit'
DG.LOG_LEVEL.USAGE // 'usage'
For long-running operations with status updates shown in the task bar:
const pi = DG.TaskBarProgressIndicator.create('Processing...', { cancelable: true });
pi.update(50, 'Half done');
pi.log('Step 1 finished'); // Append to progress log
pi.close();
Subscribe to all log events in real time:
grok.events.onLog.subscribe((msg) => {
console.log(`[${msg.level}] ${msg.message}`, msg.params);
});
| Scenario | Method |
|---|---|
| Tell the user something succeeded | grok.shell.info() |
| Show a user-facing error | grok.shell.error() |
| Show a user-facing warning | grok.shell.warning() |
| Log for debugging (server-side) | logger.debug() / logger.info() |
| Record errors for diagnostics | logger.error(message, params, stackTrace) |
| Track feature usage | logger.usage() |
| Audit user actions | logger.audit() |
| Show progress for long ops | DG.TaskBarProgressIndicator |
| Internal dev logging (not recorded) | console.log() / console.warn() |
console.log for production logging — use DG.Logger for server-side or grok.shell.* for user-facing.console.warn / console.error are acceptable for development diagnostics but won't be recorded on the server.grok.shell.warning() over grok.shell.error() for non-critical issues (e.g., missing optional config).grok.shell.error() for failures that block the user's workflow.oneTimeKey when a notification could fire repeatedly (e.g., in a loop or event handler).まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Add support for a new curve data format in the Curves package converter system
日本語の概要は準備中です。原文の説明を表示しています。
Create info panels that appear in the context panel based on semantic types
日本語の概要は準備中です。原文の説明を表示しています。
Add a new single-objective optimization algorithm to the sci-comp library. Use when the user asks to implement a new optimizer (e.g. gradient descent, BFGS, simulated annealing, differential evolution).
日本語の概要は準備中です。原文の説明を表示しています。
Add unit tests to a Datagrok package
日本語の概要は準備中です。原文の説明を表示しています。
Answer a "how do I …" question about the platform with a Gherkin scenario on @datagrok-libraries/bdd that is filmed into a how-to video (grok-bdd guide), so the answer is demonstrated, sent as a video plus numbered steps, and kept as a regression test
日本語の概要は準備中です。原文の説明を表示しています。
Translate hand-written Playwright specs (or any existing UI tests) into Gherkin features on @datagrok-libraries/bdd, then prove the features test what they claim by backward-matching them against the originals with independent reviewers, and fix the gaps in the core, the library and the features
日本語の概要は準備中です。原文の説明を表示しています。