-
Notifications
You must be signed in to change notification settings - Fork 5.8k
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
[observability][export-api] Write actor events #47303
[observability][export-api] Write actor events #47303
Conversation
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks good!
can you run name:many_actors and many_nodes_actor_test_on_v2 from release tests with the flag on?
@@ -224,6 +224,37 @@ const rpc::ActorTableData &GcsActor::GetActorTableData() const { | |||
|
|||
rpc::ActorTableData *GcsActor::GetMutableActorTableData() { return &actor_table_data_; } | |||
|
|||
void GcsActor::WriteActorExportEvent() const { | |||
/// Write actor_table_data_ as a export actor event if |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
very nit; but I prefer this style to avoid nested code;
if (!RayConfig::instance().enable_export_api_write()) {
return
}
....
@@ -89,7 +89,8 @@ int main(int argc, char *argv[]) { | |||
// Initialize event framework. | |||
if (RayConfig::instance().event_log_reporter_enabled() && !log_dir.empty()) { | |||
const std::vector<ray::SourceTypeVariant> source_types = { | |||
ray::rpc::Event_SourceType::Event_SourceType_GCS}; | |||
ray::rpc::Event_SourceType::Event_SourceType_GCS, | |||
ray::rpc::ExportEvent_SourceType_EXPORT_ACTOR}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you add comment why this source type is set?
Signed-off-by: Nikita Vemuri <[email protected]>
Yeah, here's the test run https://buildkite.com/ray-project/release/builds/21701 |
@nikitavemuri did you run the test with the flag on? |
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
Signed-off-by: Nikita Vemuri <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Likely this can cause perf issue at large scale, and we will follow up perf after merging initial PRs
Broke #47511 and is blocking release. I'm reverting to unblock. |
This reverts commit 99af819.
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Write actor events to file as part of the export API. This logic is only run if RayConfig::instance().enable_export_api_write() is true. Default value is false. Event write is called whenever a value in the actor event data schema is modified. Typically this occurs before writing ActorTableData to the GCS table or publishing the data for the dashboard Signed-off-by: ujjawal-khare <[email protected]>
…47516) Reverts ray-project#47303 Signed-off-by: ujjawal-khare <[email protected]>
- Add back code changes from [observability][export-api] Write actor events ray-project#47303 - Separate out actor manager export event test into a separate file so we can skip on windows. Update BUILD rule so all tests in src/ray/gcs/gcs_server/test/export_api are skipped on windows Signed-off-by: Nikita Vemuri <[email protected]> Co-authored-by: Nikita Vemuri <[email protected]> Signed-off-by: ujjawal-khare <[email protected]>
Why are these changes needed?
RayConfig::instance().enable_export_api_write()
istrue
. Default value isfalse
.Related issue number
Checks
git commit -s
) in this PR.scripts/format.sh
to lint the changes in this PR.method in Tune, I've added it in
doc/source/tune/api/
under thecorresponding
.rst
file.