diff --git a/content/posts/2022-07.md b/content/posts/2022-07.md
index e54c9bebb..08f9acefa 100644
--- a/content/posts/2022-07.md
+++ b/content/posts/2022-07.md
@@ -285,4 +285,38 @@ $ grep 65.108.95.23 dspace.log.2022-07-10 | grep -oE 'session_id=[A-Z0-9]{32}:ip
- The reason is apparently that the default `db.dialect` changed from "org.dspace.storage.rdbms.hibernate.postgres.DSpacePostgreSQL82Dialect" to "org.hibernate.dialect.PostgreSQL94Dialect" as a result of a Hibernate update
- Then I was getting more errors starting the backend server in Tomcat, but the issue was that the backend server needs Solr to be up first!
+## 2022-07-17
+
+- Start a harvest on AReS around 3:30PM
+- Later in the evening I see CGSpace was going down and up (not as bad as last Sunday) with around 18.0 load...
+- I see very high CPU usage:
+
+![CPU day](/cgspace-notes/2022/07/cpu-day2.png)
+
+- But DSpace sessions are normal (not like last weekend):
+
+![DSpace sessions week](/cgspace-notes/2022/07/jmx_dspace_sessions-week2.png)
+
+- I see some Hetzner IPs in the top users today, but most of the requests are getting HTTP 503 because of the changes I made last week
+- I see 137.184.159.211, which is on Digital Ocean, and the DNS is apparently iitawpsite.iita.org
+ - I've seen their user agent before, but I don't think I knew it was IITA: "GuzzleHttp/6.3.3 curl/7.84.0 PHP/7.4.30"
+ - I already have something in nginx to mark Guzzle as a bot, but interestingly it shows up in Solr as `$http_user_agent` so there is a logic error in my nginx config
+- Ouch, the logic error seems to be this:
+
+```console
+geo $ua {
+ default $http_user_agent;
+
+ include /etc/nginx/bot-networks.conf;
+}
+```
+
+- After some testing on DSpace Test I see that this is actually setting the default user agent to a literal `$http_user_agent`
+- The [nginx map docs](http://nginx.org/en/docs/http/ngx_http_map_module.html) say:
+
+> The resulting value can contain text, variable (0.9.0), and their combination (1.11.0).
+
+- But I can't get it to work, neither for the default value or for matching my IP...
+ - I will have to ask on the nginx mailing list
+
diff --git a/docs/2022-07/index.html b/docs/2022-07/index.html
index 46286655b..e82e146c0 100644
--- a/docs/2022-07/index.html
+++ b/docs/2022-07/index.html
@@ -19,7 +19,7 @@ Also, the trgm functions I’ve used before are case insensitive, but Levens
-
+
@@ -44,9 +44,9 @@ Also, the trgm functions I’ve used before are case insensitive, but Levens
"@type": "BlogPosting",
"headline": "July, 2022",
"url": "https://alanorth.github.io/cgspace-notes/2022-07/",
- "wordCount": "1743",
+ "wordCount": "1959",
"datePublished": "2022-07-02T14:07:36+03:00",
- "dateModified": "2022-07-12T12:15:17+03:00",
+ "dateModified": "2022-07-14T16:46:24+03:00",
"author": {
"@type": "Person",
"name": "Alan Orth"
@@ -445,6 +445,46 @@ Also, the trgm functions I’ve used before are case insensitive, but Levens
Then I was getting more errors starting the backend server in Tomcat, but the issue was that the backend server needs Solr to be up first!
+2022-07-17
+
+- Start a harvest on AReS around 3:30PM
+- Later in the evening I see CGSpace was going down and up (not as bad as last Sunday) with around 18.0 load…
+- I see very high CPU usage:
+
+
+
+- But DSpace sessions are normal (not like last weekend):
+
+
+
+- I see some Hetzner IPs in the top users today, but most of the requests are getting HTTP 503 because of the changes I made last week
+- I see 137.184.159.211, which is on Digital Ocean, and the DNS is apparently iitawpsite.iita.org
+
+- I’ve seen their user agent before, but I don’t think I knew it was IITA: “GuzzleHttp/6.3.3 curl/7.84.0 PHP/7.4.30”
+- I already have something in nginx to mark Guzzle as a bot, but interestingly it shows up in Solr as
$http_user_agent
so there is a logic error in my nginx config
+
+
+- Ouch, the logic error seems to be this:
+
+geo $ua {
+ default $http_user_agent;
+
+ include /etc/nginx/bot-networks.conf;
+}
+
+- After some testing on DSpace Test I see that this is actually setting the default user agent to a literal
$http_user_agent
+- The nginx map docs say:
+
+
+The resulting value can contain text, variable (0.9.0), and their combination (1.11.0).
+
+
+- But I can’t get it to work, neither for the default value or for matching my IP…
+
+- I will have to ask on the nginx mailing list
+
+
+
diff --git a/docs/2022/07/cpu-day2.png b/docs/2022/07/cpu-day2.png
new file mode 100644
index 000000000..53a52dccd
Binary files /dev/null and b/docs/2022/07/cpu-day2.png differ
diff --git a/docs/2022/07/jmx_dspace_sessions-week2.png b/docs/2022/07/jmx_dspace_sessions-week2.png
new file mode 100644
index 000000000..8a4961aa3
Binary files /dev/null and b/docs/2022/07/jmx_dspace_sessions-week2.png differ
diff --git a/docs/categories/index.html b/docs/categories/index.html
index ee479fcd4..ee2d35a07 100644
--- a/docs/categories/index.html
+++ b/docs/categories/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/categories/notes/index.html b/docs/categories/notes/index.html
index 531266762..ea7168db8 100644
--- a/docs/categories/notes/index.html
+++ b/docs/categories/notes/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/categories/notes/page/2/index.html b/docs/categories/notes/page/2/index.html
index 989518641..4ecb1ea90 100644
--- a/docs/categories/notes/page/2/index.html
+++ b/docs/categories/notes/page/2/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/categories/notes/page/3/index.html b/docs/categories/notes/page/3/index.html
index b85183074..ca3363911 100644
--- a/docs/categories/notes/page/3/index.html
+++ b/docs/categories/notes/page/3/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/categories/notes/page/4/index.html b/docs/categories/notes/page/4/index.html
index 13e3584b4..35e781797 100644
--- a/docs/categories/notes/page/4/index.html
+++ b/docs/categories/notes/page/4/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/categories/notes/page/5/index.html b/docs/categories/notes/page/5/index.html
index 3f8c1a9ea..e75c761bb 100644
--- a/docs/categories/notes/page/5/index.html
+++ b/docs/categories/notes/page/5/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/categories/notes/page/6/index.html b/docs/categories/notes/page/6/index.html
index 3da971d45..a97ddf2e3 100644
--- a/docs/categories/notes/page/6/index.html
+++ b/docs/categories/notes/page/6/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/categories/notes/page/7/index.html b/docs/categories/notes/page/7/index.html
index c90e9ef74..fb9457a5e 100644
--- a/docs/categories/notes/page/7/index.html
+++ b/docs/categories/notes/page/7/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/index.html b/docs/index.html
index ce605a780..709375011 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/page/2/index.html b/docs/page/2/index.html
index bba64fe8a..2993b444d 100644
--- a/docs/page/2/index.html
+++ b/docs/page/2/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/page/3/index.html b/docs/page/3/index.html
index f941bedf8..2b6399522 100644
--- a/docs/page/3/index.html
+++ b/docs/page/3/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/page/4/index.html b/docs/page/4/index.html
index 67db501f8..fdd30b5cf 100644
--- a/docs/page/4/index.html
+++ b/docs/page/4/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/page/5/index.html b/docs/page/5/index.html
index aca52c9d5..bc1ea6f4b 100644
--- a/docs/page/5/index.html
+++ b/docs/page/5/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/page/6/index.html b/docs/page/6/index.html
index 010f41bc7..72112afc9 100644
--- a/docs/page/6/index.html
+++ b/docs/page/6/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/page/7/index.html b/docs/page/7/index.html
index 297dcdf1f..57491675a 100644
--- a/docs/page/7/index.html
+++ b/docs/page/7/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/page/8/index.html b/docs/page/8/index.html
index a33ea3a59..a0111ad52 100644
--- a/docs/page/8/index.html
+++ b/docs/page/8/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/page/9/index.html b/docs/page/9/index.html
index 726c1c6ea..38a1720bc 100644
--- a/docs/page/9/index.html
+++ b/docs/page/9/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/index.html b/docs/posts/index.html
index db285c65d..d342f1783 100644
--- a/docs/posts/index.html
+++ b/docs/posts/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/page/2/index.html b/docs/posts/page/2/index.html
index eb202a231..2fe05f29d 100644
--- a/docs/posts/page/2/index.html
+++ b/docs/posts/page/2/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/page/3/index.html b/docs/posts/page/3/index.html
index 73a615393..2c1b21707 100644
--- a/docs/posts/page/3/index.html
+++ b/docs/posts/page/3/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/page/4/index.html b/docs/posts/page/4/index.html
index b947b5c53..32ffea037 100644
--- a/docs/posts/page/4/index.html
+++ b/docs/posts/page/4/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/page/5/index.html b/docs/posts/page/5/index.html
index d94bca8d2..5af087bd1 100644
--- a/docs/posts/page/5/index.html
+++ b/docs/posts/page/5/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/page/6/index.html b/docs/posts/page/6/index.html
index fe69a325d..548022590 100644
--- a/docs/posts/page/6/index.html
+++ b/docs/posts/page/6/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/page/7/index.html b/docs/posts/page/7/index.html
index 6ec83e427..bd85d2a8f 100644
--- a/docs/posts/page/7/index.html
+++ b/docs/posts/page/7/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/page/8/index.html b/docs/posts/page/8/index.html
index 1b76bf618..7fbb94ada 100644
--- a/docs/posts/page/8/index.html
+++ b/docs/posts/page/8/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/posts/page/9/index.html b/docs/posts/page/9/index.html
index 6bf893336..24009dc59 100644
--- a/docs/posts/page/9/index.html
+++ b/docs/posts/page/9/index.html
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/sitemap.xml b/docs/sitemap.xml
index 9e992cb46..30f141627 100644
--- a/docs/sitemap.xml
+++ b/docs/sitemap.xml
@@ -3,19 +3,19 @@
xmlns:xhtml="http://www.w3.org/1999/xhtml">
https://alanorth.github.io/cgspace-notes/categories/
- 2022-07-12T12:15:17+03:00
+ 2022-07-14T16:46:24+03:00
https://alanorth.github.io/cgspace-notes/
- 2022-07-12T12:15:17+03:00
+ 2022-07-14T16:46:24+03:00
https://alanorth.github.io/cgspace-notes/2022-07/
- 2022-07-12T12:15:17+03:00
+ 2022-07-14T16:46:24+03:00
https://alanorth.github.io/cgspace-notes/categories/notes/
- 2022-07-12T12:15:17+03:00
+ 2022-07-14T16:46:24+03:00
https://alanorth.github.io/cgspace-notes/posts/
- 2022-07-12T12:15:17+03:00
+ 2022-07-14T16:46:24+03:00
https://alanorth.github.io/cgspace-notes/2022-06/
2022-07-04T09:25:14+03:00
diff --git a/static/2022/07/cpu-day2.png b/static/2022/07/cpu-day2.png
new file mode 100644
index 000000000..53a52dccd
Binary files /dev/null and b/static/2022/07/cpu-day2.png differ
diff --git a/static/2022/07/jmx_dspace_sessions-week2.png b/static/2022/07/jmx_dspace_sessions-week2.png
new file mode 100644
index 000000000..8a4961aa3
Binary files /dev/null and b/static/2022/07/jmx_dspace_sessions-week2.png differ