Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: add logging and monitoring configurations #171

Merged
merged 2 commits into from
Oct 17, 2024

Conversation

zyy17
Copy link
Collaborator

@zyy17 zyy17 commented Oct 16, 2024

Summary by CodeRabbit

  • New Features

    • Updated logging and monitoring configurations for the GreptimeDB cluster.
    • Introduced customizable logging options for various components.
    • Added a new monitoring section for enhanced observability.
  • Bug Fixes

    • Adjusted the number of datanode replicas from 3 to 1 for improved resource management.
  • Documentation

    • Updated README to reflect new version and configuration changes, including logging and monitoring sections.
    • Updated initializer image tag from v0.1.0 to v0.1.1.

Copy link
Contributor

coderabbitai bot commented Oct 16, 2024

Walkthrough

The pull request updates the greptimedb-cluster Helm chart by incrementing the version in Chart.yaml from 0.2.16 to 0.2.17. The README.md file is revised to include the new version and introduces new configuration sections for logging and monitoring, along with several new fields across the configuration files. The values.yaml file reflects changes to the initializer image tag and the datanode replicas, consolidating the new logging and monitoring configurations.

Changes

File Path Change Summary
charts/greptimedb-cluster/Chart.yaml Version updated from 0.2.16 to 0.2.17.
charts/greptimedb-cluster/README.md Updated version to 0.2.17, initializer.tag from v0.1.0 to v0.1.1, added logging and monitoring sections with new fields, and changed datanode.replicas from 3 to 1.
charts/greptimedb-cluster/templates/cluster.yaml Introduced new logging and monitoring configuration options for GreptimeDBCluster.
charts/greptimedb-cluster/values.yaml Updated initializer.tag from v0.1.0 to v0.1.1, changed datanode.replicas from 3 to 1, and added new logging and monitoring sections.

Possibly related PRs

🐰 In the meadow, changes bloom,
A version rise dispels the gloom.
Logging bright, monitoring clear,
New configurations bring us cheer!
With every hop, we celebrate,
Greptimedb's future looks so great! 🌼


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@zyy17 zyy17 requested a review from daviderli614 October 16, 2024 14:50
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Outside diff range and nitpick comments (8)
charts/greptimedb-cluster/values.yaml (4)

150-167: New logging configuration added for frontend

A new logging configuration section has been added for the frontend component. This enhances the observability of the system and allows for component-specific logging settings.

Consider the following suggestions to improve this section:

  1. Add a brief comment explaining when users might want to override the global logging configuration for the frontend specifically.
  2. Consider adding an example of how to enable component-specific logging, such as:
frontend:
  logging:
    level: "debug"  # Override global logging level for frontend
  1. Ensure that the persistentWithData option is relevant for the frontend component, as the comment suggests it only works for the datanode component.

250-267: Logging configurations added for meta, datanode, and flownode

Logging configurations have been added for the meta, datanode, and flownode components, similar to the frontend configuration. This provides consistent logging capabilities across all components.

To reduce duplication and improve maintainability, consider the following suggestions:

  1. Create a common logging configuration template that can be referenced by all components. This could be implemented using Helm's named template feature. For example:
{{- define "greptimedb.loggingConfig" }}
logging:
  {{- if .Values.logging }}
  {{- toYaml .Values.logging | nindent 2 }}
  {{- else }}
  # Component-specific logging configuration
  # If not set, it will use the global logging configuration.
  {}
  {{- end }}
{{- end }}

Then, in each component section:

frontend:
  {{- include "greptimedb.loggingConfig" . | nindent 2 }}

meta:
  {{- include "greptimedb.loggingConfig" . | nindent 2 }}

# ... and so on for other components
  1. Update the comment for persistentWithData to clarify which components it applies to, or remove it from components where it's not applicable.

  2. Consider adding a validation in the Helm chart to ensure that component-specific logging configurations don't conflict with or override critical global settings unintentionally.

Also applies to: 356-373, 388-405


564-595: New monitoring configuration added

A new monitoring section has been added, including configurations for enabling monitoring, standalone instance settings, logs collection, and vector settings. This enhances the observability and management capabilities of the system.

Consider the following suggestions to improve this section:

  1. Add comments explaining the purpose and usage of the standalone configuration. If it's intended to be empty by default, mention this in a comment.

  2. For the logsCollection.pipeline.data field, provide an example or explanation of the expected data format.

  3. Consider adding resource limits for the vector container to ensure it doesn't consume excessive resources:

vector:
  resource:
    limits:
      cpu: "100m"
      memory: "128Mi"
  1. Add a comment explaining the purpose of using the nightly-alpine tag for the vector image. If this is intended for testing, consider using a stable version for production deployments.

  2. Consider making the vector image tag configurable:

