-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcrawlReport.sh
executable file
·459 lines (448 loc) · 20.4 KB
/
crawlReport.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
#!/bin/bash
# Listest Plattenplatz auf, der von Webschnitten belegt wurde.
# Inklusive "Beifang" (Logs, andere Verwaltungsdateien)
# für wöchentlichen Bericht, der ans LBZ verschickt werden soll.
# Output-Format: CSV
# Autor | Datum | Ticket | Änderungsgrund
# -------------+------------+-----------------------------------------------------------
# Ingolf Kuss | 02.08.2018 | EDOZWO-849 | Neuerstellung
# Ingolf Kuss | 26.10.2018 | EDOZWO-849 | Anzeige der Aleph-ID (HT-Nr) in den Berichten
# Ingolf Kuss | 01.02.2021 | EDOZWO-1045 | Nur Crawls des laufenden Jahres auswerten, da der Report sonst zu lange läuft.
# | | | Aktuell läuft der Report 21 - 27 Stunden lang für eine Auswertung aller Crawls,
# | | | die jemals gelaufen sind. Das ist für einen täglichen Nachtlauf zu lange.
scriptdir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd $scriptdir
source variables.conf
# bash-Funktionen
function stripOffQuotes {
local string=$1;
local len=${#string};
echo ${string:1:$len-2};
}
reportDir=/opt/toscience/crawlreports
discUsageWebsites=$reportDir/$(hostname).discUsageWebsites.$(date +"%Y%m%d%H%M%S").csv
crawlReport=$reportDir/$(hostname).crawlReport.$(date +"%Y%m%d%H%M%S").csv
REGAL_TMP=/opt/toscience/tmp
if [ ! -d $REGAL_TMP ]; then mkdir $REGAL_TMP; fi
aktJahr=`date +"%Y"`
echo "*************************************************"
echo "BEGINN Crawl-Report" `date`
echo "*************************************************"
echo "schreibe nach csv-Dateien:"
echo " $discUsageWebsites"
echo " $crawlReport"
echo "^crawler;pid;aleph-id;url;total_disc_usage [MB];anz_crawls;" > $discUsageWebsites
echo "^crawler;pid;aleph-id;url;crawlstart;crawl_status;error_cause;duration;uris_processed;uri_successes;total_crawled_bytes;speed [KB/sec];disc_usage_warcs [MB];disc_usage_database [MB];disc_usage_logs [MB];" > $crawlReport
# 1. für Heritrix-Crawls
# **********************
# Summen
sumHeritrixSites=0
sumHeritrixDiscSpace=0
sumHeritrixCrawls=0
heritrixData=/opt/toscience/heritrix-data
crawler=heritrix
echo "crawler=$crawler"
cd $heritrixData
# Schleife über PIDs
for pid in `ls -d edoweb:*`; do
echo
echo "pid=$pid"
# Gibt es die PID überhaupt im Regal-Backend ? (fehlerhafte Crawls könnten dort gelöscht worden sein)
# Falls ja, ermittle Aleph-ID zu der PID.
hbzid="keine"
status_code="unknown"
IFS=$'\n'
for httpResponse in `curl -is -u $REGAL_ADMIN:$REGAL_PASSWORD "$BACKEND/resource/$pid.json"`; do
# echo $httpResponse
if [[ "$httpResponse" =~ ^HTTP(.*)\ ([0-9]{1,3})\ (.*)$ ]]; then
status_code=${BASH_REMATCH[2]}
fi
done
echo "statusCode: $status_code"
# echo "httpResonse is now: $httpResponse"
if [ $status_code == 404 ]; then
echo "pid $pid existiert nicht."
else
# Alles OK mit der PID. Ermittle Aleph-ID zu der PID.
hbzid=`echo $httpResponse | jq '.hbzId[0]'`
if [ $hbzid ] && [ "$hbzid" != "null" ]; then
hbzid=$(stripOffQuotes $hbzid)
fi
fi
echo "hbzid=$hbzid"
sumHeritrixSites=$(($sumHeritrixSites+1))
cd $heritrixData/$pid
# url zu der pid
url=`grep "Edoweb crawl of" crawler-beans.cxml | sed 's/^.*Edoweb crawl of\(.*\)$/\1/'`
echo "url=$url"
# insgesamt von der pid verbrauchter Plattenplatz
total_disc_usage=`du -ks . | sed 's/^\(.*\)\s.*$/\1/'`
total_disc_usage=`echo "scale=0; $total_disc_usage / 1024" | bc`
echo "total disc usage=$total_disc_usage MB"
sumHeritrixDiscSpace=`echo "scale=0; $sumHeritrixDiscSpace + $total_disc_usage" | bc`
anz_crawls=0
if [ -d latest ]; then
# Schleife über alle Crawls zu dieser pid
for crawldir in 20???????????? ; do
if [ -d "$crawldir" ]; then
anz_crawls=$(($anz_crawls+1))
if [[ "$crawldir" =~ ^$aktJahr..........$ ]]; then
# Crawl im aktuellen Jahr, wird weiter ausgewertet
echo "crawldir=$crawldir"
else
continue;
fi
inputdate=`echo $crawldir | sed 's/^\([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]\)\([0-9][0-9]\)\([0-9][0-9]\)\([0-9][0-9]\)$/\1 \2:\3:\4/'`
crawlstart=`date -d "$inputdate" +'%FT%T'`
echo "crawlstart=$crawlstart"
cd $heritrixData/$pid/$crawldir
# Auswertung der Informationen in reports/crawl-report.txt
crawl_status=""
error_cause=""
duration=""
uris_processed=""
uri_successes=""
total_crawled_bytes=""
kb_sec=""
if [ -f reports/crawl-report.txt ]; then
crawl_status=`grep "^crawl status" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
echo "crawl_status=$crawl_status"
duration=`grep "^duration" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
echo "Dauer=$duration"
uris_processed=`grep "^URIs processed" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
echo "uris_processed=$uris_processed"
uri_successes=`grep "^URI successes" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
echo "uri_successes=$uri_successes"
uri_failures=`grep "^URI failures" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
uri_disregards=`grep "^URI disregards" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
novel_uris=`grep "^novel URIs" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
total_crawled_bytes=`grep "^total crawled bytes" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
echo "total_crawled_bytes=$total_crawled_bytes"
novel_crawled_bytes=`grep "^novel crawled bytes" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
uris_sec=`grep "^URIs/sec" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
kb_sec=`grep "^KB/sec" reports/crawl-report.txt | sed 's/^.*: \(.*\)$/\1/'`
echo "KB/sec=$kb_sec"
else
# kein reports-Verzeichnis
if [ -f logs/crawl.log ]; then
if [ `stat --format=%Y logs/crawl.log` -gt $(( `date +%s` - 3600 )) ]; then
# crawl.log wurde in der letzten Stunde modifiziert
crawl_status="RUNNING"
echo "crawl_status=$crawl_status"
fi
fi
fi
# von WARCs belegter Plattenplatz
disc_usage_warcs=0
if [ -d warcs ]; then
disc_usage_warcs=`du -ks warcs | sed 's/^\(.*\)\s.*$/\1/'`
disc_usage_warcs=`echo "scale=0; $disc_usage_warcs / 1024" | bc`
echo "disc usage for warcs=$disc_usage_warcs"
fi
disc_usage_database=0
# von Log-Dateien belegter Plattenplatz
disc_usage_logs=0
if [ -d logs ]; then
disc_usage_logs=`du -ks logs | sed 's/^\(.*\)\s.*$/\1/'`
disc_usage_logs=`echo "scale=0; $disc_usage_logs / 1024" | bc`
echo "disc usage for logs=$disc_usage_logs"
fi
# *** Schreibe Zeile nach crawlReport für diesen Crawl***
echo "$crawler;$pid;$hbzid;$url;$crawlstart;$crawl_status;$error_cause;$duration;$uris_processed;$uri_successes;$total_crawled_bytes;$kb_sec;$disc_usage_warcs;$disc_usage_database;$disc_usage_logs;" >> $crawlReport
cd $heritrixData/$pid
continue
else
echo "Es gibt keine Crawl-Verzeichnisse."
break
fi
done
else
# noch keine Crawls für diese pid vorhanden
# *** Schreibe Zeile nach crawlReport für diese PID ***
echo "no crawls yet"
# echo "$crawler;$pid;$url;;;;;;;;;;;;" >> $crawlReport
fi
# Anzahl gestarteter Crawls zu dieser pid (inklusive Crawl-Versuche)
echo "anz_crawls=$anz_crawls"
sumHeritrixCrawls=$(($sumHeritrixCrawls+$anz_crawls))
# Schreibe Zeile nach discUsageWebsites für diese PID
echo "$crawler;$pid;$hbzid;$url;$total_disc_usage;$anz_crawls;" >> $discUsageWebsites
done # next pid
sumHeritrixDiscSpace=`echo "scale=1; $sumHeritrixDiscSpace / 1024" | bc`
echo " "
echo "****************************************"
echo " "
# echo "^crawler;pid;url;total_disc_usage;anz_crawls;" > $discUsageWebsites
# echo "^crawler;pid;url;crawlstart;crawl_status;error_cause;duration;uris_processed;uri_successes;total_crawled_bytes;speed [KB/sec];disc_usage_warcs;disc_usage_database;disc_usage_logs;" > $crawlReport
# 2. für wpull-Crawls
# *******************
sumWpullSites=0
sumWpullDiscSpace=0
sumWpullCrawls=0
wpullData=/opt/toscience/wpull-data
wpullDataCrawldir=/opt/toscience/wpull-data-crawldir
crawler=wpull
echo "crawler=$crawler"
cd $wpullData
# Schleife über PIDs
for pid in `ls -d edoweb:*`; do
echo
echo "pid=$pid"
# Gibt es die PID überhaupt im Regal-Backend ? (fehlerhafte Crawls könnten dort gelöscht worden sein)
# Falls ja, ermittle Aleph-ID zu der PID.
hbzid="keine"
status_code="unknown"
IFS=$'\n'
for httpResponse in `curl -is -u $REGAL_ADMIN:$REGAL_PASSWORD "$BACKEND/resource/$pid.json"`; do
# echo $httpResponse
if [[ "$httpResponse" =~ ^HTTP(.*)\ ([0-9]{1,3})\ (.*)$ ]]; then
status_code=${BASH_REMATCH[2]}
fi
done
echo "statusCode: $status_code"
# echo "httpResonse is now: $httpResponse"
if [ $status_code == 404 ]; then
echo "pid $pid existiert nicht."
else
# Alles OK mit der PID. Ermittle Aleph-ID zu der PID.
hbzid=`echo $httpResponse | jq '.hbzId[0]'`
if [ $hbzid ] && [ "$hbzid" != "null" ]; then
hbzid=$(stripOffQuotes $hbzid)
fi
fi
echo "hbzid=$hbzid"
sumWpullSites=$(($sumWpullSites+1))
cd $wpullData/$pid
url=""
total_disc_usage=`du -ks . | sed 's/^\(.*\)\s.*$/\1/'`
total_disc_usage=`echo "scale=0; $total_disc_usage / 1024" | bc`
echo "total disc usage=$total_disc_usage MB"
sumWpullDiscSpace=`echo "scale=0; $sumWpullDiscSpace + $total_disc_usage" | bc`
anz_crawls=0
# Schleife über alle Crawls zu dieser pid
for crawldir in 20???????????? ; do
if [ -d "$crawldir" ]; then
anz_crawls=$(($anz_crawls+1))
if [[ "$crawldir" =~ ^$aktJahr..........$ ]]; then
# Crawl im aktuellen Jahr, wird weiter ausgewertet
echo "crawldir=$crawldir"
else
continue;
fi
inputdate=`echo $crawldir | sed 's/^\([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]\)\([0-9][0-9]\)\([0-9][0-9]\)\([0-9][0-9]\)$/\1 \2:\3:\4/'`
crawlstart=`date -d "$inputdate" +'%FT%T'`
echo "crawlstart=$crawlstart"
cd $wpullData/$pid/$crawldir
# url
for datei in WEB-*.warc.gz; do
## Check if the glob gets expanded to existing files.
## If not, datei here will be exactly the pattern above
## and the exists test will evaluate to false.
if [ -e "$datei" ]; then
# echo "files do exist"
url_raw=`echo $datei | sed 's/^WEB\-\(.*\)\-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]\.warc\.gz/\1/'`
url=`echo $url_raw | sed 's/_cdn$//'`
echo "url=$url"
fi
## This is all we needed to know, so we can break after the first iteration
break
done
crawl_status=""
error_cause=""
duration=""
uris_processed=""
uri_successes=""
total_crawled_bytes=""
kb_sec=""
# Auswertung der Informationen in crawl.log
if [ -f crawl.log -o -f "$wpullDataCrawldir/$pid/$crawldir/crawl.log" ]; then
crawllog="crawl.log"
if [ ! -f $crawllog ]; then
crawllog="$wpullDataCrawldir/$pid/$crawldir/crawl.log"
fi
if grep --quiet "^INFO FINISHED." $crawllog ; then
crawl_status="FINISHED"
echo "crawl_status=$crawl_status"
elif grep --quiet "^wpull3: error" $crawllog ; then
crawl_status="ERROR"
echo "crawl_status=$crawl_status"
error_cause=`grep "^wpull3: error" $crawllog | sed 's/^wpull3: error: \(.*\)$/\1/'`
echo "error_cause=$error_cause"
elif [ `stat --format=%Y $crawllog` -gt $(( `date +%s` - 3600 )) ]; then
# crawl.log wurde in der letzten Stunde modifiziert
crawl_status="RUNNING"
echo "crawl_status=$crawl_status"
else
for datei in WEB-*.warc.gz; do
## Check if the glob gets expanded to existing files.
## If not, datei here will be exactly the pattern above
## and the exists test will evaluate to false.
if [ -e "$datei" ]; then
# echo "files do exist"
if [ `stat --format=%Y $datei` -gt $(( `date +%s` - 3600 )) ]; then
# warc-Datei wurde in der letzten Stunde modifiziert
crawl_status="RUNNING"
echo "crawl_status=$crawl_status"
elif grep --quiet "^RuntimeError: Event loop stopped" $crawllog; then
crawl_status="ABORTED"
echo "crawl_status=$crawl_status"
elif grep --quiet "^ERROR" $crawllog ; then
crawl_status="ERROR"
echo "crawl_status=$crawl_status"
error_cause=`grep "^ERROR" $crawllog | tail -n1 | sed 's/^ERROR \(.*\)$/\1/'`
echo "error_cause=$error_cause"
fi
else # Suche auch noch in wpull-data-crawldir, falls Datei noch nicht verschoben wurde
for datei in $wpullDataCrawldir/$pid/$crawldir/WEB-*.warc.gz; do
## Check if the glob gets expanded to existing files.
## If not, datei here will be exactly the pattern above
## and the exists test will evaluate to false.
if [ -e "$datei" ]; then
# echo "files do exist"
if [ `stat --format=%Y $datei` -gt $(( `date +%s` - 3600 )) ]; then
# warc-Datei wurde in der letzten Stunde modifiziert
crawl_status="RUNNING"
echo "crawl_status=$crawl_status"
elif grep --quiet "^RuntimeError: Event loop stopped" $crawllog; then
crawl_status="ABORTED"
echo "crawl_status=$crawl_status"
elif grep --quiet "^ERROR" $crawllog ; then
crawl_status="ERROR"
echo "crawl_status=$crawl_status"
error_cause=`grep "^ERROR" $crawllog | tail -n1 | sed 's/^ERROR \(.*\)$/\1/'`
echo "error_cause=$error_cause"
fi
else # keine .warc-Datei vorhanden
crawl_status="ERROR"
echo "crawl_status=$crawl_status"
error_cause="No warc file or not matching the naming convention WEB-*.warc.gz"
echo "error_cause=$error_cause"
fi
## This is all we needed to know, so we can break after the first iteration
break
done
fi
## This is all we needed to know, so we can break after the first iteration
break
done
fi
duration=`grep "^INFO Duration" $crawllog | sed 's/^.*: \(.*\). Speed: \(.*\)\.$/\1 h/'`
echo "Dauer=$duration"
speed=`grep "^INFO Duration" $crawllog | sed 's/^.*: \(.*\). Speed: \(.*\)\.$/\2/'` # => kb_sec; "1.2 MiB/s", "30.8 KiB/s"
echo "speed=$speed"
kb_sec=$speed
kb_sec=`echo $kb_sec | sed 's/^\(.*\) KiB\/s$/\1/'`
# hier noch Umrechnung, falls speed in MiB/s angegeben ist
files_downloaded=`grep "^INFO Downloaded" $crawllog | sed 's/^.*: \(.*\) files, \(.*\)\.$/\1/'` # => uris_successes
echo "files_downloaded=$files_downloaded"
uri_successes=$files_downloaded
bytes_downloaded=`grep "^INFO Downloaded" $crawllog | sed 's/^.*: \(.*\) files, \(.*\)\.$/\2/'` # = total_crawled_bytes
echo "bytes_downloaded=$bytes_downloaded"
total_crawled_bytes=$bytes_downloaded
else
# keine Logdatei für den Crawl
crawl_status="ERROR"
echo "crawl_status=$crawl_status"
error_cause="no crawl log"
echo "error_cause=$error_cause"
fi
# von WARCs belegter Plattenplatz
disc_usage_warcs=0
for datei in *.warc.gz; do
## Check if the glob gets expanded to existing files.
## If not, datei here will be exactly the pattern above
## and the exists test will evaluate to false.
if [ -e "$datei" ]; then
# echo "files do exist"
disc_usage_warcs=`du -ks $datei | sed 's/^\(.*\)\s.*$/\1/'`
disc_usage_warcs=`echo "scale=0; $disc_usage_warcs / 1024" | bc`
fi
## This is all we needed to know, so we can break after the first iteration
break
done
echo "disc usage for warcs=$disc_usage_warcs"
# belegter Plattenplatz eingesammeler Datenbankinhalte
disc_usage_database=0
for dbfile in *.db; do
## Check if the glob gets expanded to existing files.
## If not, f here will be exactly the pattern above
## and the exists test will evaluate to false.
if [ -e "$dbfile" ]; then
# echo "files do exist"
disc_usage_dbfile=`du -ks $dbfile | sed 's/^\(.*\)\s.*$/\1/'`
disc_usage_database=$((disc_usage_database + disc_usage_dbfile))
fi
done
disc_usage_database=`echo "scale=0; $disc_usage_database / 1024" | bc`
echo "disc usage for database contents=$disc_usage_database"
# von Log-Dateien belegter Plattenplatz
disc_usage_logs=0
if [ -f crawl.log ]; then
disc_usage_logs=`du -ks crawl.log | sed 's/^\(.*\)\s.*$/\1/'`
disc_usage_logs=`echo "scale=0; $disc_usage_logs / 1024" | bc`
fi
echo "disc usage for logs=$disc_usage_logs"
# *** Schreibe Zeile nach crawlReport für diesen Crawl***
echo "$crawler;$pid;$hbzid;$url;$crawlstart;$crawl_status;$error_cause;$duration;$uris_processed;$uri_successes;$total_crawled_bytes;$kb_sec;$disc_usage_warcs;$disc_usage_database;$disc_usage_logs;" >> $crawlReport
cd $wpullData/$pid
continue
else
echo "Es gibt keine Crawl-Verzeichnisse."
break
fi
done
if [ $anz_crawls -eq 0 ]; then
# noch keine Crawls für diese pid vorhanden
# *** Schreibe Zeile nach crawlReport für diese PID ***
echo "no crawls yet" # kommt nie vor
# echo "$crawler;$pid;$url;;;;;;;;;;;;" >> $crawlReport
fi
# Anzahl gestarteter Crawls zu dieser pid (inklusive Crawl-Versuche)
echo "anz_crawls=$anz_crawls"
# Schreibe Zeile nach discUsageWebsites für diese PID
echo "$crawler;$pid;$hbzid;$url;$total_disc_usage;$anz_crawls;" >> $discUsageWebsites
sumWpullCrawls=$(($sumWpullCrawls+$anz_crawls))
done # next pid
sumWpullDiscSpace=`echo "scale=1; $sumWpullDiscSpace / 1024" | bc`
echo " "
echo "Summenwerte :"
echo "****************************************"
echo " "
echo "Anzahl Sites mit jemals für Heritrix eingeplanten Crawls: $sumHeritrixSites"
echo "Anzahl angestarteter Heritrix-Crawls im Jahre $aktJahr: $sumHeritrixCrawls"
echo "total disc usage for Heritrix Crawls: $sumHeritrixDiscSpace GB"
echo "Summe heritrix;$sumHeritrixSites Sites;;$sumHeritrixDiscSpace GB;$sumHeritrixCrawls;" >> $discUsageWebsites
echo "Anzahl Sites mit jemals für Wpull eingeplanten Crawls: $sumWpullSites"
echo "Anzahl angestarteter Wpull-Crawls im Jahre $aktJahr: $sumWpullCrawls"
echo "total disc usage for Wpull Crawls: $sumWpullDiscSpace GB"
echo "Summe wpull;$sumWpullSites Sites;;$sumWpullDiscSpace GB;$sumWpullCrawls;" >> $discUsageWebsites
spaceLeftOnDevice=0
nr_df_item=0
for item in `df -h | awk '/\/data2$/ {print}'`; do
nr_df_item=$(($nr_df_item+1))
if [ $nr_df_item -eq 4 ]; then spaceLeftOnDevice=$item; fi
done
echo "Space left on device /data2: $spaceLeftOnDevice"
echo "Space left on device /data2;;;$spaceLeftOnDevice;;" >> $discUsageWebsites
echo "ENDE Crawl-Report" `date`
echo ""
# ********************************************************
# E-Mail verschicken mit den Links zu den beiden Berichten
# ********************************************************
baseUrl=https://www.$SERVER/crawlreports
mailbodydatei=$REGAL_TMP/mail_crawlReport.$$.out.txt
echo "******************************************" > $mailbodydatei
echo "$PROJECT Website Crawl Reports" >> $mailbodydatei
echo "******************************************" >> $mailbodydatei
aktdate=`date +"%d.%m.%Y %H:%M:%S"`
echo "Aktuelles Datum und Uhrzeit: $aktdate" >> $mailbodydatei
echo "Berichte für den Server: $SERVER" >> $mailbodydatei
echo "" >> $mailbodydatei
echo "Aktuelle Speicherplatzbelegung (Summen) durch Website-Crawls: $baseUrl/`basename $discUsageWebsites`" >> $mailbodydatei
echo "Aktuelle Status und Kennzahlen der einzelnen Crawl-Aufträge : $baseUrl/`basename $crawlReport`" >> $mailbodydatei
subject="$PROJECT Website Crawl Reports";
xheader="X-Edoweb: $(hostname) crawl reports";
recipients=$EMAIL_RECIPIENT_ADMIN_USERS;
mailx -s "$subject" "$recipients" < $mailbodydatei
# rm $mailbodydatei
exit 0