Git Product home page Git Product logo

Comments (13)

mdellweg avatar mdellweg commented on July 20, 2024 1

Saving the data as a pulp_file artifact I think is a great idea. That would be even easier for us to pull the data back out then. So would that be:

1. pulp admin creates a pulp-file repo

2. pulp admin configures the `TASK_DIAGNOSTIC_FILE_REPO_URL` equal to its URL? or maybe `TASK_DIAGNOSTIC_FILE_REPO_ID` equal to its UUID?

What do you think?

Adding a file to that repository requires a task. That may create an infinite loop.

from pulpcore.

mdellweg avatar mdellweg commented on July 20, 2024

Time for dogfooding: Let's put any type of report in artifacts.

from pulpcore.

decko avatar decko commented on July 20, 2024

Maybe use pulp_file to save this data.
It's gonna use the Storage that Pulp is using.

from pulpcore.

decko avatar decko commented on July 20, 2024

Which things we're getting from the diagnostics? Can we get the same information using other ways, like container metrics, or OTEL?

from pulpcore.

bmbouter avatar bmbouter commented on July 20, 2024

Saving the data as a pulp_file artifact I think is a great idea. That would be even easier for us to pull the data back out then. So would that be:

  1. pulp admin creates a pulp-file repo
  2. pulp admin configures the TASK_DIAGNOSTIC_FILE_REPO_URL equal to its URL? or maybe TASK_DIAGNOSTIC_FILE_REPO_ID equal to its UUID?

What do you think?

from pulpcore.

ipanova avatar ipanova commented on July 20, 2024

I see the value of storing the output files solely in artifacts because those could be saved without depending on the tasking system. Also they will automatically be picked up by the orphan clean up.

from pulpcore.

bmbouter avatar bmbouter commented on July 20, 2024

Saving them as an artifact sounds even better for all the reasons mentioned. Also it would avoid the admin even having to create a dedicated pulp_file repo.

When a task runs, how can I know how to fetch that saved artifact? If that's easy then I'm +1 on this.

from pulpcore.

bmbouter avatar bmbouter commented on July 20, 2024

I thought about this some more and what would be nice is if the Task got a created_resources entry in it to the Artifact URL. Is that an option?

from pulpcore.

ipanova avatar ipanova commented on July 20, 2024

We should be able to at least to log the href of the created artifact whenever task_diagnostics is on.

from pulpcore.

bmbouter avatar bmbouter commented on July 20, 2024

Logging would work. Having it on the task is more beneficial for our use for a few reasons:

  • Sometimes the logs can be hard to get a hold of on the hosted installations because it's not a system you just log into
  • We'll leave this enabled on staging, and we want our hosted users to be able to get their cProfile data in a self-service way (without having to contact us for each cProfile they want).

from pulpcore.

ipanova avatar ipanova commented on July 20, 2024

@bmbouter I agree that having it directly on the task is more transparent, just we never placed artifacts nor content as created_resource, only those resources that require locking, like repos, remotes, distributions, etc

from pulpcore.

bmbouter avatar bmbouter commented on July 20, 2024

@ipanova I agree and I'm also a little uneasy setting that precedent here. Is there another option to have that info added to the task somehow?

from pulpcore.

bmbouter avatar bmbouter commented on July 20, 2024

We discussed at pulpcore meeting today. Here's my summary of what I think the plan is.

Let's implement this setting to save the bare Artifact (not a file content unit, not in a file repo) and just have it log for now. We can look at improving the usability later as a separate issue. This avoids us having to set the precident adding an Artifact to the created_resources data of a task.

@pulp/core is this right?

from pulpcore.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.