tag: {{ .Values.monitoring.vector.imageTag | default "nightly-alpine" }}

This allows users to easily override the tag if needed.


596-611: Global logging configuration added

A new global logging configuration section has been added, providing centralized control of logging behavior across all components. This includes settings for log level, format, directory, stdout logging, and persistence with data storage.

Consider the following suggestions to improve this section:

  1. Add a comment explaining how component-specific logging configurations interact with or override these global settings.

  2. For the level field, consider using an enum or a list of allowed values to prevent invalid inputs:

level: {{ .Values.logging.level | default "info" }}
{{- if not (has .Values.logging.level (list "debug" "info" "warn" "error")) }}
{{- fail "Invalid log level. Must be one of: debug, info, warn, error" }}
{{- end }}
  1. For the persistentWithData option, consider moving this to the datanode-specific configuration since it only applies to that component. Alternatively, add a clear comment explaining its limited applicability.

  2. Consider adding an option for log rotation or max log file size to prevent logs from consuming too much disk space over time.

  3. Add a comment or documentation link explaining how to configure more advanced logging features, such as structured logging or integration with log aggregation systems.

charts/greptimedb-cluster/README.md (4)

185-190: New logging configuration looks good, but consider adding an example.

The new global logging configuration is well-structured and covers important aspects of logging. However, to improve user understanding, consider adding a brief example of how these settings might be used in a typical deployment scenario.


117-117: Consider documenting the impact of reducing datanode replicas.

The default number of datanode replicas has been reduced from 3 to 1. While this might be suitable for some deployments, it could impact the system's fault tolerance and high availability. Consider adding a note explaining the implications of this change and when users might want to increase the number of replicas for production environments.


217-226: Monitoring configuration is well-structured, but consider adding more details.

The new monitoring configuration is a valuable addition, providing options for enabling monitoring, configuring logs collection, and setting up vector for logs and metrics collection. To further improve this section, consider adding:

  1. A brief explanation of what "vector" is and its role in the monitoring setup.
  2. Links to relevant documentation for users who want to learn more about the monitoring capabilities.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":false,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~222-~222: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...g data | | monitoring.vector | object | {"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"} | Configure vector for logs and metr...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~226-~226: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...ce | | monitoring.vector.tag | string | "nightly-alpine" | vector image tag | | mysqlServicePo...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


Line range hint 1-226: Overall, the README updates are comprehensive and well-documented.

The changes to the README file accurately reflect the new features and configuration options added to the Helm chart. The documentation is clear and consistent throughout. To further improve the user experience, consider adding a "What's New" or "Changelog" section at the top of the README to highlight the key changes in this version (0.2.17), such as the new logging and monitoring configurations.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 5fb18ec and 23cd3c1.

📒 Files selected for processing (4)
  • charts/greptimedb-cluster/Chart.yaml (1 hunks)
  • charts/greptimedb-cluster/README.md (7 hunks)
  • charts/greptimedb-cluster/templates/cluster.yaml (5 hunks)
  • charts/greptimedb-cluster/values.yaml (6 hunks)
✅ Files skipped from review due to trivial changes (1)
  • charts/greptimedb-cluster/Chart.yaml
🧰 Additional context used
🪛 LanguageTool
charts/greptimedb-cluster/README.md

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":false,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~222-~222: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...g data | | monitoring.vector | object | {"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"} | Configure vector for logs and metr...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~226-~226: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...ce | | monitoring.vector.tag | string | "nightly-alpine" | vector image tag | | mysqlServicePo...

(HYPHENATED_LY_ADVERB_ADJECTIVE)

🔇 Additional comments (11)
charts/greptimedb-cluster/values.yaml (2)

Line range hint 1-611: Overall changes enhance observability but may impact reliability

The changes in this PR introduce several improvements to the GreptimeDB Helm chart:

  1. Enhanced logging capabilities with both global and component-specific configurations.
  2. New monitoring features, including integration with vector for log and metric collection.
  3. Updated initializer image to version v0.1.1.

However, there's a significant change that requires attention:

  1. Reduction of datanode replicas from 3 to 1, which could impact system reliability and availability.

Consider the following recommendations:

  1. Update the README or add documentation to explain the new logging and monitoring configuration options.
  2. Add a warning or comment in the values file about the reduced datanode replicas and its potential impact on production deployments.
  3. Consider making critical settings like datanode replicas easily configurable with safe defaults for production use.
  4. Implement validation in the Helm chart for critical settings to prevent misconfiguration.
  5. Consider creating different value files for development and production environments to ensure safe defaults.

To ensure all changes are properly documented, run the following command:

#!/bin/bash
# Check if README.md has been updated
if git diff --name-only HEAD~1 | grep -q 'README.md'; then
  echo "README.md has been updated."
