Select to view content in your preferred language

ArcGIS Server services missing after upgrading to 2024.0

868
7
Jump to solution
08-28-2024 10:05 AM
ChrisTaylor2
Regular Contributor

Hello,

I'm excited to start playing around with the 2024.0 release! I have a Dev ArcGIS Monitor site and performed the upgrade there yesterday afternoon. I noticed after installing and registering all of the agents on my ArcGIS Server machines that the sites (which had been previously configured in 2023.3.1) were now showing up in my Discovered Components. From there I went through the Register steps and the sites now show up under 'ArcGIS Server', with what is presumably their original Created At dates. However, no service components are showing up at all.

I tried restarting the Monitor Server and Agent services on the Monitor server, as well as the Agent service on one of the ArcGIS Server machines, but it didn't make a difference. I haven't tried unregistering and re-registering an ArcGIS Server site yet since I'm not sure whether that would wipe out all of the metrics configuration work I had done on the sites and/or services, and thought I'd better reach out here first.

Thanks,

Chris

0 Kudos
1 Solution

Accepted Solutions
GeoJosh
Esri Regular Contributor

Hi everyone. The development team has identified the issue and provided the solution to Esri Support. I also want to provide the solution here for those who are comfortable running SQL commands against PostgreSQL databases. If you do not have experience administering PostgreSQL, please reach out to Esri Support for help performing this workflow.

The cause of this issue is a small bug in the upgrade process that leaves all child components (service, storage, and connector) in the migrated state after an agent is configured on the host machine, whereas the state of these components should be changed to monitored at that point in time. The solution is to 1) identify all of the effected components and 2) update their state from migrated to monitored. Here are the steps to do so:

  1. Stop the ArcGIS Monitor Server service.
  2. Connect to the ArcGIS Monitor database in pgAdmin.
  3. Open a new query window.
  4. Issue the query below, which will list all of the child components whose state is migrated but whose parent component state is monitored

 

SELECT * FROM "components" AS "C1"
    WHERE
    STATE = 'migrated'
    AND EXISTS (
    SELECT
    *
    FROM
    "components" AS "C2"
    INNER JOIN "component_connections" ON "C2"."id" = "component_connections"."parent_id"
    WHERE
    ((STATE = 'monitored'))
    AND ("C1"."id" = "component_connections"."child_id")
    )

 

5. If there are one or more results from the query above, issue the query below, which will align the child component states with their parent component (migrated to monitored).

 

UPDATE "components" AS "C1" SET STATE = 'monitored'
    WHERE
    STATE = 'migrated'
    AND EXISTS (
    SELECT
    *
    FROM
    "components" AS "C2"
    INNER JOIN "component_connections" ON "C2"."id" = "component_connections"."parent_id"
    WHERE
    ((STATE = 'monitored'))
    AND ("C1"."id" = "component_connections"."child_id")
    )

 

6. Issue the query from step 4 again. If step 5 was successful, no records should be returned by this query.

7. Start the ArcGIS Monitor Server service and verify that the service components are now visible via the ArcGIS Monitor web UI.

Alternatively, a patch that addresses this issue will be available in the coming weeks.

Josh

View solution in original post

7 Replies
GeoJosh
Esri Regular Contributor

Hi @ChrisTaylor2 ,

Sorry to hear your services aren't showing up post-upgrade. We think we have a good understanding of what is happening. Can you submit a case with Esri Support so they can triage this a bit further and provide additional information to the dev team?

By the way, please do not unregister the ArcGIS Server sites. We should be able to recover the services and still leave your configuration in tact.

Josh

ChrisTaylor2
Regular Contributor

Absolutely - will do Josh and thanks!

0 Kudos
Justin_Greco
Frequent Contributor

If you don't mind losing data, which I didn't. I unregistered the ArcGIS Server component, then disconnected the agent from both servers in the site and registered it again on both.  This time registering the ArcGIS Server from the discovered components brought in all of the services.

ChrisTaylor2
Regular Contributor

That's good to know, thanks. I have a session scheduled with Support on Tuesday to dig into the issue further and will report back any findings. I don't really mind losing data in Dev but am more worried about what will happen when I go to upgrade Prod.

Chris

GeoJosh
Esri Regular Contributor

Hi everyone. The development team has identified the issue and provided the solution to Esri Support. I also want to provide the solution here for those who are comfortable running SQL commands against PostgreSQL databases. If you do not have experience administering PostgreSQL, please reach out to Esri Support for help performing this workflow.

The cause of this issue is a small bug in the upgrade process that leaves all child components (service, storage, and connector) in the migrated state after an agent is configured on the host machine, whereas the state of these components should be changed to monitored at that point in time. The solution is to 1) identify all of the effected components and 2) update their state from migrated to monitored. Here are the steps to do so:

  1. Stop the ArcGIS Monitor Server service.
  2. Connect to the ArcGIS Monitor database in pgAdmin.
  3. Open a new query window.
  4. Issue the query below, which will list all of the child components whose state is migrated but whose parent component state is monitored

 

SELECT * FROM "components" AS "C1"
    WHERE
    STATE = 'migrated'
    AND EXISTS (
    SELECT
    *
    FROM
    "components" AS "C2"
    INNER JOIN "component_connections" ON "C2"."id" = "component_connections"."parent_id"
    WHERE
    ((STATE = 'monitored'))
    AND ("C1"."id" = "component_connections"."child_id")
    )

 

5. If there are one or more results from the query above, issue the query below, which will align the child component states with their parent component (migrated to monitored).

 

UPDATE "components" AS "C1" SET STATE = 'monitored'
    WHERE
    STATE = 'migrated'
    AND EXISTS (
    SELECT
    *
    FROM
    "components" AS "C2"
    INNER JOIN "component_connections" ON "C2"."id" = "component_connections"."parent_id"
    WHERE
    ((STATE = 'monitored'))
    AND ("C1"."id" = "component_connections"."child_id")
    )

 

6. Issue the query from step 4 again. If step 5 was successful, no records should be returned by this query.

7. Start the ArcGIS Monitor Server service and verify that the service components are now visible via the ArcGIS Monitor web UI.

Alternatively, a patch that addresses this issue will be available in the coming weeks.

Josh

ChrisTaylor2
Regular Contributor

Wonderful, thanks Josh! I just walked through your procedure on my call with Support and I can confirm my services are back 🙂

Chris

JeffMertzXcel
New Contributor

Thanks, this sql script is definitely handy, but you need to register all the discovered components first. Might be nice to script out the registration part too, as I had to click into 28 discovered components first to get everything back the way it was. Hoping the next upgrade isn't such a manual process.

0 Kudos