else
  echo "WARNING: README.md has not been updated. Please ensure all new configurations are documented."
fi

# Check for any TODO comments that might indicate incomplete work
grep -R "TODO" charts/greptimedb-cluster/

17-17: Initializer image tag updated to v0.1.1

The initializer image tag has been updated from v0.1.0 to v0.1.1. This minor version update likely includes bug fixes or small improvements.

Please ensure that this update is compatible with the rest of the system. Consider running the following command to check for any breaking changes or important notes in the release:

charts/greptimedb-cluster/README.md (3)

5-5: Version update looks good.

The version has been correctly incremented from 0.2.16 to 0.2.17, which is appropriate for the addition of new configuration options.


184-184: Initializer tag update is correct.

The initializer tag has been updated from v0.1.0 to v0.1.1, which is appropriate for minor changes or bug fixes in the initializer component.


98-98: Component-specific logging configurations are well-implemented.

The addition of logging configurations for datanode, flownode, frontend, and meta components provides good flexibility for fine-tuning logging behavior. The consistency across all components and the clear description of how these override global settings is commendable.

Also applies to: 131-131, 154-154, 196-196

charts/greptimedb-cluster/templates/cluster.yaml (6)

132-149: LGTM: Enhanced logging configurability for frontend component

The new logging configuration for the frontend component is well-implemented. It provides fine-grained control over logging options, including level, format, log directory, stdout logging, and persistence. The use of conditional statements ensures that only provided values are included in the final configuration, following Helm chart best practices.


170-187: LGTM: Consistent logging configuration for meta component

The logging configuration for the meta component is well-implemented and consistent with the frontend logging configuration. This consistency across components enhances maintainability and ease of use of the Helm chart.


286-303: LGTM: Consistent logging configuration maintained for datanode component

The logging configuration for the datanode component is well-implemented and maintains consistency with the frontend and meta logging configurations. This ongoing consistency across components further reinforces maintainability and ease of use of the Helm chart.


366-383: LGTM: Consistent logging configuration for optional flownode component

The logging configuration for the flownode component is well-implemented and maintains consistency with all other component logging configurations. The conditional inclusion of the entire flownode section based on the .Values.flownode.enabled flag provides flexibility in deployment configurations.


437-475: LGTM: Enhanced monitoring capabilities and global logging configuration

The new monitoring configuration significantly enhances the observability capabilities of the GreptimeDBCluster. It provides options for enabling monitoring, configuring standalone monitoring, setting up logs collection pipelines, and configuring the vector image.

The addition of a global logging configuration allows for setting default logging options across all components, which can be overridden by component-specific configurations if needed. This provides both flexibility and ease of configuration.

Both the monitoring and global logging configurations are well-implemented and consistent with the rest of the chart, following Helm best practices.


Line range hint 132-475: Summary: Excellent enhancements to logging and monitoring capabilities

The changes in this PR significantly improve the logging and monitoring capabilities of the GreptimeDBCluster Helm chart. Key improvements include:

  1. Consistent logging configurations for all components (frontend, meta, datanode, and flownode).
  2. A new monitoring section with flexible configuration options.
  3. A global logging configuration for setting default options across all components.

These enhancements provide users with fine-grained control over logging and monitoring, improving the overall observability and manageability of the GreptimeDBCluster. The implementation is consistent, well-structured, and follows Helm chart best practices.

Great job on these improvements!

charts/greptimedb-cluster/values.yaml Show resolved Hide resolved
@zyy17 zyy17 force-pushed the refactor/add-more-cluster-fields branch from 23cd3c1 to 3b93012 Compare October 17, 2024 03:43
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Outside diff range and nitpick comments (12)
charts/greptimedb-cluster/values.yaml (5)

150-167: New logging configuration for frontend added

A new logging configuration section has been added for the frontend component. This allows for customized logging settings, improving observability and debugging capabilities.

Consider updating the documentation to explain these new logging options and their impact on the frontend component.


250-267: Consistent logging configurations added for meta, datanode, and flownode

New logging configurations have been added for the meta, datanode, and flownode components. These configurations are consistent across components, which is good for maintainability and allows for fine-grained control of logging for each component.

Consider implementing a DRY (Don't Repeat Yourself) approach for these logging configurations. You could define a common logging template and use Helm's templating features to reduce repetition. For example:

{{- define "common.logging" }}
logging:
  {{- if not .Values.logging }}
  # -- The log level for greptimedb, only support "debug", "info", "warn", "debug"
  level: "info"
  # -- The log format for greptimedb, only support "json" and "text"
  format: "text"
  # -- The logs directory for greptimedb
  logsDir: "/data/greptimedb/logs"
  # -- Whether to log to stdout only
  onlyLogToStdout: false
  # -- indicates whether to persist the log with the datanode data storage. It **ONLY** works for the datanode component.
  persistentWithData: false
  {{- end }}
{{- end }}

# Then use it like this:
frontend:
  {{- include "common.logging" . | nindent 2 }}

meta:
  {{- include "common.logging" . | nindent 2 }}

# ... and so on for other components

This approach would make it easier to maintain consistent logging configurations across components.

Also applies to: 356-373, 388-405


564-595: New monitoring configuration added

A new monitoring section has been added, including configurations for enabling monitoring, standalone instance settings, logs collection, and vector settings for logs and metrics collection. This is a significant improvement for observability of the GreptimeDB cluster.

Please update the documentation to explain these new monitoring options, their impact on the system, and provide guidance on how to configure them effectively. Consider adding examples of common monitoring setups to help users get started quickly.


596-611: Global logging configuration added

A new global logging configuration has been added, providing centralized management of logging settings across all components. This includes settings for log level, format, directory, stdout logging, and persistence.

Please update the documentation to clarify the relationship between this global logging configuration and the component-specific logging configurations. Specifically, explain how these settings are applied and which takes precedence if both global and component-specific configurations are present.


Line range hint 1-611: Summary of changes and main concern

The changes in this file significantly enhance the logging and monitoring capabilities of the GreptimeDB cluster, improving its configurability and observability. New logging configurations have been added for individual components (frontend, meta, datanode, and flownode) as well as a global logging configuration. A new monitoring section has been introduced, allowing for flexible setup of monitoring capabilities.

However, there is a critical concern:

The number of datanode replicas has been reduced from 3 to 1 (line 271). This change significantly impacts the system's fault tolerance and high availability. Please review this change carefully and consider maintaining a higher number of replicas for production environments.

Overall, these changes provide valuable improvements to the GreptimeDB Helm chart, but the datanode replica reduction needs to be addressed before merging.

charts/greptimedb-cluster/README.md (4)

185-190: New logging configuration is a valuable addition.

The new global logging configuration provides comprehensive control over logging behavior, which is excellent for debugging and monitoring. The options for format, level, directory, and persistence are well-documented and offer flexibility for different deployment scenarios.

Consider adding information about log rotation or log file size limits to prevent potential disk space issues, especially when persistentWithData is set to true.

Consider adding log rotation configuration, for example:

logging:
  ...
  rotationMaxFiles: 5
  rotationMaxSize: "100MB"

217-226: Monitoring configuration is a valuable addition.

The new monitoring configuration adds built-in observability capabilities to the GreptimeDB cluster, which is excellent for operational management. The options for enabling monitoring, configuring logs collection, and setting up vector for metrics collection are well-structured and provide flexibility.

To further improve the documentation:

  1. Consider adding more details about the standalone configuration option. What kind of standalone instance is this referring to, and how is it used for storing monitoring data?
  2. Provide information on how users can access or visualize the collected monitoring data.
  3. If applicable, document any default dashboards or alerting rules that come with this monitoring setup.

Consider adding a brief example of how to configure the standalone instance for storing monitoring data:

monitoring:
  enabled: true
  standalone:
    storage:
      type: "local"  # or "s3", "gcs", etc.
      path: "/path/to/monitoring/data"
  # ... other configurations
🧰 Tools
🪛 LanguageTool

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":false,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~222-~222: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...g data | | monitoring.vector | object | {"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"} | Configure vector for logs and metr...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~226-~226: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...ce | | monitoring.vector.tag | string | "nightly-alpine" | vector image tag | | mysqlServicePo...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


217-217: Current hyphenation style is acceptable.

The static analysis tool suggests removing hyphens in compound modifiers like "nightly-alpine". However, the current usage is common in technical documentation and consistent throughout the README. For the sake of consistency and readability, it's reasonable to maintain the current style.

If you decide to change the hyphenation style in the future, ensure it's applied consistently across all documentation.

Also applies to: 222-222, 226-226

🧰 Tools
🪛 LanguageTool

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":false,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


Line range hint 1-238: Consider updating the PR description with a summary of changes.

The README has been comprehensively updated with new configurations for logging and monitoring, as well as other minor changes. These updates provide valuable information about new features and options available in the GreptimeDB cluster Helm chart.

To improve the visibility of these changes:

  1. Update the PR description with a summary of the major changes introduced in this update.
  2. Consider adding a "What's New" or "Changelog" section at the beginning of the README to highlight the new features and configurations.

This will help users quickly understand the new capabilities available in this version of the chart.

charts/greptimedb-cluster/templates/cluster.yaml (3)

437-455: New monitoring configuration added

The new monitoring section adds important capabilities:

  1. Enables/disables monitoring based on a Helm value
  2. Allows for standalone monitoring configuration
  3. Configures log collection pipeline
  4. Sets up Vector for log processing

This is a valuable addition that enhances the observability of the GreptimeDB cluster.

However, consider adding comments to explain the purpose and usage of these new monitoring features, especially for the standalone and logsCollection options.


456-473: Global logging configuration added

A global logging configuration has been added, which appears to set default values for all components. This is a good practice for maintaining consistent logging across the cluster.

However, it's not clear how these global settings interact with the component-specific settings. Consider adding a comment to clarify the precedence rules (e.g., do component-specific settings override global settings?).


Line range hint 132-473: Overall, excellent additions to logging and monitoring capabilities

The new logging and monitoring configurations are well-implemented and add significant value to the GreptimeDB Helm chart. The consistent approach across components (frontend, meta, datanode, and flownode) is commendable and will make management easier.

Suggestions for improvement:

  1. Add comments explaining the purpose and usage of new monitoring features, especially standalone and logsCollection.
  2. Clarify how global logging settings interact with component-specific settings (e.g., precedence rules).
  3. Consider adding a brief comment at the beginning of the file explaining the new logging and monitoring capabilities for users who may be upgrading from a previous version.

These documentation improvements will help users understand and effectively use the new features.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 23cd3c1 and 3b93012.

📒 Files selected for processing (4)
  • charts/greptimedb-cluster/Chart.yaml (1 hunks)
  • charts/greptimedb-cluster/README.md (7 hunks)
  • charts/greptimedb-cluster/templates/cluster.yaml (5 hunks)
  • charts/greptimedb-cluster/values.yaml (6 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • charts/greptimedb-cluster/Chart.yaml
🧰 Additional context used
🪛 LanguageTool
charts/greptimedb-cluster/README.md

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":false,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~222-~222: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...g data | | monitoring.vector | object | {"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"} | Configure vector for logs and metr...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~226-~226: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...ce | | monitoring.vector.tag | string | "nightly-alpine" | vector image tag | | mysqlServicePo...

(HYPHENATED_LY_ADVERB_ADJECTIVE)

🔇 Additional comments (9)
charts/greptimedb-cluster/values.yaml (2)

271-271: ⚠️ Potential issue

Datanode replicas reduced to 1

The number of datanode replicas has been reduced from 3 to 1. This change significantly impacts the system's fault tolerance and high availability.

Please refer to the previous comment on this change for detailed recommendations on how to address this issue.


17-17: Initializer image tag updated

The initializer image tag has been updated from v0.1.0 to v0.1.1. This minor version update likely includes bug fixes or small improvements.

Please ensure that this update is compatible with the rest of the system. Consider running the following command to check for any breaking changes or important notes in the release:

charts/greptimedb-cluster/README.md (3)

5-5: Version update looks good.

The version has been correctly updated from 0.2.16 to 0.2.17, which is consistent with the changes introduced in this update.


184-184: Initializer tag update is appropriate.

The initializer tag has been updated from v0.1.0 to v0.1.1, which is consistent with semantic versioning for minor updates or bug fixes.


98-98: Component-specific logging configurations are a useful addition.

The addition of logging configurations for datanode, flownode, frontend, and meta components provides fine-grained control over logging behavior. This is particularly useful for targeted debugging and monitoring of specific components. The documentation clearly states that these configurations fall back to the global logging configuration if not set, which is a good default behavior.

Also applies to: 131-131, 154-154, 196-196

charts/greptimedb-cluster/templates/cluster.yaml (4)

132-149: Frontend logging configuration looks good

The new logging configuration for the frontend component is well-structured and consistent with best practices. It allows for flexible configuration of logging parameters through Helm values.


170-187: Meta logging configuration is consistent

The logging configuration for the meta component mirrors that of the frontend, maintaining consistency across components. This is a good practice for ease of management and understanding.


286-303: Datanode logging configuration follows the established pattern

The datanode logging configuration is implemented consistently with the frontend and meta components, which is excellent for maintaining a uniform approach across the cluster.


366-383: Flownode logging configuration is properly conditional

The flownode logging configuration is correctly wrapped in a conditional block that checks if the flownode is enabled. This prevents unnecessary configuration when the flownode is not in use.

@zyy17 zyy17 force-pushed the refactor/add-more-cluster-fields branch from 3b93012 to 9f7d1d0 Compare October 17, 2024 08:04
@zyy17 zyy17 requested a review from daviderli614 October 17, 2024 08:05
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Outside diff range and nitpick comments (9)
charts/greptimedb-cluster/values.yaml (5)

150-167: New frontend logging configuration looks good.

The addition of a specific logging configuration for the frontend component provides flexibility for users to customize logging settings. The commented-out configuration serves as a helpful example.

Consider adding a brief comment above this section explaining its purpose and how it relates to the global logging configuration. For example:

  # Frontend-specific logging configuration.
  # If not set, it will use the global logging configuration defined at the bottom of this file.
  logging: {}

This will help users understand the relationship between component-specific and global logging configurations.


250-267: Consistent logging configurations for all components look good.

The addition of logging configurations for meta, datanode, and flownode components provides consistency and flexibility across the entire system.

Consider refactoring these repeated logging configurations to reduce duplication. You could define a common logging template and reference it for each component. For example:

# Define a common logging template
_logging_template: &logging_template
  # -- The log level for greptimedb, only support "debug", "info", "warn", "debug"
  level: "info"
  # -- The log format for greptimedb, only support "json" and "text"
  format: "text"
  # -- The logs directory for greptimedb
  logsDir: "/data/greptimedb/logs"
  # -- Whether to log to stdout only
  onlyLogToStdout: false
  # -- indicates whether to persist the log with the datanode data storage. It **ONLY** works for the datanode component.
  persistentWithData: false

# Use the template for each component
frontend:
  logging:
    <<: *logging_template

meta:
  logging:
    <<: *logging_template

datanode:
  logging:
    <<: *logging_template

flownode:
  logging:
    <<: *logging_template

This approach would make the configuration more maintainable and easier to update across all components.

Also applies to: 356-373, 388-405


564-640: New monitoring configuration is a great addition.

The new monitoring section provides comprehensive capabilities for monitoring the GreptimeDB cluster, including standalone instance configuration and integration with Vector for log and metrics collection.

Consider adding comments with links to relevant documentation for each major subsection. For example:

monitoring:
  # -- Enable monitoring
  # See: https://docs.greptime.com/user-guide/operations/monitoring
  enabled: true

  # -- Configure the standalone instance for storing monitoring data
  # See: https://docs.greptime.com/user-guide/operations/monitoring#standalone-instance
  standalone: {}

  # -- Configure the logs collection
  # See: https://docs.greptime.com/user-guide/operations/monitoring#logs-collection
  logsCollection:
    # ...

  # -- Configure vector for logs and metrics collection.
  # See: https://vector.dev/docs/
  vector:
    # ...

This will help users find more detailed information about each feature and its configuration options.


642-657: Global logging configuration is a valuable addition.

The new global logging configuration provides a centralized way to manage logging settings across all components of the GreptimeDB cluster.

To improve clarity, consider adding a comment explaining how this global configuration interacts with the component-specific logging configurations. For example:

# -- Global logging configuration
# These settings will be used as defaults for all components unless overridden
# in the component-specific logging configurations.
logging:
  # ... (existing configuration)

This will help users understand the hierarchy of logging configurations and how they can be customized at different levels.


Line range hint 1-657: Overall, these changes significantly enhance the GreptimeDB Helm chart.

The additions and modifications in this update primarily focus on improving logging and monitoring capabilities for the GreptimeDB cluster. Key improvements include:

  1. Component-specific logging configurations for finer control.
  2. A comprehensive monitoring setup with standalone instance support and Vector integration.
  3. A global logging configuration for centralized management.

These changes greatly enhance the configurability and observability of the GreptimeDB deployment, which will be beneficial for both development and production environments.

As the configuration grows in complexity, consider the following architectural improvements:

  1. Implement a more DRY approach for repeated configurations, such as the logging settings.
  2. Enhance documentation within the values file to guide users on the relationships between different configuration sections and their impacts.
  3. Consider creating a separate documentation page or README section that explains the new logging and monitoring features in detail, including best practices and common configurations for different deployment scenarios.

These improvements will make the Helm chart more maintainable and user-friendly as it continues to evolve.

charts/greptimedb-cluster/README.md (3)

5-5: Version updates look good, consider documenting changes.

The version updates for the chart (0.2.16 to 0.2.17) and the initializer tag (v0.1.0 to v0.1.1) are good. To maintain clear communication with users:

  1. Consider adding a CHANGELOG.md file if not already present.
  2. Document any notable changes or improvements in the CHANGELOG.md or in the PR description.

This helps users understand what's new or changed in this version.

Also applies to: 184-184


185-190: Excellent addition of logging configuration options.

The new logging configuration is a valuable improvement:

  1. Global logging configuration allows for consistent logging across components.
  2. Component-specific logging configurations (datanode, flownode, frontend, meta) provide flexibility for fine-tuning.

Consider adding a brief example in the README demonstrating how to set different log levels for different components. This would help users understand how to leverage these new options effectively.

Also applies to: 98-98, 131-131, 154-154, 196-196


217-226: Great addition of monitoring configuration.

The new monitoring configuration enhances observability for GreptimeDB clusters:

  1. Enables/disables monitoring globally.
  2. Configures logs collection pipeline.
  3. Sets up vector for logs and metrics collection.

To further improve this section:

  1. Consider adding a brief example or link to documentation showing how to use these monitoring features.
  2. Clarify what "standalone" configuration is used for (line 221).

These additions would help users quickly understand and implement monitoring for their clusters.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":true,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~222-~222: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...g data | | monitoring.vector | object | {"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"} | Configure vector for logs and metr...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~226-~226: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...ce | | monitoring.vector.tag | string | "nightly-alpine" | vector image tag | | mysqlServicePo...

(HYPHENATED_LY_ADVERB_ADJECTIVE)

charts/greptimedb-cluster/templates/cluster.yaml (1)

170-187: Meta logging configuration is correct and consistent.

The logging configuration for the meta component mirrors the frontend configuration, which is good for consistency. However, consider refactoring this repeated structure into a reusable template to reduce duplication and improve maintainability.

Consider creating a named template for the logging configuration and using it across all components. For example:

{{- define "greptimedb.loggingConfig" -}}
logging:
  {{- if .logging.level }}
  level: {{ .logging.level }}
  {{- end }}
  {{- if .logging.format }}
  format: {{ .logging.format }}
  {{- end }}
  {{- if .logging.logsDir }}
  logsDir: {{ .logging.logsDir }}
  {{- end }}
  {{- if .logging.onlyLogToStdout }}
  onlyLogToStdout: {{ .logging.onlyLogToStdout }}
  {{- end }}
  {{- if .logging.persistentWithData }}
  persistentWithData: {{ .logging.persistentWithData }}
  {{- end }}
{{- end -}}

# Usage:
{{- if .Values.frontend.logging }}
{{ include "greptimedb.loggingConfig" .Values.frontend }}
{{- end }}

This approach would make the template more DRY and easier to maintain.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 3b93012 and 9f7d1d0.

📒 Files selected for processing (4)
  • charts/greptimedb-cluster/Chart.yaml (1 hunks)
  • charts/greptimedb-cluster/README.md (7 hunks)
  • charts/greptimedb-cluster/templates/cluster.yaml (5 hunks)
  • charts/greptimedb-cluster/values.yaml (6 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • charts/greptimedb-cluster/Chart.yaml
🧰 Additional context used
🪛 LanguageTool
charts/greptimedb-cluster/README.md

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":true,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~222-~222: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...g data | | monitoring.vector | object | {"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"} | Configure vector for logs and metr...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~226-~226: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...ce | | monitoring.vector.tag | string | "nightly-alpine" | vector image tag | | mysqlServicePo...

(HYPHENATED_LY_ADVERB_ADJECTIVE)

🔇 Additional comments (8)
charts/greptimedb-cluster/values.yaml (1)

17-17: Initializer version update looks good.

The initializer image tag has been updated from v0.1.0 to v0.1.1. This minor version update likely includes bug fixes or small improvements.

Please ensure that this update is compatible with the rest of the system. You may want to check the changelog for v0.1.1 to understand the changes and their potential impact.

charts/greptimedb-cluster/README.md (1)

117-117: ⚠️ Potential issue

Caution: Default datanode replicas reduced to 1.

Changing the default number of datanode replicas from 3 to 1 significantly impacts system reliability and fault tolerance. While this might be suitable for development or testing, it poses risks for production environments. Consider:

  1. Adding a warning in the README about the implications of using a single replica.
  2. Providing guidance on recommended replica counts for different deployment scenarios (dev, staging, production).
  3. Explaining the rationale behind this change in the PR description or CHANGELOG.

This ensures users make informed decisions about their deployment configuration.

charts/greptimedb-cluster/templates/cluster.yaml (6)

132-149: Frontend logging configuration looks good!

The logging configuration for the frontend component is well-structured and flexible. It allows users to configure various logging options as needed, with each option being conditionally set based on the values provided.


286-303: Datanode logging configuration is correct.

The logging configuration for the datanode component is consistent with the frontend and meta components. Please refer to the previous comment about refactoring this repeated structure into a reusable template.


366-383: Flownode logging configuration is correct but repetitive.

The logging configuration for the flownode component maintains consistency with other components. This fourth instance of the same configuration structure strongly emphasizes the importance of implementing the refactoring suggested earlier to improve maintainability and reduce the risk of inconsistencies in future updates.


437-455: Monitoring configuration is well-structured and flexible.

The new monitoring section is a valuable addition to the GreptimeDBCluster spec. It provides a comprehensive set of options for configuring monitoring, including standalone setup, logs collection pipeline, and vector image configuration. The conditional inclusion of each subsection based on provided values allows for flexible deployment scenarios.


456-473: Clarify the interaction between global and component-specific logging configurations.

The addition of a global logging configuration raises questions about its interaction with the component-specific logging configurations:

  1. How do the global logging settings interact with component-specific settings?
  2. Which configuration takes precedence if both are specified?
  3. Is there a way to override global settings for specific components?

Please provide documentation or comments in the template to explain the behavior and precedence of these logging configurations. This will help users understand how to properly configure logging across the cluster.


Line range hint 1-473: Summary of changes and suggestions for improvement

The additions to the GreptimeDBCluster template significantly enhance its configurability, particularly in terms of logging and monitoring. However, there are a few areas that could be improved:

  1. Refactor the repeated logging configuration structure into a reusable template to reduce duplication and improve maintainability.
  2. Clarify the interaction between the global logging configuration and component-specific logging configurations.
  3. Consider adding comments or documentation within the template to explain the purpose and usage of new configurations, especially for complex sections like monitoring.

These improvements would make the template more maintainable and user-friendly while preserving the added functionality.

@zyy17 zyy17 force-pushed the refactor/add-more-cluster-fields branch from 9f7d1d0 to 5b724c1 Compare October 17, 2024 08:10
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Outside diff range and nitpick comments (1)
charts/greptimedb-cluster/README.md (1)

98-98: Consider explaining component-specific logging configurations.

New logging configuration options have been added for datanode, flownode, frontend, and meta components. While this provides great flexibility, it might be helpful to add a brief explanation about when and why users might want to override the global logging configuration for specific components. This would help users make informed decisions about their logging setup.

Also applies to: 131-131, 154-154, 196-196

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 9f7d1d0 and 5b724c1.

📒 Files selected for processing (2)
  • charts/greptimedb-cluster/README.md (7 hunks)
  • charts/greptimedb-cluster/values.yaml (6 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • charts/greptimedb-cluster/values.yaml
🧰 Additional context used
🪛 LanguageTool
charts/greptimedb-cluster/README.md

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":true,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~222-~222: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...g data | | monitoring.vector | object | {"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"} | Configure vector for logs and metr...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~226-~226: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...ce | | monitoring.vector.tag | string | "nightly-alpine" | vector image tag | | mysqlServicePo...

(HYPHENATED_LY_ADVERB_ADJECTIVE)

🔇 Additional comments (4)
charts/greptimedb-cluster/README.md (4)

5-5: Version update looks good.

The version has been correctly incremented from 0.2.16 to 0.2.17, reflecting the changes in this update.


185-190: Excellent addition of logging configuration.

The new logging configuration provides comprehensive control over log management:

  • format: Allows choosing between "json" and "text" formats, enhancing log parsing options.
  • level: Offers standard log levels for fine-grained control.
  • logsDir: Specifies a dedicated directory for logs, improving organization.
  • onlyLogToStdout: Provides flexibility in log output destination.
  • persistentWithData: Offers an option to persist logs with datanode data, which is particularly useful for debugging and auditing.

These options significantly enhance the system's observability and debugging capabilities.


217-226: Great addition of monitoring configuration.

The new monitoring configuration significantly enhances the observability of the GreptimeDB cluster:

  • enabled: Allows easy toggling of the monitoring feature.
  • logsCollection: Provides a pipeline for customized log collection.
  • standalone: Offers configuration for a standalone instance to store monitoring data.
  • vector: Configures Vector for efficient logs and metrics collection, with sensible default resource limits.

This addition will greatly improve the ability to monitor and troubleshoot the GreptimeDB cluster, enhancing overall system reliability and ease of management.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~217-~217: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...is key prefix | | monitoring | object | {"enabled":true,"logsCollection":{"pipeline":{"data":""}},"standalone":{},"vector":{"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"}} | The monitoring bootstrap configur...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~222-~222: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...g data | | monitoring.vector | object | {"registry":"docker.io","repository":"timberio/vector","resource":{"limits":{"cpu":"50m","memory":"64Mi"},"requests":{"cpu":"50m","memory":"64Mi"}},"tag":"nightly-alpine"} | Configure vector for logs and metr...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


[uncategorized] ~226-~226: Although a hyphen is possible, it is not necessary in a compound modifier in which the first word is an adverb that ends in ‘ly’.
Context: ...ce | | monitoring.vector.tag | string | "nightly-alpine" | vector image tag | | mysqlServicePo...

(HYPHENATED_LY_ADVERB_ADJECTIVE)


184-184: Initializer tag update looks good.

The initializer tag has been updated to v0.1.1, which is consistent with the overall version update of the chart.

charts/greptimedb-cluster/README.md Show resolved Hide resolved
@zyy17 zyy17 merged commit a3f1fcb into GreptimeTeam:main Oct 17, 2024
2 checks passed
@zyy17 zyy17 deleted the refactor/add-more-cluster-fields branch October 17, 2024 08:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants